diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 28e9cda7d4c..1b464b21c3c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -17,15 +17,17 @@ env: jobs: check-format: if: github.event_name == 'pull_request' - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 steps: - name: Configure Java - uses: actions/setup-java@v2 + uses: actions/setup-java@v5 with: distribution: 'adopt' java-version: '17' - name: Checkout repository - uses: actions/checkout@v1 + uses: actions/checkout@v6 + with: + fetch-depth: 0 - name: Build project run: | gcc --version @@ -35,7 +37,7 @@ jobs: run: | mvn spotless:check -Pjdk17 -B -U -e prepare: - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 outputs: repositoryUrl: ${{ steps.repository.outputs.repositoryUrl }} steps: @@ -51,7 +53,7 @@ jobs: echo "Staging repository created: $STAGING_REPOSITORY_ID" echo "::set-output name=stagingRepositoryId::$STAGING_REPOSITORY_ID" - name: Checkout repository - uses: actions/checkout@v1 + uses: actions/checkout@v6 - name: Extract distribution repository URL id: repository run: | @@ -74,41 +76,41 @@ jobs: sudo apt update sudo apt install -y curl wget unzip tar git gcc g++ - name: Configure Java - uses: actions/setup-java@v2 + uses: actions/setup-java@v5 with: distribution: 'zulu' java-version: '17' architecture: 'aarch64' - name: Checkout repository - uses: actions/checkout@v1 + uses: actions/checkout@v6 - name: Build project run: | gcc --version mvn -version - echo "ossrh${{ secrets.CI_DEPLOY_USERNAME }}${{ secrets.CI_DEPLOY_PASSWORD }}" > $HOME/.m2/settings.xml + echo "central${{ secrets.CI_DEPLOY_USERNAME }}${{ secrets.CI_DEPLOY_PASSWORD }}" > $HOME/.m2/settings.xml mvn clean install -pl '!tensorflow-framework' -B -U -e -Djavacpp.platform=${{ github.job }} -Djavacpp.platform.extension=${{ matrix.ext }} - name: Deploy native artifact if: env.DEPLOY_RELEASE == 'true' || env.DEPLOY_SNAPSHOT == 'true' run: mvn -f tensorflow-core/tensorflow-core-native/pom.xml deploy:deploy-file@native-only -B -e -Djavacpp.platform=${{ github.job }} -Djavacpp.platform.extension=${{ matrix.ext }} -Durl=${{ needs.prepare.outputs.repositoryUrl }} linux-x86_64: - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 needs: prepare strategy: matrix: ext: ["", -gpu] steps: - name: Configure Java - uses: actions/setup-java@v2 + uses: actions/setup-java@v5 with: distribution: 'adopt' java-version: '11' - name: Checkout repository - uses: actions/checkout@v1 + uses: actions/checkout@v6 - name: Build project run: | gcc --version mvn -version - echo "ossrh${{ secrets.CI_DEPLOY_USERNAME }}${{ secrets.CI_DEPLOY_PASSWORD }}" > $HOME/.m2/settings.xml + echo "central${{ secrets.CI_DEPLOY_USERNAME }}${{ secrets.CI_DEPLOY_PASSWORD }}" > $HOME/.m2/settings.xml mvn clean install -pl '!tensorflow-framework' -B -U -e -Djavacpp.platform=${{ github.job }} -Djavacpp.platform.extension=${{ matrix.ext }} - name: Deploy native artifact if: env.DEPLOY_RELEASE == 'true' || env.DEPLOY_SNAPSHOT == 'true' @@ -121,103 +123,34 @@ jobs: ext: [""] steps: - name: Configure Java - uses: actions/setup-java@v2 + uses: actions/setup-java@v5 with: distribution: 'zulu' java-version: '17' architecture: 'arm64' - name: Checkout repository - uses: actions/checkout@v1 - - name: Build project - run: | - clang --version - mvn -version - echo "ossrh${{ secrets.CI_DEPLOY_USERNAME }}${{ secrets.CI_DEPLOY_PASSWORD }}" > $HOME/.m2/settings.xml - mvn clean install -pl '!tensorflow-framework' -B -U -e -Djavacpp.platform=${{ github.job }} -Djavacpp.platform.extension=${{ matrix.ext }} - - name: Deploy native artifact - if: env.DEPLOY_RELEASE == 'true' || env.DEPLOY_SNAPSHOT == 'true' - run: mvn -f tensorflow-core/tensorflow-core-native/pom.xml deploy:deploy-file@native-only -B -e -Djavacpp.platform=${{ github.job }} -Djavacpp.platform.extension=${{ matrix.ext }} -Durl=${{ needs.prepare.outputs.repositoryUrl }} - macosx-x86_64: - runs-on: macos-12 - needs: prepare - strategy: - matrix: - ext: [""] - steps: - - name: Configure Java - uses: actions/setup-java@v2 - with: - distribution: 'adopt' - java-version: '11' - - name: Checkout repository - uses: actions/checkout@v1 + uses: actions/checkout@v6 - name: Build project run: | clang --version mvn -version - echo "ossrh${{ secrets.CI_DEPLOY_USERNAME }}${{ secrets.CI_DEPLOY_PASSWORD }}" > $HOME/.m2/settings.xml + echo "central${{ secrets.CI_DEPLOY_USERNAME }}${{ secrets.CI_DEPLOY_PASSWORD }}" > $HOME/.m2/settings.xml mvn clean install -pl '!tensorflow-framework' -B -U -e -Djavacpp.platform=${{ github.job }} -Djavacpp.platform.extension=${{ matrix.ext }} - name: Deploy native artifact if: env.DEPLOY_RELEASE == 'true' || env.DEPLOY_SNAPSHOT == 'true' run: mvn -f tensorflow-core/tensorflow-core-native/pom.xml deploy:deploy-file@native-only -B -e -Djavacpp.platform=${{ github.job }} -Djavacpp.platform.extension=${{ matrix.ext }} -Durl=${{ needs.prepare.outputs.repositoryUrl }} - windows-x86_64: - runs-on: windows-2019 - needs: prepare - strategy: - matrix: - ext: [""] #, -gpu] - steps: - - name: Install environment - shell: cmd - run: | - set "PATH=C:\msys64\usr\bin;%PATH%" - python -m pip install numpy six - set "EXT=${{ matrix.ext }}" - echo %JAVA_HOME% - - name: Configure Java - uses: actions/setup-java@v2 - with: - distribution: 'adopt' - java-version: '11' - - name: Checkout repository - uses: actions/checkout@v1 - - name: Build project - shell: cmd - run: | - call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" amd64 - set "PATH=C:\msys64\usr\bin;%PATH%" - echo Shorten work paths to prevent Bazel from reaching MAX_PATH limit - mkdir C:\tmp - set "TEST_TMPDIR=C:\tmp" - set "TMPDIR=C:\tmp" - set "TEMP=C:\tmp" - set "TMP=C:\tmp" - bash --version - git --version - cl - call mvn -version - echo ^^^^ossrh^^${{ secrets.CI_DEPLOY_USERNAME }}^^${{ secrets.CI_DEPLOY_PASSWORD }}^^^^ > %USERPROFILE%\.m2\settings.xml - set "SKIP_EXPORT=true" - call mvn clean install -pl "!tensorflow-framework" -B -U -e -Djavacpp.platform=${{ github.job }} -Djavacpp.platform.extension=${{ matrix.ext }} - if ERRORLEVEL 1 exit /b - - name: Deploy native artifact - if: env.DEPLOY_RELEASE == 'true' || env.DEPLOY_SNAPSHOT == 'true' - shell: cmd - run: | - call mvn -f tensorflow-core/tensorflow-core-native/pom.xml deploy:deploy-file@native-only -B -e -Djavacpp.platform=${{ github.job }} -Djavacpp.platform.extension=${{ matrix.ext }} -Durl=${{ needs.prepare.outputs.repositoryUrl }} - if ERRORLEVEL 1 exit /b deploy: if: ${{ github.event_name == 'push' && (github.ref == 'refs/heads/master' || github.ref == 'refs/heads/staging') }} # DEPLOY_SNAPSHOT (releases should be signed and deployed manually from local machine) - needs: [linux-x86_64, macosx-x86_64, windows-x86_64, macosx-arm64, linux-arm64] - runs-on: ubuntu-20.04 + needs: [linux-x86_64, macosx-arm64, linux-arm64] + runs-on: ubuntu-22.04 steps: - name: Configure Java - uses: actions/setup-java@v2 + uses: actions/setup-java@v5 with: distribution: 'adopt' java-version: '11' - name: Checkout repository - uses: actions/checkout@v1 + uses: actions/checkout@v6 - name: Build project run: | java -version @@ -225,5 +158,5 @@ jobs: mvn clean install -B -U -e -Pdeploying - name: Deploy snapshot artifacts run: | - echo "ossrh${{ secrets.CI_DEPLOY_USERNAME }}${{ secrets.CI_DEPLOY_PASSWORD }}" > $HOME/.m2/settings.xml + echo "central${{ secrets.CI_DEPLOY_USERNAME }}${{ secrets.CI_DEPLOY_PASSWORD }}" > $HOME/.m2/settings.xml mvn deploy -Pdeploying -B -e -Dmaven.test.skip=true diff --git a/.gitignore b/.gitignore index cb95fc014f9..d9e902d7d9e 100644 --- a/.gitignore +++ b/.gitignore @@ -64,3 +64,6 @@ gradleBuild # Deployment Files settings.xml pom.xml.asc + +# Docs +docs/docs/apidocs/ \ No newline at end of file diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 874bdddaf52..9da8b9603aa 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -82,7 +82,7 @@ To upgrade the version of TensorFlow that is embedded within TensorFlow Java, pl 3. Update `urls`, `sha256` and `strip_prefix` fields of the `org_tensorflow` archive rule in Bazel [workspace](https://github.com/tensorflow/java/blob/master/tensorflow-core/tensorflow-core-native/WORKSPACE#L19) 4. Extract the archive in a temporary folder 5. Copy the content of `tensorflow-x.x.x/.bazelrc` file to `tensorflow-core/tensorflow-core-native/tensorflow.bazelrc` under TensorFlow Java source tree -6. Copy the content of `tensorflow-x.x.x/WORKSPACE` after the "###### Copy content of..." notice if `tensorflow-core/tensorflow-core-native/WORKSPACE`, read notice for more details +6. Copy the content of `tensorflow-x.x.x/WORKSPACE` after the "###### Copy content of..." notice to `tensorflow-core/tensorflow-core-native/WORKSPACE`, read notice for more details 7. Copy the content of `tensorflow-x.x.x/.bazelversion` file to `tensorflow-core/tensorflow-core-native/.bazelversion` 8. Validate that options in `tensorflow-core/tensorflow-core-native/.bazelrc` are still accurate or update them accordingly 9. Update URLs of existing TensorFlow binaries in the `tensorflow-core/tensorflow-core-native/scripts/dist_download` script diff --git a/MIGRATING.md b/MIGRATING.md index 44a1924a512..ac7276eba99 100644 --- a/MIGRATING.md +++ b/MIGRATING.md @@ -53,7 +53,7 @@ The Java Module (jigsaw) names has been updated to drop the leading `org.`, as f Previous versions of TF Java were building a `tensorflow-core-platform-gpu` artifact upon which application could depend on to include any TensorFlow native library that GPU support enabled. Since TensorFlow has removed its support of GPU -on all platforms other that Linux, we removed our platform JAR in favour of simply adding a dependency on the +on all platforms other than Linux, we removed our platform JAR in favour of simply adding a dependency on the `linux-x86_64-gpu` native artifact. ```xml @@ -64,7 +64,7 @@ on all platforms other that Linux, we removed our platform JAR in favour of simp ``` Please note that including this dependency won't work if your application also depends on `tensorflow-core-platform`. If -you need to support more platforms that Linux, you should include the other `tensorflow-core-native` dependencies +you need to support more platforms than Linux, you should include the other `tensorflow-core-native` dependencies separately (see the [README](README.md) file). ### Session Run Result @@ -76,8 +76,9 @@ individually. ### Proto Definitions Moved -Some proto definitions under `org.tensorflow.proto` have been moved to a different location under the same package. You will need to reimport these -proto bindings to match the new location. Your IDE should easily be able to do this for you. +Some proto definitions under `org.tensorflow.proto` have been moved to a different location under the same (`org.tensorflow.proto`) package. +Certain classes have moved packages, for example, `org.tensorflow.proto.example.Feature` to `org.tensorflow.proto.Feature`. +You will need to reimport these proto bindings to match the new location. Your IDE should easily be able to do this for you. ## Migrating to 0.3.0 diff --git a/README.md b/README.md index e48ba72e656..67dae4fc1ab 100644 --- a/README.md +++ b/README.md @@ -44,24 +44,26 @@ See [CONTRIBUTING.md](CONTRIBUTING.md#building). ## Using Maven Artifacts There are two options for adding TensorFlow Java as a dependency to your Maven project: with individual dependencies -for each targeted platforms or with a single dependency that target them all. +for each targeted platform or with a single dependency that targets them all. ### Individual dependencies With this option, you must first add a dependency to `tensorflow-core-api` and then one or multiple dependencies to `tensorflow-core-native` with a classifier targeting a specific platform. This option is preferred as -it minimize the size of your application by only including the TensorFlow builds you need, at the cost of being more +it minimizes the size of your application by only including the TensorFlow builds you need, at the cost of being more restrictive. While TensorFlow Java can be compiled for [multiple platforms](https://github.com/tensorflow/java/blob/master/tensorflow-core/pom.xml#L54), -only binaries for the followings are being **supported and distributed** by this project: +only binaries for the following are being **supported and distributed** by this project: - `linux-x86_64`: Linux platforms on Intel/AMD chips - `linux-x86_64-gpu`: Linux platforms on Intel/AMD chips with Cuda GPU support - `linux-arm64`: Linux platforms on Arm chips -- `macosx-x86_64`: MacOS X platforms on Intel/AMD chips - `macosx-arm64`: MacOS X platforms on Apple Silicon chips -- `windows-x86_64`: Windows platforms on Intel/AMD chips +- `windows-x86_64`: Windows platforms on Intel/AMD chips (v1.1.0 and earlier) + +Binaries for `macosx-x86_64` are available for TF-Java 1.0 series releases and earlier, they were dropped from +TF-Java 1.1 and newer as they are no longer supported or released by Google. For example, for building a JAR that uses TensorFlow and is targeted to be deployed only on Linux systems with no GPU support, you should add the following dependencies: @@ -69,15 +71,21 @@ systems with no GPU support, you should add the following dependencies: org.tensorflow tensorflow-core-api - 1.0.0-rc.2 + 1.1.0 org.tensorflow tensorflow-core-native - 1.0.0-rc.2 + 1.1.0 linux-x86_64 ``` +Or Gradle: +```groovy +def tfVersion = '1.1.0' +implementation "org.tensorflow:tensorflow-core-api:$tfVersion" +implementation "org.tensorflow:tensorflow-core-native:$tfVersion:linux-x86_64" +``` On the other hand, if you plan to deploy your JAR on more platforms, you need additional native dependencies as follows: @@ -85,37 +93,49 @@ native dependencies as follows: org.tensorflow tensorflow-core-api - 1.0.0-rc.2 + 1.1.0 org.tensorflow tensorflow-core-native - 1.0.0-rc.2 + 1.1.0 linux-x86_64-gpu org.tensorflow tensorflow-core-native - 1.0.0-rc.2 + 1.1.0 macosx-arm64 org.tensorflow tensorflow-core-native - 1.0.0-rc.2 + 1.1.0 windows-x86_64 ``` +Or Gradle: +```groovy +def tfVersion = '1.1.0' +implementation "org.tensorflow:tensorflow-core-api:$tfVersion" +implementation "org.tensorflow:tensorflow-core-native:$tfVersion:linux-x86_64-gpu" +implementation "org.tensorflow:tensorflow-core-native:$tfVersion:macosx-arm64" +implementation "org.tensorflow:tensorflow-core-native:$tfVersion:windows-x86_64" +``` Only one dependency can be added per platform, meaning that you cannot add native dependencies to both `linux-x86_64` and `linux-x86_64-gpu` within the same project. +To use an NVIDIA GPU, you need to install the NVIDIA device driver, CUDA Toolkit, and cuDNN. +For Ubuntu 24.04, you can install them with the following command: +```sudo apt install -y nvidia-driver-550 nvidia-cuda-toolkit nvidia-cudnn``` + ### Single dependency In some cases, it might be preferable to add a single dependency that includes transitively all the artifacts required to run TensorFlow Java on any [supported platforms](README.md#individual-dependencies) -- `tensorflow-core-platform`: Includes `tensorflow-core-api`, plus native artifacts for `linux-x86_64`, `linux-x86_64-arm64`, `macosx-arm64`, `macosx-x86_64` and `windows-x86_64` +- `tensorflow-core-platform`: Includes `tensorflow-core-api`, plus native artifacts for `linux-x86_64`, `linux-x86_64-arm64`, `macosx-arm64` and `windows-x86_64` For example, to run TensorFlow Java on any CPU platform for which a binary is being distributed by this project, you can simply add this dependency to your application: @@ -123,9 +143,13 @@ simply add this dependency to your application: org.tensorflow tensorflow-core-platform - 1.0.0-rc.2 + 1.1.0 ``` +Or Gradle: +```groovy +implementation "org.tensorflow:tensorflow-core-platform:1.1.0" +``` Be aware though that the builds of TensorFlow are quite voluminous and including too many native dependencies may significantly increase the size of your application. So it is good practice to limit your dependencies to @@ -136,7 +160,7 @@ the conventions established on this page: ### Snapshots Snapshots of TensorFlow Java artifacts are automatically distributed after each update in the code. To use them, you need -to add Sonatype OSS repository in your pom.xml, like the following +to add Sonatype OSS repository in your `pom.xml`, like the following ```xml @@ -153,29 +177,45 @@ to add Sonatype OSS repository in your pom.xml, like the following org.tensorflow tensorflow-core-platform - 1.0.0-SNAPSHOT + 1.2.0-SNAPSHOT ``` +Or Gradle: +```groovy +repositories { + mavenCentral() + maven { + url = uri("https://oss.sonatype.org/content/repositories/snapshots") + } +} + +dependencies { + // Example of dependency, see section above for more options + implementation "org.tensorflow:tensorflow-core-platform:1.2.0-SNAPSHOT" +} +``` ## TensorFlow/Java Version Support This table shows the mapping between TensorFlow, TensorFlow Java and minimum supported Java versions. | TensorFlow Java Version | TensorFlow Version | Minimum Java Version | -|-------------------------|--------------------| --------------- | -| 0.2.0 | 2.3.1 | 8 | -| 0.3.0 | 2.4.1 | 8 | -| 0.3.1 | 2.4.1 | 8 | -| 0.3.2 | 2.4.1 | 8 | -| 0.3.3 | 2.4.1 | 8 | -| 0.4.0 | 2.7.0 | 8 | -| 0.4.1 | 2.7.1 | 8 | -| 0.4.2 | 2.7.4 | 8 | -| 0.5.0 | 2.10.1 | 11 | -| 1.0.0-rc.1 | 2.16.1 | 11 | -| 1.0.0-rc.2 | 2.16.2 | 11 | -| 1.0.0-SNAPSHOT | 2.16.2 | 11 | +|-------------------------|--------------------|----------------------| +| 0.2.0 | 2.3.1 | 8 | +| 0.3.0 | 2.4.1 | 8 | +| 0.3.1 | 2.4.1 | 8 | +| 0.3.2 | 2.4.1 | 8 | +| 0.3.3 | 2.4.1 | 8 | +| 0.4.0 | 2.7.0 | 8 | +| 0.4.1 | 2.7.1 | 8 | +| 0.4.2 | 2.7.4 | 8 | +| 0.5.0 | 2.10.1 | 11 | +| 1.0.0-rc.1 | 2.16.1 | 11 | +| 1.0.0-rc.2 | 2.16.2 | 11 | +| 1.0.0 | 2.16.2 | 11 | +| 1.1.0 | 2.18.0 | 11 | +| 1.2.0-SNAPSHOT | 2.20.0 | 11 | ## How to Contribute? diff --git a/docs/_toc.yaml b/docs/_toc.yaml old mode 100644 new mode 100755 diff --git a/docs/docs/assets/tensorflow.svg b/docs/docs/assets/tensorflow.svg new file mode 100644 index 00000000000..c0778626d66 --- /dev/null +++ b/docs/docs/assets/tensorflow.svg @@ -0,0 +1 @@ + diff --git a/docs/index.md b/docs/docs/index.md old mode 100644 new mode 100755 similarity index 59% rename from docs/index.md rename to docs/docs/index.md index 47ad1385a1e..c9fcbf53e7e --- a/docs/index.md +++ b/docs/docs/index.md @@ -1,14 +1,5 @@ # TensorFlow for Java - - - -
- View on TensorFlow.org - - View GitHub repository -
- TensorFlow Java can run on any JVM for building, training and running machine learning models. It comes with a series of utilities and frameworks that help achieve most of the tasks common to data scientists and developers working in this domain. Java and other JVM languages, such as Scala or Kotlin, are @@ -26,21 +17,19 @@ migrated from Bazel to Maven, which is more familiar for most Java developers. The following describes the layout of the repository and its different artifacts: -* [tensorflow-core](https://github.com/tensorflow/java/tree/master/tensorflow-core) - * All artifacts that build up the core language bindings of TensorFlow for Java - * Intended audience: projects that provide their own APIs or frameworks on top of - TensorFlow and just want a thin layer to access the TensorFlow runtime from the JVM - -* [tensorflow-framework](https://github.com/tensorflow/java/tree/master/tensorflow-framework) - * Primary API for building and training neural networks with TensorFlow - * Intended audience: neural network developers +### [tensorflow-core](https://github.com/tensorflow/java/tree/master/tensorflow-core) + * **Intended audience**: developers who wants to deploy a TensorFlow model on a JVM for inference. Also for projects + that provide their own APIs or frameworks on top of TensorFlow and just want a thin layer to access the TensorFlow runtime from the JVM. + * All artifacts that make up the core language bindings of TensorFlow for Java. -* [ndarray](https://github.com/tensorflow/java-ndarray) - * Generic utility library for n-dimensional data I/O operations - * Used by TensorFlow but does not depend on TensorFlow - * Intended audience: any developer who needs a Java n-dimensional array implementation, whether or not they - use it with TensorFlow +### [tensorflow-framework](https://github.com/tensorflow/java/tree/master/tensorflow-framework) + * **Intended audience**: neural network developers. + * Primary API for building and training neural networks with TensorFlow. +### [ndarray](https://github.com/tensorflow/java-ndarray) + * **Intended audience**: any developer who needs a Java n-dimensional array implementation, whether or not they use it with TensorFlow. + * Generic utility library for n-dimensional data I/O operations. + * Used by TensorFlow but does not depend on TensorFlow. ## Communication diff --git a/docs/install.md b/docs/docs/install.md old mode 100644 new mode 100755 similarity index 91% rename from docs/install.md rename to docs/docs/install.md index 2dc2601b0e5..2fe676e956a --- a/docs/install.md +++ b/docs/docs/install.md @@ -8,8 +8,10 @@ Kotlin, are frequently used in large and small enterprises all over the world, which makes TensorFlow Java a strategic choice for adopting machine learning at a large scale. -Caution: The TensorFlow Java API is *not* covered by the TensorFlow -[API stability guarantees](https://www.tensorflow.org/guide/versions). +Note: Starting from version 1.0.0, the TensorFlow Java project follows the +[TensorFlow API stability guarantees](https://www.tensorflow.org/guide/versions#api_stability). +However, as these bindings are downstream of the TensorFlow C API, users should +be aware that stability is subject to the evolution of the upstream TensorFlow core. ## Requirements @@ -18,12 +20,14 @@ following platforms: * Ubuntu 20.04 or higher; 64-bit, x86 * Ubuntu 22.04 or higher; 64-bit, arm -* macOS 12 or higher; 64-bit, x86 * macOS 14 or higher; 64-bit, arm * Windows 10 or higher; 64-bit, x86 -*Note: To use TensorFlow on Android, see -[TensorFlow Lite](https://tensorflow.org/lite)* +TensorFlow Java 1.0 series and earlier releases also have binaries for: + +* macOS 12 or higher; 64-bit, x86 + +*Note: To use TensorFlow on Android, see [LiteRT](https://tensorflow.org/lite)* ## Versions @@ -59,7 +63,7 @@ For example, org.tensorflow tensorflow-core-platform - 1.0.0-rc.2 + 1.1.0 ``` @@ -102,7 +106,7 @@ snapshots repository in your `pom.xml`. org.tensorflow tensorflow-core-platform - 1.0.0-SNAPSHOT + 1.2.0-SNAPSHOT ``` @@ -119,7 +123,7 @@ repositories { } dependencies { - compile group: 'org.tensorflow', name: 'tensorflow-core-platform', version: '1.0.0-rc.2' + compile group: 'org.tensorflow', name: 'tensorflow-core-platform', version: '1.0.0' } ``` @@ -165,7 +169,7 @@ add the TensorFlow dependency to the project's `pom.xml` file: org.tensorflow tensorflow-core-platform - 1.0.0-rc.2 + 1.1.0 diff --git a/docs/docs/references.md b/docs/docs/references.md new file mode 100644 index 00000000000..524b23dc675 --- /dev/null +++ b/docs/docs/references.md @@ -0,0 +1,8 @@ +--- +hide: + - navigation + - toc + - title +--- +# + \ No newline at end of file diff --git a/docs/docs/stylesheets/extra.css b/docs/docs/stylesheets/extra.css new file mode 100644 index 00000000000..70aefe6843e --- /dev/null +++ b/docs/docs/stylesheets/extra.css @@ -0,0 +1,14 @@ +:root > * { + /*--md-primary-fg-color: #EE782F;*/ + /*--md-primary-fg-color--light: #455960;*/ + /*--md-primary-fg-color--dark: #90030C;*/ +} + +.md-typeset h1, .md-typeset h2 { + font-weight: 800; + letter-spacing: -.01em; +} + +.md-sidebar--primary { + display: none; +} \ No newline at end of file diff --git a/tools/build_java_api_docs.py b/docs/legacy_tools/build_java_api_docs.py similarity index 56% rename from tools/build_java_api_docs.py rename to docs/legacy_tools/build_java_api_docs.py index 5eadafc276d..77d3ba80f31 100644 --- a/tools/build_java_api_docs.py +++ b/docs/legacy_tools/build_java_api_docs.py @@ -13,6 +13,13 @@ # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== + +###################################################################################################################### +# IMPORTANT: Files in legacy_tools are no longer used to generate the TensorFlow-Java API docs as there are unfixed issues +# when using DocLava outside of the Google environment. We are keeping these for reference in case they are useful later. +###################################################################################################################### + + """Generate TensorFlow Java reference docs for TensorFlow.org.""" from __future__ import absolute_import from __future__ import division @@ -21,6 +28,9 @@ import pathlib import shutil import tempfile +import io +import requests +import zipfile from git import Repo from absl import app @@ -29,14 +39,29 @@ from tensorflow_docs.api_generator import gen_java FLAGS = flags.FLAGS + NDARRAY_VERSION = 'v1.0.0' +JAVACPP_VERSION = '1.5.11' +PROTOBUF_VERSION = 'v3.21.9' + +# __file__ is the path to this file +TOOLS_DIR = pathlib.Path(__file__).resolve().parent +DOCS_DIR = TOOLS_DIR.parent +REPO_ROOT = DOCS_DIR.parent +DOC_OUTPUT_DIR = DOCS_DIR.joinpath("output") + +SECTION_LABELS = { + 'org.tensorflow': 'Core', + 'org.tensorflow.ndarray': 'NdArray', + 'org.tensorflow.framework': 'Framework', +} # These flags are required by infrastructure, not all of them are used. -flags.DEFINE_string('output_dir', '/tmp/java_api/', +flags.DEFINE_string('output_dir', f"{DOC_OUTPUT_DIR}", ("Use this branch as the root version and don't" ' create in version directory')) -flags.DEFINE_string('site_path', 'java/api_docs/java', +flags.DEFINE_string('site_path', 'api_docs/', 'Path prefix in the _toc.yaml') flags.DEFINE_string('code_url_prefix', None, @@ -46,20 +71,15 @@ 'search_hints', True, '[UNUSED] Include metadata search hints in the generated files') -# __file__ is the path to this file -TOOLS_DIR = pathlib.Path(__file__).resolve().parent -REPO_ROOT = TOOLS_DIR.parent - -def checkout_ndarray(): - repo_url = 'https://github.com/tensorflow/java-ndarray' - local_repo_path = REPO_ROOT/'ndarray' +def checkout_repo(repo_url: str, target_dir_name: str, version: str): + local_repo_path = f"{REPO_ROOT}/{target_dir_name}" if not pathlib.Path(local_repo_path).exists(): local_repo = Repo.clone_from(repo_url, local_repo_path) else: local_repo = Repo(local_repo_path) local_repo.remotes['origin'].fetch() - local_repo.git.checkout(NDARRAY_VERSION) + local_repo.git.checkout(version) def overlay(from_root, to_root): @@ -74,25 +94,36 @@ def overlay(from_root, to_root): def main(unused_argv): - checkout_ndarray() + checkout_repo('https://github.com/tensorflow/java-ndarray', 'ndarray', NDARRAY_VERSION) + checkout_repo('https://github.com/bytedeco/javacpp', 'javacpp', JAVACPP_VERSION) + response = requests.get('https://repo1.maven.org/maven2/com/google/protobuf/protobuf-java/3.21.9/protobuf-java-3.21.9-sources.jar') + with zipfile.ZipFile(io.BytesIO(response.content)) as z: + z.extractall(f"{REPO_ROOT}/protobuf") + response = requests.get('https://repo1.maven.org/maven2/org/osgi/osgi.annotation/8.1.0/osgi.annotation-8.1.0-sources.jar') + with zipfile.ZipFile(io.BytesIO(response.content)) as z: + z.extractall(f"{REPO_ROOT}/osgi") + merged_source = pathlib.Path(tempfile.mkdtemp()) (merged_source / 'java/org').mkdir(parents=True) - shutil.copytree(REPO_ROOT/'tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/', merged_source/'java/org/tensorflow') overlay(REPO_ROOT/'tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow', merged_source/'java/org/tensorflow') - shutil.copytree(REPO_ROOT/'tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto', merged_source/'java/org/tensorflow/proto') - shutil.copytree(REPO_ROOT/'tensorflow-core/tensorflow-core-native/src/main/java/org/tensorflow/exceptions', merged_source/'java/org/tensorflow/exceptions') - shutil.copytree(REPO_ROOT/'tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api', merged_source/'java/org/tensorflow/internal/c_api') + overlay(REPO_ROOT/'tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow', merged_source/'java/org/tensorflow') + overlay(REPO_ROOT/'tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/', merged_source/'java/org/tensorflow/') + overlay(REPO_ROOT/'tensorflow-core/tensorflow-core-native/src/main/java/org/tensorflow/', merged_source/'java/org/tensorflow/') shutil.copytree(REPO_ROOT/'tensorflow-framework/src/main/java/org/tensorflow/framework', merged_source/'java/org/tensorflow/framework') shutil.copytree(REPO_ROOT/'ndarray/ndarray/src/main/java/org/tensorflow/ndarray', merged_source/'java/org/tensorflow/ndarray') + shutil.copytree(REPO_ROOT/'javacpp/src/main/java/org/bytedeco', merged_source/'java/org/bytedeco') + shutil.copytree(REPO_ROOT/'protobuf/com/', merged_source/'java/com') + shutil.copytree(REPO_ROOT/'osgi/org/osgi', merged_source/'java/org/osgi') gen_java.gen_java_docs( package='org.tensorflow', source_path=merged_source / 'java', output_dir=pathlib.Path(FLAGS.output_dir), site_path=pathlib.Path(FLAGS.site_path), + section_labels=SECTION_LABELS, # Uncomment for local testing: - # script_path=pathlib.Path(REPO_ROOT/'tools/run-javadoc-for-tf-local.sh'), + script_path=pathlib.Path(TOOLS_DIR, 'run-javadoc-for-tf-local.sh'), ) diff --git a/docs/legacy_tools/requirements.txt b/docs/legacy_tools/requirements.txt new file mode 100644 index 00000000000..4435ca4d4a9 --- /dev/null +++ b/docs/legacy_tools/requirements.txt @@ -0,0 +1,8 @@ +###################################################################################################################### +# IMPORTANT: Files in legacy_tools are no longer used to generate the TensorFlow-Java API docs as there are unfixed issues +# when using DocLava outside of the Google environment. We are keeping these for reference in case they are useful later. +###################################################################################################################### + +GitPython +requests +tensorflow-docs \ No newline at end of file diff --git a/tools/run-javadoc-for-tf-local.sh b/docs/legacy_tools/run-javadoc-for-tf-local.sh similarity index 83% rename from tools/run-javadoc-for-tf-local.sh rename to docs/legacy_tools/run-javadoc-for-tf-local.sh index 59239b78141..97d59ddfd6e 100644 --- a/tools/run-javadoc-for-tf-local.sh +++ b/docs/legacy_tools/run-javadoc-for-tf-local.sh @@ -1,4 +1,10 @@ #!/bin/bash + +###################################################################################################################### +# IMPORTANT: Files in legacy_tools are no longer used to generate the TensorFlow-Java API docs as there are unfixed issues +# when using DocLava outside of the Google environment. We are keeping these for reference in case they are useful later. +###################################################################################################################### + set -ex export JAVA_HOME=/Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home # Or change to any JDK 11 home path @@ -11,12 +17,13 @@ export JAVA_HOME=/Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home # O # $ sudo apt install doclava-aosp #v 6.0.1+r55-1+build1 # # https://unix.stackexchange.com/questions/594841/how-do-i-assign-a-value-to-a-bash-variable-iff-that-variable-is-null-unassigned -DOCLAVA_JAR=${DOCLAVA_JAR:-'lib/doclava.jar'} # Build lib locally +DOCLAVA_JAR=${DOCLAVA_JAR:-'tools/lib/doclava.jar'} # Build lib locally + # Install java clear silver templates with: # # $ sudo apt install libjsilver-aosp-java #v 6.0.1+r55-1+build1 -JSILVER_JAR=${JSILVER_JAR:-'lib/jsilver.jar'} # Build lib locally +JSILVER_JAR=${JSILVER_JAR:-'tools/lib/jsilver.jar'} # Build lib locally ######### DELETE OUTPUT_DIR ################# @@ -56,16 +63,15 @@ for pkg in "${packages[@]}"; do SUBPACKAGES+=" -subpackages ${pkg}" done ( # Capture the return code. it may be non-zero for minor errors. - javadoc \ + /Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home/bin/javadoc \ -sourcepath "${SOURCE_PATH}" \ -docletpath "${DOCLAVA_JAR}:${JSILVER_JAR}" \ -doclet com.google.doclava.Doclava \ - -d "${OUTPUT_DIR}" \ -toroot "${SITE_PATH}"/ \ -yaml _toc.yaml \ -templatedir "${TEMPLATES}" \ -public \ - -devsite \ + -d "${OUTPUT_DIR}" \ ${FEDERATED_PARAMS} \ ${SUBPACKAGES} ) diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml new file mode 100644 index 00000000000..8729bca5af5 --- /dev/null +++ b/docs/mkdocs.yml @@ -0,0 +1,49 @@ +site_name: '' +site_url: https://tensorflow.org +repo_url: https://github.com/tensorflow/java +site_description: Documentation of TensorFlow Java API and tools. +copyright: "© TensorFlow Authors 2025" + +theme: + name: material + logo: assets/tensorflow.svg + features: + - navigation.indexes + - navigation.instant + - navigation.sections + - navigation.tabs + - navigation.tabs.sticky + - toc.follow + palette: + # Palette toggle for automatic mode + - media: "(prefers-color-scheme)" + toggle: + icon: material/brightness-auto + name: Switch to light mode + # Palette toggle for light mode + - media: "(prefers-color-scheme: light)" + scheme: default + primary: white + accent: orange + toggle: + icon: material/brightness-7 + name: Switch to dark mode + # Palette toggle for dark mode + - media: "(prefers-color-scheme: dark)" + scheme: slate + primary: black + accent: orange + toggle: + icon: material/brightness-4 + name: Switch to system preference + +extra_css: + - stylesheets/extra.css + +nav: + - Home: + - index.md + - Install: + - install.md + - References: + - apidocs/index.html diff --git a/pom.xml b/pom.xml index 6ed9e52771b..cd986f316a8 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ org.tensorflow tensorflow-java - 1.0.0-SNAPSHOT + 1.2.0-SNAPSHOT pom TensorFlow Java Parent @@ -31,6 +31,7 @@ + tensorflow-ndarray tensorflow-core tensorflow-framework @@ -49,7 +50,7 @@ true true true - 2.43.0 + 2.46.1 @@ -87,8 +88,8 @@ --> - ossrh - https://oss.sonatype.org/content/repositories/snapshots + central + https://central.sonatype.com/repository/maven-snapshots ossrh @@ -212,7 +213,7 @@ -Xlint:all -XDcompilePolicy=simple - -Xplugin:ErrorProne + -J--add-opens=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED -J--add-opens=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED @@ -546,16 +547,38 @@ maven-javadoc-plugin - 3.6.0 + 3.12.0 + + ./docs/overview.md + + Copyright 2015, 2025 The TensorFlow Authors. All Rights Reserved. + + -Xmaxerrs + 65536 + -Xmaxwarns + 65536 + + false + 256m + 2048m + + https://tensorflow.github.io/java/javadoc-ndarray/v1.0.0/ + https://protobuf.dev/reference/java/api-docs + https://bytedeco.org/javacpp/apidocs + + + + javadoc-site + + javadoc + + attach-javadocs jar - - true - diff --git a/tensorflow-core/pom.xml b/tensorflow-core/pom.xml index d0ea8480f95..03c548a4111 100644 --- a/tensorflow-core/pom.xml +++ b/tensorflow-core/pom.xml @@ -22,7 +22,7 @@ org.tensorflow tensorflow-java - 1.0.0-SNAPSHOT + 1.2.0-SNAPSHOT tensorflow-core pom @@ -42,7 +42,7 @@ https://github.com/tensorflow/tensorflow/blob/master/tensorflow/workspace2.bzl (but for the currently used release, not master) --> - 3.21.9 + 4.28.3 ${javacpp.platform}${javacpp.platform.extension} @@ -59,7 +59,7 @@ macosx-arm64${javacpp.platform.extension} macosx-x86_64${javacpp.platform.extension} windows-x86_64${javacpp.platform.extension} - 1.5.10 + 1.5.12 diff --git a/tensorflow-core/tensorflow-core-api/pom.xml b/tensorflow-core/tensorflow-core-api/pom.xml index d08f7733cba..a4cd84dcf20 100644 --- a/tensorflow-core/tensorflow-core-api/pom.xml +++ b/tensorflow-core/tensorflow-core-api/pom.xml @@ -6,7 +6,7 @@ org.tensorflow tensorflow-core - 1.0.0-SNAPSHOT + 1.2.0-SNAPSHOT tensorflow-core-api jar @@ -15,7 +15,6 @@ Platform-dependent native code and pure-Java code for the TensorFlow machine intelligence library. - 1.0.0 1.1.5 false ${project.build.directory}/tf-text-download/ @@ -24,8 +23,8 @@ org.tensorflow - ndarray - ${ndarray.version} + tensorflow-ndarray + ${project.version} org.tensorflow @@ -220,30 +219,6 @@ - - maven-javadoc-plugin - 3.6.0 - - - attach-javadocs - - jar - - - - -Xmaxerrs - 65536 - -Xmaxwarns - 65536 - - false - 256m - 2048m - - - - - org.codehaus.mojo exec-maven-plugin diff --git a/tensorflow-core/tensorflow-core-api/scripts/test_download.sh b/tensorflow-core/tensorflow-core-api/scripts/test_download.sh index 5f47ee00115..509468bade2 100755 --- a/tensorflow-core/tensorflow-core-api/scripts/test_download.sh +++ b/tensorflow-core/tensorflow-core-api/scripts/test_download.sh @@ -5,10 +5,13 @@ DOWNLOAD_FOLDER="$1" case ${PLATFORM:-} in 'linux-x86_64') - TEXT_WHEEL_URL='https://files.pythonhosted.org/packages/43/dd/8f03331107b76e63313d2089ddfbd13f15e51fb8ed73517cdd0ab3341928/tensorflow-2.16.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl' + TEXT_WHEEL_URL='https://files.pythonhosted.org/packages/c3/e6/cfd784298ffb759a4235721cac2ac20f7ff758bf687069cfbaebb06c5804/tensorflow_text-2.20.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl' ;; - 'macosx-x86_64') - TEXT_WHEEL_URL='https://files.pythonhosted.org/packages/6d/69/9999c2d9e8a3b08dfcfc7e9259a05fb1da5f700936091d2eb4a7985c2776/tensorflow-2.16.2-cp311-cp311-macosx_10_15_x86_64.whl' + 'linux-arm64') + TEXT_WHEEL_URL='https://files.pythonhosted.org/packages/f5/ca/796cfd97ae6693d3c84c37575a6d481be5f1ef36c920d1a73c884f31797b/tensorflow_text-2.20.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl' + ;; + 'macosx-arm64') + TEXT_WHEEL_URL='https://files.pythonhosted.org/packages/98/e4/e3c72d0a73caeba90cf5b31e69d44e9a08d614e0e829484d813f3b63e037/tensorflow_text-2.20.0-cp312-cp312-macosx_11_0_arm64.whl' ;; *) echo "TensorFlow Text distribution for ${PLATFORM} is not supported for download" diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_CheckPinned.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_CheckPinned.pbtxt new file mode 100644 index 00000000000..fff873c9bbf --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_CheckPinned.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "CheckPinned" + endpoint { + name: "CheckPinned" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_ComputeDedupDataSize.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_ComputeDedupDataSize.pbtxt index 91551fab016..3bedfe49d78 100644 --- a/tensorflow-core/tensorflow-core-api/src/api/api_def_ComputeDedupDataSize.pbtxt +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_ComputeDedupDataSize.pbtxt @@ -1,6 +1,6 @@ op { graph_op_name: "ComputeDedupDataSize" - visibility: VISIBLE + visibility: SKIP endpoint { name: "tpu.ComputeDedupDataSize" } diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_ComputeDedupDataSizeV2.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_ComputeDedupDataSizeV2.pbtxt new file mode 100644 index 00000000000..af5bdc31f13 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_ComputeDedupDataSizeV2.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "ComputeDedupDataSizeV2" + endpoint { + name: "tpu.ComputeDedupDataSize" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_ComputeDedupDataTupleMask.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_ComputeDedupDataTupleMask.pbtxt index 946eab7e85a..cb0cd71c3f3 100644 --- a/tensorflow-core/tensorflow-core-api/src/api/api_def_ComputeDedupDataTupleMask.pbtxt +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_ComputeDedupDataTupleMask.pbtxt @@ -1,5 +1,5 @@ op { - visibility: VISIBLE + visibility: SKIP graph_op_name: "ComputeDedupDataTupleMask" endpoint { name: "tpu.ComputeDedupDataTupleMask" diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_ComputeDedupDataTupleMaskV2.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_ComputeDedupDataTupleMaskV2.pbtxt new file mode 100644 index 00000000000..75e34703b13 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_ComputeDedupDataTupleMaskV2.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "ComputeDedupDataTupleMaskV2" + endpoint { + name: "tpu.ComputeDedupDataTupleMask" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_ConvertToListOfSparseCoreCooTensors.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_ConvertToListOfSparseCoreCooTensors.pbtxt new file mode 100644 index 00000000000..99d2ebea438 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_ConvertToListOfSparseCoreCooTensors.pbtxt @@ -0,0 +1,7 @@ +op { + graph_op_name: "ConvertToListOfSparseCoreCooTensors" + visibility: VISIBLE + endpoint { + name: "sparse.ConvertToListOfSparseCoreCooTensors" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_ConvertToSparseCoreCsrWrappedCooTensor.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_ConvertToSparseCoreCsrWrappedCooTensor.pbtxt new file mode 100644 index 00000000000..6b78c0b216c --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_ConvertToSparseCoreCsrWrappedCooTensor.pbtxt @@ -0,0 +1,7 @@ +op { + graph_op_name: "ConvertToSparseCoreCsrWrappedCooTensor" + visibility: VISIBLE + endpoint { + name: "sparse.ConvertToSparseCoreCsrWrappedCooTensor" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_DecodeWebP.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_DecodeWebP.pbtxt new file mode 100644 index 00000000000..5bd8c3f5508 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_DecodeWebP.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "DecodeWebP" + endpoint { + name: "image.DecodeWebP" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_FinalizeTPUEmbedding.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_FinalizeTPUEmbedding.pbtxt index bb76cd12973..5a5262fbe5a 100644 --- a/tensorflow-core/tensorflow-core-api/src/api/api_def_FinalizeTPUEmbedding.pbtxt +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_FinalizeTPUEmbedding.pbtxt @@ -1,5 +1,5 @@ op { - visibility: VISIBLE + visibility: SKIP graph_op_name: "FinalizeTPUEmbedding" endpoint { name: "tpu.FinalizeTPUEmbedding" diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_FinalizeTPUEmbeddingV2.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_FinalizeTPUEmbeddingV2.pbtxt new file mode 100644 index 00000000000..7a8840309e4 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_FinalizeTPUEmbeddingV2.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "FinalizeTPUEmbeddingV2" + endpoint { + name: "tpu.FinalizeTPUEmbedding" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_GetStatsFromListOfSparseCoreCooTensors.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_GetStatsFromListOfSparseCoreCooTensors.pbtxt new file mode 100644 index 00000000000..11a2b9eccba --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_GetStatsFromListOfSparseCoreCooTensors.pbtxt @@ -0,0 +1,7 @@ +op { + graph_op_name: "GetStatsFromListOfSparseCoreCooTensors" + visibility: VISIBLE + endpoint { + name: "sparse.GetStatsFromListOfSparseCoreCooTensors" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_GetTpuTaskId.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_GetTpuTaskId.pbtxt new file mode 100644 index 00000000000..1072689506c --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_GetTpuTaskId.pbtxt @@ -0,0 +1,7 @@ +op { + graph_op_name: "GetTpuTaskId" + visibility: VISIBLE + endpoint { + name: "tpu.GetTpuTaskId" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_GlobalShuffleDataset.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_GlobalShuffleDataset.pbtxt new file mode 100644 index 00000000000..ed286d3ae31 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_GlobalShuffleDataset.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "GlobalShuffleDataset" + endpoint { + name: "data.GlobalShuffleDataset" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_IndexFlatMapDataset.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_IndexFlatMapDataset.pbtxt new file mode 100644 index 00000000000..682904a7504 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_IndexFlatMapDataset.pbtxt @@ -0,0 +1,7 @@ +op { + graph_op_name: "IndexFlatMapDataset" + visibility: VISIBLE + endpoint { + name: "data.IndexFlatMapDataset" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_IteratorGetModelProto.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_IteratorGetModelProto.pbtxt new file mode 100644 index 00000000000..588803255e0 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_IteratorGetModelProto.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "IteratorGetModelProto" + endpoint { + name: "data.IteratorGetModelProto" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_SortListOfSparseCoreCooTensors.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_SortListOfSparseCoreCooTensors.pbtxt new file mode 100644 index 00000000000..9a8176098c2 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_SortListOfSparseCoreCooTensors.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "SortListOfSparseCoreCooTensors" + endpoint { + name: "sparse.SortListOfSparseCoreCooTensors" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_TPUDummyInput.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_TPUDummyInput.pbtxt new file mode 100644 index 00000000000..113a79a4bad --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_TPUDummyInput.pbtxt @@ -0,0 +1,7 @@ +op { + graph_op_name: "TPUDummyInput" + visibility: HIDDEN + endpoint { + name: "tpu.TPUDummyInput" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_UpdateTaskIdAndGlobalCoreArray.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_UpdateTaskIdAndGlobalCoreArray.pbtxt new file mode 100644 index 00000000000..0a1285c8357 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_UpdateTaskIdAndGlobalCoreArray.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "UpdateTaskIdAndGlobalCoreArray" + endpoint { + name: "tpu.UpdateTaskIdAndGlobalCoreArray" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_WeightedFlatMapDataset.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_WeightedFlatMapDataset.pbtxt new file mode 100644 index 00000000000..6f879a98257 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_WeightedFlatMapDataset.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "WeightedFlatMapDataset" + endpoint { + name: "data.WeightedFlatMapDataset" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaCallModule.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaCallModule.pbtxt index ae152ae6245..b195d388983 100644 --- a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaCallModule.pbtxt +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaCallModule.pbtxt @@ -1,6 +1,6 @@ op { graph_op_name: "XlaCallModule" - visibility: HIDDEN + visibility: VISIBLE endpoint { name: "xla.XlaCallModule" } diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaRecvTPUEmbeddingActivations.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaRecvTPUEmbeddingActivations.pbtxt index 5022c15fd1c..1a1fdb0c423 100644 --- a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaRecvTPUEmbeddingActivations.pbtxt +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaRecvTPUEmbeddingActivations.pbtxt @@ -1,5 +1,5 @@ op { - visibility: VISIBLE + visibility: SKIP graph_op_name: "XlaRecvTPUEmbeddingActivations" endpoint { name: "xla.XlaRecvTPUEmbeddingActivations" diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaRecvTPUEmbeddingActivationsV2.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaRecvTPUEmbeddingActivationsV2.pbtxt new file mode 100644 index 00000000000..d02f42c4bbf --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaRecvTPUEmbeddingActivationsV2.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "XlaRecvTPUEmbeddingActivationsV2" + endpoint { + name: "xla.XlaRecvTPUEmbeddingActivations" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaRecvTPUEmbeddingDeduplicationData.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaRecvTPUEmbeddingDeduplicationData.pbtxt index 0cf0987c1c1..9c376f0820c 100644 --- a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaRecvTPUEmbeddingDeduplicationData.pbtxt +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaRecvTPUEmbeddingDeduplicationData.pbtxt @@ -1,5 +1,5 @@ op { - visibility: VISIBLE + visibility: SKIP graph_op_name: "XlaRecvTPUEmbeddingDeduplicationData" endpoint { name: "xla.XlaRecvTPUEmbeddingDeduplicationData" diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaRecvTPUEmbeddingDeduplicationDataV2.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaRecvTPUEmbeddingDeduplicationDataV2.pbtxt new file mode 100644 index 00000000000..43a55d29adc --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaRecvTPUEmbeddingDeduplicationDataV2.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "XlaRecvTPUEmbeddingDeduplicationDataV2" + endpoint { + name: "xla.XlaRecvTPUEmbeddingDeduplicationData" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSendTPUEmbeddingGradients.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSendTPUEmbeddingGradients.pbtxt index b8fd705c59e..3fae92d46d9 100644 --- a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSendTPUEmbeddingGradients.pbtxt +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSendTPUEmbeddingGradients.pbtxt @@ -1,5 +1,5 @@ op { - visibility: VISIBLE + visibility: SKIP graph_op_name: "XlaSendTPUEmbeddingGradients" endpoint { name: "xla.XlaSendTPUEmbeddingGradients" diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSendTPUEmbeddingGradientsV2.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSendTPUEmbeddingGradientsV2.pbtxt new file mode 100644 index 00000000000..26dd3e15d22 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSendTPUEmbeddingGradientsV2.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "XlaSendTPUEmbeddingGradientsV2" + endpoint { + name: "xla.XlaSendTPUEmbeddingGradients" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseActivationsUnstack.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseActivationsUnstack.pbtxt new file mode 100644 index 00000000000..986cff47591 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseActivationsUnstack.pbtxt @@ -0,0 +1,7 @@ +op { + graph_op_name: "XlaSparseActivationsUnstack" + visibility: VISIBLE + endpoint { + name: "xla.XlaSparseActivationsUnstack" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput.pbtxt new file mode 100644 index 00000000000..c1f3e390238 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput.pbtxt @@ -0,0 +1,7 @@ +op { + graph_op_name: "XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput" + visibility: VISIBLE + endpoint { + name: "xla.XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput.pbtxt new file mode 100644 index 00000000000..e43971974c0 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput.pbtxt @@ -0,0 +1,7 @@ +op { + graph_op_name: "XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput" + visibility: VISIBLE + endpoint { + name: "xla.XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput.pbtxt new file mode 100644 index 00000000000..5458e7794fc --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput.pbtxt @@ -0,0 +1,7 @@ +op { + graph_op_name: "XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput" + visibility: VISIBLE + endpoint { + name: "xla.XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput.pbtxt new file mode 100644 index 00000000000..2c0a3ca45c3 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput.pbtxt @@ -0,0 +1,7 @@ +op { + graph_op_name: "XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput" + visibility: VISIBLE + endpoint { + name: "xla.XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput.pbtxt new file mode 100644 index 00000000000..e0f07990fa0 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput.pbtxt @@ -0,0 +1,7 @@ +op { + graph_op_name: "XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput" + visibility: VISIBLE + endpoint { + name: "xla.XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput.pbtxt new file mode 100644 index 00000000000..5a619a2dd46 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput" + endpoint { + name: "xla.XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput.pbtxt new file mode 100644 index 00000000000..9bb0f124d58 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput" + endpoint { + name: "xla.XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize.pbtxt new file mode 100644 index 00000000000..47fcebe1956 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize" + endpoint { + name: "xla.XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize.pbtxt new file mode 100644 index 00000000000..81513ff20af --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize" + endpoint { + name: "xla.XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize.pbtxt new file mode 100644 index 00000000000..20ec6c2fe5b --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize" + endpoint { + name: "xla.XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulGradWithCsrInput.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulGradWithCsrInput.pbtxt new file mode 100644 index 00000000000..6a1578fae35 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulGradWithCsrInput.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "XlaSparseDenseMatmulGradWithCsrInput" + endpoint { + name: "xla.XlaSparseDenseMatmulGradWithCsrInput" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize.pbtxt new file mode 100644 index 00000000000..962389ea718 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize" + endpoint { + name: "xla.XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize.pbtxt new file mode 100644 index 00000000000..1854d77d0b6 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize" + endpoint { + name: "xla.XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulWithStaticBufferSize.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulWithStaticBufferSize.pbtxt new file mode 100644 index 00000000000..aa0f72e074b --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseDenseMatmulWithStaticBufferSize.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "XlaSparseDenseMatmulWithStaticBufferSize" + endpoint { + name: "xla.XlaSparseDenseMatmulWithStaticBufferSize" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseGradientsStack.pbtxt b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseGradientsStack.pbtxt new file mode 100644 index 00000000000..c8275b4698e --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/api/api_def_XlaSparseGradientsStack.pbtxt @@ -0,0 +1,6 @@ +op { + graph_op_name: "XlaSparseGradientsStack" + endpoint { + name: "xla.XlaSparseGradientsStack" + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/BitwiseOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/BitwiseOps.java index 21073274635..5cf8e620d72 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/BitwiseOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/BitwiseOps.java @@ -61,7 +61,6 @@ public final class BitwiseOps { * tf.assert_equal(tf.cast(res, tf.float32), exp) # TRUE * * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code BitwiseAnd} output and operands @@ -91,7 +90,6 @@ public BitwiseAnd bitwiseAnd(Operand x, Operand y) * tf.assert_equal(tf.cast(res, tf.float32), exp) # TRUE * * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code BitwiseOr} output and operands @@ -121,7 +119,6 @@ public BitwiseOr bitwiseOr(Operand x, Operand y) { * tf.assert_equal(tf.cast(res, tf.float32), exp) # TRUE * * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code BitwiseXor} output and operands @@ -172,7 +169,6 @@ public BitwiseXor bitwiseXor(Operand x, Operand y) * tf.assert_equal(tf.cast(inverted, tf.float32), tf.cast(expected, tf.float32)) * * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Invert} output and operands * @return a new instance of Invert @@ -212,7 +208,6 @@ public Invert invert(Operand x) { * # <tf.Tensor: shape=(4,), dtype=int8, numpy=array([ -2, 64, 101, 32], dtype=int8)> * * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code LeftShift} output and operands @@ -255,7 +250,6 @@ public LeftShift leftShift(Operand x, Operand y) { * # <tf.Tensor: shape=(4,), dtype=int8, numpy=array([ -2, 64, 101, 32], dtype=int8)> * * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code RightShift} output and operands diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/CollectiveOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/CollectiveOps.java index 23a96e4bfdf..de786dc95fe 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/CollectiveOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/CollectiveOps.java @@ -49,7 +49,6 @@ public final class CollectiveOps { /** * Mutually exchanges multiple tensors of identical type and shape. * - * @param data type for {@code data} output * @param input The input value * @param communicator The communicator value * @param groupAssignment The groupAssignment value @@ -79,7 +78,6 @@ public CollectiveAssignGroup collectiveAssignGroup(Operand groupAssignme /** * Receives a tensor value broadcast from another device. * - * @param data type for {@code data} output * @param groupSize The groupSize value * @param groupKey The groupKey value * @param instanceKey The instanceKey value @@ -98,7 +96,6 @@ public CollectiveBcastRecv collectiveBcastRecv(Operand data type for {@code data} output * @param input The input value * @param groupSize The groupSize value * @param groupKey The groupKey value @@ -119,7 +116,6 @@ public CollectiveBcastSend collectiveBcastSend(Operand i * collective ops. In this case, keys that are unique at runtime * (e.g. {@code instance_key}) should be used to distinguish collective groups. * - * @param data type for {@code data} output * @param input The input value * @param groupSize The groupSize value * @param groupKey The groupKey value @@ -157,7 +153,6 @@ public CollectiveInitializeCommunicator collectiveInitializeCommunicator(Operand * source_target_pairs={@code [[0,1],[1,2],[2,3],[3,0]]} gets the outputs: * {@code [D, A, B, C]}. * - * @param data type for {@code output} output * @param input The local input to be permuted. Currently only supports float and * bfloat16. * @param sourceTargetPairs A tensor with shape [num_pairs, 2]. @@ -172,7 +167,6 @@ public CollectivePermute collectivePermute(Operand input /** * Mutually reduces multiple tensors of identical type and shape. * - * @param data type for {@code data} output * @param input The input value * @param communicator The communicator value * @param groupAssignment The groupAssignment value @@ -193,7 +187,6 @@ public CollectiveReduce collectiveReduce(Operand input * collective ops. In this case, keys that are unique at runtime * (e.g. {@code instance_key}) should be used to distinguish collective groups. * - * @param data type for {@code data} output * @param input The input value * @param groupSize The groupSize value * @param groupKey The groupKey value diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/DataOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/DataOps.java index 49f7e238a3f..5a3a14b799e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/DataOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/DataOps.java @@ -59,6 +59,7 @@ import org.tensorflow.op.data.GroupByReducerDataset; import org.tensorflow.op.data.GroupByWindowDataset; import org.tensorflow.op.data.IgnoreErrorsDataset; +import org.tensorflow.op.data.IndexFlatMapDataset; import org.tensorflow.op.data.InitializeTableFromDataset; import org.tensorflow.op.data.InterleaveDataset; import org.tensorflow.op.data.Iterator; @@ -819,6 +820,28 @@ public IgnoreErrorsDataset ignoreErrorsDataset(Operand inputDat return IgnoreErrorsDataset.create(scope, inputDataset, outputTypes, outputShapes, options); } + /** + * The IndexFlatMapDataset operation + * + * @param inputDataset The inputDataset value + * @param mapFuncOtherArgs The mapFuncOtherArgs value + * @param indexMapFuncOtherArgs The indexMapFuncOtherArgs value + * @param outputCardinality The outputCardinality value + * @param mapFunc The value of the mapFunc attribute + * @param indexMapFunc The value of the indexMapFunc attribute + * @param outputTypes The value of the outputTypes attribute + * @param outputShapes The value of the outputShapes attribute + * @param options carries optional attribute values + * @return a new instance of IndexFlatMapDataset + */ + public IndexFlatMapDataset indexFlatMapDataset(Operand inputDataset, + Iterable> mapFuncOtherArgs, Iterable> indexMapFuncOtherArgs, + Operand outputCardinality, ConcreteFunction mapFunc, ConcreteFunction indexMapFunc, + List> outputTypes, List outputShapes, + IndexFlatMapDataset.Options... options) { + return IndexFlatMapDataset.create(scope, inputDataset, mapFuncOtherArgs, indexMapFuncOtherArgs, outputCardinality, mapFunc, indexMapFunc, outputTypes, outputShapes, options); + } + /** * The InitializeTableFromDataset operation * @@ -987,7 +1010,6 @@ public LatencyStatsDataset latencyStatsDataset(Operand inputDat /** * Computes rectified linear gradients for a LeakyRelu operation. * - * @param data type for {@code backprops} output * @param gradients The backpropagated gradients to the corresponding LeakyRelu operation. * @param features The features passed as input to the corresponding LeakyRelu operation, * OR the outputs of that operation (both work equivalently). diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/DebuggingOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/DebuggingOps.java index b50f697f8d5..4ea1efd10db 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/DebuggingOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/DebuggingOps.java @@ -43,7 +43,6 @@ public final class DebuggingOps { * tensor. Unlike CheckNumerics (V1), CheckNumericsV2 distinguishes -Inf and +Inf * in the errors it throws. * - * @param data type for {@code output} output * @param tensor The tensor value * @param message Prefix of the error message. * @param data type for {@code CheckNumericsV2} output and operands diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/DistributeOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/DistributeOps.java index e5a6c71c20a..4f30df6352d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/DistributeOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/DistributeOps.java @@ -52,7 +52,6 @@ public final class DistributeOps { * num_devices: The number of devices participating in this reduction. * shared_name: Identifier that shared between ops of the same reduction. * - * @param data type for {@code data} output * @param input The input value * @param reduction The value of the reduction attribute * @param numDevices The value of the numDevices attribute @@ -74,7 +73,6 @@ public NcclAllReduce ncclAllReduce(Operand input, Stri * output: The same as input. * shape: The shape of the input tensor. * - * @param data type for {@code output} output * @param input The input value * @param shape The value of the shape attribute * @param data type for {@code NcclBroadcast} output and operands @@ -93,7 +91,6 @@ public NcclBroadcast ncclBroadcast(Operand input, Shap * data: the value of the reduction across all {@code num_devices} devices. * reduction: the reduction operation to perform. * - * @param data type for {@code data} output * @param input The input value * @param reduction The value of the reduction attribute * @param data type for {@code NcclReduce} output and operands diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/DtypesOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/DtypesOps.java index 3ef6847d4f7..df58cb578a4 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/DtypesOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/DtypesOps.java @@ -44,7 +44,7 @@ public final class DtypesOps { * Converts each entry in the given tensor to strings. * Supports many numeric types and boolean. *

For Unicode, see the - * [https://www.tensorflow.org/tutorials/representation/unicode](Working with Unicode text) + * [https://www.tensorflow.org/text/guide/unicode](Working with Unicode text) * tutorial. *

Examples: *

@@ -69,7 +69,6 @@ public AsString asString(Operand input, AsString.Options... opt /** * Cast x of type SrcT to y of DstT. * - * @param data type for {@code y} output * @param x The x value * @param DstT The value of the DstT attribute * @param options carries optional attribute values @@ -95,7 +94,6 @@ public Cast cast(Operand x, Class DstT, * tf.complex(real, imag) ==> [[2.25 + 4.75j], [3.25 + 5.75j]] * * - * @param data type for {@code out} output * @param real The real value * @param imag The imag value * @param Tout The value of the Tout attribute diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/ImageOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/ImageOps.java index 559ffc0d80a..896bb62de5c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/ImageOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/ImageOps.java @@ -32,6 +32,7 @@ import org.tensorflow.op.image.DecodeImage; import org.tensorflow.op.image.DecodeJpeg; import org.tensorflow.op.image.DecodePng; +import org.tensorflow.op.image.DecodeWebP; import org.tensorflow.op.image.DrawBoundingBoxes; import org.tensorflow.op.image.EncodeJpeg; import org.tensorflow.op.image.EncodeJpegVariableQuality; @@ -93,7 +94,6 @@ public final class ImageOps { * channel and then adjusts each component of each pixel to * {@code (x - mean) * contrast_factor + mean}. * - * @param data type for {@code output} output * @param images Images to adjust. At least 3-D. * @param contrastFactor A float multiplier for adjusting contrast. * @param data type for {@code AdjustContrastv2} output and operands @@ -112,7 +112,6 @@ public AdjustContrast adjustContrast(Operand images, * colors are first mapped into HSV. A delta is then applied all the hue values, * and then remapped back to RGB colorspace. * - * @param data type for {@code output} output * @param images Images to adjust. At least 3-D. * @param delta A float delta to add to the hue. * @param data type for {@code AdjustHue} output and operands @@ -130,7 +129,6 @@ public AdjustHue adjustHue(Operand images, Operand data type for {@code output} output * @param images Images to adjust. At least 3-D. * @param scale A float scale to add to the saturation. * @param data type for {@code AdjustSaturation} output and operands @@ -250,7 +248,6 @@ public CropAndResizeGradBoxes cropAndResizeGradBoxes(Operand grads, /** * Computes the gradient of the crop_and_resize op wrt the input image tensor. * - * @param data type for {@code output} output * @param grads A 4-D tensor of shape {@code [num_boxes, crop_height, crop_width, depth]}. * @param boxes A 2-D tensor of shape {@code [num_boxes, 4]}. The {@code i}-th row of the tensor * specifies the coordinates of a box in the {@code box_ind[i]} image and is specified @@ -340,51 +337,52 @@ public DecodeGif decodeGif(Operand contents) { } /** - * Function for decode_bmp, decode_gif, decode_jpeg, and decode_png. - * Detects whether an image is a BMP, GIF, JPEG, or PNG, and performs the + * Function for decode_bmp, decode_gif, decode_jpeg, decode_webp, and decode_png. + * Detects whether an image is a BMP, GIF, JPEG, WebP, or PNG, and performs the * appropriate operation to convert the input bytes string into a Tensor of type * dtype. - *

NOTE: decode_gif returns a 4-D array [num_frames, height, width, 3], as - * opposed to decode_bmp, decode_jpeg and decode_png, which return 3-D arrays - * [height, width, num_channels]. Make sure to take this into account when - * constructing your graph if you are intermixing GIF files with BMP, JPEG, and/or - * PNG files. Alternately, set the expand_animations argument of this function to - * False, in which case the op will return 3-dimensional tensors and will truncate - * animated GIF files to the first frame. + *

NOTE: decode_gif and decode_webp return a 4-D + * array [num_frames, height, width, 3], as opposed to decode_bmp, + * decode_jpeg, and decode_png, which always return 3-D arrays [height, + * width, num_channels]. Make sure to take this into account when + * constructing your graph if you are intermixing animated files with + * BMP, JPEG, and/or PNG files. Alternately, set the expand_animations + * argument of this function to False, in which case the op will return + * 3-dimensional tensors and will truncate animations to the first frame. *

NOTE: If the first frame of an animated GIF does not occupy the entire * canvas (maximum frame width x maximum frame height), then it fills the * unoccupied areas (in the first frame) with zeros (black). For frames after the * first frame that does not occupy the entire canvas, it uses the previous * frame to fill the unoccupied areas. * - * @param data type for {@code image} output * @param contents 0-D. The encoded image bytes. * @param options carries optional attribute values * @return a new instance of DecodeImage, with default output types */ - public DecodeImage decodeImage(Operand contents, DecodeImage.Options[] options) { + public DecodeImage decodeImage(Operand contents, + DecodeImage.Options... options) { return DecodeImage.create(scope, contents, options); } /** - * Function for decode_bmp, decode_gif, decode_jpeg, and decode_png. - * Detects whether an image is a BMP, GIF, JPEG, or PNG, and performs the + * Function for decode_bmp, decode_gif, decode_jpeg, decode_webp, and decode_png. + * Detects whether an image is a BMP, GIF, JPEG, WebP, or PNG, and performs the * appropriate operation to convert the input bytes string into a Tensor of type * dtype. - *

NOTE: decode_gif returns a 4-D array [num_frames, height, width, 3], as - * opposed to decode_bmp, decode_jpeg and decode_png, which return 3-D arrays - * [height, width, num_channels]. Make sure to take this into account when - * constructing your graph if you are intermixing GIF files with BMP, JPEG, and/or - * PNG files. Alternately, set the expand_animations argument of this function to - * False, in which case the op will return 3-dimensional tensors and will truncate - * animated GIF files to the first frame. + *

NOTE: decode_gif and decode_webp return a 4-D + * array [num_frames, height, width, 3], as opposed to decode_bmp, + * decode_jpeg, and decode_png, which always return 3-D arrays [height, + * width, num_channels]. Make sure to take this into account when + * constructing your graph if you are intermixing animated files with + * BMP, JPEG, and/or PNG files. Alternately, set the expand_animations + * argument of this function to False, in which case the op will return + * 3-dimensional tensors and will truncate animations to the first frame. *

NOTE: If the first frame of an animated GIF does not occupy the entire * canvas (maximum frame width x maximum frame height), then it fills the * unoccupied areas (in the first frame) with zeros (black). For frames after the * first frame that does not occupy the entire canvas, it uses the previous * frame to fill the unoccupied areas. * - * @param data type for {@code image} output * @param contents 0-D. The encoded image bytes. * @param dtype The desired DType of the returned Tensor. * @param options carries optional attribute values @@ -438,12 +436,11 @@ public DecodeJpeg decodeJpeg(Operand contents, DecodeJpeg.Options... op *

This op also supports decoding JPEGs and non-animated GIFs since the interface * is the same, though it is cleaner to use {@code tf.io.decode_image}. * - * @param data type for {@code image} output * @param contents 0-D. The PNG-encoded image. * @param options carries optional attribute values * @return a new instance of DecodePng, with default output types */ - public DecodePng decodePng(Operand contents, DecodePng.Options[] options) { + public DecodePng decodePng(Operand contents, DecodePng.Options... options) { return DecodePng.create(scope, contents, options); } @@ -463,7 +460,6 @@ public DecodePng decodePng(Operand contents, DecodePng.Options[ *

This op also supports decoding JPEGs and non-animated GIFs since the interface * is the same, though it is cleaner to use {@code tf.io.decode_image}. * - * @param data type for {@code image} output * @param contents 0-D. The PNG-encoded image. * @param dtype The value of the dtype attribute * @param options carries optional attribute values @@ -475,6 +471,51 @@ public DecodePng decodePng(Operand contents, Cla return DecodePng.create(scope, contents, dtype, options); } + /** + * Decode a WebP-encoded image to a uint8 tensor. + * The attr {@code channels} indicates the desired number of color channels for the + * decoded image. + *

Accepted values are: + *

    + *
  • 0: Use the number of channels in the WebP-encoded image.
  • + *
  • 3: output an RGB image.
  • + *
  • 4: output an RGBA image.
  • + *
+ *

The number of channels must currently match that of the underlying file. + * For WebP animations, only 4-channel RGBA is supported. + * + * @param contents 0-D. The WebP-encoded image. + * @param options carries optional attribute values + * @return a new instance of DecodeWebP, with default output types + */ + public DecodeWebP decodeWebP(Operand contents, DecodeWebP.Options... options) { + return DecodeWebP.create(scope, contents, options); + } + + /** + * Decode a WebP-encoded image to a uint8 tensor. + * The attr {@code channels} indicates the desired number of color channels for the + * decoded image. + *

Accepted values are: + *

    + *
  • 0: Use the number of channels in the WebP-encoded image.
  • + *
  • 3: output an RGB image.
  • + *
  • 4: output an RGBA image.
  • + *
+ *

The number of channels must currently match that of the underlying file. + * For WebP animations, only 4-channel RGBA is supported. + * + * @param contents 0-D. The WebP-encoded image. + * @param dtype The value of the dtype attribute + * @param options carries optional attribute values + * @param data type for {@code DecodeWebP} output and operands + * @return a new instance of DecodeWebP + */ + public DecodeWebP decodeWebP(Operand contents, Class dtype, + DecodeWebP.Options... options) { + return DecodeWebP.create(scope, contents, dtype, options); + } + /** * Draw bounding boxes on a batch of images. * Outputs a copy of {@code images} but draws on top of the pixels zero or more bounding @@ -487,7 +528,6 @@ public DecodePng decodePng(Operand contents, Cla * the bounding box will be {@code (40, 10)} to {@code (100, 50)} (in (x,y) coordinates). *

Parts of the bounding box may fall outside the image. * - * @param data type for {@code output} output * @param images 4-D with shape {@code [batch, height, width, depth]}. A batch of images. * @param boxes 3-D with shape {@code [batch, num_bounding_boxes, 4]} containing bounding * boxes. @@ -602,7 +642,6 @@ public ExtractGlimpse extractGlimpse(Operand input, Operand si /** * Extract {@code patches} from {@code images} and put them in the "depth" output dimension. * - * @param data type for {@code patches} output * @param images 4-D Tensor with shape {@code [batch, in_rows, in_cols, depth]}. * @param ksizes The size of the sliding window for each dimension of {@code images}. * @param strides How far the centers of two consecutive patches are in @@ -626,7 +665,6 @@ public ExtractImagePatches extractImagePatches(Operand i * Extract the shape information of a JPEG-encoded image. * This op only parses the image header, so it is much faster than DecodeJpeg. * - * @param data type for {@code image_shape} output * @param contents 0-D. The JPEG-encoded image. * @return a new instance of ExtractJpegShape, with default output types */ @@ -638,7 +676,6 @@ public ExtractJpegShape extractJpegShape(Operand contents) { * Extract the shape information of a JPEG-encoded image. * This op only parses the image header, so it is much faster than DecodeJpeg. * - * @param data type for {@code image_shape} output * @param contents 0-D. The JPEG-encoded image. * @param outputType (Optional) The output type of the operation (int32 or int64). * Defaults to int32. @@ -691,7 +728,6 @@ public GenerateBoundingBoxProposals generateBoundingBoxProposals(OperandSee {@code rgb_to_hsv} for a description of the HSV encoding. * - * @param data type for {@code output} output * @param images 1-D or higher rank. HSV data to convert. Last dimension must be size 3. * @param data type for {@code HSVToRGB} output and operands * @return a new instance of HsvToRgb @@ -708,7 +744,6 @@ public HsvToRgb hsvToRgb(Operand images) { * {@code k = c0 x + c1 y + 1}. If the transformed point lays outside of the input * image, the output pixel is set to 0. * - * @param data type for {@code transformed_images} output * @param images 4-D with shape {@code [batch, height, width, channels]}. * @param transforms 2-D Tensor, {@code [batch, 8]} or {@code [1, 8]} matrix, where each row corresponds to a 3 x 3 * projective transformation matrix, with the last entry assumed to be 1. If there @@ -733,7 +768,6 @@ public ImageProjectiveTransformV2 imageProjectiveTransfor * {@code k = c0 x + c1 y + 1}. If the transformed point lays outside of the input * image, the output pixel is set to fill_value. * - * @param data type for {@code transformed_images} output * @param images 4-D with shape {@code [batch, height, width, channels]}. * @param transforms 2-D Tensor, {@code [batch, 8]} or {@code [1, 8]} matrix, where each row corresponds to a 3 x 3 * projective transformation matrix, with the last entry assumed to be 1. If there @@ -794,7 +828,6 @@ public NearestNeighbors nearestNeighbors(Operand points, Operand data type for {@code selected_scores} output * @param boxes A 2-D float tensor of shape {@code [num_boxes, 4]}. * @param scores A 1-D float tensor of shape {@code [num_boxes]} representing a single * score corresponding to each box (each row of boxes). @@ -854,7 +887,6 @@ public NonMaxSuppressionWithOverlaps nonMaxSuppressionWithOverlaps(Operand data type for {@code resized_images} output * @param images 4-D with shape {@code [batch, height, width, channels]}. * @param sizeOutput = A 1-D int32 Tensor of 2 elements: {@code new_height, new_width}. The * new size for the images. @@ -878,7 +910,6 @@ public QuantizedResizeBilinear quantizedResizeBilinear(Op * rectangle from that location. The random location is picked so the cropped * area will fit inside the original image. * - * @param data type for {@code output} output * @param image 3-D of shape {@code [height, width, channels]}. * @param sizeOutput 1-D of length 2 containing: {@code crop_height}, {@code crop_width}.. * @param options carries optional attribute values @@ -931,7 +962,6 @@ public ResizeBicubic resizeBicubic(Operand images, Operand data type for {@code output} output * @param grads 4-D with shape {@code [batch, height, width, channels]}. * @param originalImage 4-D with shape {@code [batch, orig_height, orig_width, channels]}, * The image tensor that was resized. @@ -962,7 +992,6 @@ public ResizeBilinear resizeBilinear(Operand images, /** * Computes the gradient of bilinear interpolation. * - * @param data type for {@code output} output * @param grads 4-D with shape {@code [batch, height, width, channels]}. * @param originalImage 4-D with shape {@code [batch, orig_height, orig_width, channels]}, * The image tensor that was resized. @@ -978,7 +1007,6 @@ public ResizeBilinearGrad resizeBilinearGrad(Operand data type for {@code resized_images} output * @param images 4-D with shape {@code [batch, height, width, channels]}. * @param sizeOutput = A 1-D int32 Tensor of 2 elements: {@code new_height, new_width}. The * new size for the images. @@ -994,7 +1022,6 @@ public ResizeNearestNeighbor resizeNearestNeighbor(Operan /** * Computes the gradient of nearest neighbor interpolation. * - * @param data type for {@code output} output * @param grads 4-D with shape {@code [batch, height, width, channels]}. * @param sizeOutput = A 1-D int32 Tensor of 2 elements: {@code orig_height, orig_width}. The * original input size. @@ -1031,7 +1058,6 @@ public ResizeNearestNeighborGrad resizeNearestNeighborGra *

* * - * @param data type for {@code output} output * @param images 1-D or higher rank. RGB data to convert. Last dimension must be size 3. * @param data type for {@code RGBToHSV} output and operands * @return a new instance of RgbToHsv @@ -1076,7 +1102,6 @@ public RgbToHsv rgbToHsv(Operand images) { * bounding box covering the whole image. If {@code use_image_if_no_bounding_boxes} is * false and no bounding boxes are supplied, an error is raised. * - * @param data type for {@code begin} output * @param imageSize 1-D, containing {@code [height, width, channels]}. * @param boundingBoxes 3-D with shape {@code [batch, N, 4]} describing the N bounding boxes * associated with the image. @@ -1113,7 +1138,6 @@ public ScaleAndTranslate scaleAndTranslate(Operand images, /** * The ScaleAndTranslateGrad operation * - * @param data type for {@code output} output * @param grads The grads value * @param originalImage The originalImage value * @param scale The scale value @@ -1189,7 +1213,6 @@ public ScaleAndTranslateGrad scaleAndTranslateGrad(Operan * bounding box covering the whole image. If {@code use_image_if_no_bounding_boxes} is * false and no bounding boxes are supplied, an error is raised. * - * @param data type for {@code begin} output * @param imageSize 1-D, containing {@code [height, width, channels]}. * @param boundingBoxes 3-D with shape {@code [batch, N, 4]} describing the N bounding boxes * associated with the image. diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/IoOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/IoOps.java index e038446af4a..5c33c56e962 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/IoOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/IoOps.java @@ -160,7 +160,6 @@ public DecodeJsonExample decodeJsonExample(Operand jsonExamples) { /** * Reinterpret the bytes of a string as a vector of numbers. * - * @param data type for {@code output} output * @param inputBytes Tensor of string to be decoded. * @param fixedLength Length in bytes for each element of the decoded output. Must be a multiple * of the size of the output type. @@ -177,7 +176,6 @@ public DecodePaddedRaw decodePaddedRaw(Operand i /** * Reinterpret the bytes of a string as a vector of numbers. * - * @param data type for {@code output} output * @param bytes All the elements must have the same length. * @param outType The value of the outType attribute * @param options carries optional attribute values @@ -231,7 +229,6 @@ public DecodeRaw decodeRaw(Operand bytes, Class * shape = [2 50] * * - * @param data type for {@code sparse_values} output * @param serializedSparse 2-D, The {@code N} serialized {@code SparseTensor} objects. * Must have 3 columns. * @param dtype The {@code dtype} of the serialized {@code SparseTensor} objects. @@ -581,7 +578,6 @@ public ParseSingleSequenceExample parseSingleSequenceExample(Operand se /** * Transforms a serialized tensorflow.TensorProto proto into a Tensor. * - * @param data type for {@code output} output * @param serialized A scalar string containing a serialized TensorProto proto. * @param outType The type of the serialized tensor. The provided type must match the * type of the serialized tensor and no implicit conversion will take place. @@ -883,7 +879,6 @@ public ReaderSerializeState readerSerializeState(Operand reader * rank {@code R-1}. *

The minibatch size {@code N} is extracted from {@code sparse_shape[0]}. * - * @param data type for {@code serialized_sparse} output * @param sparseIndices 2-D. The {@code indices} of the minibatch {@code SparseTensor}. * @param sparseValues 1-D. The {@code values} of the minibatch {@code SparseTensor}. * @param sparseShape 1-D. The {@code shape} of the minibatch {@code SparseTensor}. @@ -903,7 +898,6 @@ public SerializeManySparse serializeManySparse(Operand sparseIn * rank {@code R-1}. *

The minibatch size {@code N} is extracted from {@code sparse_shape[0]}. * - * @param data type for {@code serialized_sparse} output * @param sparseIndices 2-D. The {@code indices} of the minibatch {@code SparseTensor}. * @param sparseValues 1-D. The {@code values} of the minibatch {@code SparseTensor}. * @param sparseShape 1-D. The {@code shape} of the minibatch {@code SparseTensor}. @@ -920,7 +914,6 @@ public SerializeManySparse serializeManySparse(Operand data type for {@code serialized_sparse} output * @param sparseIndices 2-D. The {@code indices} of the {@code SparseTensor}. * @param sparseValues 1-D. The {@code values} of the {@code SparseTensor}. * @param sparseShape 1-D. The {@code shape} of the {@code SparseTensor}. @@ -934,7 +927,6 @@ public SerializeSparse serializeSparse(Operand sparseIndices, /** * Serialize a {@code SparseTensor} into a {@code [3]} {@code Tensor} object. * - * @param data type for {@code serialized_sparse} output * @param sparseIndices 2-D. The {@code indices} of the {@code SparseTensor}. * @param sparseValues 1-D. The {@code values} of the {@code SparseTensor}. * @param sparseShape 1-D. The {@code shape} of the {@code SparseTensor}. diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/LinalgOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/LinalgOps.java index 87d87f85dcf..7cb8027ca3a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/LinalgOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/LinalgOps.java @@ -127,7 +127,6 @@ public final class LinalgOps { * tf.linalg.band_part(input, 0, 0) ==> Diagonal. * * - * @param data type for {@code band} output * @param input Rank {@code k} tensor. * @param numLower 0-D tensor. Number of subdiagonals to keep. If negative, keep entire * lower triangle. @@ -145,7 +144,6 @@ public BandPart bandPart(Operand inpu /** * The BandedTriangularSolve operation * - * @param data type for {@code output} output * @param matrix The matrix value * @param rhs The rhs value * @param options carries optional attribute values @@ -160,7 +158,6 @@ public BandedTriangularSolve bandedTriangularSolve(Operand< /** * The BatchCholesky operation * - * @param data type for {@code output} output * @param input The input value * @param data type for {@code BatchCholesky} output and operands * @return a new instance of BatchCholesky @@ -172,7 +169,6 @@ public BatchCholesky batchCholesky(Operand input) { /** * The BatchCholeskyGrad operation * - * @param data type for {@code output} output * @param l The l value * @param grad The grad value * @param data type for {@code BatchCholeskyGrad} output and operands @@ -185,7 +181,6 @@ public BatchCholeskyGrad batchCholeskyGrad(Operand l, /** * The BatchMatrixBandPart operation * - * @param data type for {@code band} output * @param input The input value * @param numLower The numLower value * @param numUpper The numUpper value @@ -200,7 +195,6 @@ public BatchMatrixBandPart batchMatrixBandPart(Operand i /** * The BatchMatrixDeterminant operation * - * @param data type for {@code output} output * @param input The input value * @param data type for {@code BatchMatrixDeterminant} output and operands * @return a new instance of BatchMatrixDeterminant @@ -212,7 +206,6 @@ public BatchMatrixDeterminant batchMatrixDeterminant(Operan /** * The BatchMatrixDiag operation * - * @param data type for {@code output} output * @param diagonal The diagonal value * @param data type for {@code BatchMatrixDiag} output and operands * @return a new instance of BatchMatrixDiag @@ -224,7 +217,6 @@ public BatchMatrixDiag batchMatrixDiag(Operand diagonal) /** * The BatchMatrixDiagPart operation * - * @param data type for {@code diagonal} output * @param input The input value * @param data type for {@code BatchMatrixDiagPart} output and operands * @return a new instance of BatchMatrixDiagPart @@ -235,8 +227,11 @@ public BatchMatrixDiagPart batchMatrixDiagPart(Operand i /** * The BatchMatrixInverse operation + * DEPRECATED: This operation is deprecated and will be removed in a future version. + * Use tf.linalg.inv instead. + *

Computes the inverse of one or more square invertible matrices or their + * adjoints (conjugate transposes). * - * @param data type for {@code output} output * @param input The input value * @param options carries optional attribute values * @param data type for {@code BatchMatrixInverse} output and operands @@ -250,7 +245,6 @@ public BatchMatrixInverse batchMatrixInverse(Operand i /** * The BatchMatrixSetDiag operation * - * @param data type for {@code output} output * @param input The input value * @param diagonal The diagonal value * @param data type for {@code BatchMatrixSetDiag} output and operands @@ -264,7 +258,6 @@ public BatchMatrixSetDiag batchMatrixSetDiag(Operand inp /** * The BatchMatrixSolve operation * - * @param data type for {@code output} output * @param matrix The matrix value * @param rhs The rhs value * @param options carries optional attribute values @@ -279,7 +272,6 @@ public BatchMatrixSolve batchMatrixSolve(Operand matri /** * The BatchMatrixSolveLs operation * - * @param data type for {@code output} output * @param matrix The matrix value * @param rhs The rhs value * @param l2Regularizer The l2Regularizer value @@ -295,7 +287,6 @@ public BatchMatrixSolveLs batchMatrixSolveLs(Operand m /** * The BatchMatrixTriangularSolve operation * - * @param data type for {@code output} output * @param matrix The matrix value * @param rhs The rhs value * @param options carries optional attribute values @@ -310,7 +301,6 @@ public BatchMatrixTriangularSolve batchMatrixTriangularSo /** * The BatchSelfAdjointEigV2 operation * - * @param data type for {@code e} output * @param input The input value * @param options carries optional attribute values * @param data type for {@code BatchSelfAdjointEigV2} output and operands @@ -324,7 +314,6 @@ public BatchSelfAdjointEig batchSelfAdjointEig(Operand /** * The BatchSvd operation * - * @param data type for {@code s} output * @param input The input value * @param options carries optional attribute values * @param data type for {@code BatchSvd} output and operands @@ -347,7 +336,6 @@ public BatchSvd batchSvd(Operand input, BatchSvd.Options * not for large batch dimensions when the submatrices are small. In this * case it might be faster to use the CPU. * - * @param data type for {@code output} output * @param input Shape is {@code [..., M, M]}. * @param data type for {@code Cholesky} output and operands * @return a new instance of Cholesky @@ -361,7 +349,6 @@ public Cholesky cholesky(Operand input) { * For an explanation see "Differentiation of the Cholesky algorithm" by * Iain Murray http://arxiv.org/abs/1602.07527. * - * @param data type for {@code output} output * @param l Output of batch Cholesky algorithm l = cholesky(A). Shape is {@code [..., M, M]}. * Algorithm depends only on lower triangular part of the innermost matrices of * this tensor. @@ -381,7 +368,6 @@ public CholeskyGrad choleskyGrad(Operand l, Operand * {@code y.shape[i] == x.shape[perm[i]] for i in [0, 1, ..., rank(x) - 1]} * {@code y[i,j,k,...,s,t,u] == conj(x[perm[i], perm[j], perm[k],...,perm[s], perm[t], perm[u]])} * - * @param data type for {@code y} output * @param x The x value * @param perm The perm value * @param data type for {@code ConjugateTranspose} output and operands @@ -398,7 +384,6 @@ public ConjugateTranspose conjugateTranspose(Operand x, * or any shape where the innermost dimension is 3. In the latter case, each pair * of corresponding 3-element vectors is cross-multiplied independently. * - * @param data type for {@code product} output * @param a A tensor containing 3-element vectors. * @param b Another tensor, of same type and shape as {@code a}. * @param data type for {@code Cross} output and operands @@ -414,7 +399,6 @@ public Cross cross(Operand a, Operand b) { * form square matrices. The output is a tensor containing the determinants * for all input submatrices {@code [..., :, :]}. * - * @param data type for {@code output} output * @param input Shape is {@code [..., M, M]}. * @param data type for {@code MatrixDeterminant} output and operands * @return a new instance of Det @@ -436,7 +420,6 @@ public Det det(Operand input) { * e = eig(a, compute_v=False) * * - * @param data type for {@code e} output * @param input {@code Tensor} input of shape {@code [N, N]}. * @param Tout The value of the Tout attribute * @param options carries optional attribute values @@ -514,7 +497,6 @@ public Eig eig(Operand input, Class Tou *
{@literal @}end_compatibility * * - * @param data type for {@code output} output * @param inputs List of 1 or 2 Tensors. * @param equation String describing the Einstein Summation operation; in the format of np.einsum. * @param data type for {@code Einsum} output and operands @@ -531,7 +513,6 @@ public Einsum einsum(Iterable> inputs, String eq * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. * - * @param data type for {@code output} output * @param input The tensor to reduce. * @param axis The dimensions to reduce. Must be in the range * {@code [-rank(input), rank(input))}. @@ -554,7 +535,6 @@ public EuclideanNorm euclideanNorm(Operand input, * may detect the condition and raise an exception or it may simply return a * garbage result. * - * @param data type for {@code output} output * @param input Shape is {@code [..., M, M]}. * @param options carries optional attribute values * @param data type for {@code MatrixInverse} output and operands @@ -632,7 +612,6 @@ public LoadAndRemapMatrix loadAndRemapMatrix(Operand ckptPath, * is the {@code LU} decomposition of the input and {@code P} is the corresponding * permutation matrix. * - * @param data type for {@code sign} output * @param input Shape is {@code [N, M, M]}. * @param data type for {@code LogMatrixDeterminant} output and operands * @return a new instance of LogMatrixDeterminant @@ -657,8 +636,6 @@ public LogMatrixDeterminant logMatrixDeterminant(Operand * and {@code M-1}, inclusive. If P_mat denotes the permutation matrix corresponding to * P, then the L, U and P satisfies P_mat * input = L * U. * - * @param data type for {@code lu} output - * @param data type for {@code p} output * @param input A tensor of shape {@code [..., M, M]} whose inner-most 2 dimensions form matrices of * size {@code [M, M]}. * @param data type for {@code Lu} output and operands @@ -684,8 +661,6 @@ public Lu lu(Operand input) { * and {@code M-1}, inclusive. If P_mat denotes the permutation matrix corresponding to * P, then the L, U and P satisfies P_mat * input = L * U. * - * @param data type for {@code lu} output - * @param data type for {@code p} output * @param input A tensor of shape {@code [..., M, M]} whose inner-most 2 dimensions form matrices of * size {@code [M, M]}. * @param outputIdxType The value of the outputIdxType attribute @@ -707,7 +682,6 @@ public Lu lu(Operand input, *

Note: The default kernel implementation for MatMul on GPUs uses * cublas. * - * @param data type for {@code product} output * @param a The a value * @param b The b value * @param options carries optional attribute values @@ -801,7 +775,6 @@ public MatMul matMul(Operand a, Operand b, MatMul.Opt * [9, 2]] * * - * @param data type for {@code output} output * @param diagonal Rank {@code r}, where {@code r >= 1} * @param k Diagonal offset(s). Positive value means superdiagonal, 0 refers to the main * diagonal, and negative value means subdiagonals. {@code k} can be a single integer @@ -886,7 +859,6 @@ public MatrixDiag matrixDiag(Operand diagonal, Operand * - * @param data type for {@code diagonal} output * @param input Rank {@code r} tensor where {@code r >= 2}. * @param k Diagonal offset(s). Positive value means superdiagonal, 0 refers to the main * diagonal, and negative value means subdiagonals. {@code k} can be a single integer @@ -995,7 +967,6 @@ public MatrixDiagPart matrixDiagPart(Operand input, Oper * * * - * @param data type for {@code diagonal} output * @param input Rank {@code r} tensor where {@code r >= 2}. * @param k Diagonal offset(s). Positive value means superdiagonal, 0 refers to the main * diagonal, and negative value means subdiagonals. {@code k} can be a single integer @@ -1123,7 +1094,6 @@ public MatrixDiagPartV3 matrixDiagPartV3(Operand input, * * * - * @param data type for {@code output} output * @param diagonal Rank {@code r}, where {@code r >= 1} * @param k Diagonal offset(s). Positive value means superdiagonal, 0 refers to the main * diagonal, and negative value means subdiagonals. {@code k} can be a single integer @@ -1150,7 +1120,6 @@ public MatrixDiagV3 matrixDiagV3(Operand diagonal, Opera /** * Deprecated, use python implementation tf.linalg.matrix_exponential. * - * @param data type for {@code output} output * @param input The input value * @param data type for {@code MatrixExponential} output and operands * @return a new instance of MatrixExponential @@ -1173,7 +1142,6 @@ public MatrixExponential matrixExponential(Operand input * form square matrices. The output is a tensor of the same shape as the input * containing the exponential for all input submatrices {@code [..., :, :]}. * - * @param data type for {@code output} output * @param input Shape is {@code [..., M, M]}. * @param data type for {@code MatrixLogarithm} output and operands * @return a new instance of MatrixLogarithm @@ -1281,7 +1249,6 @@ public MatrixLogarithm matrixLogarithm(Operand input) { * * * - * @param data type for {@code output} output * @param input Rank {@code r+1}, where {@code r >= 1}. * @param diagonal Rank {@code r} when {@code k} is an integer or {@code k[0] == k[1]}. Otherwise, it has rank {@code r+1}. * {@code k >= 1}. @@ -1331,7 +1298,6 @@ public MatrixSetDiag matrixSetDiag(Operand input, Operan * typically 6-7 times slower than the fast path. If {@code fast} is {@code False} then * {@code l2_regularizer} is ignored. * - * @param data type for {@code output} output * @param matrix Shape is {@code [..., M, N]}. * @param rhs Shape is {@code [..., M, K]}. * @param l2Regularizer Scalar tensor. @@ -1362,7 +1328,6 @@ public MatrixSolveLs matrixSolveLs(Operand matrix, Opera * q_full, r_full = qr(a, full_matrices=True) * * - * @param data type for {@code q} output * @param input A tensor of shape {@code [..., M, N]} whose inner-most 2 dimensions * form matrices of size {@code [M, N]}. Let {@code P} be the minimum of {@code M} and {@code N}. * @param options carries optional attribute values @@ -1380,7 +1345,6 @@ public Qr qr(Operand input, Qr.Options... options) { * outer dimension of {@code b} (after being transposed if {@code transposed_b} is * non-zero). * - * @param data type for {@code out} output * @param a Must be a two-dimensional tensor. * @param b Must be a two-dimensional tensor. * @param minA The float value that the lowest quantized {@code a} value represents. @@ -1411,7 +1375,6 @@ public QuantizedMatMul quantizedMatMul * non-zero). Then do broadcast add operation with bias values on the matrix * multiplication result. The bias size must match inner dimension of {@code b}. * - * @param data type for {@code out} output * @param a A matrix to be multiplied. Must be a two-dimensional tensor of type {@code quint8}. * @param b A matrix to be multiplied and must be a two-dimensional tensor of type {@code qint8}. * @param bias A 1D bias tensor with size matching inner dimension of {@code b} (after being @@ -1442,7 +1405,6 @@ public QuantizedMatMulWithBias quantizedMatMulWithBias( * multiplication result. The bias size must match inner dimension of {@code b}. Then do * relu activation to get non-negative result. * - * @param data type for {@code out} output * @param a A matrix to be multiplied. Must be a two-dimensional tensor of type {@code quint8}. * @param b A matrix to be multiplied and must be a two-dimensional tensor of type {@code qint8}. * @param bias A 1D bias tensor with size matching with inner dimension of {@code b} (after being @@ -1474,7 +1436,6 @@ public QuantizedMatMulWithBiasAndRelu quantizedMatMulWith * relu activation to get non-negative result. Then do requantize operation to get * final uint8 result. * - * @param data type for {@code out} output * @param a A matrix to be multiplied. Must be a two-dimensional tensor of type {@code quint8}. * @param b A matrix to be multiplied and must be a two-dimensional tensor of type {@code qint8}. * @param bias A 1D bias tensor with size matching with inner dimension of {@code b} (after being @@ -1512,7 +1473,6 @@ public QuantizedMatMulWithBiasAndReluAndRequantize quanti * e = self_adjoint_eig(a, compute_v=False) * * - * @param data type for {@code e} output * @param input {@code Tensor} input of shape {@code [N, N]}. * @param options carries optional attribute values * @param data type for {@code SelfAdjointEigV2} output and operands @@ -1532,7 +1492,6 @@ public SelfAdjointEig selfAdjointEig(Operand input, * If {@code adjoint} is {@code True} then each output matrix satisfies * {@code adjoint(matrix[..., :, :]) * output[..., :, :] = rhs[..., :, :]}. * - * @param data type for {@code output} output * @param matrix Shape is {@code [..., M, M]}. * @param rhs Shape is {@code [..., M, K]}. * @param options carries optional attribute values @@ -1559,7 +1518,6 @@ public Solve solve(Operand matrix, Operand rhs, * form square matrices. The output is a tensor of the same shape as the input * containing the matrix square root for all input submatrices {@code [..., :, :]}. * - * @param data type for {@code output} output * @param input Shape is {@code [..., M, M]}. * @param data type for {@code MatrixSquareRoot} output and operands * @return a new instance of Sqrtm @@ -1581,7 +1539,6 @@ public Sqrtm sqrtm(Operand input) { * s, _, _ = svd(a, compute_uv=False) * * - * @param data type for {@code s} output * @param input A tensor of shape {@code [..., M, N]} whose inner-most 2 dimensions * form matrices of size {@code [M, N]}. Let {@code P} be the minimum of {@code M} and {@code N}. * @param options carries optional attribute values @@ -1608,7 +1565,6 @@ public Svd svd(Operand input, Svd.Options... options) { * [0, 0, 0, 4]] * * - * @param data type for {@code output} output * @param diagonal Rank k tensor where k is at most 1. * @param data type for {@code Diag} output and operands * @return a new instance of TensorDiag @@ -1634,7 +1590,6 @@ public TensorDiag tensorDiag(Operand diagonal) { * tf.diag_part(input) ==> [1, 2, 3, 4] * * - * @param data type for {@code diagonal} output * @param input Rank k tensor where k is even and not zero. * @param data type for {@code DiagPart} output and operands * @return a new instance of TensorDiagPart @@ -1648,7 +1603,6 @@ public TensorDiagPart tensorDiagPart(Operand input) { * The output {@code y} has the same rank as {@code x}. The shapes of {@code x} and {@code y} satisfy: * {@code y.shape[i] == x.shape[perm[i]] for i in [0, 1, ..., rank(x) - 1]} * - * @param data type for {@code y} output * @param x The x value * @param perm The perm value * @param data type for {@code Transpose} output and operands @@ -1703,7 +1657,6 @@ public Transpose transpose(Operand x, Operand * - * @param data type for {@code output} output * @param matrix Shape is {@code [..., M, M]}. * @param rhs Shape is {@code [..., M, K]}. * @param options carries optional attribute values @@ -1719,7 +1672,6 @@ public TriangularSolve triangularSolve(Operand matrix, O * Calculate product with tridiagonal matrix. * Calculates product of two matrices, where left matrix is a tridiagonal matrix. * - * @param data type for {@code output} output * @param superdiag Tensor of shape {@code [..., 1, M]}, representing superdiagonals of * tri-diagonal matrices to the left of multiplication. Last element is ignored. * @param maindiag Tensor of shape {@code [..., 1, M]}, representing main diagonals of tri-diagonal @@ -1746,7 +1698,6 @@ public TridiagonalMatMul tridiagonalMatMul(Operand super * library is used: https://docs.nvidia.com/cuda/cusparse/index.html#gtsv * Partial pivoting is not yet supported by XLA backends. * - * @param data type for {@code output} output * @param diagonals Tensor of shape {@code [..., 3, M]} whose innermost 2 dimensions represent the * tridiagonal matrices with three rows being the superdiagonal, diagonals, and * subdiagonals, in order. The last element of the superdiagonal and the first diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/LinalgSparseOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/LinalgSparseOps.java index ed8c4fdbb90..7210249ba1f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/LinalgSparseOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/LinalgSparseOps.java @@ -59,7 +59,6 @@ public final class LinalgSparseOps { * This op is meant only for debugging / testing, and its interface is not expected * to be stable. * - * @param data type for {@code values} output * @param csrSparseMatrix A batched CSRSparseMatrix. * @param index The index in {@code csr_sparse_matrix}'s batch. * @param type The value of the type attribute @@ -74,7 +73,6 @@ public CSRSparseMatrixComponents cSRSparseMatrixComponents( /** * Convert a (possibly batched) CSRSparseMatrix to dense. * - * @param data type for {@code dense_output} output * @param sparseInput A batched CSRSparseMatrix. * @param type The value of the type attribute * @param data type for {@code CSRSparseMatrixToDense} output and operands @@ -88,7 +86,6 @@ public CSRSparseMatrixToDense cSRSparseMatrixToDense( /** * Converts a (possibly batched) CSRSparesMatrix to a SparseTensor. * - * @param data type for {@code values} output * @param sparseMatrix A (possibly batched) CSRSparseMatrix. * @param type The value of the type attribute * @param data type for {@code CSRSparseMatrixToSparseTensor} output and operands @@ -152,7 +149,6 @@ public SparseMatrixAdd sparseMatrixAdd(Operand * - * @param data type for {@code output} output * @param a A CSRSparseMatrix. * @param b A dense tensor. * @param options carries optional attribute values diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/MathOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/MathOps.java index ee2e3a46c27..d3dcfc686ad 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/MathOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/MathOps.java @@ -168,7 +168,6 @@ public final class MathOps { * value of each element in {@code x}. For example, if x is an input element and y is * an output element, this operation computes \(y = |x|\). * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Abs} output and operands * @return a new instance of Abs @@ -186,7 +185,6 @@ public Abs abs(Operand x) { *

Unlike the original {@code accumulate_n}, {@code accumulate_n_v2} is differentiable. *

Returns a {@code Tensor} of same shape and type as the elements of {@code inputs}. * - * @param data type for {@code sum} output * @param inputs A list of {@code Tensor} objects, each with same shape and type. * @param shape Shape of elements of {@code inputs}. * @param data type for {@code AccumulateNV2} output and operands @@ -201,7 +199,6 @@ public AccumulateN accumulateN(Iterable> inputs, * Provided an input tensor, the {@code tf.math.acos} operation returns the inverse cosine of each element of the tensor. If {@code y = tf.math.cos(x)} then, {@code x = tf.math.acos(y)}. *

Input range is {@code [-1, 1]} and the output has a range of {@code [0, pi]}. * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Acos} output and operands * @return a new instance of Acos @@ -219,7 +216,6 @@ public Acos acos(Operand x) { * tf.math.acosh(x) ==> [nan nan 0. 0.62236255 5.9914584 9.903487 inf] * * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Acosh} output and operands * @return a new instance of Acosh @@ -235,7 +231,6 @@ public Acosh acosh(Operand x) { *

Given two input tensors, the {@code tf.add} operation computes the sum for every element in the tensor. *

Both input and output have a range {@code (-inf, inf)}. * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code Add} output and operands @@ -253,7 +248,6 @@ public Add add(Operand x, Operand y) { * tf.math.add_n(x) ==> 26 * * - * @param data type for {@code sum} output * @param inputs The inputs value * @param data type for {@code AddN} output and operands * @return a new instance of AddN @@ -278,7 +272,6 @@ public AddN addN(Iterable> inputs) { * Equivalent to np.angle. *
{@literal @}end_compatibility * - * @param data type for {@code output} output * @param input The input value * @return a new instance of Angle, with default output types */ @@ -302,7 +295,6 @@ public Angle angle(Operand input) { * Equivalent to np.angle. *
{@literal @}end_compatibility * - * @param data type for {@code output} output * @param input The input value * @param Tout The value of the Tout attribute * @param data type for {@code Angle} output and operands @@ -339,7 +331,6 @@ public ApproximateEqual approximateEqual(Operand x, Operand * # here a[4] = 166.32 which is the largest element of a across axis 0 * * - * @param data type for {@code output} output * @param input The input value * @param dimension int16, int32 or int64, must be in the range {@code [-rank(input), rank(input))}. * Describes which dimension of the input Tensor to reduce across. For vectors, @@ -364,7 +355,6 @@ public ArgMax argMax(Operand input, * # here a[4] = 166.32 which is the largest element of a across axis 0 * * - * @param data type for {@code output} output * @param input The input value * @param dimension int16, int32 or int64, must be in the range {@code [-rank(input), rank(input))}. * Describes which dimension of the input Tensor to reduce across. For vectors, @@ -391,7 +381,6 @@ public ArgMax argMax(Operand input, * # here a[0] = 1 which is the smallest element of a across axis 0 * * - * @param data type for {@code output} output * @param input The input value * @param dimension int32 or int64, must be in the range {@code [-rank(input), rank(input))}. * Describes which dimension of the input Tensor to reduce across. For vectors, @@ -416,7 +405,6 @@ public ArgMin argMin(Operand input, * # here a[0] = 1 which is the smallest element of a across axis 0 * * - * @param data type for {@code output} output * @param input The input value * @param dimension int32 or int64, must be in the range {@code [-rank(input), rank(input))}. * Describes which dimension of the input Tensor to reduce across. For vectors, @@ -445,7 +433,6 @@ public ArgMin argMin(Operand input, * tf.math.asin(y) # [1.047, 0.785] = x * * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Asin} output and operands * @return a new instance of Asin @@ -464,7 +451,6 @@ public Asin asin(Operand x) { * tf.math.asinh(x) ==> [-inf -1.4436355 -0.4812118 0.8813736 1.0159732 5.991471 9.903487 inf] * * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Asinh} output and operands * @return a new instance of Asinh @@ -488,7 +474,6 @@ public Asinh asinh(Operand x) { * tf.math.atan(y) # [1.047, 0.785] = x * * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Atan} output and operands * @return a new instance of Atan @@ -516,7 +501,6 @@ public Atan atan(Operand x) { * * * - * @param data type for {@code z} output * @param y The y value * @param x The x value * @param data type for {@code Atan2} output and operands @@ -538,7 +522,6 @@ public Atan2 atan2(Operand y, Operand x) { * tf.math.atanh(x) ==> [nan -inf -0.54930615 inf 0. 0.54930615 nan nan] * * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Atanh} output and operands * @return a new instance of Atanh @@ -550,7 +533,6 @@ public Atanh atanh(Operand x) { /** * The BesselI0 operation * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code BesselI0} output and operands * @return a new instance of BesselI0 @@ -562,7 +544,6 @@ public BesselI0 besselI0(Operand x) { /** * The BesselI0e operation * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code BesselI0e} output and operands * @return a new instance of BesselI0e @@ -574,7 +555,6 @@ public BesselI0e besselI0e(Operand x) { /** * The BesselI1 operation * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code BesselI1} output and operands * @return a new instance of BesselI1 @@ -586,7 +566,6 @@ public BesselI1 besselI1(Operand x) { /** * The BesselI1e operation * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code BesselI1e} output and operands * @return a new instance of BesselI1e @@ -604,7 +583,6 @@ public BesselI1e besselI1e(Operand x) { *

is the incomplete beta function and \(B(a, b)\) is the complete * beta function. * - * @param data type for {@code z} output * @param a The a value * @param b The b value * @param x The x value @@ -624,7 +602,6 @@ public Betainc betainc(Operand a, Operand b, Operan * {@code i}. *

Values in {@code arr} outside of the range [0, size) are ignored. * - * @param data type for {@code bins} output * @param arr int32 {@code Tensor}. * @param sizeOutput non-negative int32 scalar {@code Tensor}. * @param weights is an int32, int64, float32, or float64 {@code Tensor} with the same @@ -641,7 +618,6 @@ public Bincount bincount(Operand arr, Operand data type for {@code y} output * @param x The x value * @param data type for {@code Ceil} output and operands * @return a new instance of Ceil @@ -667,7 +643,6 @@ public Ceil ceil(Operand x) { * * * - * @param data type for {@code y} output * @param x The x value * @return a new instance of ComplexAbs, with default output types */ @@ -692,7 +667,6 @@ public ComplexAbs complexAbs(Operand x) { * * * - * @param data type for {@code y} output * @param x The x value * @param Tout The value of the Tout attribute * @param data type for {@code ComplexAbs} output and operands @@ -715,7 +689,6 @@ public ComplexAbs complexAbs(Operand x, * tf.conj(input) ==> [-2.25 - 4.75j, 3.25 - 5.75j] * * - * @param data type for {@code output} output * @param input The input value * @param data type for {@code Conj} output and operands * @return a new instance of Conj @@ -735,7 +708,6 @@ public Conj conj(Operand input) { * tf.math.cos(x) ==> [nan -0.91113025 0.87758255 0.5403023 0.36235774 0.48718765 -0.95215535 nan] * * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Cos} output and operands * @return a new instance of Cos @@ -754,7 +726,6 @@ public Cos cos(Operand x) { * tf.math.cosh(x) ==> [inf 4.0515420e+03 1.1276259e+00 1.5430807e+00 1.8106556e+00 3.7621956e+00 1.1013233e+04 inf] * * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Cosh} output and operands * @return a new instance of Cosh @@ -786,7 +757,6 @@ public Cosh cosh(Operand x) { * tf.cumprod([a, b, c], exclusive=True, reverse=True) # => [b * c, c, 1] * * - * @param data type for {@code out} output * @param x A {@code Tensor}. Must be one of the following types: {@code float32}, {@code float64}, * {@code int64}, {@code int32}, {@code uint8}, {@code uint16}, {@code int16}, {@code int8}, {@code complex64}, * {@code complex128}, {@code qint8}, {@code quint8}, {@code qint32}, {@code half}. @@ -824,7 +794,6 @@ public Cumprod cumprod(Operand x, Operand * - * @param data type for {@code out} output * @param x A {@code Tensor}. Must be one of the following types: {@code float32}, {@code float64}, * {@code int64}, {@code int32}, {@code uint8}, {@code uint16}, {@code int16}, {@code int8}, {@code complex64}, * {@code complex128}, {@code qint8}, {@code quint8}, {@code qint32}, {@code half}. @@ -858,7 +827,6 @@ public Cumsum cumsum(Operand x, OperandBy setting the {@code reverse} kwarg to {@code True}, the cumulative log-sum-exp is performed in the * opposite direction. * - * @param data type for {@code out} output * @param x A {@code Tensor}. Must be one of the following types: {@code float16}, {@code float32}, {@code float64}. * @param axis A {@code Tensor} of type {@code int32} (default: 0). Must be in the range * {@code [-rank(x), rank(x))}. @@ -880,7 +848,6 @@ public CumulativeLogsumexp cumulativeLogsumexp(Operand * {@code i}. *

Values in {@code arr} outside of the range [0, size) are ignored. * - * @param data type for {@code output} output * @param input 1D or 2D int {@code Tensor}. * @param sizeOutput non-negative int scalar {@code Tensor}. * @param weights is an int32, int64, float32, or float64 {@code Tensor} with the same @@ -900,7 +867,6 @@ public DenseBincount denseBincount(Ope * Computes Psi, the derivative of Lgamma (the log of the absolute value of * {@code Gamma(x)}), element-wise. * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Digamma} output and operands * @return a new instance of Digamma @@ -914,7 +880,6 @@ public Digamma digamma(Operand x) { * NOTE: {@code math.Div} supports broadcasting. More about broadcasting * here * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code Div} output and operands @@ -929,7 +894,6 @@ public Div div(Operand x, Operand y) { * NOTE: {@code math.DivNoNan} supports broadcasting. More about broadcasting * here * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code DivNoNan} output and operands @@ -966,7 +930,6 @@ public Equal equal(Operand x, Operand y, Equal.Options.. /** * Computes the Gauss error function of {@code x} element-wise. In statistics, for non-negative values of $x$, the error function has the following interpretation: for a random variable $Y$ that is normally distributed with mean 0 and variance $1/\sqrt{2}$, $erf(x)$ is the probability that $Y$ falls in the range $[−x, x]$. * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Erf} output and operands * @return a new instance of Erf @@ -978,7 +941,6 @@ public Erf erf(Operand x) { /** * Computes the complementary error function of {@code x} element-wise. * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Erfc} output and operands * @return a new instance of Erfc @@ -990,7 +952,6 @@ public Erfc erfc(Operand x) { /** * The Erfinv operation * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Erfinv} output and operands * @return a new instance of erfinv @@ -1023,7 +984,6 @@ public erfinv erfinv(Operand x) { * tf.math.exp(x) ==> 1.4686939399158851+2.2873552871788423j * * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Exp} output and operands * @return a new instance of Exp @@ -1047,7 +1007,6 @@ public Exp exp(Operand x) { * tf.math.expm1(x) ==> (0.46869393991588515+2.2873552871788423j) * * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Expm1} output and operands * @return a new instance of Expm1 @@ -1068,7 +1027,6 @@ public Fact fact() { /** * Returns element-wise largest integer not greater than x. * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Floor} output and operands * @return a new instance of Floor @@ -1082,7 +1040,6 @@ public Floor floor(Operand x) { * NOTE: {@code math.FloorDiv} supports broadcasting. More about broadcasting * here * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code FloorDiv} output and operands @@ -1100,7 +1057,6 @@ public FloorDiv floorDiv(Operand x, Operand y) { *

NOTE: {@code math.FloorMod} supports broadcasting. More about broadcasting * here * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code FloorMod} output and operands @@ -1168,7 +1124,6 @@ public GreaterEqual greaterEqual(Operand x, Operand y) *

Note, above {@code Q(a, x)} ({@code Igammac}) is the upper regularized complete * Gamma function. * - * @param data type for {@code z} output * @param a The a value * @param x The x value * @param data type for {@code Igamma} output and operands @@ -1181,7 +1136,6 @@ public Igamma igamma(Operand a, Operand x) { /** * Computes the gradient of {@code igamma(a, x)} wrt {@code a}. * - * @param data type for {@code z} output * @param a The a value * @param x The x value * @param data type for {@code IgammaGradA} output and operands @@ -1201,7 +1155,6 @@ public IgammaGradA igammaGradA(Operand a, Operand x *

Note, above {@code P(a, x)} ({@code Igamma}) is the lower regularized complete * Gamma function. * - * @param data type for {@code z} output * @param a The a value * @param x The x value * @param data type for {@code Igammac} output and operands @@ -1223,7 +1176,6 @@ public Igammac igammac(Operand a, Operand x) { * tf.imag(input) ==> [4.75, 5.75] * * - * @param data type for {@code output} output * @param input The input value * @return a new instance of Imag, with default output types */ @@ -1243,7 +1195,6 @@ public Imag imag(Operand input) { * tf.imag(input) ==> [4.75, 5.75] * * - * @param data type for {@code output} output * @param input The input value * @param Tout The value of the Tout attribute * @param data type for {@code Imag} output and operands @@ -1267,7 +1218,6 @@ public Imag imag(Operand input, Class * invert_permutation(x) ==> [2, 4, 3, 0, 1] * * - * @param data type for {@code y} output * @param x 1-D. * @param data type for {@code InvertPermutation} output and operands * @return a new instance of InvertPermutation @@ -1388,7 +1338,6 @@ public LessEqual lessEqual(Operand x, Operand y) { * tf.math.lgamma(x) ==> [inf, 0.5723649, 0., 2.4537368, inf, -4.6477685] * * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Lgamma} output and operands * @return a new instance of Lgamma @@ -1406,7 +1355,6 @@ public Lgamma lgamma(Operand x) { * tf.math.log(x) ==> [-inf, -0.6931472, 0. , 1.609438] * * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Log} output and operands * @return a new instance of Log @@ -1424,7 +1372,6 @@ public Log log(Operand x) { * tf.math.log1p(x) ==> [0., 0.4054651, 0.6931472, 1.7917595] * * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Log1p} output and operands * @return a new instance of Log1p @@ -1474,7 +1421,6 @@ public LogicalOr logicalOr(Operand x, Operand y) { * NOTE: {@code math.Maximum} supports broadcasting. More about broadcasting * here * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code Maximum} output and operands @@ -1491,7 +1437,6 @@ public Maximum maximum(Operand x, Operand y) { * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. * - * @param data type for {@code output} output * @param input The tensor to reduce. * @param axis The dimensions to reduce. Must be in the range * {@code [-rank(input), rank(input))}. @@ -1509,7 +1454,6 @@ public Mean mean(Operand input, OperandNOTE: {@code math.Minimum} supports broadcasting. More about broadcasting * here * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code Minimum} output and operands @@ -1526,7 +1470,6 @@ public Minimum minimum(Operand x, Operand y) { *

NOTE: {@code math.Mod} supports broadcasting. More about broadcasting * here * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code Mod} output and operands @@ -1541,7 +1484,6 @@ public Mod mod(Operand x, Operand y) { * NOTE: {@code math.Mul} supports broadcasting. More about broadcasting * here * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code Mul} output and operands @@ -1556,7 +1498,6 @@ public Mul mul(Operand x, Operand y) { * NOTE: {@code math.MulNoNan} supports broadcasting. More about broadcasting * here * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code MulNoNan} output and operands @@ -1569,7 +1510,6 @@ public MulNoNan mulNoNan(Operand x, Operand y) { /** * The Ndtri operation * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Ndtri} output and operands * @return a new instance of Ndtri @@ -1582,7 +1522,6 @@ public Ndtri ndtri(Operand x) { * Computes numerical negative value element-wise. * I.e., \(y = -x\). * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Neg} output and operands * @return a new instance of Neg @@ -1599,7 +1538,6 @@ public Neg neg(Operand x) { * Equivalent to C++ std::nextafter function. *
{@literal @}end_compatibility * - * @param data type for {@code output} output * @param x1 The x1 value * @param x2 The x2 value * @param data type for {@code NextAfter} output and operands @@ -1632,7 +1570,6 @@ public NotEqual notEqual(Operand x, Operand y, *

where \(\psi(x)\) is the digamma function. * The polygamma function is defined only for non-negative integer orders \a\. * - * @param data type for {@code z} output * @param a The a value * @param x The x value * @param data type for {@code Polygamma} output and operands @@ -1667,7 +1604,6 @@ public PopulationCount populationCount(Operand x) { * tf.pow(x, y) ==> [[256, 65536], [9, 27]] * * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code Pow} output and operands @@ -1680,7 +1616,6 @@ public Pow pow(Operand x, Operand y) { /** * Returns x + y element-wise, working on quantized buffers. * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param minX The float value that the lowest quantized {@code x} value represents. @@ -1700,7 +1635,6 @@ public QuantizedAdd quantizedAdd(Operand data type for {@code z} output * @param x The x value * @param y The y value * @param minX The float value that the lowest quantized {@code x} value represents. @@ -1729,7 +1663,6 @@ public QuantizedMul quantizedMul(Operand * - * @param data type for {@code output} output * @param input The input value * @return a new instance of Real, with default output types */ @@ -1749,7 +1682,6 @@ public Real real(Operand input) { * tf.real(input) ==> [-2.25, 3.25] * * - * @param data type for {@code output} output * @param input The input value * @param Tout The value of the Tout attribute * @param data type for {@code Real} output and operands @@ -1765,7 +1697,6 @@ public Real real(Operand input, Class *

NOTE: {@code Div} supports broadcasting. More about broadcasting * here * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code RealDiv} output and operands @@ -1779,7 +1710,6 @@ public RealDiv realDiv(Operand x, Operand y) { * Computes the reciprocal of x element-wise. * I.e., \(y = 1 / x\). * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Reciprocal} output and operands * @return a new instance of Reciprocal @@ -1793,7 +1723,6 @@ public Reciprocal reciprocal(Operand x) { * Specifically, {@code grad = -dy * y*y}, where {@code y = 1/x}, and {@code dy} * is the corresponding input gradient. * - * @param data type for {@code z} output * @param y The y value * @param dy The dy value * @param data type for {@code ReciprocalGrad} output and operands @@ -1822,7 +1751,6 @@ public RequantizationRangePerChannel requantizationRangePerChannel( /** * Requantizes input with min and max values known per channel. * - * @param data type for {@code output} output * @param input The original input tensor. * @param inputMin The minimum value of the input tensor * @param inputMax The maximum value of the input tensor. @@ -1850,7 +1778,6 @@ public RequantizePerChannel requantizePerChannel( * rint([-1.7, -1.5, -0.2, 0.2, 1.5, 1.7, 2.0]) ==> [-2., -2., -0., 0., 2., 2., 2.] * * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Rint} output and operands * @return a new instance of Rint @@ -1864,7 +1791,6 @@ public Rint rint(Operand x) { * Rounds half to even. Also known as bankers rounding. If you want to round * according to the current system rounding mode use std::cint. * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Round} output and operands * @return a new instance of Round @@ -1877,7 +1803,6 @@ public Round round(Operand x) { * Computes reciprocal of square root of x element-wise. * I.e., \(y = 1 / \sqrt{x}\). * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Rsqrt} output and operands * @return a new instance of Rsqrt @@ -1891,7 +1816,6 @@ public Rsqrt rsqrt(Operand x) { * Specifically, {@code grad = dy * -0.5 * y^3}, where {@code y = rsqrt(x)}, and {@code dy} * is the corresponding input gradient. * - * @param data type for {@code z} output * @param y The y value * @param dy The dy value * @param data type for {@code RsqrtGrad} output and operands @@ -1942,7 +1866,6 @@ public RsqrtGrad rsqrtGrad(Operand y, Operand dy) { * * * - * @param data type for {@code output} output * @param data The data value * @param segmentIds A 1-D tensor whose size is equal to the size of {@code data}'s * first dimension. Values should be sorted and can be repeated. @@ -1989,7 +1912,6 @@ public SegmentMax segmentMax(Operand data, * * * - * @param data type for {@code output} output * @param data The data value * @param segmentIds A 1-D tensor whose size is equal to the size of {@code data}'s * first dimension. Values should be sorted and can be repeated. @@ -2044,7 +1966,6 @@ public SegmentMean segmentMean(Operand data, * * * - * @param data type for {@code output} output * @param data The data value * @param segmentIds A 1-D tensor whose size is equal to the size of {@code data}'s * first dimension. Values should be sorted and can be repeated. @@ -2093,7 +2014,6 @@ public SegmentMin segmentMin(Operand data, * * * - * @param data type for {@code output} output * @param data The data value * @param segmentIds A 1-D tensor whose size is equal to the size of {@code data}'s * first dimension. Values should be sorted and can be repeated. @@ -2119,9 +2039,7 @@ public SegmentProd segmentProd(Operand data, * that {@code segment_ids[j] == i}. *

If the sum is empty for a given segment ID {@code i}, {@code output[i] = 0}. *

Note that this op is currently only supported with jit_compile=True. - * * - * @param data type for {@code output} output * @param data The data value * @param segmentIds A 1-D tensor whose size is equal to the size of {@code data}'s * first dimension. Values should be sorted and can be repeated. @@ -2141,7 +2059,6 @@ public SegmentSum segmentSum(Operand data, * Computes sigmoid of {@code x} element-wise. * Specifically, {@code y = 1 / (1 + exp(-x))}. * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Sigmoid} output and operands * @return a new instance of Sigmoid @@ -2155,7 +2072,6 @@ public Sigmoid sigmoid(Operand x) { * Specifically, {@code grad = dy * y * (1 - y)}, where {@code y = sigmoid(x)}, and * {@code dy} is the corresponding input gradient. * - * @param data type for {@code z} output * @param y The y value * @param dy The dy value * @param data type for {@code SigmoidGrad} output and operands @@ -2179,7 +2095,6 @@ public SigmoidGrad sigmoidGrad(Operand y, Operand dy) * * * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Sign} output and operands * @return a new instance of Sign @@ -2198,7 +2113,6 @@ public Sign sign(Operand x) { * tf.math.sin(x) ==> [nan -0.4121185 -0.47942555 0.84147096 0.9320391 -0.87329733 -0.54402107 nan] * * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Sin} output and operands * @return a new instance of Sin @@ -2217,7 +2131,6 @@ public Sin sin(Operand x) { * tf.math.sinh(x) ==> [-inf -4.0515420e+03 -5.2109528e-01 1.1752012e+00 1.5094614e+00 3.6268604e+00 1.1013232e+04 inf] * * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Sinh} output and operands * @return a new instance of Sinh @@ -2231,7 +2144,6 @@ public Sinh sinh(Operand x) { * Creates a Sobol sequence with {@code num_results} samples. Each sample has dimension * {@code dim}. Skips the first {@code skip} samples. * - * @param data type for {@code samples} output * @param dim Positive scalar {@code Tensor} representing each sample's dimension. * @param numResults Positive scalar {@code Tensor} of dtype int32. The number of Sobol points to return * in the output. @@ -2249,7 +2161,6 @@ public SobolSample sobolSample(Operand dim, Operand nu * Creates a Sobol sequence with {@code num_results} samples. Each sample has dimension * {@code dim}. Skips the first {@code skip} samples. * - * @param data type for {@code samples} output * @param dim Positive scalar {@code Tensor} representing each sample's dimension. * @param numResults Positive scalar {@code Tensor} of dtype int32. The number of Sobol points to return * in the output. @@ -2267,7 +2178,6 @@ public SobolSample sobolSample(Operand dim, /** * The Softplus operation * - * @param data type for {@code activations} output * @param features The features value * @param data type for {@code Softplus} output and operands * @return a new instance of Softplus @@ -2279,7 +2189,6 @@ public Softplus softplus(Operand features) { /** * Computes softplus gradients for a softplus operation. * - * @param data type for {@code backprops} output * @param gradients The backpropagated gradients to the corresponding softplus operation. * @param features The features passed as input to the corresponding softplus operation. * @param data type for {@code SoftplusGrad} output and operands @@ -2294,7 +2203,6 @@ public SoftplusGrad softplusGrad(Operand gradients, * Computes square root of x element-wise. * I.e., \(y = \sqrt{x} = x^{1/2}\). * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Sqrt} output and operands * @return a new instance of Sqrt @@ -2308,7 +2216,6 @@ public Sqrt sqrt(Operand x) { * Specifically, {@code grad = dy * 0.5 / y}, where {@code y = sqrt(x)}, and {@code dy} * is the corresponding input gradient. * - * @param data type for {@code z} output * @param y The y value * @param dy The dy value * @param data type for {@code SqrtGrad} output and operands @@ -2322,7 +2229,6 @@ public SqrtGrad sqrtGrad(Operand y, Operand dy) { * Computes square of x element-wise. * I.e., \(y = x * x = x^2\). * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Square} output and operands * @return a new instance of Square @@ -2336,7 +2242,6 @@ public Square square(Operand x) { * NOTE: {@code math.SquaredDifference} supports broadcasting. More about broadcasting * here * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code SquaredDifference} output and operands @@ -2351,7 +2256,6 @@ public SquaredDifference squaredDifference(Operand x, Op * NOTE: {@code math.Sub} supports broadcasting. More about broadcasting * here * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code Sub} output and operands @@ -2372,7 +2276,6 @@ public Sub sub(Operand x, Operand y) { * tf.math.tan(x) ==> [nan 0.45231566 -0.5463025 1.5574077 2.572152 -1.7925274 0.32097113 nan] * * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Tan} output and operands * @return a new instance of Tan @@ -2398,7 +2301,6 @@ public Tan tan(Operand x) { * * * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Tanh} output and operands * @return a new instance of Tanh @@ -2412,7 +2314,6 @@ public Tanh tanh(Operand x) { * Specifically, {@code grad = dy * (1 - y*y)}, where {@code y = tanh(x)}, and {@code dy} * is the corresponding input gradient. * - * @param data type for {@code z} output * @param y The y value * @param dy The dy value * @param data type for {@code TanhGrad} output and operands @@ -2431,7 +2332,6 @@ public TanhGrad tanhGrad(Operand y, Operand dy) { *

NOTE: {@code math.TruncateDiv} supports broadcasting. More about broadcasting * here * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code TruncateDiv} output and operands @@ -2447,7 +2347,6 @@ public TruncateDiv truncateDiv(Operand x, Operand y) *

NOTE: {@code math.TruncateMod} supports broadcasting. More about broadcasting * here * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code TruncateMod} output and operands @@ -2475,7 +2374,6 @@ public TruncateMod truncateMod(Operand x, Operand y * if {@code operand.quantization_axis} >= 0 and {@code output.quantization_axis} >= 0, * {@code operand.dims} - {@code operand.quantization_axis} must be equal to {@code output.dims} - {@code output.quantization_axis}. * - * @param data type for {@code output} output * @param lhs Must be a quantized tensor. * @param rhs Must be a quantized tensor. * @param lhsScales The float value(s) used as scale factors when quantizing the original data that {@code lhs} represents. @@ -2547,7 +2445,6 @@ public UniformQuantizedAdd uniformQuantizedAdd(Operand * * * - * @param data type for {@code output} output * @param data The data value * @param segmentIds A tensor whose shape is a prefix of {@code data.shape}. * The values must be less than {@code num_segments}. @@ -2594,7 +2491,6 @@ public UnsortedSegmentMax unsortedSegmentMax(Operand d * out-of-bound indices or outputting a tensor with a 0 stored in the first * dimension of its shape if {@code num_segments} is 0. * - * @param data type for {@code output} output * @param data The data value * @param segmentIds A tensor whose shape is a prefix of {@code data.shape}. * The values must be less than {@code num_segments}. @@ -2640,7 +2536,6 @@ public UnsortedSegmentMin unsortedSegmentMin(Operand d * out-of-bound indices or outputting a tensor with a 0 stored in the first * dimension of its shape if {@code num_segments} is 0. * - * @param data type for {@code output} output * @param data The data value * @param segmentIds A tensor whose shape is a prefix of {@code data.shape}. * The values must be less than {@code num_segments}. @@ -2689,7 +2584,6 @@ public UnsortedSegmentProd unsortedSegmentProd(Operand d * * * - * @param data type for {@code output} output * @param data The data value * @param segmentIds A tensor whose shape is a prefix of {@code data.shape}. * The values must be less than {@code num_segments}. @@ -2707,7 +2601,6 @@ public UnsortedSegmentSum unsortedSegmentSum(Operand dat /** * Returns 0 if x == 0, and x / y otherwise, elementwise. * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code Xdivy} output and operands @@ -2720,7 +2613,6 @@ public Xdivy xdivy(Operand x, Operand y) { /** * Returns 0 if x == 0, and x * log1p(y) otherwise, elementwise. * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code Xlog1py} output and operands @@ -2733,7 +2625,6 @@ public Xlog1py xlog1py(Operand x, Operand y) { /** * Returns 0 if x == 0, and x * log(y) otherwise, elementwise. * - * @param data type for {@code z} output * @param x The x value * @param y The y value * @param data type for {@code Xlogy} output and operands @@ -2748,7 +2639,6 @@ public Xlogy xlogy(Operand x, Operand y) { * The Hurwitz zeta function is defined as: *

\(\zeta(x, q) = \sum_{n=0}^{\infty} (q + n)^{-x}\) * - * @param data type for {@code z} output * @param x The x value * @param q The q value * @param data type for {@code Zeta} output and operands diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/MathSpecialOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/MathSpecialOps.java index 05af5fe921d..e486615af1b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/MathSpecialOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/MathSpecialOps.java @@ -51,7 +51,6 @@ public final class MathSpecialOps { /** * The BesselJ0 operation * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code BesselJ0} output and operands * @return a new instance of BesselJ0 @@ -63,7 +62,6 @@ public BesselJ0 besselJ0(Operand x) { /** * The BesselJ1 operation * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code BesselJ1} output and operands * @return a new instance of BesselJ1 @@ -75,7 +73,6 @@ public BesselJ1 besselJ1(Operand x) { /** * The BesselK0 operation * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code BesselK0} output and operands * @return a new instance of BesselK0 @@ -87,7 +84,6 @@ public BesselK0 besselK0(Operand x) { /** * The BesselK0e operation * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code BesselK0e} output and operands * @return a new instance of BesselK0e @@ -99,7 +95,6 @@ public BesselK0e besselK0e(Operand x) { /** * The BesselK1 operation * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code BesselK1} output and operands * @return a new instance of BesselK1 @@ -111,7 +106,6 @@ public BesselK1 besselK1(Operand x) { /** * The BesselK1e operation * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code BesselK1e} output and operands * @return a new instance of BesselK1e @@ -123,7 +117,6 @@ public BesselK1e besselK1e(Operand x) { /** * The BesselY0 operation * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code BesselY0} output and operands * @return a new instance of BesselY0 @@ -135,7 +128,6 @@ public BesselY0 besselY0(Operand x) { /** * The BesselY1 operation * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code BesselY1} output and operands * @return a new instance of BesselY1 @@ -147,7 +139,6 @@ public BesselY1 besselY1(Operand x) { /** * The Dawsn operation * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Dawsn} output and operands * @return a new instance of Dawsn @@ -159,7 +150,6 @@ public Dawsn dawsn(Operand x) { /** * The Expint operation * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Expint} output and operands * @return a new instance of Expint @@ -171,7 +161,6 @@ public Expint expint(Operand x) { /** * The FresnelCos operation * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code FresnelCos} output and operands * @return a new instance of FresnelCos @@ -183,7 +172,6 @@ public FresnelCos fresnelCos(Operand x) { /** * The FresnelSin operation * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code FresnelSin} output and operands * @return a new instance of FresnelSin @@ -195,7 +183,6 @@ public FresnelSin fresnelSin(Operand x) { /** * The Spence operation * - * @param data type for {@code y} output * @param x The x value * @param data type for {@code Spence} output and operands * @return a new instance of Spence diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/NnOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/NnOps.java index 2e20b52b946..c9f086a3255 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/NnOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/NnOps.java @@ -155,7 +155,6 @@ public final class NnOps { * Each entry in {@code output} is the mean of the corresponding size {@code ksize} * window in {@code value}. * - * @param data type for {@code output} output * @param value 4-D with shape {@code [batch, height, width, channels]}. * @param ksize The size of the sliding window for each dimension of {@code value}. * @param strides The stride of the sliding window for each dimension of {@code value}. @@ -174,7 +173,6 @@ public AvgPool avgPool(Operand value, List ksize * Each entry in {@code output} is the mean of the corresponding size {@code ksize} window in * {@code value}. * - * @param data type for {@code output} output * @param input Shape {@code [batch, depth, rows, cols, channels]} tensor to pool over. * @param ksize 1-D tensor of length 5. The size of the window for each dimension of * the input tensor. Must have {@code ksize[0] = ksize[4] = 1}. @@ -193,7 +191,6 @@ public AvgPool3d avgPool3d(Operand input, List k /** * Computes gradients of average pooling function. * - * @param data type for {@code output} output * @param origInputShape The original input dimensions. * @param grad Output backprop of shape {@code [batch, depth, rows, cols, channels]}. * @param ksize 1-D tensor of length 5. The size of the window for each dimension of @@ -214,7 +211,6 @@ public AvgPool3dGrad avgPool3dGrad(Operand origIn /** * Computes gradients of the average pooling function. * - * @param data type for {@code output} output * @param origInputShape 1-D. Shape of the original input to {@code avg_pool}. * @param grad 4-D with shape {@code [batch, height, width, channels]}. Gradients w.r.t. * the output of {@code avg_pool}. @@ -235,7 +231,6 @@ public AvgPoolGrad avgPoolGrad(Operand origInputS * Batch normalization. * This op is deprecated. Prefer {@code tf.nn.batch_normalization}. * - * @param data type for {@code result} output * @param t A 4D input Tensor. * @param m A 1D mean Tensor with size matching the last dimension of t. * This is the first output from tf.nn.moments, @@ -264,7 +259,6 @@ public BatchNormWithGlobalNormalization batchNormWithGlobal * Gradients for batch normalization. * This op is deprecated. See {@code tf.nn.batch_normalization}. * - * @param data type for {@code dx} output * @param t A 4D input Tensor. * @param m A 1D mean Tensor with size matching the last dimension of t. * This is the first output from tf.nn.moments, @@ -293,7 +287,6 @@ public BatchNormWithGlobalNormalizationGrad batchNormWithGl * This is a special case of {@code tf.add} where {@code bias} is restricted to be 1-D. * Broadcasting is supported, so {@code value} may have any number of dimensions. * - * @param data type for {@code output} output * @param value Any number of dimensions. * @param bias 1-D with size the last dimension of {@code value}. * @param options carries optional attribute values @@ -311,7 +304,6 @@ public BiasAdd biasAdd(Operand value, Operand bias, * For NHWC data format, the feature dimension is the last. For NCHW data format, * the feature dimension is the third-to-last. * - * @param data type for {@code output} output * @param outBackprop Any number of dimensions. * @param options carries optional attribute values * @param data type for {@code BiasAddGrad} output and operands @@ -345,7 +337,6 @@ public BiasAddGrad biasAddGrad(Operand outBackprop, * all gate-related outputs should be reordered. * * - * @param data type for {@code i} output * @param seqLenMax Maximum time length actually used by this input. Outputs are padded * with zeros beyond this length. * @param x The sequence input to the LSTM, shape (timelen, batch_size, num_inputs). @@ -370,7 +361,6 @@ public BlockLSTM blockLSTM(Operand seqLenMax, Ope * Computes the LSTM cell backward propagation for the entire time sequence. * This implementation is to be used in conjunction of BlockLSTMV2. * - * @param data type for {@code x_grad} output * @param seqLenMax Maximum time length actually used by this input. Outputs are padded * with zeros beyond this length. * @param x The sequence input to the LSTM, shape (timelen, batch_size, num_inputs). @@ -445,7 +435,6 @@ public ComputeAccidentalHits computeAccidentalHits(Operand trueClasses, * General function for computing a N-D convolution. It is required that * {@code 1 <= N <= 3}. * - * @param data type for {@code output} output * @param input Tensor of type T and shape {@code batch_shape + spatial_shape + [in_channels]} in the * case that {@code channels_last_format = true} or shape * {@code batch_shape + [in_channels] + spatial_shape} if {@code channels_last_format = false}. @@ -490,7 +479,6 @@ public Conv conv(Operand input, Operand filter, Lis *

Must have {@code strides[0] = strides[3] = 1}. For the most common case of the same * horizontal and vertices strides, {@code strides = [1, stride, stride, 1]}. * - * @param data type for {@code output} output * @param input A 4-D tensor. The dimension order is interpreted according to the value * of {@code data_format}, see below for details. * @param filter A 4-D tensor of shape @@ -511,7 +499,6 @@ public Conv2d conv2d(Operand input, Operand filter, /** * Computes the gradients of convolution with respect to the filter. * - * @param data type for {@code output} output * @param input 4-D with shape {@code [batch, in_height, in_width, in_channels]}. * @param filterSizes An integer vector representing the tensor shape of {@code filter}, * where {@code filter} is a 4-D @@ -535,7 +522,6 @@ public Conv2dBackpropFilter conv2dBackpropFilter(Operand< /** * Computes the gradients of convolution with respect to the input. * - * @param data type for {@code output} output * @param inputSizes An integer vector representing the shape of {@code input}, * where {@code input} is a 4-D {@code [batch, height, width, channels]} tensor. * @param filter 4-D with shape @@ -563,7 +549,6 @@ public Conv2dBackpropInput conv2dBackpropInput(OperandOur Conv3D implements a form of cross-correlation. * - * @param data type for {@code output} output * @param input Shape {@code [batch, in_depth, in_height, in_width, in_channels]}. * @param filter Shape {@code [filter_depth, filter_height, filter_width, in_channels, out_channels]}. {@code in_channels} must match between {@code input} and {@code filter}. * @param strides 1-D tensor of length 5. The stride of the sliding window for each @@ -581,7 +566,6 @@ public Conv3d conv3d(Operand input, Operand filter, /** * Computes the gradients of 3-D convolution with respect to the filter. * - * @param data type for {@code output} output * @param input Shape {@code [batch, depth, rows, cols, in_channels]}. * @param filterSizes An integer vector representing the tensor shape of {@code filter}, * where {@code filter} is a 5-D @@ -604,7 +588,6 @@ public Conv3dBackpropFilter conv3dBackpropFilter(Operand< /** * Computes the gradients of 3-D convolution with respect to the input. * - * @param data type for {@code output} output * @param inputSizes An integer vector representing the tensor shape of {@code input}, * where {@code input} is a 5-D * {@code [batch, depth, rows, cols, in_channels]} tensor. @@ -632,7 +615,6 @@ public Conv3dBackpropInput conv3dBackpropInput( * "A B" is returned if merge_repeated = True but "A B B B B" is * returned if merge_repeated = False. * - * @param data type for {@code log_probability} output * @param inputs 3-D, shape: {@code (max_time x batch_size x num_classes)}, the logits. * @param sequenceLength A vector containing sequence lengths, size {@code (batch)}. * @param beamWidth A scalar >= 0 (beam search beam width). @@ -658,7 +640,6 @@ public CtcBeamSearchDecoder ctcBeamSearchDecoder(Operand< * time and batch corresponds to the blank, index {@code (num_classes - 1)}, no new * element is emitted. * - * @param data type for {@code log_probability} output * @param inputs 3-D, shape: {@code (max_time x batch_size x num_classes)}, the logits. * @param sequenceLength A vector containing sequence lengths, size {@code (batch_size)}. * @param options carries optional attribute values @@ -675,7 +656,6 @@ public CtcGreedyDecoder ctcGreedyDecoder(Operand input * the gradient. This class performs the softmax operation for you, so inputs * should be e.g. linear projections of outputs by an LSTM. * - * @param data type for {@code loss} output * @param inputs 3-D, shape: {@code (max_time x batch_size x num_classes)}, the logits. * @param labelsIndices The indices of a {@code SparseTensor}. * {@code labels_indices(i, :) == [b, t]} means {@code labels_values(i)} stores the id for @@ -730,7 +710,6 @@ public CtcLoss ctcLoss(Operand inputs, Operand * reserve_space: An opaque tensor that can be used in backprop calculation. It * is only produced if is_training is true. * - * @param data type for {@code output} output * @param input The input value * @param inputH The inputH value * @param inputC The inputC value @@ -795,7 +774,6 @@ public CudnnRNN cudnnRNN(Operand input, Operand inp * params_backprop: The backprop to the params buffer in the forward pass. Has the * same shape as params. * - * @param data type for {@code input_backprop} output * @param input The input value * @param inputH The inputH value * @param inputC The inputC value @@ -852,7 +830,6 @@ public CudnnRNNBackprop cudnnRNNBackprop(Operand input * num_proj: The output dimensionality for the projection matrices. If None or 0, * no projection is performed. * - * @param data type for {@code params} output * @param numLayers The numLayers value * @param numUnits The numUnits value * @param inputSize The inputSize value @@ -900,7 +877,6 @@ public CudnnRNNCanonicalToParams cudnnRNNCanonicalToParam * num_proj: The output dimensionality for the projection matrices. If None or 0, * no projection is performed. * - * @param data type for {@code weights} output * @param numLayers The numLayers value * @param numUnits The numUnits value * @param inputSize The inputSize value @@ -941,7 +917,6 @@ public CudnnRNNParamsToCanonical cudnnRNNParamsToCanonica * CudnnRNNParamsBiases to save and restore them in a way that is compatible * across different runs. * - * @param data type for {@code params_size} output * @param numLayers The numLayers value * @param numUnits The numUnits value * @param inputSize The inputSize value @@ -962,7 +937,6 @@ public CudnnRnnParamsSize cudnnRnnPara * Returns the dimension index in the destination data format given the one in * the source data format. * - * @param data type for {@code y} output * @param x A Tensor with each element as a dimension index in source data format. * Must be in the range [-4, 4). * @param options carries optional attribute values @@ -1006,7 +980,6 @@ public DataFormatDimMap dataFormatDimMap(Operand x, * [1, 2] * * - * @param data type for {@code y} output * @param x Tensor of rank 1 or 2 in source data format. * @param options carries optional attribute values * @param data type for {@code DataFormatVecPermute} output and operands @@ -1094,7 +1067,6 @@ public DataFormatVecPermute dataFormatVecPermute(Operand< * * * - * @param data type for {@code output} output * @param input The input value * @param blockSize The size of the spatial block, same as in Space2Depth. * @param options carries optional attribute values @@ -1125,7 +1097,6 @@ public DepthToSpace depthToSpace(Operand input, Long blo *

Must have {@code strides[0] = strides[3] = 1}. For the most common case of the same * horizontal and vertices strides, {@code strides = [1, stride, stride, 1]}. * - * @param data type for {@code output} output * @param input The input value * @param filter The filter value * @param strides 1-D of length 4. The stride of the sliding window for each dimension @@ -1144,7 +1115,6 @@ public DepthwiseConv2dNative depthwiseConv2dNative(Operan /** * Computes the gradients of depthwise convolution with respect to the filter. * - * @param data type for {@code output} output * @param input 4-D with shape based on {@code data_format}. For example, if * {@code data_format} is 'NHWC' then {@code input} is a 4-D {@code [batch, in_height, in_width, in_channels]} tensor. * @param filterSizes An integer vector representing the tensor shape of {@code filter}, @@ -1170,7 +1140,6 @@ public DepthwiseConv2dNativeBackpropFilter depthwiseConv2 /** * Computes the gradients of depthwise convolution with respect to the input. * - * @param data type for {@code output} output * @param inputSizes An integer vector representing the shape of {@code input}, based * on {@code data_format}. For example, if {@code data_format} is 'NHWC' then * {@code input} is a 4-D {@code [batch, height, width, channels]} tensor. @@ -1217,7 +1186,6 @@ public DepthwiseConv2dNativeBackpropInput depthwiseConv2d *

Note on duality: The dilation of {@code input} by the {@code filter} is equal to the * negation of the erosion of {@code -input} by the reflected {@code filter}. * - * @param data type for {@code output} output * @param input 4-D with shape {@code [batch, in_height, in_width, depth]}. * @param filter 3-D with shape {@code [filter_height, filter_width, depth]}. * @param strides The stride of the sliding window for each dimension of the input @@ -1236,7 +1204,6 @@ public Dilation2d dilation2d(Operand input, Operand /** * Computes the gradient of morphological 2-D dilation with respect to the filter. * - * @param data type for {@code filter_backprop} output * @param input 4-D with shape {@code [batch, in_height, in_width, depth]}. * @param filter 3-D with shape {@code [filter_height, filter_width, depth]}. * @param outBackprop 4-D with shape {@code [batch, out_height, out_width, depth]}. @@ -1257,7 +1224,6 @@ public Dilation2dBackpropFilter dilation2dBackpropFilter( /** * Computes the gradient of morphological 2-D dilation with respect to the input. * - * @param data type for {@code in_backprop} output * @param input 4-D with shape {@code [batch, in_height, in_width, depth]}. * @param filter 3-D with shape {@code [filter_height, filter_width, depth]}. * @param outBackprop 4-D with shape {@code [batch, out_height, out_width, depth]}. @@ -1298,7 +1264,6 @@ public Dilation2dBackpropInput dilation2dBackpropInput(Op *

See Fast and Accurate Deep Network Learning by Exponential Linear Units (ELUs) * * - * @param data type for {@code activations} output * @param features The features value * @param data type for {@code Elu} output and operands * @return a new instance of Elu @@ -1310,7 +1275,6 @@ public Elu elu(Operand features) { /** * Computes gradients for the exponential linear (Elu) operation. * - * @param data type for {@code backprops} output * @param gradients The backpropagated gradients to the corresponding Elu operation. * @param outputs The outputs of the corresponding Elu operation. * @param data type for {@code EluGrad} output and operands @@ -1358,7 +1322,6 @@ public FixedUnigramCandidateSampler fixedUnigramCandidateSampler(Operand * generated, a mean operation is performed instead of a max operation in each * pooling region. * - * @param data type for {@code output} output * @param value 4-D with shape {@code [batch, height, width, channels]}. * @param poolingRatio Pooling ratio for each dimension of {@code value}, currently only * supports row and col dimension and should be >= 1.0. For example, a valid @@ -1383,7 +1346,6 @@ public FractionalAvgPool fractionalAvgPool(Operand val * just need to know the shape of original input tensor, instead of the whole * tensor. * - * @param data type for {@code output} output * @param origInputTensorShape Original input tensor shape for {@code fractional_avg_pool} * @param outBackprop 4-D with shape {@code [batch, height, width, channels]}. Gradients * w.r.t. the output of {@code fractional_avg_pool}. @@ -1431,7 +1393,6 @@ public FractionalAvgPoolGrad fractionalAvgPoolGrad( *

For more details on fractional max pooling, see this paper: * Benjamin Graham, Fractional Max-Pooling * - * @param data type for {@code output} output * @param value 4-D with shape {@code [batch, height, width, channels]}. * @param poolingRatio Pooling ratio for each dimension of {@code value}, currently only * supports row and col dimension and should be >= 1.0. For example, a valid @@ -1451,7 +1412,6 @@ public FractionalMaxPool fractionalMaxPool(Operand val /** * Computes gradient of the FractionalMaxPool function. * - * @param data type for {@code output} output * @param origInput Original input for {@code fractional_max_pool} * @param origOutput Original output for {@code fractional_max_pool} * @param outBackprop 4-D with shape {@code [batch, height, width, channels]}. Gradients @@ -1475,8 +1435,6 @@ public FractionalMaxPoolGrad fractionalMaxPoolGrad(Operan * Note that the size of 4D Tensors are defined by either "NHWC" or "NCHW". * The size of 1D Tensors matches the dimension C of the 4D Tensors. * - * @param data type for {@code y} output - * @param data type for {@code batch_mean} output * @param x A 4D Tensor for input data. * @param scale A 1D Tensor for scaling factor, to scale the normalized x. * @param offset A 1D Tensor for offset, to shift to the normalized x. @@ -1500,8 +1458,6 @@ public FusedBatchNorm fusedBatchNor * Note that the size of 4D Tensors are defined by either "NHWC" or "NCHW". * The size of 1D Tensors matches the dimension C of the 4D Tensors. * - * @param data type for {@code x_backprop} output - * @param data type for {@code scale_backprop} output * @param yBackprop A 4D Tensor for the gradient with respect to y. * @param x A 4D Tensor for input data. * @param scale A 1D Tensor for scaling factor, to scale the normalized x. @@ -1542,7 +1498,6 @@ public FusedBatchNormGrad fusedBatc * will block if multiple versions are being run in parallel. This is because this * operator is primarily an optimization to minimize memory usage. * - * @param data type for {@code output} output * @param input 4-D with shape {@code [batch, in_height, in_width, in_channels]}. * @param paddings A two-column matrix specifying the padding sizes. The number of * rows must be the same as the rank of {@code input}. @@ -1574,7 +1529,6 @@ public FusedPadConv2d fusedPadConv2d(Operand input, * will block if multiple versions are being run in parallel. This is because this * operator is primarily an optimization to minimize memory usage. * - * @param data type for {@code output} output * @param input 4-D with shape {@code [batch, in_height, in_width, in_channels]}. * @param sizeOutput A 1-D int32 Tensor of 2 elements: {@code new_height, new_width}. The * new size for the images. @@ -1637,7 +1591,6 @@ public FusedResizeAndPadConv2d fusedResizeAndPadConv2d(Op * h = (1-u) \circ c + u \circ h_prev * * - * @param data type for {@code r} output * @param x The x value * @param hPrev The hPrev value * @param wRu The wRu value @@ -1728,7 +1681,6 @@ public GRUBlockCell gRUBlockCell(Operand x, Operand * d_b_c = sum of d_c_bar along axis = 0 * * - * @param data type for {@code d_x} output * @param x The x value * @param hPrev The hPrev value * @param wRu The wRu value @@ -1778,7 +1730,6 @@ public InTopK inTopK(Operand predictions, Operand< * Specifically, {@code grad = -dy * y*y}, where {@code y = 1/x}, and {@code dy} * is the corresponding input gradient. * - * @param data type for {@code z} output * @param y The y value * @param dy The dy value * @param data type for {@code InvGrad} output and operands @@ -1791,7 +1742,6 @@ public InvGrad invGrad(Operand y, Operand dy) { /** * Solves a batch of isotonic regression problems. * - * @param data type for {@code output} output * @param input A (batch_size, dim)-tensor holding a batch of inputs. * @return a new instance of IsotonicRegression, with default output types */ @@ -1802,7 +1752,6 @@ public IsotonicRegression isotonicRegression(Operand data type for {@code output} output * @param input A (batch_size, dim)-tensor holding a batch of inputs. * @param outputDtype Dtype of output. * @param data type for {@code IsotonicRegression} output and operands @@ -1820,7 +1769,6 @@ public IsotonicRegression isotonicRegression( * output = sum(t ** 2) / 2 * * - * @param data type for {@code output} output * @param t Typically 2-D, but may have any dimensions. * @param data type for {@code L2Loss} output and operands * @return a new instance of L2Loss @@ -1854,7 +1802,6 @@ public L2Loss l2Loss(Operand t) { * h = co .* o * * - * @param data type for {@code i} output * @param x The input to the LSTM cell, shape (batch_size, num_inputs). * @param csPrev Value of the cell state at previous time step. * @param hPrev Output of the previous cell at previous time step. @@ -1877,7 +1824,6 @@ public LSTMBlockCell lSTMBlockCell(Operand x, Operand< * Computes the LSTM cell backward propagation for 1 timestep. * This implementation is to be used in conjunction of LSTMBlockCell. * - * @param data type for {@code cs_prev_grad} output * @param x The input to the LSTM cell, shape (batch_size, num_inputs). * @param csPrev The previous cell state. * @param hPrev The previous h state. @@ -1908,7 +1854,6 @@ public LSTMBlockCellGrad lSTMBlockCellGrad(Operand x, /** * Computes rectified linear: {@code max(features, features * alpha)}. * - * @param data type for {@code activations} output * @param features The features value * @param options carries optional attribute values * @param data type for {@code LeakyRelu} output and operands @@ -1960,7 +1905,6 @@ public LearnedUnigramCandidateSampler learnedUnigramCandidateSampler(OperandFor details, see Krizhevsky et al., ImageNet classification with deep * convolutional neural networks (NIPS 2012) . * - * @param data type for {@code output} output * @param input 4-D. * @param options carries optional attribute values * @param data type for {@code LRN} output and operands @@ -1974,7 +1918,6 @@ public LocalResponseNormalization localResponseNormalizat /** * Gradients for Local Response Normalization. * - * @param data type for {@code output} output * @param inputGrads 4-D with shape {@code [batch, height, width, channels]}. * @param inputImage 4-D with shape {@code [batch, height, width, channels]}. * @param outputImage 4-D with shape {@code [batch, height, width, channels]}. @@ -1995,7 +1938,6 @@ public LocalResponseNormalizationGrad localResponseNormal * logsoftmax[i, j] = logits[i, j] - log(sum(exp(logits[i]))) * * - * @param data type for {@code logsoftmax} output * @param logits 2-D with shape {@code [batch_size, num_classes]}. * @param data type for {@code LogSoftmax} output and operands * @return a new instance of LogSoftmax @@ -2007,7 +1949,6 @@ public LogSoftmax logSoftmax(Operand logits) { /** * Performs max pooling on the input. * - * @param data type for {@code output} output * @param input 4-D input to pool over. * @param ksize The size of the window for each dimension of the input tensor. * @param strides The stride of the sliding window for each dimension of the @@ -2025,7 +1966,6 @@ public MaxPool maxPool(Operand input, Operand /** * Performs 3D max pooling on the input. * - * @param data type for {@code output} output * @param input Shape {@code [batch, depth, rows, cols, channels]} tensor to pool over. * @param ksize 1-D tensor of length 5. The size of the window for each dimension of * the input tensor. Must have {@code ksize[0] = ksize[4] = 1}. @@ -2044,7 +1984,6 @@ public MaxPool3d maxPool3d(Operand input, List k /** * Computes gradients of 3D max pooling function. * - * @param data type for {@code output} output * @param origInput The original input tensor. * @param origOutput The original output tensor. * @param grad Output backprop of shape {@code [batch, depth, rows, cols, channels]}. @@ -2067,7 +2006,6 @@ public MaxPool3dGrad maxPool3dGrad(Ope /** * Computes second-order gradients of the maxpooling function. * - * @param data type for {@code output} output * @param origInput The original input tensor. * @param origOutput The original output tensor. * @param grad Output backprop of shape {@code [batch, depth, rows, cols, channels]}. @@ -2089,7 +2027,6 @@ public MaxPool3dGradGrad maxPool3dGradGrad(Operand ori /** * Computes gradients of the maxpooling function. * - * @param data type for {@code output} output * @param origInput The original input tensor. * @param origOutput The original output tensor. * @param grad 4-D. Gradients w.r.t. the output of {@code max_pool}. @@ -2110,7 +2047,6 @@ public MaxPoolGrad maxPoolGrad(Operand origInput, Oper /** * Computes second-order gradients of the maxpooling function. * - * @param data type for {@code output} output * @param origInput The original input tensor. * @param origOutput The original output tensor. * @param grad 4-D. Gradients of gradients w.r.t. the input of {@code max_pool}. @@ -2131,7 +2067,6 @@ public MaxPoolGradGrad maxPoolGradGrad(Operand origInp /** * Computes second-order gradients of the maxpooling function. * - * @param data type for {@code output} output * @param input The original input. * @param grad 4-D with shape {@code [batch, height, width, channels]}. Gradients w.r.t. the * input of {@code max_pool}. @@ -2153,7 +2088,6 @@ public MaxPoolGradGradWithArgmax maxPoolGradGradWithArgma /** * Computes gradients of the maxpooling function. * - * @param data type for {@code output} output * @param input The original input. * @param grad 4-D with shape {@code [batch, height, width, channels]}. Gradients w.r.t. the * output of {@code max_pool}. @@ -2183,8 +2117,6 @@ public MaxPoolGradWithArgmax maxPoolGradWithArgmax(Operan * (either negative or too large). This is a bug, but fixing it is difficult to do * in a safe backwards compatible way, especially due to flattening. * - * @param data type for {@code output} output - * @param data type for {@code argmax} output * @param input 4-D with shape {@code [batch, height, width, channels]}. Input to pool over. * @param ksize The size of the window for each dimension of the input tensor. * @param strides The stride of the sliding window for each dimension of the @@ -2195,7 +2127,7 @@ public MaxPoolGradWithArgmax maxPoolGradWithArgmax(Operan * @return a new instance of MaxPoolWithArgmax, with default output types */ public MaxPoolWithArgmax maxPoolWithArgmax(Operand input, - List ksize, List strides, String padding, MaxPoolWithArgmax.Options[] options) { + List ksize, List strides, String padding, MaxPoolWithArgmax.Options... options) { return MaxPoolWithArgmax.create(scope, input, ksize, strides, padding, options); } @@ -2210,8 +2142,6 @@ public MaxPoolWithArgmax maxPoolWithArgmax(Operan * (either negative or too large). This is a bug, but fixing it is difficult to do * in a safe backwards compatible way, especially due to flattening. * - * @param data type for {@code output} output - * @param data type for {@code argmax} output * @param input 4-D with shape {@code [batch, height, width, channels]}. Input to pool over. * @param ksize The size of the window for each dimension of the input tensor. * @param strides The stride of the sliding window for each dimension of the @@ -2239,7 +2169,6 @@ public MaxPoolWithArgmax maxPoolWit * values.shape = input.shape[:-1] * * - * @param data type for {@code values} output * @param input 1-D or higher with last dimension at least {@code n+1}. * @param n 0-D. Position of sorted vector to select along the last dimension (along * each row for matrices). Valid range of n is {@code [0, input.shape[:-1])} @@ -2255,7 +2184,6 @@ public NthElement nthElement(Operand input, Operand data type for {@code output} output * @param input 4-D with shape {@code [batch, height, width, channels]}. * @param minInput The float value that the lowest quantized input value represents. * @param maxInput The float value that the highest quantized input value represents. @@ -2278,7 +2206,6 @@ public QuantizedAvgPool quantizedAvgPool(Operand input * This op is deprecated and will be removed in the future. Prefer * {@code tf.nn.batch_normalization}. * - * @param data type for {@code result} output * @param t A 4D input Tensor. * @param tMin The value represented by the lowest quantized input. * @param tMax The value represented by the highest quantized input. @@ -2322,7 +2249,6 @@ public QuantizedBatchNormWithGlobalNormal * Adds Tensor 'bias' to Tensor 'input' for Quantized types. * Broadcasts the values of bias on dimensions 0..N-2 of 'input'. * - * @param data type for {@code output} output * @param input The input value * @param bias A 1D bias Tensor with size matching the last dimension of 'input'. * @param minInput The float value that the lowest quantized input value represents. @@ -2342,7 +2268,6 @@ public QuantizedBiasAdd quantizedBiasAdd(Operand data type for {@code output} output * @param input The input value * @param filter The filter value * @param minInput The minInput value @@ -2367,7 +2292,6 @@ public QuantizedConv2DAndRelu quantizedConv2DAndRelu( /** * The QuantizedConv2DAndReluAndRequantize operation * - * @param data type for {@code output} output * @param input The input value * @param filter The filter value * @param minInput The minInput value @@ -2395,7 +2319,6 @@ public QuantizedConv2DAndReluAndRequantize quantizedConv2 /** * The QuantizedConv2DAndRequantize operation * - * @param data type for {@code output} output * @param input The input value * @param filter The filter value * @param minInput The minInput value @@ -2423,7 +2346,6 @@ public QuantizedConv2DAndRequantize quantizedConv2DAndReq /** * Computes QuantizedConv2D per channel. * - * @param data type for {@code output} output * @param input The original input tensor. * @param filter The original filter tensor. * @param minInput The minimum value of the input tensor @@ -2448,7 +2370,6 @@ public QuantizedConv2DPerChannel quantizedConv2DPerChanne /** * The QuantizedConv2DWithBias operation * - * @param data type for {@code output} output * @param input The input value * @param filter The filter value * @param bias The bias value @@ -2474,7 +2395,6 @@ public QuantizedConv2DWithBias quantizedConv2DWithBias( /** * The QuantizedConv2DWithBiasAndRelu operation * - * @param data type for {@code output} output * @param input The input value * @param filter The filter value * @param bias The bias value @@ -2500,7 +2420,6 @@ public QuantizedConv2DWithBiasAndRelu quantizedConv2DWith /** * The QuantizedConv2DWithBiasAndReluAndRequantize operation * - * @param data type for {@code output} output * @param input The input value * @param filter The filter value * @param bias The bias value @@ -2529,7 +2448,6 @@ public QuantizedConv2DWithBiasAndReluAndRequantize quanti /** * The QuantizedConv2DWithBiasAndRequantize operation * - * @param data type for {@code output} output * @param input The input value * @param filter The filter value * @param bias The bias value @@ -2558,7 +2476,6 @@ public QuantizedConv2DWithBiasAndRequantize quantizedConv /** * The QuantizedConv2DWithBiasSignedSumAndReluAndRequantize operation * - * @param data type for {@code output} output * @param input The input value * @param filter The filter value * @param bias The bias value @@ -2592,7 +2509,6 @@ public QuantizedConv2DWithBiasSignedSumAndReluAndRequantize< /** * The QuantizedConv2DWithBiasSumAndRelu operation * - * @param data type for {@code output} output * @param input The input value * @param filter The filter value * @param bias The bias value @@ -2619,7 +2535,6 @@ public QuantizedConv2DWithBiasSumAndRelu quantizedConv2DW /** * The QuantizedConv2DWithBiasSumAndReluAndRequantize operation * - * @param data type for {@code output} output * @param input The input value * @param filter The filter value * @param bias The bias value @@ -2657,7 +2572,6 @@ public QuantizedConv2DWithBiasSumAndReluAndRequantize qua * This means that you can only interpret the quantized output in the same way, by * taking the returned minimum and maximum values into account. * - * @param data type for {@code output} output * @param input The input value * @param filter filter's input_depth dimension must match input's depth dimensions. * @param minInput The float value that the lowest quantized input value represents. @@ -2682,7 +2596,6 @@ public QuantizedConv2d quantizedConv2d(Operand data type for {@code output} output * @param input The original input tensor. * @param filter The original filter tensor. * @param minInput The float value that the minimum quantized input value represents. @@ -2707,7 +2620,6 @@ public QuantizedDepthwiseConv2D quantizedDepthwiseConv2D( /** * Computes quantized depthwise Conv2D with Bias. * - * @param data type for {@code output} output * @param input The original input tensor. * @param filter The original filter tensor. * @param bias The original bias tensor. @@ -2733,7 +2645,6 @@ public QuantizedDepthwiseConv2DWithBias quantizedDepthwis /** * Computes quantized depthwise Conv2D with Bias and Relu. * - * @param data type for {@code output} output * @param input The original input tensor. * @param filter The original filter tensor. * @param bias The original bias tensor. @@ -2759,7 +2670,6 @@ public QuantizedDepthwiseConv2DWithBiasAndRelu quantizedD /** * Computes quantized depthwise Conv2D with Bias, Relu and Requantize. * - * @param data type for {@code output} output * @param input The original input tensor. * @param filter The original filter tensor. * @param bias The original bias tensor. @@ -2788,7 +2698,6 @@ public QuantizedDepthwiseConv2DWithBiasAndReluAndRequantize< /** * Quantized Instance normalization. * - * @param data type for {@code y} output * @param x A 4D input Tensor. * @param xMin The value represented by the lowest quantized input. * @param xMax The value represented by the highest quantized input. @@ -2804,7 +2713,6 @@ public QuantizedInstanceNorm quantizedInstanceNorm(Operan /** * Produces the max pool of the input tensor for quantized types. * - * @param data type for {@code output} output * @param input The 4D (batch x rows x cols x depth) Tensor to MaxReduce over. * @param minInput The float value that the lowest quantized input value represents. * @param maxInput The float value that the highest quantized input value represents. @@ -2825,7 +2733,6 @@ public QuantizedMaxPool quantizedMaxPool(Operand input /** * Computes Quantized Rectified Linear: {@code max(features, 0)} * - * @param data type for {@code activations} output * @param features The features value * @param minFeatures The float value that the lowest quantized value represents. * @param maxFeatures The float value that the highest quantized value represents. @@ -2841,7 +2748,6 @@ public QuantizedRelu quantizedRelu(Operand data type for {@code activations} output * @param features The features value * @param minFeatures The float value that the lowest quantized value represents. * @param maxFeatures The float value that the highest quantized value represents. @@ -2857,7 +2763,6 @@ public QuantizedRelu6 quantizedRelu6(Operand data type for {@code activations} output * @param features The features value * @param maxValue The maxValue value * @param minFeatures The float value that the lowest quantized value represents. @@ -2885,7 +2790,6 @@ public QuantizedReluX quantizedReluX(Operand * * - * @param data type for {@code activations} output * @param features The features value * @param data type for {@code Relu} output and operands * @return a new instance of Relu @@ -2897,7 +2801,6 @@ public Relu relu(Operand features) { /** * Computes rectified linear 6: {@code min(max(features, 0), 6)}. * - * @param data type for {@code activations} output * @param features The features value * @param data type for {@code Relu6} output and operands * @return a new instance of Relu6 @@ -2909,7 +2812,6 @@ public Relu6 relu6(Operand features) { /** * Computes rectified linear 6 gradients for a Relu6 operation. * - * @param data type for {@code backprops} output * @param gradients The backpropagated gradients to the corresponding Relu6 operation. * @param features The features passed as input to the corresponding Relu6 operation, or * its output; using either one produces the same result. @@ -2923,7 +2825,6 @@ public Relu6Grad relu6Grad(Operand gradients, Operand< /** * Computes rectified linear gradients for a Relu operation. * - * @param data type for {@code backprops} output * @param gradients The backpropagated gradients to the corresponding Relu operation. * @param features The features passed as input to the corresponding Relu operation, OR * the outputs of that operation (both work equivalently). @@ -2942,7 +2843,6 @@ public ReluGrad reluGrad(Operand gradients, Operand * For correct dropout, use {@code tf.contrib.nn.alpha_dropout}. *

See Self-Normalizing Neural Networks * - * @param data type for {@code activations} output * @param features The features value * @param data type for {@code Selu} output and operands * @return a new instance of Selu @@ -2954,7 +2854,6 @@ public Selu selu(Operand features) { /** * Computes gradients for the scaled exponential linear (Selu) operation. * - * @param data type for {@code backprops} output * @param gradients The backpropagated gradients to the corresponding Selu operation. * @param outputs The outputs of the corresponding Selu operation. * @param data type for {@code SeluGrad} output and operands @@ -2971,7 +2870,6 @@ public SeluGrad seluGrad(Operand gradients, Operand * $$softmax[i, j] = exp(logits[i, j]) / sum_j(exp(logits[i, j]))$$ * * - * @param data type for {@code softmax} output * @param logits 2-D with shape {@code [batch_size, num_classes]}. * @param data type for {@code Softmax} output and operands * @return a new instance of Softmax @@ -2984,7 +2882,6 @@ public Softmax softmax(Operand logits) { * Computes softmax cross entropy cost and gradients to backpropagate. * Inputs are the logits, not probabilities. * - * @param data type for {@code loss} output * @param features batch_size x num_classes matrix * @param labels batch_size x num_classes matrix * The caller must ensure that each batch of labels represents a valid @@ -3000,7 +2897,6 @@ public SoftmaxCrossEntropyWithLogits softmaxCrossEntropyW /** * Computes softsign: {@code features / (abs(features) + 1)}. * - * @param data type for {@code activations} output * @param features The features value * @param data type for {@code Softsign} output and operands * @return a new instance of Softsign @@ -3012,7 +2908,6 @@ public Softsign softsign(Operand features) { /** * Computes softsign gradients for a softsign operation. * - * @param data type for {@code backprops} output * @param gradients The backpropagated gradients to the corresponding softsign operation. * @param features The features passed as input to the corresponding softsign operation. * @param data type for {@code SoftsignGrad} output and operands @@ -3090,7 +2985,6 @@ public SoftsignGrad softsignGrad(Operand gradients, *

Among others, this operation is useful for reducing atrous convolution into * regular convolution. * - * @param data type for {@code output} output * @param input 4-D with shape {@code [batch, height, width, depth]}. * @param paddings 2-D tensor of non-negative integers with shape {@code [2, 2]}. It specifies * the padding of the input with zeros across the spatial dimensions as follows: @@ -3182,7 +3076,6 @@ public SpaceToBatch spaceToBatch(Operand input, * [13, 14, 15, 16]]]] * * - * @param data type for {@code output} output * @param input The input value * @param blockSize The size of the spatial block. * @param options carries optional attribute values @@ -3202,7 +3095,6 @@ public SpaceToDepth spaceToDepth(Operand input, Long blo * given row. *

Inputs are the logits, not probabilities. * - * @param data type for {@code loss} output * @param features batch_size x num_classes matrix * @param labels batch_size vector with values in [0, num_classes). * This is the label for the given minibatch entry. @@ -3226,8 +3118,6 @@ public SparseSoftmaxCrossEntropyWithLogits sparseSoftmaxC * *

If two elements are equal, the lower-index element appears first. * - * @param data type for {@code values} output - * @param data type for {@code indices} output * @param input 1-D or higher with last dimension at least {@code k}. * @param k 0-D. Number of top elements to look for along the last dimension (along each * row for matrices). @@ -3236,7 +3126,7 @@ public SparseSoftmaxCrossEntropyWithLogits sparseSoftmaxC * @return a new instance of TopK, with default output types */ public TopK topK(Operand input, Operand k, - TopK.Options[] options) { + TopK.Options... options) { return TopK.create(scope, input, k, options); } @@ -3252,8 +3142,6 @@ public TopK topK(Operand input, Operand *

If two elements are equal, the lower-index element appears first. * - * @param data type for {@code values} output - * @param data type for {@code indices} output * @param input 1-D or higher with last dimension at least {@code k}. * @param k 0-D. Number of top elements to look for along the last dimension (along each * row for matrices). @@ -3287,7 +3175,6 @@ public TopK topK(Operand input, *

{@code output} is also quantized, using the same formula. * If {@code rhs} is per-tensor quantized, {@code output} must be also per-tensor quantized. * - * @param data type for {@code output} output * @param lhs Must be a quantized tensor, rank >= 3. * @param rhs Must be a quantized tensor, same rank as {@code lhs}. * @param lhsScales The float value(s) used as scale factors when quantizing the original data that {@code lhs} represents. @@ -3358,7 +3245,6 @@ public UniformQuantizedConvolution uni *

{@code rhs} must be quantized Tensor, where its data value is quantized using the formula: * quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val). * - * @param data type for {@code output} output * @param lhs Must be a non-quantized Tensor of {@code Tlhs}, rank >= 3. * @param rhs Must be a quantized Tensor of {@code Trhs}, same rank as {@code lhs}. * @param rhsScales The float value(s) used as scale factors when quantizing the original data that {@code rhs} represents. diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/Ops.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/Ops.java index 93a6a3eb05c..8483a4efb61 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/Ops.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/Ops.java @@ -77,6 +77,7 @@ import org.tensorflow.op.core.BroadcastTo; import org.tensorflow.op.core.Bucketize; import org.tensorflow.op.core.Case; +import org.tensorflow.op.core.CheckPinned; import org.tensorflow.op.core.ClipByValue; import org.tensorflow.op.core.CompositeTensorVariantFromComponents; import org.tensorflow.op.core.CompositeTensorVariantToComponents; @@ -407,10 +408,10 @@ public final class Ops { public final CollectiveOps collective; - public final AudioOps audio; - public final DistributeOps distribute; + public final AudioOps audio; + public final SignalOps signal; public final TrainOps train; @@ -419,10 +420,10 @@ public final class Ops { public final SummaryOps summary; - public final ImageOps image; - public final RaggedOps ragged; + public final ImageOps image; + public final ShapeOps shape; public final IoOps io; @@ -450,14 +451,14 @@ public final class Ops { bitwise = new BitwiseOps(this); debugging = new DebuggingOps(this); collective = new CollectiveOps(this); - audio = new AudioOps(this); distribute = new DistributeOps(this); + audio = new AudioOps(this); signal = new SignalOps(this); train = new TrainOps(this); quantization = new QuantizationOps(this); summary = new SummaryOps(this); - image = new ImageOps(this); ragged = new RaggedOps(this); + image = new ImageOps(this); shape = new ShapeOps(this); io = new IoOps(this); dtypes = new DtypesOps(this); @@ -618,7 +619,6 @@ public Any any(Operand input, Operand axis, Any.Option * See https://arxiv.org/abs/2206.14286 for the algorithm details. * This op is only optimized on TPU currently. * - * @param data type for {@code values} output * @param input Array to search. Must be at least 1-D of the floating type * @param k Specifies the number of min/max-k. * @param options carries optional attribute values @@ -732,7 +732,6 @@ public AssertThat assertThat(Operand condition, Iterable> data * This operation outputs "ref" after the assignment is done. * This makes it easier to chain operations that need to use the reset value. * - * @param data type for {@code output_ref} output * @param ref Should be from a {@code Variable} node. May be uninitialized. * @param value The value to be assigned to the variable. * @param options carries optional attribute values @@ -749,7 +748,6 @@ public Assign assign(Operand ref, Operand value, * This operation outputs "ref" after the update is done. * This makes it easier to chain operations that need to use the reset value. * - * @param data type for {@code output_ref} output * @param ref Should be from a {@code Variable} node. * @param value The value to be added to the variable. * @param options carries optional attribute values @@ -780,7 +778,6 @@ public AssignAddVariableOp assignAddVariableOp(Operand resource * This operation outputs "ref" after the update is done. * This makes it easier to chain operations that need to use the reset value. * - * @param data type for {@code output_ref} output * @param ref Should be from a {@code Variable} node. * @param value The value to be subtracted to the variable. * @param options carries optional attribute values @@ -1027,7 +1024,6 @@ public BatchFunction batchFunction(Iterable> inTensors, * dimension are moved in spatial blocks to the {@code height} and {@code width} dimensions, * followed by cropping along the {@code height} and {@code width} dimensions. * - * @param data type for {@code output} output * @param input 4-D tensor with shape * {@code [batch*block_size*block_size, height_pad/block_size, width_pad/block_size, depth]}. Note that the batch size of the input tensor must be divisible by * {@code block_size * block_size}. @@ -1055,7 +1051,6 @@ public BatchToSpace batchToSpace(Operand input, * optionally cropped according to {@code crops} to produce the output. This is the * reverse of SpaceToBatch. See below for a precise description. * - * @param data type for {@code output} output * @param input N-D with shape {@code input_shape = [batch] + spatial_shape + remaining_shape}, * where spatial_shape has M dimensions. * @param blockShape 1-D with shape {@code [M]}, all values must be >= 1. @@ -1221,7 +1216,6 @@ public BatchToSpaceNd batchToSpaceNd(Operand input, * buffer is made on BE machines when types are of different sizes in order to get * the same casting results as on LE machines. * - * @param data type for {@code output} output * @param input The input value * @param type The value of the type attribute * @param data type for {@code Bitcast} output and operands @@ -1292,7 +1286,6 @@ public Operand booleanMaskUpdate(Operand tensor, Operand * Given {@code s0} and {@code s1}, tensors that represent shapes, compute {@code r0}, the * broadcasted shape. {@code s0}, {@code s1} and {@code r0} are all integer vectors. * - * @param data type for {@code r0} output * @param s0 The s0 value * @param s1 The s1 value * @param data type for {@code BroadcastArgs} output and operands @@ -1307,7 +1300,6 @@ public BroadcastDynamicShape broadcastDynamicShape(Operan * Return the reduction indices for computing gradients of s0 op s1 with broadcast. * This is typically used by gradient computations for a broadcasting operation. * - * @param data type for {@code r0} output * @param s0 The s0 value * @param s1 The s1 value * @param data type for {@code BroadcastGradientArgs} output and operands @@ -1357,7 +1349,6 @@ public BroadcastGradientArgs broadcastGradientArgs(Operan * shape. (In a graph context, {@code broadcast_to} might be fused to * subsequent operation and then be optimized away, however.) * - * @param data type for {@code output} output * @param input A Tensor to broadcast. * @param shape An 1-D {@code int} Tensor. The shape of the desired output. * @param data type for {@code BroadcastTo} output and operands @@ -1451,6 +1442,22 @@ public Case caseOp(Operand branchIndex, Iterable> input, return Case.create(scope, branchIndex, input, Tout, branches, options); } + /** + * Checks whether a tensor is located in host memory pinned for GPU. + * When run: + *

    + *
  • Reports an {@code InvalidArgument} error if {@code tensor} is not in pinned memory.
  • + *
  • Reports a {@code FailedPrecondition} error if not built with CUDA.
  • + *
+ * + * @param tensor The tensor value + * @param data type for {@code CheckPinned} output and operands + * @return a new instance of CheckPinned + */ + public CheckPinned checkPinned(Operand tensor) { + return CheckPinned.create(scope, tensor); + } + /** * Clips tensor values to a specified min and max. * Given a tensor {@code t}, this operation returns a tensor of the same type and @@ -1458,7 +1465,6 @@ public Case caseOp(Operand branchIndex, Iterable> input, * Any values less than {@code clip_value_min} are set to {@code clip_value_min}. Any values * greater than {@code clip_value_max} are set to {@code clip_value_max}. * - * @param data type for {@code output} output * @param t A {@code Tensor}. * @param clipValueMin A 0-D (scalar) {@code Tensor}, or a {@code Tensor} with the same shape * as {@code t}. The minimum value to clip by. @@ -1508,7 +1514,6 @@ public CompositeTensorVariantToComponents compositeTensorVariantToComponents( /** * Concatenates tensors along one dimension. * - * @param data type for {@code output} output * @param values List of {@code N} Tensors to concatenate. Their ranks and types must match, * and their sizes must match in all dimensions except {@code concat_dim}. * @param axis 0-D. The dimension along which to concatenate. Must be in the @@ -1531,14 +1536,13 @@ public Concat concat(Iterable> values, * y = [2, 3, 7] * z = [2, 9, 7] * offsets = concat_offset(1, [x, y, z]) - * [list(off.numpy()) for off in offsets] + * [[a.item() for a in list(off.numpy())] for off in offsets] * [[0, 0, 0], [0, 2, 0], [0, 5, 0]] * * * *

This is typically used by gradient computations for a concat operation. * - * @param data type for {@code offset} output * @param concatDim The dimension along which to concatenate. * @param shape The {@code N} int32 or int64 vectors representing shape of tensors being concatenated. * @param data type for {@code ConcatOffset} output and operands @@ -2262,11 +2266,7 @@ public Constant constant(Class type, Shape shape, ByteDa /** * Create a constant by making an immutable copy of {@code tensor}. {@code tensor} may be closed - * afterwards without issue. - * - *

Note: this endpoint cannot be simply called {@code constant} since it will conflict with - * other endpoints accepting an NdArray in parameter {e.g. {@link #tensorOf(Scope, - * FloatNdArray)}}. + * afterward without issue. * * @param tensor a Tensor holding the constant value * @return a constant of the same data type as `tensor` @@ -2318,7 +2318,6 @@ public ControlTrigger controlTrigger() { /** * The CopyToMesh operation * - * @param data type for {@code output} output * @param input The input value * @param mesh The value of the mesh attribute * @param data type for {@code CopyToMesh} output and operands @@ -2331,7 +2330,6 @@ public CopyToMesh copyToMesh(Operand input, String mesh) /** * The CopyToMeshGrad operation * - * @param data type for {@code output} output * @param input The input value * @param forwardInput The forwardInput value * @param data type for {@code CopyToMeshGrad} output and operands @@ -2345,7 +2343,6 @@ public CopyToMeshGrad copyToMeshGrad(Operand input, /** * Increments 'ref' until it reaches 'limit'. * - * @param data type for {@code output} output * @param ref Should be from a scalar {@code Variable} node. * @param limit If incrementing ref would bring it above limit, instead generates an * 'OutOfRange' error. @@ -2440,7 +2437,6 @@ public DecodeProto decodeProto(Operand bytes, String messageType, /** * Makes a copy of {@code x}. * - * @param data type for {@code y} output * @param x The source tensor of type {@code T}. * @param data type for {@code DeepCopy} output and operands * @return a new instance of DeepCopy @@ -2482,7 +2478,6 @@ public DestroyResourceOp destroyResourceOp(Operand resource, * using control dependencies. *

Outputs the final value of the tensor pointed to by 'ref'. * - * @param data type for {@code value} output * @param ref A reference to the temporary variable tensor. * @param varName Name of the temporary variable, usually the name of the matching * 'TemporaryVariable' op. @@ -2560,7 +2555,6 @@ public DummyMemoryCache dummyMemoryCache() { * * * - * @param data type for {@code outputs} output * @param data The data value * @param partitions Any shape. Indices in the range {@code [0, num_partitions)}. * @param numPartitions The number of partitions to output. @@ -2628,7 +2622,6 @@ public DynamicPartition dynamicPartition(Operand data, * * * - * @param data type for {@code merged} output * @param indices The indices value * @param data The data value * @param data type for {@code DynamicStitch} output and operands @@ -2672,7 +2665,6 @@ public EditDistance editDistance(Operand hypothesisInd * Creates a tensor with the given shape. *

This operation creates a tensor of {@code shape} and {@code dtype}. * - * @param data type for {@code output} output * @param shape 1-D. Represents the shape of the output tensor. * @param dtype The value of the dtype attribute * @param options carries optional attribute values @@ -2778,7 +2770,6 @@ public EncodeProto encodeProto(Operand sizes, Iterable> value * Raises an error if the input tensor's shape does not match the specified shape. * Returns the input tensor otherwise. * - * @param data type for {@code output} output * @param input A tensor, whose shape is to be validated. * @param shape The expected (possibly partially specified) shape of the input tensor. * @param data type for {@code EnsureShape} output and operands @@ -2796,7 +2787,6 @@ public EnsureShape ensureShape(Operand input, Shape shap * it may be changed in the child frame. At most {@code parallel_iterations} iterations * are run in parallel in the child frame. * - * @param data type for {@code output} output * @param data The tensor to be made available to the child frame. * @param frameName The name of the child frame. * @param options carries optional attribute values @@ -2812,7 +2802,6 @@ public Enter enter(Operand data, String frameName, * Exits the current frame to its parent frame. * Exit makes its input {@code data} available to the parent frame. * - * @param data type for {@code output} output * @param data The tensor to be made available to the parent frame. * @param data type for {@code Exit} output and operands * @return a new instance of Exit @@ -2847,7 +2836,6 @@ public Exit exit(Operand data) { *

This operation is related to {@code squeeze()}, which removes dimensions of * size 1. * - * @param data type for {@code output} output * @param input The input value * @param axis 0-D (scalar). Specifies the dimension index at which to * expand the shape of {@code input}. Must be in the range @@ -2863,7 +2851,6 @@ public ExpandDims expandDims(Operand input, /** * Extract {@code patches} from {@code input} and put them in the {@code "depth"} output dimension. 3D extension of {@code extract_image_patches}. * - * @param data type for {@code patches} output * @param input 5-D Tensor with shape {@code [batch, in_planes, in_rows, in_cols, depth]}. * @param ksizes The size of the sliding window for each dimension of {@code input}. * @param strides 1-D of length 5. How far the centers of two consecutive patches are in @@ -2888,7 +2875,6 @@ public ExtractVolumePatches extractVolumePatches(Operand< * function input) or guaranteed not to be used (e.g. if mirroring an * intermediate output needed for the gradient computation of the other branch). * - * @param data type for {@code output} output * @param dtype The type of the output. * @param shape

    *  The purported shape of the output. This is only used for shape inference;
@@ -2934,7 +2920,6 @@ public FileSystemSetConfiguration fileSystemSetConfiguration(Operand sc
    *  based on other runtime Tensors, unlike {@code tf.constant}.
    *  
    *
-   * @param  data type for {@code output} output
    * @param dims 1-D. Represents the shape of the output tensor.
    * @param value 0-D (scalar). Value to fill the returned tensor.
    *  

{@literal @}compatibility(numpy)
@@ -3028,9 +3013,11 @@ public For forOp(Operand start, Operand limit, Operand d *

Note that on CPU, if an out of bound index is found, an error is returned. * On GPU, if an out of bound index is found, a 0 is stored in the * corresponding output value. + *

Note that on TPU, if any dimension of {@code params} is of size 0 then the output will + * be the expected shape filled with zeros. On CPU and GPU an error will be + * returned. *

See also {@code tf.batch_gather} and {@code tf.gather_nd}. * - * @param data type for {@code output} output * @param params The tensor from which to gather values. Must be at least rank * {@code axis + 1}. * @param indices Index tensor. Must be in range {@code [0, params.shape[axis])}. @@ -3068,9 +3055,17 @@ public Gather gather(Operand params, Operand * indices.shape[:-1] + params.shape[indices.shape[-1]:] *

- *

Note that on CPU, if an out of bound index is found, an error is returned. - * On GPU, if an out of bound index is found, a 0 is stored in the - * corresponding output value. + *

If {@code indices} contains any out-of-bound indices, depending on + * {@code bad_indices_policy}, the op will either return an error or ignore the + * out-of-bound indices. {@code bad_indices_policy} can be one of the following values: + *

    + *
  1. "" or "DEFAULT": raises on CPU and ignore on GPU. This is because + * historically on CPU and GPU we handle errors in different ways, and for + * backward compatibility we keep the default behavior.
  2. + *
  3. "ERROR": raises error; GPU does not support this value.
  4. + *
  5. "IGNORE": ignore error and set the corresponding output to 0; + * supported on both CPU and GPU.
  6. + *
*

Some examples below. *

Simple indexing into a matrix: *

@@ -3137,15 +3132,15 @@ public  Gather gather(Operand params, Operand
    *  

See also {@code tf.gather} and {@code tf.batch_gather}. * - * @param data type for {@code output} output * @param params The tensor from which to gather values. * @param indices Index tensor. + * @param options carries optional attribute values * @param data type for {@code GatherNd} output and operands * @return a new instance of GatherNd */ public GatherNd gatherNd(Operand params, - Operand indices) { - return GatherNd.create(scope, params, indices); + Operand indices, GatherNd.Options... options) { + return GatherNd.create(scope, params, indices, options); } /** @@ -3185,7 +3180,6 @@ public GetSessionHandle getSessionHandle(Operand value) { /** * Get the value of the tensor specified by its handle. * - * @param data type for {@code value} output * @param handle The handle for a tensor stored in the session state. * @param dtype The type of the output value. * @param data type for {@code GetSessionTensor} output and operands @@ -3250,7 +3244,6 @@ public Gradients gradients(Iterable> y, IterableReturns the input tensor without modification. * - * @param data type for {@code output} output * @param input The input value * @param data type for {@code GuaranteeConst} output and operands * @return a new instance of GuaranteeConst @@ -3294,7 +3287,6 @@ public HashTable hashTable(Class keyDtype, * sess.run(hist) => [2, 1, 1, 0, 2] *

* - * @param data type for {@code out} output * @param values Numeric {@code Tensor}. * @param valueRange Shape [2] {@code Tensor} of same {@code dtype} as {@code values}. * values <= value_range[0] will be mapped to hist[0], @@ -3325,7 +3317,6 @@ public HistogramFixedWidth histogramFixedWidth(Opera * sess.run(hist) => [2, 1, 1, 0, 2] * * - * @param data type for {@code out} output * @param values Numeric {@code Tensor}. * @param valueRange Shape [2] {@code Tensor} of same {@code dtype} as {@code values}. * values <= value_range[0] will be mapped to hist[0], @@ -3344,7 +3335,6 @@ public HistogramFixedWidth histogramFi /** * Returns a constant tensor on the host. Only for writing C++ tests. * - * @param data type for {@code output} output * @param value Attr {@code value} is the tensor to return. * @param dtype The value of the dtype attribute * @param data type for {@code HostConst} output and operands @@ -3357,7 +3347,6 @@ public HostConst hostConst(Tensor value, Class dtype) { /** * Return a tensor with the same shape and contents as the input tensor or value. * - * @param data type for {@code output} output * @param input The input value * @param data type for {@code Identity} output and operands * @return a new instance of Identity @@ -3425,7 +3414,6 @@ public If ifOp(Operand cond, Iterable> input, * Returns immutable tensor from memory region. * The current implementation memmaps the tensor from a file. * - * @param data type for {@code tensor} output * @param dtype Type of the returned tensor. * @param shape Shape of the returned tensor. * @param memoryRegionName Name of readonly memory region used by the tensor, see @@ -3485,7 +3473,6 @@ public InitializeTableFromTextFile initializeTableFromTextFile( * Computes y = x; y[i, :] += v; return y. * * - * @param data type for {@code y} output * @param x A {@code Tensor} of type T. * @param i A vector. Indices into the left-most dimension of {@code x}. * @param v A {@code Tensor} of type T. Same dimension sizes as x except the first dimension, which must be the same as i's size. @@ -3503,7 +3490,6 @@ public InplaceAdd inplaceAdd(Operand x, Operand * Computes y = x; y[i, :] -= v; return y. * * - * @param data type for {@code y} output * @param x A {@code Tensor} of type T. * @param i A vector. Indices into the left-most dimension of {@code x}. * @param v A {@code Tensor} of type T. Same dimension sizes as x except the first dimension, which must be the same as i's size. @@ -3520,7 +3506,6 @@ public InplaceSub inplaceSub(Operand x, Operand *

Originally this function is mutative however for compilation we make this * operation create / operate on a copy of {@code x}. * - * @param data type for {@code y} output * @param x A tensor of type {@code T}. * @param i A vector. Indices into the left-most dimension of {@code x}. * @param v A {@code Tensor} of type T. Same dimension sizes as x except the first dimension, which must be the same as i's size. @@ -3578,7 +3563,6 @@ public KthOrderStatistic kthOrderStatistic(Operand input, Long k) { * tf.linspace(10.0, 12.0, 3, name="linspace") => [ 10.0 11.0 12.0] * * - * @param data type for {@code output} output * @param start 0-D tensor. First entry in the range. * @param stop 0-D tensor. Last entry in the range. * @param num 0-D tensor. Number of values to generate. @@ -3593,8 +3577,6 @@ public LinSpace linSpace(Operand start, Operand sto /** * Outputs all keys and values in the table. * - * @param data type for {@code keys} output - * @param data type for {@code values} output * @param tableHandle Handle to the table. * @param Tkeys The value of the Tkeys attribute * @param Tvalues The value of the Tvalues attribute @@ -3614,7 +3596,6 @@ public LookupTableExport lookupTableExp *

The scalar {@code default_value} is the value output for keys not present in the * table. It must also be of the same type as the table values. * - * @param data type for {@code values} output * @param tableHandle Handle to the table. * @param keys Any shape. Keys to look up. * @param defaultValue The defaultValue value @@ -3708,7 +3689,6 @@ public LoopCond loopCond(Operand input) { *

result == [[1, 2, 2], * [0, 1, 5]] * - * @param data type for {@code output} output * @param sortedInputs 2-D Tensor where each row is ordered. * @param values 2-D Tensor with the same numbers of rows as {@code sorted_search_values}. Contains * the values that will be searched for in {@code sorted_search_values}. @@ -3736,7 +3716,6 @@ public LowerBound lowerBound(Operand sortedInputs, *

result == [[1, 2, 2], * [0, 1, 5]] * - * @param data type for {@code output} output * @param sortedInputs 2-D Tensor where each row is ordered. * @param values 2-D Tensor with the same numbers of rows as {@code sorted_search_values}. Contains * the values that will be searched for in {@code sorted_search_values}. @@ -3901,7 +3880,6 @@ public MapUnstageNoKey mapUnstageNoKey(Operand indices, * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. * - * @param data type for {@code output} output * @param input The tensor to reduce. * @param axis The dimensions to reduce. Must be in the range * {@code [-rank(input), rank(input))}. @@ -3921,7 +3899,6 @@ public Max max(Operand input, Operand{@code Merge} forwards the first tensor to become available to {@code output}, and sets * {@code value_index} to its index in {@code inputs}. * - * @param data type for {@code output} output * @param inputs The input tensors, exactly one of which will become available. * @param data type for {@code Merge} output and operands * @return a new instance of Merge @@ -3937,7 +3914,6 @@ public Merge merge(Iterable> inputs) { * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. * - * @param data type for {@code output} output * @param input The tensor to reduce. * @param axis The dimensions to reduce. Must be in the range * {@code [-rank(input), rank(input))}. @@ -3974,7 +3950,6 @@ public Min min(Operand input, Operand * - * @param data type for {@code output} output * @param input The input tensor to be padded. * @param paddings A two-column matrix specifying the padding sizes. The number of * rows must be the same as the rank of {@code input}. @@ -4008,7 +3983,6 @@ public MirrorPad mirrorPad(Operand input, * [11, 28]] * * - * @param data type for {@code output} output * @param input The input tensor to be folded. * @param paddings A two-column matrix specifying the padding sizes. The number of * rows must be the same as the rank of {@code input}. @@ -4187,7 +4161,6 @@ public MutexLock mutexLock(Operand mutex) { * num_devices: The number of devices participating in this reduction. * shared_name: Identifier that shared between ops of the same reduction. * - * @param data type for {@code data} output * @deprecated use {@link org.tensorflow.op.distribute.NcclAllReduce} instead * @param input The input value * @param reduction The value of the reduction attribute @@ -4211,7 +4184,6 @@ public NcclAllReduce ncclAllReduce(Operand input, Stri * output: The same as input. * shape: The shape of the input tensor. * - * @param data type for {@code output} output * @deprecated use {@link org.tensorflow.op.distribute.NcclBroadcast} instead * @param input The input value * @param shape The value of the shape attribute @@ -4232,7 +4204,6 @@ public NcclBroadcast ncclBroadcast(Operand input, Shap * data: the value of the reduction across all {@code num_devices} devices. * reduction: the reduction operation to perform. * - * @param data type for {@code data} output * @deprecated use {@link org.tensorflow.op.distribute.NcclReduce} instead * @param input The input value * @param reduction The value of the reduction attribute @@ -4248,7 +4219,6 @@ public NcclReduce ncclReduce(Iterable> input, /** * Makes its input available to the next iteration. * - * @param data type for {@code output} output * @param data The tensor to be made available to the next iteration. * @param data type for {@code NextIteration} output and operands * @return a new instance of NextIteration @@ -4343,7 +4313,6 @@ public NoOp noOp() { * ] * * - * @param data type for {@code output} output * @param indices A tensor of indices. * @param depth A scalar defining the depth of the one hot dimension. * @param onValue A scalar defining the value to fill in output when {@code indices[j] = i}. @@ -4372,7 +4341,6 @@ public Ones ones(Operand dims, Class /** * Returns a tensor of ones with the same shape and type as x. * - * @param data type for {@code y} output * @param x a tensor of type T. * @param data type for {@code OnesLike} output and operands * @return a new instance of OnesLike @@ -4506,7 +4474,6 @@ public OrderedMapUnstageNoKey orderedMapUnstageNoKey(Operand indices, * [0, 0, 0, 0, 0, 0]] * * - * @param data type for {@code output} output * @param input The input value * @param paddings The paddings value * @param constantValues The constantValues value @@ -4534,7 +4501,6 @@ public Pad pad(Operand input, Operand * will copy pieces of the input into the output as they become available, in * some situations this can provide a performance benefit. * - * @param data type for {@code output} output * @param values Tensors to be concatenated. All must have size 1 in the first dimension * and same shape. * @param shape the final shape of the result; should be equal to the shapes of any input @@ -4602,7 +4568,6 @@ public ParallelConcat parallelConcat(Iterable> v * * * - * @param data type for {@code merged} output * @param indices The indices value * @param data The data value * @param data type for {@code ParallelDynamicStitch} output and operands @@ -4641,7 +4606,6 @@ public PartitionedCall partitionedCall(Iterable> args, * intended as a way to represent a value that will always be fed, and to * provide attrs that enable the fed value to be checked at runtime. * - * @param data type for {@code output} output * @param dtype The type of elements in the tensor. * @param options carries optional attribute values * @param data type for {@code Placeholder} output and operands @@ -4655,7 +4619,6 @@ public Placeholder placeholder(Class dtype, /** * A placeholder op that passes through {@code input} when its output is not fed. * - * @param data type for {@code output} output * @param input The default value to produce when {@code output} is not fed. * @param shape The (possibly partial) shape of the tensor. * @param data type for {@code PlaceholderWithDefault} output and operands @@ -4685,7 +4648,6 @@ public Print print(Operand input, Print.Options... options) { * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. * - * @param data type for {@code output} output * @param input The tensor to reduce. * @param axis The dimensions to reduce. Must be in the range * {@code [-rank(input), rank(input))}. @@ -4701,7 +4663,6 @@ public Prod prod(Operand input, Operand data type for {@code output} output * @param tensor The tensor value * @param shape Defines the shape of the output tensor. * @param inputMin The minimum value of the input. @@ -4721,7 +4682,6 @@ public QuantizedReshape quantizedReshape(Operand tensor, * first dimension must match. *

The outputs are deterministic. * - * @param data type for {@code output} output * @param index A scalar tensor or a vector of dtype {@code dtype}. The index (or indices) to be shuffled. Must be within [0, max_index]. * @param seed A tensor of dtype {@code Tseed} and shape [3] or [n, 3]. The random seed. * @param maxIndex A scalar tensor or vector of dtype {@code dtype}. The upper bound(s) of the interval (inclusive). @@ -4746,7 +4706,6 @@ public RandomIndexShuffle randomIndexShuffle(Operand i * tf.range(start, limit, delta) ==> [3, 6, 9, 12, 15] * * - * @param data type for {@code output} output * @param start 0-D (scalar). First entry in the sequence. * @param limit 0-D (scalar). Upper limit of sequence, exclusive. * @param delta 0-D (scalar). Optional. Default is 1. Number that increments {@code start}. @@ -4785,7 +4744,6 @@ public Rank rank(Operand input) { * influenced by any of the writes which depend directly or indirectly on this * operation. * - * @param data type for {@code value} output * @param resource handle to the resource in which to store the variable. * @param dtype the dtype of the value. * @param data type for {@code ReadVariableOp} output and operands @@ -4799,7 +4757,6 @@ public ReadVariableOp readVariableOp(Operand data type for {@code tensor} output * @param tensorType The value of the tensorType attribute * @param tensorName The name of the tensor to receive. * @param sendDevice The name of the device sending the tensor. @@ -4857,7 +4814,6 @@ public ReduceAny reduceAny(Operand input, Operand axis * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. * - * @param data type for {@code output} output * @param input The tensor to reduce. * @param axis The dimensions to reduce. Must be in the range * {@code [-rank(input), rank(input))}. @@ -4877,7 +4833,6 @@ public ReduceMax reduceMax(Operand input, * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. * - * @param data type for {@code output} output * @param input The tensor to reduce. * @param axis The dimensions to reduce. Must be in the range * {@code [-rank(input), rank(input))}. @@ -4897,7 +4852,6 @@ public ReduceMin reduceMin(Operand input, * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. * - * @param data type for {@code output} output * @param input The tensor to reduce. * @param axis The dimensions to reduce. Must be in the range * {@code [-rank(input), rank(input))}. @@ -4917,7 +4871,6 @@ public ReduceProd reduceProd(Operand input, * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. * - * @param data type for {@code output} output * @param input The tensor to reduce. * @param axis The dimensions to reduce. Must be in the range * {@code [-rank(input), rank(input))}. @@ -4937,7 +4890,6 @@ public ReduceSum reduceSum(Operand input, Operand data type for {@code output} output * @param data The tensor to be made available to the child frame. * @param frameName The name of the child frame. * @param options carries optional attribute values @@ -4953,7 +4905,6 @@ public RefEnter refEnter(Operand data, String frameName, * Exits the current frame to its parent frame. * Exit makes its input {@code data} available to the parent frame. * - * @param data type for {@code output} output * @param data The tensor to be made available to the parent frame. * @param data type for {@code RefExit} output and operands * @return a new instance of RefExit @@ -4965,7 +4916,6 @@ public RefExit refExit(Operand data) { /** * Return the same ref tensor as the input ref tensor. * - * @param data type for {@code output} output * @param input The input value * @param data type for {@code RefIdentity} output and operands * @return a new instance of RefIdentity @@ -4981,7 +4931,6 @@ public RefIdentity refIdentity(Operand input) { *

{@code Merge} forwards the first tensor for become available to {@code output}, and sets * {@code value_index} to its index in {@code inputs}. * - * @param data type for {@code output} output * @param inputs The input tensors, exactly one of which will become available. * @param data type for {@code RefMerge} output and operands * @return a new instance of RefMerge @@ -4993,7 +4942,6 @@ public RefMerge refMerge(Iterable> inputs) { /** * Makes its input available to the next iteration. * - * @param data type for {@code output} output * @param data The tensor to be made available to the next iteration. * @param data type for {@code RefNextIteration} output and operands * @return a new instance of RefNextIteration @@ -5005,7 +4953,6 @@ public RefNextIteration refNextIteration(Operand data) { /** * Forwards the {@code index}th element of {@code inputs} to {@code output}. * - * @param data type for {@code output} output * @param index A scalar that determines the input that gets selected. * @param inputs A list of ref tensors, one of which will be forwarded to {@code output}. * @param data type for {@code RefSelect} output and operands @@ -5022,7 +4969,6 @@ public RefSelect refSelect(Operand index, * the data goes to {@code output_false}. *

See also {@code Switch} and {@code Merge}. * - * @param data type for {@code output_false} output * @param data The ref tensor to be forwarded to the appropriate output. * @param pred A scalar that specifies which output port will receive data. * @param data type for {@code RefSwitch} output and operands @@ -5035,7 +4981,6 @@ public RefSwitch refSwitch(Operand data, Operand /** * The Relayout operation * - * @param data type for {@code output} output * @param input The input value * @param layout The value of the layout attribute * @param data type for {@code Relayout} output and operands @@ -5048,7 +4993,6 @@ public Relayout relayout(Operand input, String layout) { /** * The RelayoutLike operation * - * @param data type for {@code output} output * @param input The input value * @param layoutInput The layoutInput value * @param data type for {@code RelayoutLike} output and operands @@ -5130,7 +5074,6 @@ public RemoteCall remoteCall(Operand target, Iterable> args, * reshape(t, []) ==> 7 * * - * @param data type for {@code output} output * @param tensor The tensor value * @param shape Defines the shape of the output tensor. * @param data type for {@code Reshape} output and operands @@ -5143,7 +5086,6 @@ public Reshape reshape(Operand tensor, Operand data type for {@code output} output * @param resource Should be from a scalar {@code Variable} node. * @param limit If incrementing ref would bring it above limit, instead generates an * 'OutOfRange' error. @@ -5171,7 +5113,6 @@ public ResourceCountUpTo resourceCountUpTo( * output[i, ..., j, :, ... :] = params[indices[i, ..., j], :, ..., :] * * - * @param data type for {@code output} output * @param resource The resource value * @param indices The indices value * @param dtype The value of the dtype attribute @@ -5187,7 +5128,6 @@ public ResourceGather resourceGather(Operand data type for {@code output} output * @param resource The resource value * @param indices The indices value * @param dtype The value of the dtype attribute @@ -5633,7 +5573,6 @@ public ResourceStridedSliceAssign resourceStridedSliceAssign * [12, 13, 14, 15]]]] * * - * @param data type for {@code output} output * @param tensor Up to 8-D. * @param axis 1-D. The indices of the dimensions to reverse. Must be in the range * {@code [-rank(tensor), rank(tensor))}. @@ -5695,7 +5634,6 @@ public Reverse reverse(Operand tensor, Operand * - * @param data type for {@code output} output * @param input The input to reverse. * @param seqLengths 1-D with length {@code input.dims(batch_dim)} and * {@code max(seq_lengths) <= input.dims(seq_dim)} @@ -5730,7 +5668,6 @@ public ReverseSequence reverseSequence(Operand input, * roll(t, shift=[2, -3], axis=[1, 1]) ==> [[1, 2, 3, 4, 0], [6, 7, 8, 9, 5]] * * - * @param data type for {@code output} output * @param input The input value * @param shift Dimension must be 0-D or 1-D. {@code shift[i]} specifies the number of places by which * elements are shifted positively (towards larger indices) along the dimension @@ -5770,7 +5707,6 @@ public Roll roll(Operand input, Operand * * - * @param data type for {@code output_ref} output * @param ref Should be from a {@code Variable} node. * @param indices A tensor of indices into the first dimension of {@code ref}. * @param updates A tensor of updated values to add to {@code ref}. @@ -5802,7 +5738,6 @@ public ScatterAdd scatterAdd(Operand ref, * the same location, their contributions divide. *

Requires {@code updates.shape = indices.shape + ref.shape[1:]} or {@code updates.shape = []}. * - * @param data type for {@code output_ref} output * @param ref Should be from a {@code Variable} node. * @param indices A tensor of indices into the first dimension of {@code ref}. * @param updates A tensor of values that {@code ref} is divided by. @@ -5837,7 +5772,6 @@ public ScatterDiv scatterDiv(Operand ref, * * * - * @param data type for {@code output_ref} output * @param ref Should be from a {@code Variable} node. * @param indices A tensor of indices into the first dimension of {@code ref}. * @param updates A tensor of updated values to reduce into {@code ref}. @@ -5872,7 +5806,6 @@ public ScatterMax scatterMax(Operand ref, * * * - * @param data type for {@code output_ref} output * @param ref Should be from a {@code Variable} node. * @param indices A tensor of indices into the first dimension of {@code ref}. * @param updates A tensor of updated values to reduce into {@code ref}. @@ -5904,7 +5837,6 @@ public ScatterMin scatterMin(Operand ref, * the same location, their contributions multiply. *

Requires {@code updates.shape = indices.shape + ref.shape[1:]} or {@code updates.shape = []}. * - * @param data type for {@code output_ref} output * @param ref Should be from a {@code Variable} node. * @param indices A tensor of indices into the first dimension of {@code ref}. * @param updates A tensor of updated values to multiply to {@code ref}. @@ -5990,20 +5922,28 @@ public ScatterMul scatterMul(Operand ref, * [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]], * [[5, 5, 5, 5], [6, 6, 6, 6], [7, 7, 7, 7], [8, 8, 8, 8]]] * - *

Note that on CPU, if an out of bound index is found, an error is returned. - * On GPU, if an out of bound index is found, the index is ignored. + *

If {@code indices} contains any out-of-bound indices, depending on + * {@code bad_indices_policy}, the op will either return an error or ignore the + * out-of-bound indices. {@code bad_indices_policy} can be one of the following values: + *

    + *
  1. "" or "DEFAULT": raises on CPU and ignore on GPU. This is because + * historically on CPU and GPU we handle errors in different ways, and for + * backward compatibility we keep the default behavior.
  2. + *
  3. "ERROR": raises error; GPU does not support this value.
  4. + *
  5. "IGNORE": ignore the bad indices; supported on both CPU and GPU.
  6. + *
* - * @param data type for {@code output} output * @param indices Tensor of indices. * @param updates Values to scatter into the output tensor. * @param shape 1-D. The shape of the output tensor. + * @param options carries optional attribute values * @param data type for {@code ScatterNd} output and operands * @param data type for {@code ScatterNd} output and operands * @return a new instance of ScatterNd */ public ScatterNd scatterNd(Operand indices, - Operand updates, Operand shape) { - return ScatterNd.create(scope, indices, updates, shape); + Operand updates, Operand shape, ScatterNd.Options... options) { + return ScatterNd.create(scope, indices, updates, shape, options); } /** @@ -6035,7 +5975,6 @@ public ScatterNd scatterNd(Operand in *

See {@code tf.scatter_nd} for more details about how to make updates to * slices. * - * @param data type for {@code output_ref} output * @param ref A mutable Tensor. Should be from a Variable node. * @param indices A Tensor. Must be one of the following types: int32, int64. * A tensor of indices into ref. @@ -6053,7 +5992,6 @@ public ScatterNdAdd scatterNdAdd(Operand ref, /** * Computes element-wise maximum. * - * @param data type for {@code output_ref} output * @param ref A mutable Tensor. Should be from a Variable node. * @param indices A Tensor. Must be one of the following types: int32, int64. * A tensor of indices into ref. @@ -6071,7 +6009,6 @@ public ScatterNdMax scatterNdMax(Operand ref, /** * Computes element-wise minimum. * - * @param data type for {@code output_ref} output * @param ref A mutable Tensor. Should be from a Variable node. * @param indices A Tensor. Must be one of the following types: int32, int64. * A tensor of indices into ref. @@ -6116,18 +6053,19 @@ public ScatterNdMin scatterNdMin(Operand ref, * *

See {@code tf.scatter_nd} for more details about how to make updates to slices. * - * @param data type for {@code output} output * @param input A Tensor. * @param indices A Tensor. Must be one of the following types: {@code int32}, {@code int64}. * A tensor of indices into {@code input}. * @param updates A Tensor. Must have the same type as ref. A tensor of updated values * to add to {@code input}. + * @param options carries optional attribute values * @param data type for {@code ScatterNdNonAliasingAdd} output and operands * @return a new instance of ScatterNdNonAliasingAdd */ public ScatterNdNonAliasingAdd scatterNdNonAliasingAdd(Operand input, - Operand indices, Operand updates) { - return ScatterNdNonAliasingAdd.create(scope, input, indices, updates); + Operand indices, Operand updates, + ScatterNdNonAliasingAdd.Options... options) { + return ScatterNdNonAliasingAdd.create(scope, input, indices, updates, options); } /** @@ -6160,7 +6098,6 @@ public ScatterNdNonAliasingAdd scatterNdNonAliasingAdd(Oper *

See {@code tf.scatter_nd} for more details about how to make updates to * slices. * - * @param data type for {@code output_ref} output * @param ref A mutable Tensor. Should be from a Variable node. * @param indices A Tensor. Must be one of the following types: int32, int64. * A tensor of indices into ref. @@ -6204,7 +6141,6 @@ public ScatterNdSub scatterNdSub(Operand ref, * slices. *

See also {@code tf.scatter_update} and {@code tf.batch_scatter_update}. * - * @param data type for {@code output_ref} output * @param ref A mutable Tensor. Should be from a Variable node. * @param indices A Tensor. Must be one of the following types: int32, int64. * A tensor of indices into ref. @@ -6240,7 +6176,6 @@ public ScatterNdUpdate scatterNdUpdate(Operand ref, * * * - * @param data type for {@code output_ref} output * @param ref Should be from a {@code Variable} node. * @param indices A tensor of indices into the first dimension of {@code ref}. * @param updates A tensor of updated values to subtract from {@code ref}. @@ -6277,7 +6212,6 @@ public ScatterSub scatterSub(Operand ref, * *

See also {@code tf.batch_scatter_update} and {@code tf.scatter_nd_update}. * - * @param data type for {@code output_ref} output * @param ref Should be from a {@code Variable} node. * @param indices A tensor of indices into the first dimension of {@code ref}. * @param updates A tensor of updated values to store in {@code ref}. @@ -6293,7 +6227,6 @@ public ScatterUpdate scatterUpdate(Operand ref, /** * The SelectV2 operation * - * @param data type for {@code output} output * @param condition The condition value * @param t The t value * @param e The e value @@ -6339,8 +6272,6 @@ public Send send(Operand tensor, String tensorName, String send * idx ==> [1, 3, 5] * * - * @param data type for {@code out} output - * @param data type for {@code idx} output * @param x 1-D. Values to keep. * @param y 1-D. Values to remove. * @param data type for {@code ListDiff} output and operands @@ -6369,8 +6300,6 @@ public SetDiff1d setDiff1d(Operand x, Operand * idx ==> [1, 3, 5] * * - * @param data type for {@code out} output - * @param data type for {@code idx} output * @param x 1-D. Values to keep. * @param y 1-D. Values to remove. * @param outIdx The value of the outIdx attribute @@ -6412,7 +6341,6 @@ public SetSize setSize(Operand setIndices, Operand setV * shape(t) ==> [2, 2, 3] * * - * @param data type for {@code output} output * @param input The input value * @return a new instance of Shape, with default output types */ @@ -6429,7 +6357,6 @@ public org.tensorflow.op.core.Shape shape(Operand input * shape(t) ==> [2, 2, 3] * * - * @param data type for {@code output} output * @param input The input value * @param outType The value of the outType attribute * @param data type for {@code Shape} output and operands @@ -6444,7 +6371,6 @@ public org.tensorflow.op.core.Shape shape(Operand data type for {@code output} output * @param input The input value * @return a new instance of ShapeN, with default output types */ @@ -6456,7 +6382,6 @@ public ShapeN shapeN(Iterable> input) { * Returns shape of tensors. * This operation returns N 1-D integer tensors representing shape of {@code input[i]s}. * - * @param data type for {@code output} output * @param input The input value * @param outType The value of the outType attribute * @param data type for {@code ShapeN} output and operands @@ -6477,7 +6402,6 @@ public ShapeN shapeN(Iterable> i * size(t) ==> 12 * * - * @param data type for {@code output} output * @param input The input value * @return a new instance of Size, with default output types */ @@ -6495,7 +6419,6 @@ public Size size(Operand input) { * size(t) ==> 12 * * - * @param data type for {@code output} output * @param input The input value * @param outType The value of the outType attribute * @param data type for {@code Size} output and operands @@ -6525,7 +6448,6 @@ public Skipgram skipgram(String filename, Long batchSize, Skipgram.Options... op *

Requirements: * 0 <= begin[i] <= begin[i] + size[i] <= Di for i in [0, n) * - * @param data type for {@code output} output * @param input The input value * @param begin begin[i] specifies the offset into the 'i'th dimension of * 'input' to slice from. @@ -6545,7 +6467,6 @@ public Slice slice(Operand input, Ope /** * Returns a copy of the input tensor. * - * @param data type for {@code output} output * @param input The input value * @param data type for {@code Snapshot} output and operands * @return a new instance of Snapshot @@ -6653,7 +6574,6 @@ public Snapshot snapshot(Operand input) { *

Among others, this operation is useful for reducing atrous convolution into * regular convolution. * - * @param data type for {@code output} output * @param input N-D with shape {@code input_shape = [batch] + spatial_shape + remaining_shape}, * where spatial_shape has {@code M} dimensions. * @param blockShape 1-D with shape {@code [M]}, all values must be >= 1. @@ -6672,7 +6592,6 @@ public SpaceToBatchNd spaceToBatchNd(Operand input, /** * Splits a tensor into {@code num_split} tensors along one dimension. * - * @param data type for {@code output} output * @param axis 0-D. The dimension along which to split. Must be in the range * {@code [-rank(value), rank(value))}. * @param value The tensor to split. @@ -6688,7 +6607,6 @@ public Split split(Operand axis, Operand value, /** * Splits a tensor into {@code num_split} tensors along one dimension. * - * @param data type for {@code output} output * @param value The tensor to split. * @param sizeSplits list containing the sizes of each output tensor along the split * dimension. Must sum to the dimension of value along split_dim. @@ -6721,7 +6639,6 @@ public SplitV splitV(Operand value, Operand * - * @param data type for {@code output} output * @param input The {@code input} to squeeze. * @param options carries optional attribute values * @param data type for {@code Squeeze} output and operands @@ -6749,7 +6666,6 @@ public Squeeze squeeze(Operand input, Squeeze.Options... * *

This is the opposite of {@code unpack}. * - * @param data type for {@code output} output * @param values Must be of same shape and type. * @param options carries optional attribute values * @param data type for {@code Pack} output and operands @@ -6787,7 +6703,6 @@ public StackCreate stackCreate(Operand maxSize, Class< /** * Pop the element at the top of the stack. * - * @param data type for {@code elem} output * @param handle The handle to a stack. * @param elemType The type of the elem that is popped. * @param data type for {@code StackPopV2} output and operands @@ -6801,7 +6716,6 @@ public StackPop stackPop(Operand handle, /** * Push an element onto the stack. * - * @param data type for {@code output} output * @param handle The handle to a stack. * @param elem The tensor to be pushed onto the stack. * @param options carries optional attribute values @@ -7083,7 +6997,6 @@ public StatelessWhile statelessWhile(Iterable> input, ConcreteFunctio * The values are cast with a deterministic pseudo-random tensor from a uniform distribution generated from user given key, counter, algorithm. Values will saturate if out of the specified integer type range, and will become zero if inputs are NaN. *

The outputs are a deterministic function of {@code input}, {@code key}, {@code counter}, {@code alg}. * - * @param data type for {@code output} output * @param input The operand to stochastically cast to int. * @param key Key for the counter-based RNG algorithm (shape uint64[1]). * @param counter Initial counter for the counter-based RNG algorithm (shape uint64[2] or uint64[1] depending on the algorithm). If a larger vector is given, only the needed portion on the left (i.e. [:N]) will be used. @@ -7151,7 +7064,6 @@ public StochasticCastToInt stochasticCastToInt( * example generation process. * * - * @param data type for {@code output} output * @param input The input value * @param data type for {@code StopGradient} output and operands * @return a new instance of StopGradient @@ -7169,16 +7081,17 @@ public StopGradient stopGradient(Operand input) { * equal to `n`, but this need not be the case. Each range specification entry can be one of the * following: * - *

- An ellipsis (...) using {@link Indices#ellipsis()}. Ellipses are used to imply zero or - * more dimensions of full-dimension selection. For example, {@code stridedSlice(foo, - * Indices.ellipsis()} is the identity slice. + *

- An ellipsis (...) using {@link org.tensorflow.ndarray.index.Indices#ellipsis()}. Ellipses + * are used to imply zero or more dimensions of full-dimension selection. For example, {@code + * stridedSlice(foo, Indices.ellipsis()} is the identity slice. * - *

- A new axis using {@link Indices#newAxis()}. This is used to insert a new shape=1 - * dimension. For example, `{@code stridedSlice(foo, Indices.newAxis())} where {@code foo} is - * shape {@code (3, 4)} produces a {@code (1, 3, 4)} tensor. + *

- A new axis using {@link org.tensorflow.ndarray.index.Indices#newAxis()}. This is used to + * insert a new shape=1 dimension. For example, `{@code stridedSlice(foo, Indices.newAxis())} + * where {@code foo} is shape {@code (3, 4)} produces a {@code (1, 3, 4)} tensor. * - *

- A range {@code begin:end:stride} using {@link Indices#slice(Long, Long, long)} - * Index.slice()} or {@link Indices#all()}. This is used to specify how much to choose from a + *

- A range {@code begin:end:stride} using {@link + * org.tensorflow.ndarray.index.Indices#slice(Long, Long, long)} Index.slice()} or {@link + * org.tensorflow.ndarray.index.Indices#all()}. This is used to specify how much to choose from a * given dimension. {@code stride} can be any integer but 0. {@code begin} is an integer which * represents the index of the first value to select while {@code end} represents the index of the * last value to select (exclusive). Begin and end can be null, in which case the index begins or @@ -7195,10 +7108,11 @@ public StopGradient stopGradient(Operand input) { * elements). For example {@code foo = [1,2,3,4]; stridedSlice(foo, Indices.slice(-2, null, -1)} * is {@code [4,3]}. * - *

- A single index using {@link Indices#at(long)}. This is used to keep only elements that - * have a given index. For example ({@code stridedSlice(foo, Indices.at(2))} on a shape {@code - * (5,6)} tensor produces a shape {@code (6,)} tensor. The dimension can be kept with size one - * using {@link Indices#at(long, boolean)}. + *

- A single index using {@link org.tensorflow.ndarray.index.Indices#at(long)}. This is used + * to keep only elements that have a given index. For example ({@code stridedSlice(foo, + * Indices.at(2))} on a shape {@code (5,6)} tensor produces a shape {@code (6,)} tensor. The + * dimension can be kept with size one using {@link org.tensorflow.ndarray.index.Indices#at(long, + * boolean)}. * *

These semantics generally follow NumPy's indexing semantics, which can be found here: https://numpy.org/doc/stable/reference/arrays.indexing.html @@ -7206,9 +7120,9 @@ public StopGradient stopGradient(Operand input) { *

Requirements: `0 != strides[i] for i in [0, m)` Only one ellipsis. * * @param data type for {@code output()} output - * @param indices The indices to slice. See {@link Indices}. + * @param indices The indices to slice. See {@link org.tensorflow.ndarray.index.Indices}. * @return a new instance of StridedSlice - * @see Indices + * @see org.tensorflow.ndarray.index.Indices */ public StridedSlice stridedSlice(Operand input, Index... indices) { return StridedSliceHelper.stridedSlice(scope, input, indices); @@ -7314,7 +7228,6 @@ public StridedSlice stridedSlice(Operand input, Index... * {@code 0 != strides[i] for i in [0, m)} * {@code ellipsis_mask must be a power of two (only one ellipsis)} * - * @param data type for {@code output} output * @param input The input value * @param begin {@code begin[k]} specifies the offset into the {@code k}th range specification. * The exact dimension this corresponds to will be determined by context. @@ -7351,9 +7264,10 @@ public StridedSlice stridedSlice(Operand * @param data type for {@code outputRef()} output * @param ref the tensor to assign to. * @param value the value to assign. - * @param indices The indices to slice. See {@link Indices}. + * @param indices The indices to slice. See {@link org.tensorflow.ndarray.index.Indices}. * @return a new instance of StridedSliceAssign - * @see org.tensorflow.op.Ops#stridedSlice(Operand, Index...) + * @see org.tensorflow.op.Ops#stridedSlice(org.tensorflow.Operand, + * org.tensorflow.ndarray.index.Index...) */ public StridedSliceAssign stridedSliceAssign(Operand ref, Operand value, Index... indices) { @@ -7368,7 +7282,6 @@ public StridedSliceAssign stridedSliceAssign(Operand ref *

NOTE this op currently does not support broadcasting and so {@code value}'s * shape must be exactly the shape produced by the slice of {@code ref}. * - * @param data type for {@code output_ref} output * @param ref The ref value * @param begin The begin value * @param end The end value @@ -7395,7 +7308,6 @@ public StridedSliceAssign stridedSliceAs * {@code dy} is the input gradient to be propagated and {@code shape} is the * shape of {@code StridedSlice}'s {@code input}. * - * @param data type for {@code output} output * @param shape The shape value * @param begin The begin value * @param end The end value @@ -7419,7 +7331,6 @@ public StridedSliceGrad stridedSliceGrad * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. * - * @param data type for {@code output} output * @param input The tensor to reduce. * @param axis The dimensions to reduce. Must be in the range * {@code [-rank(input), rank(input))}. @@ -7438,7 +7349,6 @@ public Sum sum(Operand input, Operand * the data goes to {@code output_false}. *

See also {@code RefSwitch} and {@code Merge}. * - * @param data type for {@code output_false} output * @param data The tensor to be forwarded to the appropriate output. * @param pred A scalar that specifies which output port will receive data. * @param data type for {@code Switch} output and operands @@ -7473,7 +7383,6 @@ public SyncDevice syncDevice() { * var = state_ops.assign_add(var, [[6.0, 7.0]]) * final = state_ops._destroy_temporary_variable(var, var_name=var_name) * - * @param data type for {@code ref} output * @param shape The shape of the variable tensor. * @param dtype The type of elements in the variable tensor. * @param options carries optional attribute values @@ -7524,7 +7433,6 @@ public TensorArrayClose tensorArrayClose(Operand handle) { * *

All elements must have the same shape (excepting the first dimension). * - * @param data type for {@code value} output * @param handle The handle to a TensorArray. * @param flowIn A float scalar that enforces proper chaining of operations. * @param dtype The type of the elem that is returned. @@ -7541,7 +7449,6 @@ public TensorArrayConcat tensorArrayConcat(Operand data type for {@code value} output * @param handle The handle to a TensorArray. * @param indices The locations in the TensorArray from which to read tensor elements. * @param flowIn A float scalar that enforces proper chaining of operations. @@ -7622,7 +7529,6 @@ public TensorArrayGradWithShape tensorArrayGradWithShape(Operand data type for {@code value} output * @param handle The handle value * @param flowIn The flowIn value * @param dtype The value of the dtype attribute @@ -7638,7 +7544,6 @@ public TensorArrayPack tensorArrayPack(Operand han /** * Read an element from the TensorArray into output {@code value}. * - * @param data type for {@code value} output * @param handle The handle to a TensorArray. * @param index The index value * @param flowIn A float scalar that enforces proper chaining of operations. @@ -7750,7 +7655,6 @@ public TensorArrayWrite tensorArrayWrite(Operand handle, Operan * tensor: The concated result. * lengths: Output tensor containing sizes of the 0th dimension of tensors in the list, used for computing the gradient. * - * @param data type for {@code tensor} output * @param inputHandle The inputHandle value * @param elementShape The elementShape value * @param leadingDims The leadingDims value @@ -7783,7 +7687,6 @@ public TensorListConcatLists tensorListConcatLists( * input_handle: the list * element_shape: the shape of elements of the list * - * @param data type for {@code element_shape} output * @param inputHandle The inputHandle value * @param shapeType The value of the shapeType attribute * @param data type for {@code TensorListElementShape} output and operands @@ -7817,7 +7720,6 @@ public TensorListFromTensor tensorListFromTensor(Operand tensor * indices: The indices used to index into the list. * values: The tensor. * - * @param data type for {@code values} output * @param inputHandle The inputHandle value * @param indices The indices value * @param elementShape The elementShape value @@ -7837,7 +7739,6 @@ public TensorListGather tensorListGather( * index: the position in the list from which an element will be retrieved * item: the element at that position * - * @param data type for {@code item} output * @param inputHandle The inputHandle value * @param index The index value * @param elementShape The elementShape value @@ -7871,7 +7772,6 @@ public TensorListLength tensorListLength(Operand inputHandle) { * element_dtype: the type of elements in the list * element_shape: the shape of the output tensor * - * @param data type for {@code tensor} output * @param inputHandle The inputHandle value * @param elementShape The elementShape value * @param elementDtype The value of the elementDtype attribute @@ -8033,7 +7933,6 @@ public TensorListSplit tensorListSplit(Operand tensor, * tensor: the gathered result * num_elements: optional. If not -1, the number of elements in the list. * - * @param data type for {@code tensor} output * @param inputHandle The inputHandle value * @param elementShape The elementShape value * @param elementDtype The value of the elementDtype attribute @@ -8101,7 +8000,6 @@ public TensorMapInsert tensorMapInsert(Operand inputHandle, * key: the key to be looked up * value: the value found from the given key * - * @param data type for {@code value} output * @param inputHandle The inputHandle value * @param key The key value * @param valueDtype The value of the valueDtype attribute @@ -8130,7 +8028,6 @@ public TensorMapSize tensorMapSize(Operand inputHandle) { * input_handle: the input map * keys: the returned Tensor of all keys in the map * - * @param data type for {@code keys} output * @param inputHandle The inputHandle value * @param keyDtype The value of the keyDtype attribute * @param data type for {@code TensorMapStackKeys} output and operands @@ -8201,19 +8098,28 @@ public TensorMapStackKeys tensorMapStackKeys( * * * - *

Note: on CPU, if an out of bound index is found, an error is returned. - * On GPU, if an out of bound index is found, the index is ignored. + *

If {@code indices} contains any out-of-bound indices, depending on + * {@code bad_indices_policy}, the op will either return an error or ignore the + * out-of-bound indices. {@code bad_indices_policy} can be one of the following values: + *

    + *
  1. "" or "DEFAULT": raises on CPU and ignore on GPU. This is because + * historically on CPU and GPU we handle errors in different ways, and for + * backward compatibility we keep the default behavior.
  2. + *
  3. "ERROR": raises error; GPU does not support this value.
  4. + *
  5. "IGNORE": ignore the bad indices; supported on both CPU and GPU.
  6. + *
* - * @param data type for {@code output} output * @param tensor Tensor to copy/update. * @param indices Index tensor. * @param updates Updates to scatter into output. + * @param options carries optional attribute values * @param data type for {@code TensorScatterAdd} output and operands * @return a new instance of TensorScatterNdAdd */ public TensorScatterNdAdd tensorScatterNdAdd(Operand tensor, - Operand indices, Operand updates) { - return TensorScatterNdAdd.create(scope, tensor, indices, updates); + Operand indices, Operand updates, + TensorScatterNdAdd.Options... options) { + return TensorScatterNdAdd.create(scope, tensor, indices, updates, options); } /** @@ -8233,31 +8139,33 @@ public TensorScatterNdAdd tensorScatterNdAdd(Operand ten * *

Refer to {@code tf.tensor_scatter_nd_update} for more details. * - * @param data type for {@code output} output * @param tensor Tensor to update. * @param indices Index tensor. * @param updates Updates to scatter into output. + * @param options carries optional attribute values * @param data type for {@code TensorScatterMax} output and operands * @return a new instance of TensorScatterNdMax */ public TensorScatterNdMax tensorScatterNdMax(Operand tensor, - Operand indices, Operand updates) { - return TensorScatterNdMax.create(scope, tensor, indices, updates); + Operand indices, Operand updates, + TensorScatterNdMax.Options... options) { + return TensorScatterNdMax.create(scope, tensor, indices, updates, options); } /** * The TensorScatterMin operation * - * @param data type for {@code output} output * @param tensor Tensor to update. * @param indices Index tensor. * @param updates Updates to scatter into output. + * @param options carries optional attribute values * @param data type for {@code TensorScatterMin} output and operands * @return a new instance of TensorScatterNdMin */ public TensorScatterNdMin tensorScatterNdMin(Operand tensor, - Operand indices, Operand updates) { - return TensorScatterNdMin.create(scope, tensor, indices, updates); + Operand indices, Operand updates, + TensorScatterNdMin.Options... options) { + return TensorScatterNdMin.create(scope, tensor, indices, updates, options); } /** @@ -8318,16 +8226,17 @@ public TensorScatterNdMin tensorScatterNdMin(Operand ten *

Note that on CPU, if an out of bound index is found, an error is returned. * On GPU, if an out of bound index is found, the index is ignored. * - * @param data type for {@code output} output * @param tensor Tensor to copy/update. * @param indices Index tensor. * @param updates Updates to scatter into output. + * @param options carries optional attribute values * @param data type for {@code TensorScatterSub} output and operands * @return a new instance of TensorScatterNdSub */ public TensorScatterNdSub tensorScatterNdSub(Operand tensor, - Operand indices, Operand updates) { - return TensorScatterNdSub.create(scope, tensor, indices, updates); + Operand indices, Operand updates, + TensorScatterNdSub.Options... options) { + return TensorScatterNdSub.create(scope, tensor, indices, updates, options); } /** @@ -8338,7 +8247,6 @@ public TensorScatterNdSub tensorScatterNdSub(Operand ten * scattered onto an existing tensor (as opposed to a zero-tensor). If the memory * for the existing tensor cannot be re-used, a copy is made and updated. *

If {@code indices} contains duplicates, then we pick the last update for the index. - *

If an out of bound index is found on CPU, an error is returned. *

WARNING: There are some GPU specific semantics for this operation. *

    *
  • If an out of bound index is found, the index is ignored.
  • @@ -8360,18 +8268,29 @@ public TensorScatterNdSub tensorScatterNdSub(Operand ten *
        *  indices.shape[:-1] + tensor.shape[indices.shape[-1]:]
        *  
    + *

    If {@code indices} contains any out-of-bound indices, depending on + * {@code bad_indices_policy}, the op will either return an error or ignore the + * out-of-bound indices. {@code bad_indices_policy} can be one of the following values: + *

      + *
    1. "" or "DEFAULT": raises on CPU and ignore on GPU. This is because + * historically on CPU and GPU we handle errors in different ways, and for + * backward compatibility we keep the default behavior.
    2. + *
    3. "ERROR": raises error; GPU does not support this value.
    4. + *
    5. "IGNORE": ignore the bad indices; supported on both CPU and GPU.
    6. + *
    *

    For usage examples see the python tf.tensor_scatter_nd_update {@link org.tensorflow.op.Ops#tensorScatterNdUpdate} function * - * @param data type for {@code output} output * @param tensor Tensor to copy/update. * @param indices Index tensor. * @param updates Updates to scatter into output. + * @param options carries optional attribute values * @param data type for {@code TensorScatterUpdate} output and operands * @return a new instance of TensorScatterNdUpdate */ public TensorScatterNdUpdate tensorScatterNdUpdate(Operand tensor, - Operand indices, Operand updates) { - return TensorScatterNdUpdate.create(scope, tensor, indices, updates); + Operand indices, Operand updates, + TensorScatterNdUpdate.Options... options) { + return TensorScatterNdUpdate.create(scope, tensor, indices, updates, options); } /** @@ -8382,7 +8301,6 @@ public TensorScatterNdUpdate tensorScatterNdUpdate(Operand< *

    NOTE this op currently does not support broadcasting and so {@code value}'s shape * must be exactly the shape produced by the slice of {@code input}. * - * @param data type for {@code output} output * @param input The input value * @param begin The begin value * @param end The end value @@ -8433,7 +8351,6 @@ public TensorStridedSliceUpdate tensorSt * * * - * @param data type for {@code output} output * @param input Can be of any rank. * @param multiples 1-D. Length must be the same as the number of dimensions in {@code input} * @param data type for {@code Tile} output and operands @@ -8522,7 +8439,6 @@ public TopKWithUnique topKWithUnique(Operand input, Long k) { * assumed to possibly belong to the same batch. If left empty, the op name will * be used as the shared name. * - * @param data type for {@code unbatched_tensor} output * @param batchedTensor The batchedTensor value * @param batchIndex The batchIndex value * @param id The id value @@ -8552,7 +8468,6 @@ public Unbatch unbatch(Operand batchedTensor, Operand data type for {@code batched_grad} output * @param originalInput The originalInput value * @param batchIndex The batchIndex value * @param grad The grad value @@ -8573,7 +8488,6 @@ public UnbatchGrad unbatchGrad(Operand originalInput, * If quantization_axis is -1 (per-tensor quantized), the entire operand is clipped using scalar min, max. * Otherwise (per-channel quantized), the clipping is also done per-channel. * - * @param data type for {@code output} output * @param operand Must be a Tensor of T. * @param min The min value(s) to clip operand. Must be a Tensor of T. * Must be a scalar Tensor if quantization_axis is -1 (per-tensor quantization), otherwise 1D Tensor of size (operand.dim_size(quantization_axis),) (per-axis quantization). @@ -8635,8 +8549,6 @@ public UniformQuantizedClipByValue uniformQuantizedClipBy * idx ==> [0, 1, 1] * * - * @param data type for {@code y} output - * @param data type for {@code idx} output * @param x A {@code Tensor}. * @param axis A {@code Tensor} of type {@code int32} (default: None). The axis of the Tensor to * find the unique elements. @@ -8686,8 +8598,6 @@ public Unique unique(Operand x, Operand * - * @param data type for {@code y} output - * @param data type for {@code idx} output * @param x A {@code Tensor}. * @param axis A {@code Tensor} of type {@code int32} (default: None). The axis of the Tensor to * find the unique elements. @@ -8744,8 +8654,6 @@ public Unique unique(Operand x, * count ==> [1, 2] * * - * @param data type for {@code y} output - * @param data type for {@code idx} output * @param x A {@code Tensor}. * @param axis A {@code Tensor} of type {@code int32} (default: None). The axis of the Tensor to * find the unique elements. @@ -8800,8 +8708,6 @@ public UniqueWithCounts uniqueWithCounts(Operand * count ==> [1, 2] * * - * @param data type for {@code y} output - * @param data type for {@code idx} output * @param x A {@code Tensor}. * @param axis A {@code Tensor} of type {@code int32} (default: None). The axis of the Tensor to * find the unique elements. @@ -8835,7 +8741,6 @@ public UniqueWithCounts uniqueWithCou * Equivalent to np.unravel_index *
    {@literal @}end_compatibility * - * @param data type for {@code output} output * @param indices An 0-D or 1-D {@code int} Tensor whose elements are indices into the * flattened version of an array of dimensions dims. * @param dims An 1-D {@code int} Tensor. The shape of the array to use for unraveling @@ -8859,7 +8764,6 @@ public UnravelIndex unravelIndex(Operand indices, Oper * Etc. *

    This is the opposite of {@code pack}. * - * @param data type for {@code output} output * @param value 1-D or higher, with {@code axis} dimension size equal to {@code num}. * @param num The value of the num attribute * @param options carries optional attribute values @@ -8900,7 +8804,6 @@ public Unstage unstage(List> dtypes, Unstage.Options... o *

    result == [[1, 2, 4], * [0, 2, 5]] * - * @param data type for {@code output} output * @param sortedInputs 2-D Tensor where each row is ordered. * @param values 2-D Tensor with the same numbers of rows as {@code sorted_search_values}. Contains * the values that will be searched for in {@code sorted_search_values}. @@ -8928,7 +8831,6 @@ public UpperBound upperBound(Operand sortedInputs, *

    result == [[1, 2, 4], * [0, 2, 5]] * - * @param data type for {@code output} output * @param sortedInputs 2-D Tensor where each row is ordered. * @param values 2-D Tensor with the same numbers of rows as {@code sorted_search_values}. Contains * the values that will be searched for in {@code sorted_search_values}. @@ -8988,7 +8890,6 @@ public Variable variable(Operand init, Variable.Options. * TODO(zhifengc/mrry): Adds a pointer to a more detail document * about sharing states in tensorflow. * - * @param data type for {@code ref} output * @param shape The shape of the variable tensor. * @param dtype The type of elements in the variable tensor. * @param options carries optional attribute values @@ -9009,7 +8910,6 @@ public Variable variable(Shape shape, Class dtype, * shape(t) ==> [2, 2, 3] * * - * @param data type for {@code output} output * @param input The input value * @return a new instance of VariableShape, with default output types */ @@ -9026,7 +8926,6 @@ public VariableShape variableShape(Operand input) { * shape(t) ==> [2, 2, 3] * * - * @param data type for {@code output} output * @param input The input value * @param outType The value of the outType attribute * @param data type for {@code VariableShape} output and operands @@ -9147,7 +9046,6 @@ public Zeros zeros(Operand dims, Class data type for {@code y} output * @param x a tensor of type T. * @param data type for {@code ZerosLike} output and operands * @return a new instance of ZerosLike diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/QuantizationOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/QuantizationOps.java index 99f3648ea27..88df6bf8a0e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/QuantizationOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/QuantizationOps.java @@ -107,7 +107,6 @@ public final class QuantizationOps { * max_range / max_expected_T); * * - * @param data type for {@code output} output * @param input The input value * @param minRange The minimum scalar value possibly produced for the input. * @param maxRange The maximum scalar value possibly produced for the input. @@ -115,7 +114,7 @@ public final class QuantizationOps { * @return a new instance of Dequantize, with default output types */ public Dequantize dequantize(Operand input, - Operand minRange, Operand maxRange, Dequantize.Options[] options) { + Operand minRange, Operand maxRange, Dequantize.Options... options) { return Dequantize.create(scope, input, minRange, maxRange, options); } @@ -165,7 +164,6 @@ public Dequantize dequantize(Operand input, * max_range / max_expected_T); * * - * @param data type for {@code output} output * @param input The input value * @param minRange The minimum scalar value possibly produced for the input. * @param maxRange The maximum scalar value possibly produced for the input. @@ -275,6 +273,28 @@ public FakeQuantWithMinMaxArgsGradient fakeQuantWithMinMaxArgsGradient( *

*

This operation has a gradient and thus allows for training {@code min} and {@code max} * values. + *

+ *
+ *
+ *

constant_input = tf.constant([[1.2, -0.3, 0.7], [2.1, 0.5, -1.0]], dtype=tf.float32) + *

min_val = -0.5 + * max_val = 0.8 + * num_bits = 8 + * narrow_range = False #False:for the quantization range [0; 2^num_bits - 1] + *

quantized_data = tf.quantization.fake_quant_with_min_max_vars( + * ... inputs=constant_input, min=min_val, max=max_val, num_bits=num_bits, narrow_range=narrow_range + * ... ) + *

print("Input:\n", constant_input.numpy()) + * Input: + * [[ 1.2 -0.3 0.7] + * [ 2.1 0.5 -1. ]] + * print("Output:\n", quantized_data.numpy()) + * Output: + * [[ 0.8003921 -0.3007843 0.6984313] + * [ 0.8003921 0.4996078 -0.4996078]] + *

+ *
+ *
* * @param inputs The inputs value * @param min The min value @@ -456,7 +476,6 @@ public FakeQuantWithMinMaxVarsPerChannelGradient fakeQuantWithMinMaxVarsPerChann * The legacy default value for this is 0.01, but it is strongly suggested to * set it to 0 for new uses. * - * @param data type for {@code output} output * @param input The input value * @param minRange The minimum value of the quantization range. This value may be adjusted by the * op depending on other parameters. The adjusted value is written to {@code output_min}. @@ -482,7 +501,6 @@ public Quantize quantize(Operand input, * This is almost identical to QuantizeAndDequantizeV2, except that num_bits is a * tensor, so its value can change during training. * - * @param data type for {@code output} output * @param input The input value * @param inputMin The inputMin value * @param inputMax The inputMax value @@ -502,7 +520,6 @@ public QuantizeAndDequantize quantizeAndDequantize(Operan * This is almost identical to QuantizeAndDequantizeV2, except that num_bits is a * tensor, so its value can change during training. * - * @param data type for {@code output} output * @param input The input value * @param inputMin The inputMin value * @param inputMax The inputMax value @@ -522,7 +539,6 @@ public QuantizeAndDequantizeV3 quantizeAndDequantizeV3(Op * This is almost identical to QuantizeAndDequantizeV2, except that it returns a * gradient of 1 for inputs that are within the quantization range, or 0 otherwise. * - * @param data type for {@code output} output * @param input Tensor to quantize and then dequantize. * @param inputMin If {@code range_given == True}, this specifies the minimum input value that needs to * be represented, otherwise it is determined from the min value of the {@code input} @@ -544,7 +560,6 @@ public QuantizeAndDequantizeV4 quantizeAndDequantizeV4(Op * Returns a gradient of 1 for inputs that are within the quantization range, * or 0 otherwise. * - * @param data type for {@code input_backprop} output * @param gradients The gradients value * @param input The input value * @param inputMin The inputMin value @@ -581,7 +596,6 @@ public QuantizeAndDequantizeV4Grad quantizeAndDequantizeV * that output into this operator, we can reduce it from 32 bits down to 8 with * minimal loss of accuracy. * - * @param data type for {@code output} output * @param input The input value * @param inputMin The float value that the minimum quantized input value represents. * @param inputMax The float value that the maximum quantized input value represents. @@ -598,7 +612,6 @@ public QuantizeDownAndShrinkRange quantizeDownAndShrinkRa /** * Concatenates quantized tensors along one dimension. * - * @param data type for {@code output} output * @param concatDim 0-D. The dimension along which to concatenate. Must be in the * range [0, rank(values)). * @param values The {@code N} Tensors to concatenate. Their ranks and types must match, @@ -617,7 +630,6 @@ public QuantizedConcat quantizedConcat(Operand conc /** * The QuantizedMatMulWithBiasAndDequantize operation * - * @param data type for {@code out} output * @param a The a value * @param b The b value * @param bias The bias value @@ -644,7 +656,6 @@ public QuantizedMatMulWithBiasAndDequantize quantizedMatM /** * The QuantizedMatMulWithBiasAndRequantize operation * - * @param data type for {@code out} output * @param a The a value * @param b The b value * @param bias The bias value @@ -694,7 +705,6 @@ public RequantizationRange requantizationRange(Operand input, * {@code input_max} is 1.0f, and we are dealing with {@code quint16} quantized data, then a 0 * value in the 16-bit data should be interpreted as -1.0f, and a 65535 means 1.0f. * - * @param data type for {@code output} output * @param input The input value * @param inputMin The float value that the minimum quantized input value represents. * @param inputMax The float value that the maximum quantized input value represents. @@ -715,7 +725,6 @@ public Requantize requantize(Operand i * Given quantized {@code input} which was quantized using {@code scales} and {@code zero_points}, performs dequantization using the formula: * dequantized_data = (quantized_data - zero_point) * scale. * - * @param data type for {@code output} output * @param input Must be a Tensor of Tin. * @param scales The float value(s) used as scale(s) when quantizing original data that input represents. * Must be a scalar Tensor if quantization_axis is -1 (per-tensor quantization), otherwise 1D Tensor of size (input.dim_size(quantization_axis),) (per-axis quantization). @@ -746,7 +755,6 @@ public UniformDequantize uniformDequantize( * Given {@code input}, {@code scales} and {@code zero_points}, performs quantization using the formula: * quantized_data = floor(input_data * (1.0f / scale) + 0.5f) + zero_point * - * @param data type for {@code output} output * @param input Must be a Tensor of Tin. * @param scales The float value(s) to use as scale(s) to quantize {@code input}. * Must be a scalar Tensor if quantization_axis is -1 (per-tensor quantization), otherwise 1D Tensor of size (input.dim_size(quantization_axis),) (per-axis quantization). @@ -780,7 +788,6 @@ public UniformQuantize uniformQuantize(Operand data type for {@code output} output * @param lhs Must be a 2D Tensor of Tin. * @param rhs Must be a 2D Tensor of Tin. * @param lhsScales The float value(s) used as scale when quantizing original data that lhs represents. @@ -833,7 +840,6 @@ public UniformQuantizedDot uniformQuan * {@code rhs} must be quantized Tensor, where its data value is quantized using the formula: * quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val). * - * @param data type for {@code output} output * @param lhs Must be a 2D Tensor of Tlhs. * @param rhs Must be a 2D Tensor of Trhs. * @param rhsScales The float value(s) used as scale when quantizing original data that rhs represents. @@ -873,7 +879,6 @@ public UniformQuantizedDotHybrid uniformQuantizedDotHybri * i.e. At least one among input_quantization_axis and output_quantization_axis must be -1, or two must be equal. * * - * @param data type for {@code output} output * @param input Must be a Tensor of Tin. * @param inputScales The float value(s) used as scale(s) when quantizing original data that {@code input} represents. * Must be a scalar Tensor if quantization_axis is -1 (per-tensor quantization), otherwise 1D Tensor of size (input.dim_size(quantization_axis),) (per-axis quantization). diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/RaggedOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/RaggedOps.java index 83bf63f461f..43b18f0cf57 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/RaggedOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/RaggedOps.java @@ -60,7 +60,6 @@ public final class RaggedOps { * {@code i}. *

Values in {@code arr} outside of the range [0, size) are ignored. * - * @param data type for {@code output} output * @param splits 1D int64 {@code Tensor}. * @param values 2D int {@code Tensor}. * @param sizeOutput non-negative int scalar {@code Tensor}. @@ -82,7 +81,6 @@ public RaggedBincount raggedBincount( * Performs sparse-output bin counting for a ragged tensor input. * Counts the number of times each value occurs in the input. * - * @param data type for {@code output_values} output * @param splits Tensor containing the row splits of the ragged tensor to count. * @param values Tensor containing values of the sparse tensor to count. * @param weights A Tensor of the same shape as indices containing per-index weight values. @@ -102,8 +100,6 @@ public RaggedCountSparseOutput raggedCountSparseOutput( * Generates a feature cross from a list of tensors, and returns it as a * RaggedTensor. See {@code tf.ragged.cross} for more details. * - * @param data type for {@code output_values} output - * @param data type for {@code output_row_splits} output * @param raggedValues The values tensor for each RaggedTensor input. * @param raggedRowSplits The row_splits tensor for each RaggedTensor input. * @param sparseIndices The indices tensor for each SparseTensor input. @@ -135,7 +131,6 @@ public RaggedCross raggedCross( /** * The RaggedFillEmptyRows operation * - * @param data type for {@code output_values} output * @param valueRowids The valueRowids value * @param values The values value * @param nrows The nrows value @@ -151,7 +146,6 @@ public RaggedFillEmptyRows raggedFillEmptyRows(Operand data type for {@code d_values} output * @param reverseIndexMap The reverseIndexMap value * @param gradValues The gradValues value * @param data type for {@code RaggedFillEmptyRowsGrad} output and operands @@ -183,8 +177,6 @@ public RaggedFillEmptyRowsGrad raggedFillEmptyRowsGrad( *

(Note: This c++ op is used to implement the higher-level python * {@code tf.ragged.gather} op, which also supports ragged indices.) * - * @param data type for {@code output_nested_splits} output - * @param data type for {@code output_dense_values} output * @param paramsNestedSplits The {@code nested_row_splits} tensors that define the row-partitioning for the * {@code params} RaggedTensor input. * @param paramsDenseValues The {@code flat_values} for the {@code params} RaggedTensor. There was a terminology change @@ -221,8 +213,6 @@ public RaggedGather raggedGather( * The vector inputs must all have the same size. Scalar inputs are broadcast * to match the size of the vector inputs. * - * @param data type for {@code rt_nested_splits} output - * @param data type for {@code rt_dense_values} output * @param starts The starts of each range. * @param limits The limits of each range. * @param deltas The deltas of each range. @@ -250,8 +240,6 @@ public RaggedRange raggedRange(Operand starts, * The vector inputs must all have the same size. Scalar inputs are broadcast * to match the size of the vector inputs. * - * @param data type for {@code rt_nested_splits} output - * @param data type for {@code rt_dense_values} output * @param starts The starts of each range. * @param limits The limits of each range. * @param deltas The deltas of each range. @@ -279,8 +267,6 @@ public RaggedRange raggedRange(Oper * inferred as {@code output_ragged_rank} - {@code rank(encoded_ragged)}. See * {@code RaggedTensorToVariant} for the corresponding encoding logic. * - * @param data type for {@code output_nested_splits} output - * @param data type for {@code output_dense_values} output * @param encodedRagged A {@code variant} Tensor containing encoded {@code RaggedTensor}s. * @param inputRaggedRank The ragged rank of each encoded {@code RaggedTensor} component in the input. If set to * -1, this is inferred as {@code output_ragged_rank} - {@code rank(encoded_ragged)} @@ -310,8 +296,6 @@ public RaggedTensorFromVariant raggedTensorFromVari * inferred as {@code output_ragged_rank} - {@code rank(encoded_ragged)}. See * {@code RaggedTensorToVariant} for the corresponding encoding logic. * - * @param data type for {@code output_nested_splits} output - * @param data type for {@code output_dense_values} output * @param encodedRagged A {@code variant} Tensor containing encoded {@code RaggedTensor}s. * @param inputRaggedRank The ragged rank of each encoded {@code RaggedTensor} component in the input. If set to * -1, this is inferred as {@code output_ragged_rank} - {@code rank(encoded_ragged)} @@ -335,7 +319,6 @@ public RaggedTensorFromVariant ragged * output=SparseTensor(indices=sparse_indices, values=sparse_values, * dense_shape=sparse_dense_shape) * - * @param data type for {@code sparse_values} output * @param rtNestedSplits The {@code row_splits} for the {@code RaggedTensor}. * @param rtDenseValues The {@code flat_values} for the {@code RaggedTensor}. * @param data type for {@code RaggedTensorToSparse} output and operands @@ -365,7 +348,6 @@ public RaggedTensorToSparse raggedTensorToSparse( * is preceded by "FIRST_DIM_SIZE". * * - * @param data type for {@code result} output * @param shape The desired shape of the output tensor. If left unspecified (empty), * the minimal shape required to contain all the elements in the ragged tensor * (the natural shape) will be used. If some dimensions are left unspecified, then @@ -438,7 +420,6 @@ public RaggedTensorToVariant raggedTensorToVariant( * the outer row-splits and the shape of the dense-values that were provided as * inputs to the RaggedTensorToVariant op. * - * @param data type for {@code dense_values_grad} output * @param encodedRaggedGrad A {@code variant} Tensor containing encoded {@code RaggedTensor} gradients. * @param rowSplits Outermost row-splits that were used as input to the RaggedTensorToVariant op. * @param denseValuesShape Shape of the dense_values that was used as an input to the diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/RandomExperimentalOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/RandomExperimentalOps.java index 09a2b385b6f..34d3585f270 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/RandomExperimentalOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/RandomExperimentalOps.java @@ -49,7 +49,6 @@ public final class RandomExperimentalOps { * *

The outputs are a deterministic function of {@code value}, {@code key}, {@code counter} and {@code alg}. * - * @param data type for {@code output} output * @param value The tensor to be shuffled. * @param key Key for the counter-based RNG algorithm (shape uint64[1]). * @param counter Initial counter for the counter-based RNG algorithm (shape uint64[2] or uint64[1] depending on the algorithm). If a larger vector is given, only the needed portion on the left (i.e. [:N]) will be used. diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/RandomOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/RandomOps.java index 3c62a3b57a1..6000af11c9b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/RandomOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/RandomOps.java @@ -203,7 +203,6 @@ public LogUniformCandidateSampler logUniformCandidateSampler(Operand tru /** * Draws samples from a multinomial distribution. * - * @param data type for {@code output} output * @param logits 2-D Tensor with shape {@code [batch_size, num_classes]}. Each slice {@code [i, :]} * represents the unnormalized log probabilities for all classes. * @param numSamples 0-D. Number of independent samples to draw for each row slice. @@ -211,14 +210,13 @@ public LogUniformCandidateSampler logUniformCandidateSampler(Operand tru * @return a new instance of Multinomial, with default output types */ public Multinomial multinomial(Operand logits, - Operand numSamples, Multinomial.Options[] options) { + Operand numSamples, Multinomial.Options... options) { return Multinomial.create(scope, logits, numSamples, options); } /** * Draws samples from a multinomial distribution. * - * @param data type for {@code output} output * @param logits 2-D Tensor with shape {@code [batch_size, num_classes]}. Each slice {@code [i, :]} * represents the unnormalized log probabilities for all classes. * @param numSamples 0-D. Number of independent samples to draw for each row slice. @@ -236,7 +234,6 @@ public Multinomial multinomial(Operand * Non-deterministically generates some integers. * This op may use some OS-provided source of non-determinism (e.g. an RNG), so each execution will give different results. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @return a new instance of NonDeterministicInts, with default output types */ @@ -248,7 +245,6 @@ public NonDeterministicInts nonDeterministicInts(Operand data type for {@code output} output * @param shape The shape of the output tensor. * @param dtype The type of the output. * @param data type for {@code NonDeterministicInts} output and operands @@ -264,7 +260,6 @@ public NonDeterministicInts nonDeterministicInts( * scalar which applies to the entire output, or a vector of length shape[0] which * stores the parameters for each batch. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. Batches are indexed by the 0th dimension. * @param means The mean parameter of each batch. * @param stdevs The standard deviation parameter of each batch. Must be greater than 0. @@ -287,7 +282,6 @@ public ParameterizedTruncatedNormal parameterizedTruncate * transformation-rejection from pairs of uniform and normal random variables. * See http://dl.acm.org/citation.cfm?id=358414 * - * @param data type for {@code output} output * @param shape 1-D integer tensor. Shape of independent samples to draw from each * distribution described by the shape parameters given in alpha. * @param alpha A tensor in which each scalar is a "shape" parameter describing the @@ -304,7 +298,6 @@ public RandomGamma randomGamma(Operand /** * Computes the derivative of a Gamma random sample w.r.t. {@code alpha}. * - * @param data type for {@code output} output * @param alpha The alpha value * @param sample The sample value * @param data type for {@code RandomGammaGrad} output and operands @@ -326,7 +319,6 @@ public RandomGammaGrad randomGammaGrad(Operand alpha, * See Donald E. Knuth (1969). Seminumerical Algorithms. The Art of Computer * Programming, Volume 2. Addison Wesley * - * @param data type for {@code output} output * @param shape 1-D integer tensor. Shape of independent samples to draw from each * distribution described by the shape parameters given in rate. * @param rate A tensor in which each scalar is a "rate" parameter describing the @@ -335,7 +327,7 @@ public RandomGammaGrad randomGammaGrad(Operand alpha, * @return a new instance of RandomPoisson, with default output types */ public RandomPoisson randomPoisson(Operand shape, - Operand rate, RandomPoisson.Options[] options) { + Operand rate, RandomPoisson.Options... options) { return RandomPoisson.create(scope, shape, rate, options); } @@ -350,7 +342,6 @@ public RandomPoisson randomPoisson(Operand shape, * See Donald E. Knuth (1969). Seminumerical Algorithms. The Art of Computer * Programming, Volume 2. Addison Wesley * - * @param data type for {@code output} output * @param shape 1-D integer tensor. Shape of independent samples to draw from each * distribution described by the shape parameters given in rate. * @param rate A tensor in which each scalar is a "rate" parameter describing the @@ -376,7 +367,6 @@ public RandomPoisson randomPoisson(Operand * - * @param data type for {@code output} output * @param value The tensor to be shuffled. * @param options carries optional attribute values * @param data type for {@code RandomShuffle} output and operands @@ -391,7 +381,6 @@ public RandomShuffle randomShuffle(Operand value, * Outputs random values from a normal distribution. * The generated values will have mean 0 and standard deviation 1. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param dtype The type of the output. * @param options carries optional attribute values @@ -408,7 +397,6 @@ public RandomStandardNormal randomStandardNormal( * The generated values follow a uniform distribution in the range {@code [0, 1)}. The * lower bound 0 is included in the range, while the upper bound 1 is excluded. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param dtype The type of the output. * @param options carries optional attribute values @@ -429,7 +417,6 @@ public RandomUniform randomUniform(Operand data type for {@code output} output * @param shape The shape of the output tensor. * @param minval 0-D. Inclusive lower bound on the generated integers. * @param maxval 0-D. Exclusive upper bound on the generated integers. @@ -491,7 +478,6 @@ public RngSkip rngSkip(Operand resource, Operand algori /** * The StatefulRandomBinomial operation * - * @param data type for {@code output} output * @param resource The resource value * @param algorithm The algorithm value * @param shape The shape value @@ -509,7 +495,6 @@ public StatefulRandomBinomial statefulRandomBinomial /** * The StatefulRandomBinomial operation * - * @param data type for {@code output} output * @param resource The resource value * @param algorithm The algorithm value * @param shape The shape value @@ -530,7 +515,6 @@ public StatefulRandomBinomial stateful * Outputs random values from a normal distribution. * The generated values will have mean 0 and standard deviation 1. * - * @param data type for {@code output} output * @param resource The handle of the resource variable that stores the state of the RNG. * @param algorithm The RNG algorithm. * @param shape The shape of the output tensor. @@ -545,7 +529,6 @@ public StatefulStandardNormal statefulStandardNormal(Operand data type for {@code output} output * @param resource The handle of the resource variable that stores the state of the RNG. * @param algorithm The RNG algorithm. * @param shape The shape of the output tensor. @@ -565,7 +548,6 @@ public StatefulStandardNormal statefulStandardNormal( * deviation 1, except that values whose magnitude is more than 2 standard * deviations from the mean are dropped and re-picked. * - * @param data type for {@code output} output * @param resource The handle of the resource variable that stores the state of the RNG. * @param algorithm The RNG algorithm. * @param shape The shape of the output tensor. @@ -583,7 +565,6 @@ public StatefulTruncatedNormal statefulTruncatedNormal( * deviation 1, except that values whose magnitude is more than 2 standard * deviations from the mean are dropped and re-picked. * - * @param data type for {@code output} output * @param resource The handle of the resource variable that stores the state of the RNG. * @param algorithm The RNG algorithm. * @param shape The shape of the output tensor. @@ -602,7 +583,6 @@ public StatefulTruncatedNormal statefulTruncatedNormal( * The generated values follow a uniform distribution in the range {@code [0, 1)}. The * lower bound 0 is included in the range, while the upper bound 1 is excluded. * - * @param data type for {@code output} output * @param resource The handle of the resource variable that stores the state of the RNG. * @param algorithm The RNG algorithm. * @param shape The shape of the output tensor. @@ -618,7 +598,6 @@ public StatefulUniform statefulUniform(Operand resour * The generated values follow a uniform distribution in the range {@code [0, 1)}. The * lower bound 0 is included in the range, while the upper bound 1 is excluded. * - * @param data type for {@code output} output * @param resource The handle of the resource variable that stores the state of the RNG. * @param algorithm The RNG algorithm. * @param shape The shape of the output tensor. @@ -635,7 +614,6 @@ public StatefulUniform statefulUniform(Operand data type for {@code output} output * @param resource The handle of the resource variable that stores the state of the RNG. * @param algorithm The RNG algorithm. * @param shape The shape of the output tensor. @@ -658,7 +636,6 @@ public StatefulUniformFullInt statefulUniformFullInt( * power of two. The bias is small for values of {@code maxval - minval} significantly * smaller than the range of the output (either {@code 2^32} or {@code 2^64}). * - * @param data type for {@code output} output * @param resource The handle of the resource variable that stores the state of the RNG. * @param algorithm The RNG algorithm. * @param shape The shape of the output tensor. @@ -676,7 +653,6 @@ public StatefulUniformInt statefulUniformInt( /** * Draws samples from a multinomial distribution. * - * @param data type for {@code output} output * @param logits 2-D Tensor with shape {@code [batch_size, num_classes]}. Each slice {@code [i, :]} * represents the unnormalized log probabilities for all classes. * @param numSamples 0-D. Number of independent samples to draw for each row slice. @@ -691,7 +667,6 @@ public StatelessMultinomial statelessMultinomial(Operand data type for {@code output} output * @param logits 2-D Tensor with shape {@code [batch_size, num_classes]}. Each slice {@code [i, :]} * represents the unnormalized log probabilities for all classes. * @param numSamples 0-D. Number of independent samples to draw for each row slice. @@ -709,7 +684,6 @@ public StatelessMultinomial statelessMultinomial( /** * The StatelessParameterizedTruncatedNormal operation * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param seed 2 seeds (shape [2]). * @param means The mean parameter of each batch. @@ -731,7 +705,6 @@ public StatelessParameterizedTruncatedNormal statelessPar * Outputs random values from a binomial distribution. *

The outputs are a deterministic function of {@code shape}, {@code seed}, {@code counts}, and {@code probs}. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param seed 2 seeds (shape [2]). * @param counts The counts of the binomial distribution. Must be broadcastable with {@code probs}, @@ -752,7 +725,6 @@ public StatelessRandomBinomial statelessRandomBinomi * Outputs random values from a binomial distribution. *

The outputs are a deterministic function of {@code shape}, {@code seed}, {@code counts}, and {@code probs}. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param seed 2 seeds (shape [2]). * @param counts The counts of the binomial distribution. Must be broadcastable with {@code probs}, @@ -775,7 +747,6 @@ public StatelessRandomBinomial statele * Outputs random values from a gamma distribution. *

The outputs are a deterministic function of the inputs. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param key Key for the counter-based RNG algorithm (shape uint64[1]). * @param counter Initial counter for the counter-based RNG algorithm (shape uint64[2] or uint64[1] depending on the algorithm). If a larger vector is given, only the needed portion on the left (i.e. [:N]) will be used. @@ -830,7 +801,6 @@ public StatelessRandomGetKeyCounterAlg statelessRandomGetKeyCounterAlg( * The generated values will have mean 0 and standard deviation 1. *

The outputs are a deterministic function of {@code shape} and {@code seed}. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param seed 2 seeds (shape [2]). * @return a new instance of StatelessRandomNormal, with default output types @@ -845,7 +815,6 @@ public StatelessRandomNormal statelessRandomNormal(OperandThe outputs are a deterministic function of {@code shape} and {@code seed}. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param seed 2 seeds (shape [2]). * @param dtype The type of the output. @@ -862,7 +831,6 @@ public StatelessRandomNormal statelessRandomNormal( * The generated values will have mean 0 and standard deviation 1. *

The outputs are a deterministic function of {@code shape}, {@code key}, {@code counter} and {@code alg}. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param key Key for the counter-based RNG algorithm (shape uint64[1]). * @param counter Initial counter for the counter-based RNG algorithm (shape uint64[2] or uint64[1] depending on the algorithm). If a larger vector is given, only the needed portion on the left (i.e. [:N]) will be used. @@ -879,7 +847,6 @@ public StatelessRandomNormalV2 statelessRandomNormalV2(OperandThe outputs are a deterministic function of {@code shape}, {@code key}, {@code counter} and {@code alg}. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param key Key for the counter-based RNG algorithm (shape uint64[1]). * @param counter Initial counter for the counter-based RNG algorithm (shape uint64[2] or uint64[1] depending on the algorithm). If a larger vector is given, only the needed portion on the left (i.e. [:N]) will be used. @@ -899,7 +866,6 @@ public StatelessRandomNormalV2 statelessRandomNormalV2( * Outputs random values from a Poisson distribution. *

The outputs are a deterministic function of {@code shape}, {@code seed}, and {@code lam}. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param seed 2 seeds (shape [2]). * @param lam The rate of the Poisson distribution. Shape must match the rightmost dimensions @@ -920,7 +886,6 @@ public StatelessRandomPoisson statelessRandomPoisson( * lower bound 0 is included in the range, while the upper bound 1 is excluded. *

The outputs are a deterministic function of {@code shape} and {@code seed}. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param seed 2 seeds (shape [2]). * @return a new instance of StatelessRandomUniform, with default output types @@ -936,7 +901,6 @@ public StatelessRandomUniform statelessRandomUniform(OperandThe outputs are a deterministic function of {@code shape} and {@code seed}. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param seed 2 seeds (shape [2]). * @param dtype The type of the output. @@ -953,7 +917,6 @@ public StatelessRandomUniform statelessRandomUniform( * The generated values are uniform integers covering the whole range of {@code dtype}. *

The outputs are a deterministic function of {@code shape} and {@code seed}. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param seed 2 seeds (shape [2]). * @param dtype The type of the output. @@ -970,7 +933,6 @@ public StatelessRandomUniformFullInt statelessRandomUnifo * The generated values are uniform integers covering the whole range of {@code dtype}. *

The outputs are a deterministic function of {@code shape}, {@code key}, {@code counter} and {@code alg}. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param key Key for the counter-based RNG algorithm (shape uint64[1]). * @param counter Initial counter for the counter-based RNG algorithm (shape uint64[2] or uint64[1] depending on the algorithm). If a larger vector is given, only the needed portion on the left (i.e. [:N]) will be used. @@ -990,7 +952,6 @@ public StatelessRandomUniformFullIntV2 statelessRandomUni * The generated values follow a uniform distribution in the range {@code [minval, maxval)}. *

The outputs are a deterministic function of {@code shape}, {@code seed}, {@code minval}, and {@code maxval}. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param seed 2 seeds (shape [2]). * @param minval Minimum value (inclusive, scalar). @@ -1009,7 +970,6 @@ public StatelessRandomUniformInt statelessRandomUniformIn * The generated values follow a uniform distribution in the range {@code [minval, maxval)}. *

The outputs are a deterministic function of {@code shape}, {@code key}, {@code counter}, {@code alg}, {@code minval} and {@code maxval}. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param key Key for the counter-based RNG algorithm (shape uint64[1]). * @param counter Initial counter for the counter-based RNG algorithm (shape uint64[2] or uint64[1] depending on the algorithm). If a larger vector is given, only the needed portion on the left (i.e. [:N]) will be used. @@ -1031,7 +991,6 @@ public StatelessRandomUniformIntV2 statelessRandomUniform * lower bound 0 is included in the range, while the upper bound 1 is excluded. *

The outputs are a deterministic function of {@code shape}, {@code key}, {@code counter} and {@code alg}. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param key Key for the counter-based RNG algorithm (shape uint64[1]). * @param counter Initial counter for the counter-based RNG algorithm (shape uint64[2] or uint64[1] depending on the algorithm). If a larger vector is given, only the needed portion on the left (i.e. [:N]) will be used. @@ -1050,7 +1009,6 @@ public StatelessRandomUniformV2 statelessRandomUniformV2( * lower bound 0 is included in the range, while the upper bound 1 is excluded. *

The outputs are a deterministic function of {@code shape}, {@code key}, {@code counter} and {@code alg}. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param key Key for the counter-based RNG algorithm (shape uint64[1]). * @param counter Initial counter for the counter-based RNG algorithm (shape uint64[2] or uint64[1] depending on the algorithm). If a larger vector is given, only the needed portion on the left (i.e. [:N]) will be used. @@ -1072,7 +1030,6 @@ public StatelessRandomUniformV2 statelessRandomUniformV2( * deviations from the mean are dropped and re-picked. *

The outputs are a deterministic function of {@code shape} and {@code seed}. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param seed 2 seeds (shape [2]). * @return a new instance of StatelessTruncatedNormal, with default output types @@ -1089,7 +1046,6 @@ public StatelessTruncatedNormal statelessTruncatedNormal( * deviations from the mean are dropped and re-picked. *

The outputs are a deterministic function of {@code shape} and {@code seed}. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param seed 2 seeds (shape [2]). * @param dtype The type of the output. @@ -1108,7 +1064,6 @@ public StatelessTruncatedNormal statelessTruncatedNormal( * deviations from the mean are dropped and re-picked. *

The outputs are a deterministic function of {@code shape}, {@code key}, {@code counter} and {@code alg}. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param key Key for the counter-based RNG algorithm (shape uint64[1]). * @param counter Initial counter for the counter-based RNG algorithm (shape uint64[2] or uint64[1] depending on the algorithm). If a larger vector is given, only the needed portion on the left (i.e. [:N]) will be used. @@ -1128,7 +1083,6 @@ public StatelessTruncatedNormalV2 statelessTruncatedNormalV2( * deviations from the mean are dropped and re-picked. *

The outputs are a deterministic function of {@code shape}, {@code key}, {@code counter} and {@code alg}. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param key Key for the counter-based RNG algorithm (shape uint64[1]). * @param counter Initial counter for the counter-based RNG algorithm (shape uint64[2] or uint64[1] depending on the algorithm). If a larger vector is given, only the needed portion on the left (i.e. [:N]) will be used. @@ -1176,7 +1130,6 @@ public ThreadUnsafeUnigramCandidateSampler threadUnsafeUnigramCandidateSampler( * deviation 1, except that values whose magnitude is more than 2 standard * deviations from the mean are dropped and re-picked. * - * @param data type for {@code output} output * @param shape The shape of the output tensor. * @param dtype The type of the output. * @param options carries optional attribute values diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/ShapeOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/ShapeOps.java index c9cdae676a4..68cb802f86d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/ShapeOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/ShapeOps.java @@ -388,7 +388,8 @@ public Operand tail(Shape shape, Class type) { * shape. * * @param shape the TensorFlow shape - * @param n the number of leading dimensions to get, must be <= than the shape's numDimensions() + * @param n the number of leading dimensions to get, must be less than or equal to the shape's + * numDimensions() * @return a 1-dimensional operand with the dimensions matching the first n dimensions of the * shape */ @@ -401,7 +402,8 @@ public Operand take(Shape shape, Operand n) { * shape. * * @param shape the TensorFlow shape - * @param n the number of leading dimensions to get, must be <= than the shape's numDimensions() + * @param n the number of leading dimensions to get, must be less than or equal to the shape's + * numDimensions() * @param type the shape datatype. * @param the shape datatype. * @return a 1-dimensional operand with the dimensions matching * the first n dimensions of the @@ -416,7 +418,8 @@ public Operand take(Shape shape, Operand n, Class Operand takeLast(Shape shape, Operand * shape. * * @param shape the TensorFlow shape - * @param n the number of leading dimensions to get, must be <= than the shape's numDimensions() + * @param n the number of leading dimensions to get, must be less than or equal to the shape's + * numDimensions() * @param type the shape datatype. * @param the shape datatype. * @return a 1-dimensional operand containing the dimensions matching the last n dimensions of the diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/SignalOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/SignalOps.java index 33e2cd4d920..ac5703c264a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/SignalOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/SignalOps.java @@ -125,7 +125,6 @@ public BatchIfft3d batchIfft3d(Operand input) { * Computes the 1-dimensional discrete Fourier transform over the inner-most * dimension of {@code input}. * - * @param data type for {@code output} output * @param input A complex tensor. * @param data type for {@code FFT} output and operands * @return a new instance of Fft @@ -139,7 +138,6 @@ public Fft fft(Operand input) { * Computes the 2-dimensional discrete Fourier transform over the inner-most * 2 dimensions of {@code input}. * - * @param data type for {@code output} output * @param input A complex tensor. * @param data type for {@code FFT2D} output and operands * @return a new instance of Fft2d @@ -153,7 +151,6 @@ public Fft2d fft2d(Operand input) { * Computes the 3-dimensional discrete Fourier transform over the inner-most 3 * dimensions of {@code input}. * - * @param data type for {@code output} output * @param input A complex tensor. * @param data type for {@code FFT3D} output and operands * @return a new instance of Fft3d @@ -173,7 +170,6 @@ public Fft3d fft3d(Operand input) { *

Axes mean the dimensions to perform the transform on. Default is to perform on * all axes. * - * @param data type for {@code output} output * @param input A complex tensor. * @param fftLength An int32 tensor. The FFT length for each dimension. * @param axes An int32 tensor with a same shape as fft_length. Axes to perform the transform. @@ -190,7 +186,6 @@ public FftNd fftNd(Operand input, Operand fftLen * Computes the inverse 1-dimensional discrete Fourier transform over the * inner-most dimension of {@code input}. * - * @param data type for {@code output} output * @param input A complex tensor. * @param data type for {@code IFFT} output and operands * @return a new instance of Ifft @@ -204,7 +199,6 @@ public Ifft ifft(Operand input) { * Computes the inverse 2-dimensional discrete Fourier transform over the * inner-most 2 dimensions of {@code input}. * - * @param data type for {@code output} output * @param input A complex tensor. * @param data type for {@code IFFT2D} output and operands * @return a new instance of Ifft2d @@ -218,7 +212,6 @@ public Ifft2d ifft2d(Operand input) { * Computes the inverse 3-dimensional discrete Fourier transform over the * inner-most 3 dimensions of {@code input}. * - * @param data type for {@code output} output * @param input A complex tensor. * @param data type for {@code IFFT3D} output and operands * @return a new instance of Ifft3d @@ -238,7 +231,6 @@ public Ifft3d ifft3d(Operand input) { *

Axes mean the dimensions to perform the transform on. Default is to perform on * all axes. * - * @param data type for {@code output} output * @param input A complex tensor. * @param fftLength An int32 tensor. The FFT length for each dimension. * @param axes An int32 tensor with a same shape as fft_length. Axes to perform the transform. @@ -264,7 +256,6 @@ public IfftNd ifftNd(Operand input, Operand fftL * than the corresponding dimension of {@code input}, the dimension is cropped. If it is * larger, the dimension is padded with zeros. * - * @param data type for {@code output} output * @param input A complex tensor. * @param fftLength An int32 tensor of shape [1]. The FFT length. * @return a new instance of Irfft, with default output types @@ -287,7 +278,6 @@ public Irfft irfft(Operand input, Operand fft * than the corresponding dimension of {@code input}, the dimension is cropped. If it is * larger, the dimension is padded with zeros. * - * @param data type for {@code output} output * @param input A complex tensor. * @param fftLength An int32 tensor of shape [1]. The FFT length. * @param Treal The value of the Treal attribute @@ -314,7 +304,6 @@ public Irfft irfft(Operand input, * corresponding dimension of {@code input}, the dimension is cropped. If it is larger, * the dimension is padded with zeros. * - * @param data type for {@code output} output * @param input A complex tensor. * @param fftLength An int32 tensor of shape [2]. The FFT length for each dimension. * @return a new instance of Irfft2d, with default output types @@ -338,7 +327,6 @@ public Irfft2d irfft2d(Operand input, Operand * corresponding dimension of {@code input}, the dimension is cropped. If it is larger, * the dimension is padded with zeros. * - * @param data type for {@code output} output * @param input A complex tensor. * @param fftLength An int32 tensor of shape [2]. The FFT length for each dimension. * @param Treal The value of the Treal attribute @@ -365,7 +353,6 @@ public Irfft2d irfft2d(Operand input, * corresponding dimension of {@code input}, the dimension is cropped. If it is larger, * the dimension is padded with zeros. * - * @param data type for {@code output} output * @param input A complex tensor. * @param fftLength An int32 tensor of shape [3]. The FFT length for each dimension. * @return a new instance of Irfft3d, with default output types @@ -389,7 +376,6 @@ public Irfft3d irfft3d(Operand input, Operand * corresponding dimension of {@code input}, the dimension is cropped. If it is larger, * the dimension is padded with zeros. * - * @param data type for {@code output} output * @param input A complex tensor. * @param fftLength An int32 tensor of shape [3]. The FFT length for each dimension. * @param Treal The value of the Treal attribute @@ -413,7 +399,6 @@ public Irfft3d irfft3d(Operand input, *

Axes mean the dimensions to perform the transform on. Default is to perform on * all axes. * - * @param data type for {@code output} output * @param input A complex tensor. * @param fftLength An int32 tensor. The FFT length for each dimension. * @param axes An int32 tensor with a same shape as fft_length. Axes to perform the transform. @@ -436,7 +421,6 @@ public IrfftNd irfftNd(Operand input, Operand *

Axes mean the dimensions to perform the transform on. Default is to perform on * all axes. * - * @param data type for {@code output} output * @param input A complex tensor. * @param fftLength An int32 tensor. The FFT length for each dimension. * @param axes An int32 tensor with a same shape as fft_length. Axes to perform the transform. @@ -460,7 +444,6 @@ public IrfftNd irfftNd(Operand input, * corresponding dimension of {@code input}, the dimension is cropped. If it is larger, * the dimension is padded with zeros. * - * @param data type for {@code output} output * @param input A float32 tensor. * @param fftLength An int32 tensor of shape [1]. The FFT length. * @param Tcomplex The value of the Tcomplex attribute @@ -484,7 +467,6 @@ public Rfft rfft(Operand input, Operand< * corresponding dimension of {@code input}, the dimension is cropped. If it is larger, * the dimension is padded with zeros. * - * @param data type for {@code output} output * @param input A float32 tensor. * @param fftLength An int32 tensor of shape [2]. The FFT length for each dimension. * @param Tcomplex The value of the Tcomplex attribute @@ -508,7 +490,6 @@ public Rfft2d rfft2d(Operand input, * corresponding dimension of {@code input}, the dimension is cropped. If it is larger, * the dimension is padded with zeros. * - * @param data type for {@code output} output * @param input A float32 tensor. * @param fftLength An int32 tensor of shape [3]. The FFT length for each dimension. * @param Tcomplex The value of the Tcomplex attribute @@ -532,7 +513,6 @@ public Rfft3d rfft3d(Operand input, *

Axes mean the dimensions to perform the transform on. Default is to perform on * all axes. * - * @param data type for {@code output} output * @param input A complex tensor. * @param fftLength An int32 tensor. The FFT length for each dimension. * @param axes An int32 tensor with a same shape as fft_length. Axes to perform the transform. diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/SparseOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/SparseOps.java index 91726a9a693..f6f83acce58 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/SparseOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/SparseOps.java @@ -17,14 +17,18 @@ // package org.tensorflow.op; +import java.util.List; import org.tensorflow.Operand; import org.tensorflow.ndarray.Shape; import org.tensorflow.op.sparse.AddManySparseToTensorsMap; import org.tensorflow.op.sparse.AddSparseToTensorsMap; +import org.tensorflow.op.sparse.ConvertToListOfSparseCoreCooTensors; +import org.tensorflow.op.sparse.ConvertToSparseCoreCsrWrappedCooTensor; import org.tensorflow.op.sparse.DenseCountSparseOutput; import org.tensorflow.op.sparse.DenseToDenseSetOperation; import org.tensorflow.op.sparse.DenseToSparseSetOperation; import org.tensorflow.op.sparse.DeserializeSparse; +import org.tensorflow.op.sparse.GetStatsFromListOfSparseCoreCooTensors; import org.tensorflow.op.sparse.SparseAccumulatorApplyGradient; import org.tensorflow.op.sparse.SparseAccumulatorTakeGradient; import org.tensorflow.op.sparse.SparseAdd; @@ -68,6 +72,7 @@ import org.tensorflow.op.sparse.SparseToSparseSetOperation; import org.tensorflow.op.sparse.TakeManySparseFromTensorsMap; import org.tensorflow.types.TBool; +import org.tensorflow.types.TFloat32; import org.tensorflow.types.TInt32; import org.tensorflow.types.TInt64; import org.tensorflow.types.TString; @@ -151,11 +156,60 @@ public AddSparseToTensorsMap addSparseToTensorsMap(Operand sparseIndices return AddSparseToTensorsMap.create(scope, sparseIndices, sparseValues, sparseShape, options); } + /** + * The ConvertToListOfSparseCoreCooTensors operation + * + * @param indicesOrRowSplits The indicesOrRowSplits value + * @param values The values value + * @param weights The weights value + * @param sampleCount The value of the sampleCount attribute + * @param numScPerChip The value of the numScPerChip attribute + * @param rowOffset The value of the rowOffset attribute + * @param colOffset The value of the colOffset attribute + * @param colShift The value of the colShift attribute + * @param numScShards The value of the numScShards attribute + * @param stackedTableSampleCount The value of the stackedTableSampleCount attribute + * @param combiner The value of the combiner attribute + * @return a new instance of ConvertToListOfSparseCoreCooTensors + */ + public ConvertToListOfSparseCoreCooTensors convertToListOfSparseCoreCooTensors( + Operand indicesOrRowSplits, Operand values, Operand weights, + Long sampleCount, Long numScPerChip, Long rowOffset, Long colOffset, Long colShift, + Long numScShards, Long stackedTableSampleCount, String combiner) { + return ConvertToListOfSparseCoreCooTensors.create(scope, indicesOrRowSplits, values, weights, sampleCount, numScPerChip, rowOffset, colOffset, colShift, numScShards, stackedTableSampleCount, combiner); + } + + /** + * The ConvertToSparseCoreCsrWrappedCooTensor operation + * + * @param sortedRowIdsList The sortedRowIdsList value + * @param sortedColIdsList The sortedColIdsList value + * @param sortedGainsList The sortedGainsList value + * @param idCountsList The idCountsList value + * @param splits The splits value + * @param sampleCountPerSc The value of the sampleCountPerSc attribute + * @param numReplica The value of the numReplica attribute + * @param maxMinibatchesPerSc The value of the maxMinibatchesPerSc attribute + * @param maxIdsPerChipPerSample The value of the maxIdsPerChipPerSample attribute + * @param tableVocabSize The value of the tableVocabSize attribute + * @param featureWidth The value of the featureWidth attribute + * @param tableName The value of the tableName attribute + * @param allowIdDropping The value of the allowIdDropping attribute + * @return a new instance of ConvertToSparseCoreCsrWrappedCooTensor + */ + public ConvertToSparseCoreCsrWrappedCooTensor convertToSparseCoreCsrWrappedCooTensor( + Iterable> sortedRowIdsList, Iterable> sortedColIdsList, + Iterable> sortedGainsList, Iterable> idCountsList, + Operand splits, Long sampleCountPerSc, Long numReplica, Long maxMinibatchesPerSc, + Long maxIdsPerChipPerSample, Long tableVocabSize, Long featureWidth, String tableName, + Boolean allowIdDropping) { + return ConvertToSparseCoreCsrWrappedCooTensor.create(scope, sortedRowIdsList, sortedColIdsList, sortedGainsList, idCountsList, splits, sampleCountPerSc, numReplica, maxMinibatchesPerSc, maxIdsPerChipPerSample, tableVocabSize, featureWidth, tableName, allowIdDropping); + } + /** * Performs sparse-output bin counting for a tf.tensor input. * Counts the number of times each value occurs in the input. * - * @param data type for {@code output_values} output * @param values Tensor containing data to count. * @param weights A Tensor of the same shape as indices containing per-index weight values. May * also be the empty tensor if no weights are used. @@ -179,7 +233,6 @@ public DenseCountSparseOutput denseCountSparseOutput( * dimension contains the result of {@code set_operation} applied to the corresponding * {@code [0...n-1]} dimension of {@code set}. * - * @param data type for {@code result_values} output * @param set1 {@code Tensor} with rank {@code n}. 1st {@code n-1} dimensions must be the same as {@code set2}. * Dimension {@code n} contains values in a set, duplicates are allowed but ignored. * @param set2 {@code Tensor} with rank {@code n}. 1st {@code n-1} dimensions must be the same as {@code set1}. @@ -209,7 +262,6 @@ public DenseToDenseSetOperation denseToDenseSetOperation(Op * dimension contains the result of {@code set_operation} applied to the corresponding * {@code [0...n-1]} dimension of {@code set}. * - * @param data type for {@code result_values} output * @param set1 {@code Tensor} with rank {@code n}. 1st {@code n-1} dimensions must be the same as {@code set2}. * Dimension {@code n} contains values in a set, duplicates are allowed but ignored. * @param set2Indices 2D {@code Tensor}, indices of a {@code SparseTensor}. Must be in row-major @@ -272,7 +324,6 @@ public DenseToSparseSetOperation denseToSparseSetOperation( * shape = [2 50] * * - * @param data type for {@code sparse_values} output * @param serializedSparse The serialized {@code SparseTensor} objects. The last dimension * must have 3 columns. * @param dtype The {@code dtype} of the serialized {@code SparseTensor} objects. @@ -284,6 +335,29 @@ public DeserializeSparse deserializeSparse( return DeserializeSparse.create(scope, serializedSparse, dtype); } + /** + * The GetStatsFromListOfSparseCoreCooTensors operation + * + * @param rowIdsList The rowIdsList value + * @param colIdsList The colIdsList value + * @param gainsList The gainsList value + * @param sampleCountList The value of the sampleCountList attribute + * @param colOffsetList The value of the colOffsetList attribute + * @param numReplica The value of the numReplica attribute + * @param tableVocabSize The value of the tableVocabSize attribute + * @param featureWidth The value of the featureWidth attribute + * @param numScPerChip The value of the numScPerChip attribute + * @param tableName The value of the tableName attribute + * @return a new instance of GetStatsFromListOfSparseCoreCooTensors + */ + public GetStatsFromListOfSparseCoreCooTensors getStatsFromListOfSparseCoreCooTensors( + Iterable> rowIdsList, Iterable> colIdsList, + Iterable> gainsList, List sampleCountList, List colOffsetList, + Long numReplica, Long tableVocabSize, Long featureWidth, Long numScPerChip, + String tableName) { + return GetStatsFromListOfSparseCoreCooTensors.create(scope, rowIdsList, colIdsList, gainsList, sampleCountList, colOffsetList, numReplica, tableVocabSize, featureWidth, numScPerChip, tableName); + } + /** * Applies a sparse gradient to a given accumulator. * Does not add if local_step is smaller than the accumulator's @@ -317,7 +391,6 @@ public SparseAccumulatorApplyGradient sparseAccumulatorApplyGradient(Operand data type for {@code values} output * @param handle The handle to a SparseConditionalAccumulator. * @param numRequired Number of gradients required before we return an aggregate. * @param dtype The data type of accumulated gradients. Needs to correspond to the type @@ -344,7 +417,6 @@ public SparseAccumulatorTakeGradient sparseAccumulatorTakeG * only for a positive value. *

In the following shapes, {@code nnz} is the count after taking {@code thresh} into account. * - * @param data type for {@code sum_values} output * @param aIndices 2-D. The {@code indices} of the first {@code SparseTensor}, size {@code [nnz, ndims]} Matrix. * @param aValues 1-D. The {@code values} of the first {@code SparseTensor}, size {@code [nnz]} Vector. * @param aShape 1-D. The {@code shape} of the first {@code SparseTensor}, size {@code [ndims]} Vector. @@ -369,7 +441,6 @@ public SparseAdd sparseAdd(Operand aIndices, Operan * non-empty values of the sum, and outputs the gradients w.r.t. the non-empty * values of A and B. * - * @param data type for {@code a_val_grad} output * @param backpropValGrad 1-D with shape {@code [nnz(sum)]}. The gradient with respect to * the non-empty values of the sum. * @param aIndices 2-D. The {@code indices} of the {@code SparseTensor} A, size {@code [nnz(A), ndims]}. @@ -393,7 +464,6 @@ public SparseAddGrad sparseAddGrad(Operand backpropValGr * {@code i}. *

Values in {@code arr} outside of the range [0, size) are ignored. * - * @param data type for {@code output} output * @param indices 2D int64 {@code Tensor}. * @param values 1D int {@code Tensor}. * @param denseShape 1D int64 {@code Tensor}. @@ -452,7 +522,6 @@ public SparseBincount sparseBincount( * [b c ] [ ] [b c ] * * - * @param data type for {@code output_values} output * @param indices 2-D. Indices of each input {@code SparseTensor}. * @param values 1-D. Non-empty values of each {@code SparseTensor}. * @param shapes 1-D. Shapes of each {@code SparseTensor}. @@ -490,7 +559,6 @@ public SparseConditionalAccumulator sparseConditionalAccumulat * Performs sparse-output bin counting for a sparse tensor input. * Counts the number of times each value occurs in the input. * - * @param data type for {@code output_values} output * @param indices Tensor containing the indices of the sparse tensor to count. * @param values Tensor containing values of the sparse tensor to count. * @param denseShape Tensor containing the dense shape of the sparse tensor to count. @@ -624,7 +692,6 @@ public SparseCrossHashed sparseCrossHashed(Iterable> indices, * indices and shape, but possibly with different non-zero values. The output of * this Op is the resultant non-zero values. * - * @param data type for {@code output} output * @param spIndices 2-D. {@code N x R} matrix with the indices of non-empty values in a * SparseTensor, possibly not in canonical ordering. * @param spValues 1-D. {@code N} non-empty values corresponding to {@code sp_indices}. @@ -643,7 +710,6 @@ public SparseDenseCwiseAdd sparseDenseCwiseAdd(OperandLimitation: this Op only broadcasts the dense side to the sparse side, but not * the other direction. * - * @param data type for {@code output} output * @param spIndices 2-D. {@code N x R} matrix with the indices of non-empty values in a * SparseTensor, possibly not in canonical ordering. * @param spValues 1-D. {@code N} non-empty values corresponding to {@code sp_indices}. @@ -665,7 +731,6 @@ public SparseDenseCwiseDiv sparseDenseCwiseDiv(OperandLimitation: this Op only broadcasts the dense side to the sparse side, but not * the other direction. * - * @param data type for {@code output} output * @param spIndices 2-D. {@code N x R} matrix with the indices of non-empty values in a * SparseTensor, possibly not in canonical ordering. * @param spValues 1-D. {@code N} non-empty values corresponding to {@code sp_indices}. @@ -716,7 +781,6 @@ public SparseDenseCwiseMul sparseDenseCwiseMul(Operand * - * @param data type for {@code output_values} output * @param indices 2-D. the indices of the sparse tensor. * @param values 1-D. the values of the sparse tensor. * @param denseShape 1-D. the shape of the sparse tensor. @@ -741,7 +805,6 @@ public SparseFillEmptyRows sparseFillEmptyRows(Operand data type for {@code d_values} output * @param reverseIndexMap 1-D. The reverse index map from SparseFillEmptyRows. * @param gradValues 1-D. The gradients from backprop. * @param data type for {@code SparseFillEmptyRowsGrad} output and operands @@ -786,7 +849,6 @@ public SparseMatMul sparseMatMul(Operand a, Operand data type for {@code output} output * @param inputIndices 2-D. {@code N x R} matrix with the indices of non-empty values in a * SparseTensor, possibly not in canonical ordering. * @param inputValues 1-D. {@code N} non-empty values corresponding to {@code input_indices}. @@ -815,7 +877,6 @@ public SparseReduceMax sparseReduceMax(Operand in * with a single element is returned. Additionally, the axes can be negative, * which are interpreted according to the indexing rules in Python. * - * @param data type for {@code output_values} output * @param inputIndices 2-D. {@code N x R} matrix with the indices of non-empty values in a * SparseTensor, possibly not in canonical ordering. * @param inputValues 1-D. {@code N} non-empty values corresponding to {@code input_indices}. @@ -844,7 +905,6 @@ public SparseReduceMaxSparse sparseReduceMaxSparse( * with a single element is returned. Additionally, the axes can be negative, * which are interpreted according to the indexing rules in Python. * - * @param data type for {@code output} output * @param inputIndices 2-D. {@code N x R} matrix with the indices of non-empty values in a * SparseTensor, possibly not in canonical ordering. * @param inputValues 1-D. {@code N} non-empty values corresponding to {@code input_indices}. @@ -873,7 +933,6 @@ public SparseReduceSum sparseReduceSum(Operand inpu * with a single element is returned. Additionally, the axes can be negative, * which are interpreted according to the indexing rules in Python. * - * @param data type for {@code output_values} output * @param inputIndices 2-D. {@code N x R} matrix with the indices of non-empty values in a * SparseTensor, possibly not in canonical ordering. * @param inputValues 1-D. {@code N} non-empty values corresponding to {@code input_indices}. @@ -898,7 +957,6 @@ public SparseReduceSumSparse sparseReduceSumSparse( *

If the tensor has rank {@code R} and {@code N} non-empty values, {@code input_indices} has * shape {@code [N, R]}, input_values has length {@code N}, and input_shape has length {@code R}. * - * @param data type for {@code output_values} output * @param inputIndices 2-D. {@code N x R} matrix with the indices of non-empty values in a * SparseTensor, possibly not in canonical ordering. * @param inputValues 1-D. {@code N} non-empty values corresponding to {@code input_indices}. @@ -943,7 +1001,6 @@ public SparseReshape sparseReshape(Operand inputIndices, Operand *

Like {@code SegmentMean}, but {@code segment_ids} can have rank less than {@code data}'s first * dimension, selecting a subset of dimension 0, specified by {@code indices}. * - * @param data type for {@code output} output * @param data The data value * @param indices A 1-D tensor. Has same rank as {@code segment_ids}. * @param segmentIds A 1-D tensor. Values should be sorted and can be repeated. @@ -963,8 +1020,6 @@ public SparseSegmentMean sparseSegmentMean(Operand dat * value is the number of unique indexes in "indices". Also returns vector * "sorted_unique_indices" containing the corresponding indexes from "indices". * - * @param data type for {@code output} output - * @param data type for {@code sorted_unique_indices} output * @param grad gradient propagated to the SparseSegmentMean op. * @param indices indices passed to the corresponding SparseSegmentMean op. * @param segmentIds segment_ids passed to the corresponding SparseSegmentMean op. @@ -987,7 +1042,6 @@ public SparseSegmentMeanGrad sparse * the section on segmentation * for an explanation of segments. * - * @param data type for {@code output} output * @param data The data value * @param indices A 1-D tensor. Has same rank as {@code segment_ids}. * @param segmentIds A 1-D tensor. Values should be sorted and can be repeated. @@ -1007,7 +1061,6 @@ public SparseSegmentMeanWithNumSegments sparseSegmentMean * N is the size of the segment being reduced. *

See {@code tf.sparse.segment_sum} for usage examples. * - * @param data type for {@code output} output * @param data The data value * @param indices A 1-D tensor. Has same rank as {@code segment_ids}. * @param segmentIds A 1-D tensor. Values should be sorted and can be repeated. @@ -1027,8 +1080,6 @@ public SparseSegmentSqrtN sparseSegmentSqrtN(Operand d * value is the number of unique indexes in "indices". Also returns vector * "sorted_unique_indices" containing the corresponding indexes from "indices". * - * @param data type for {@code output} output - * @param data type for {@code sorted_unique_indices} output * @param grad gradient propagated to the SparseSegmentSqrtN op. * @param indices indices passed to the corresponding SparseSegmentSqrtN op. * @param segmentIds segment_ids passed to the corresponding SparseSegmentSqrtN op. @@ -1052,7 +1103,6 @@ public SparseSegmentSqrtNGrad spars * the section on segmentation * for an explanation of segments. * - * @param data type for {@code output} output * @param data The data value * @param indices A 1-D tensor. Has same rank as {@code segment_ids}. * @param segmentIds A 1-D tensor. Values should be sorted and can be repeated. @@ -1097,7 +1147,6 @@ public SparseSegmentSqrtNWithNumSegments sparseSegmentSqr * tf.segment_sum(c, tf.constant([0, 0, 1])) * * - * @param data type for {@code output} output * @param data The data value * @param indices A 1-D tensor. Has same rank as {@code segment_ids}. * @param segmentIds A 1-D tensor. Values should be sorted and can be repeated. @@ -1117,8 +1166,6 @@ public SparseSegmentSum sparseSegmentSum(Operand data, * value is the number of unique indexes in "indices". Also returns vector * "sorted_unique_indices" containing the corresponding indexes from "indices". * - * @param data type for {@code output} output - * @param data type for {@code sorted_unique_indices} output * @param grad gradient propagated to the SparseSegmentSum op. * @param indices indices passed to the corresponding SparseSegmentSum op. * @param segmentIds segment_ids passed to the corresponding SparseSegmentSum op. @@ -1160,7 +1207,6 @@ public SparseSegmentSumGrad sparseS * # [ 0 0 0 0]] * * - * @param data type for {@code output} output * @param data The data value * @param indices A 1-D tensor. Has same rank as {@code segment_ids}. * @param segmentIds A 1-D tensor. Values should be sorted and can be repeated. @@ -1194,7 +1240,6 @@ public SparseSegmentSumWithNumSegments sparseSegmentSumWi * [ ] * * - * @param data type for {@code output_values} output * @param indices 2-D tensor represents the indices of the sparse tensor. * @param values 1-D tensor represents the values of the sparse tensor. * @param shape 1-D. tensor represents the shape of the sparse tensor. @@ -1216,7 +1261,6 @@ public SparseSlice sparseSlice(Operand indices, Ope * the sliced {@code SparseTensor}, and outputs the gradients w.r.t. * the non-empty values of input {@code SparseTensor}. * - * @param data type for {@code val_grad} output * @param backpropValGrad 1-D. The gradient with respect to * the non-empty values of the sliced {@code SparseTensor}. * @param inputIndices 2-D. The {@code indices} of the input {@code SparseTensor}. @@ -1245,7 +1289,6 @@ public SparseSliceGrad sparseSliceGrad(Operand backpropV *

Hence, the {@code SparseTensor} result has exactly the same non-zero indices and * shape. * - * @param data type for {@code output} output * @param spIndices 2-D. {@code NNZ x R} matrix with the indices of non-empty values in a * SparseTensor, in canonical ordering. * @param spValues 1-D. {@code NNZ} non-empty values corresponding to {@code sp_indices}. @@ -1262,7 +1305,6 @@ public SparseSoftmax sparseSoftmax(Operand spIndi * Returns the element-wise max of two SparseTensors. * Assumes the two SparseTensors have the same shape, i.e., no broadcasting. * - * @param data type for {@code output_values} output * @param aIndices 2-D. {@code N x R} matrix with the indices of non-empty values in a * SparseTensor, in the canonical lexicographic ordering. * @param aValues 1-D. {@code N} non-empty values corresponding to {@code a_indices}. @@ -1283,7 +1325,6 @@ public SparseSparseMaximum sparseSparseMaximum(Operand data type for {@code output_values} output * @param aIndices 2-D. {@code N x R} matrix with the indices of non-empty values in a * SparseTensor, in the canonical lexicographic ordering. * @param aValues 1-D. {@code N} non-empty values corresponding to {@code a_indices}. @@ -1321,7 +1362,6 @@ public SparseSparseMinimum sparseSparseMinimum(Operand * - * @param data type for {@code output_values} output * @param splitDim 0-D. The dimension along which to split. Must be in the range * {@code [0, rank(shape))}. * @param indices 2-D tensor represents the indices of the sparse tensor. @@ -1342,7 +1382,6 @@ public SparseSplit sparseSplit(Operand splitDim, * Adds up a {@code SparseTensor} and a dense {@code Tensor}, producing a dense {@code Tensor}. * This Op does not require {@code a_indices} be sorted in standard lexicographic order. * - * @param data type for {@code output} output * @param aIndices 2-D. The {@code indices} of the {@code SparseTensor}, with shape {@code [nnz, ndims]}. * @param aValues 1-D. The {@code values} of the {@code SparseTensor}, with shape {@code [nnz]}. * @param aShape 1-D. The {@code shape} of the {@code SparseTensor}, with shape {@code [ndims]}. @@ -1367,7 +1406,6 @@ public SparseTensorDenseAdd sparseTensor * A should be sorted in order of increasing dimension 1 (i.e., "column major" * order instead of "row major" order). * - * @param data type for {@code product} output * @param aIndices 2-D. The {@code indices} of the {@code SparseTensor}, size {@code [nnz, 2]} Matrix. * @param aValues 1-D. The {@code values} of the {@code SparseTensor}, size {@code [nnz]} Vector. * @param aShape 1-D. The {@code shape} of the {@code SparseTensor}, size {@code [2]} Vector. @@ -1401,7 +1439,6 @@ public SparseTensorDenseMatMul sparseTensorDenseMatMul( * contain any repeats. If {@code validate_indices} is true, these properties * are checked during execution. * - * @param data type for {@code dense} output * @param sparseIndices 0-D, 1-D, or 2-D. {@code sparse_indices[i]} contains the complete * index where {@code sparse_values[i]} will be placed. * @param outputShape 1-D. Shape of the dense output tensor. @@ -1441,7 +1478,6 @@ public SparseToDense sparseToDense( * dimension contains the result of {@code set_operation} applied to the corresponding * {@code [0...n-1]} dimension of {@code set}. * - * @param data type for {@code result_values} output * @param set1Indices 2D {@code Tensor}, indices of a {@code SparseTensor}. Must be in row-major * order. * @param set1Values 1D {@code Tensor}, values of a {@code SparseTensor}. Must be in row-major @@ -1511,7 +1547,6 @@ public SparseToSparseSetOperation sparseToSparseSetOperatio * shape = [2 50] * * - * @param data type for {@code sparse_values} output * @param sparseHandles 1-D, The {@code N} serialized {@code SparseTensor} objects. * Shape: {@code [N]}. * @param dtype The {@code dtype} of the {@code SparseTensor} objects stored in the diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/StringsOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/StringsOps.java index b7d38d58553..2b49dd474a3 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/StringsOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/StringsOps.java @@ -260,7 +260,6 @@ public StringLength stringLength(Operand input, StringLength.Options... * strings and outputs a ragged tensor with 1 ragged dimension containing ngrams * of that string, joined along the innermost axis. * - * @param data type for {@code ngrams_splits} output * @param data The values tensor of the ragged string tensor to make ngrams out of. Must be a * 1D string tensor. * @param dataSplits The splits tensor of the ragged string tensor to make ngrams out of. @@ -510,7 +509,6 @@ public ToHashBucketStrong toHashBucketStrong(Operand input, Long numBuc * * * - * @param data type for {@code output} output * @param stringTensor The stringTensor value * @return a new instance of ToNumber, with default output types */ @@ -533,7 +531,6 @@ public ToNumber toNumber(Operand stringTensor) { * * * - * @param data type for {@code output} output * @param stringTensor The stringTensor value * @param outType The numeric type to interpret each string in {@code string_tensor} as. * @param data type for {@code StringToNumber} output and operands @@ -559,7 +556,6 @@ public ToNumber toNumber(Operand stringTensor, C * string (in row-major order). * * - * @param data type for {@code row_splits} output * @param input The text to be decoded. Can have any shape. Note that the output is flattened * to a vector of char values. * @param inputEncoding Text encoding of the input strings. This is any of the encodings supported @@ -568,7 +564,7 @@ public ToNumber toNumber(Operand stringTensor, C * @return a new instance of UnicodeDecode, with default output types */ public UnicodeDecode unicodeDecode(Operand input, String inputEncoding, - UnicodeDecode.Options[] options) { + UnicodeDecode.Options... options) { return UnicodeDecode.create(scope, input, inputEncoding, options); } @@ -588,7 +584,6 @@ public UnicodeDecode unicodeDecode(Operand input, String inputE * string (in row-major order). * * - * @param data type for {@code row_splits} output * @param input The text to be decoded. Can have any shape. Note that the output is flattened * to a vector of char values. * @param inputEncoding Text encoding of the input strings. This is any of the encodings supported @@ -623,7 +618,6 @@ public UnicodeDecode unicodeDecode(Operand input * string (in row-major order). * * - * @param data type for {@code row_splits} output * @param input The text to be decoded. Can have any shape. Note that the output is flattened * to a vector of char values. * @param inputEncoding Text encoding of the input strings. This is any of the encodings supported @@ -632,7 +626,7 @@ public UnicodeDecode unicodeDecode(Operand input * @return a new instance of UnicodeDecodeWithOffsets, with default output types */ public UnicodeDecodeWithOffsets unicodeDecodeWithOffsets(Operand input, - String inputEncoding, UnicodeDecodeWithOffsets.Options[] options) { + String inputEncoding, UnicodeDecodeWithOffsets.Options... options) { return UnicodeDecodeWithOffsets.create(scope, input, inputEncoding, options); } @@ -656,7 +650,6 @@ public UnicodeDecodeWithOffsets unicodeDecodeWithOffsets(Operand * * - * @param data type for {@code row_splits} output * @param input The text to be decoded. Can have any shape. Note that the output is flattened * to a vector of char values. * @param inputEncoding Text encoding of the input strings. This is any of the encodings supported diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/TpuOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/TpuOps.java index 59a9f973858..f6ea8e12178 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/TpuOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/TpuOps.java @@ -26,8 +26,6 @@ import org.tensorflow.op.tpu.CompilationResult; import org.tensorflow.op.tpu.Compile; import org.tensorflow.op.tpu.CompileSucceededAssert; -import org.tensorflow.op.tpu.ComputeDedupDataSize; -import org.tensorflow.op.tpu.ComputeDedupDataTupleMask; import org.tensorflow.op.tpu.ConfigureAndInitializeGlobalTPU; import org.tensorflow.op.tpu.ConfigureDistributedTPU; import org.tensorflow.op.tpu.ConfigureTPUEmbedding; @@ -52,6 +50,7 @@ import org.tensorflow.op.tpu.FinalizeTPUEmbedding; import org.tensorflow.op.tpu.GetMinibatchSplitsWithPhysicalReplica; import org.tensorflow.op.tpu.GetMinibatchesInCsrWithPhysicalReplica; +import org.tensorflow.op.tpu.GetTpuTaskId; import org.tensorflow.op.tpu.GlobalIterId; import org.tensorflow.op.tpu.InfeedDequeue; import org.tensorflow.op.tpu.InfeedDequeueTuple; @@ -158,7 +157,6 @@ public final class TpuOps { *

replica 0's output: {@code [[A], [C]]} * replica 1's output: {@code [[B], [D]]} * - * @param data type for {@code output} output * @param input The local input to the sum. * @param groupAssignment An int32 tensor with shape * [num_groups, num_replicas_per_group]. {@code group_assignment[i]} represents the @@ -242,32 +240,6 @@ public CompileSucceededAssert compileSucceededAssert(Operand compilatio return CompileSucceededAssert.create(scope, compilationStatus); } - /** - * An op computes the size of the deduplication data from embedding core and returns the updated config. - * This op is to compute size of the deduplication data so to provide this - * information to the op that computes the tuple mask of deduplication data can - * have static output shape. - * - * @param config Serialized TPUEmbeddingConfiguration proto. - * @return a new instance of ComputeDedupDataSize - */ - public ComputeDedupDataSize computeDedupDataSize(String config) { - return ComputeDedupDataSize.create(scope, config); - } - - /** - * An op computes tuple mask of deduplication data from embedding core. - * The deduplication data receiving from embedding core is a Tensor with - * type=DT_VARIANT. The tensor itself is an XLA nested tuple, whose elements are - * rank 1 tensors. This op is to represents types and length of these elements. - * - * @param config Serialized TPUEmbeddingConfiguration proto. - * @return a new instance of ComputeDedupDataTupleMask - */ - public ComputeDedupDataTupleMask computeDedupDataTupleMask(String config) { - return ComputeDedupDataTupleMask.create(scope, config); - } - /** * An op that sets up the centralized structures for a distributed TPU system. * @@ -365,7 +337,6 @@ public ConvertToCooTensor convertToCooTensor(Operand indicesOrRowSplits, * and {@code B, D, F, H} as group 1. Thus we get the outputs: * {@code [A+C+E+G, B+D+F+H, A+C+E+G, B+D+F+H, A+C+E+G, B+D+F+H, A+C+E+G, B+D+F+H]}. * - * @param data type for {@code output} output * @param input The local input to the sum. * @param groupAssignment An int32 tensor with shape * [num_groups, num_replicas_per_group]. {@code group_assignment[i]} represents the @@ -789,6 +760,16 @@ public GetMinibatchesInCsrWithPhysicalReplica getMinibatchesInCsrWithPhysicalRep return GetMinibatchesInCsrWithPhysicalReplica.create(scope, programKey, rowIds, colIds, gains, splits, idCounts, sampleCount, numReplica, maxMinibatchesPerSc, maxIdsPerChipPerSample, tableVocabSize, featureWidth, numScPerChip, tableName, miniBatchInCsr); } + /** + * An op returns the TPU task ID from TPU topology. + * This op is to return the TPU task ID from TPU topology. + * + * @return a new instance of GetTpuTaskId + */ + public GetTpuTaskId getTpuTaskId() { + return GetTpuTaskId.create(scope); + } + /** * The GlobalIterId operation * @@ -801,7 +782,6 @@ public GlobalIterId globalIterId() { /** * A placeholder op for a value that will be fed into the computation. * - * @param data type for {@code output} output * @param dtype The type of elements in the tensor. * @param shape The shape of the tensor. * @param data type for {@code InfeedDequeue} output and operands @@ -1252,7 +1232,6 @@ public OrdinalSelector ordinalSelector() { * Retrieves a single tensor from the computation outfeed. * This operation will block indefinitely until data is available. * - * @param data type for {@code output} output * @param dtype The type of elements in the tensor. * @param shape The shape of the tensor. * @param options carries optional attribute values @@ -1302,7 +1281,6 @@ public OutfeedDequeueTupleV2 outfeedDequeueTupleV2(Operand deviceOrdinal * tensor allowing dynamic outfeed. * This operation will block indefinitely until data is available. * - * @param data type for {@code output} output * @param deviceOrdinal An int scalar tensor, representing the TPU device to use. This should be -1 when * the Op is running on a TPU device, and >= 0 when the Op is running on the CPU * device. @@ -1355,7 +1333,6 @@ public PartitionedCall partitionedCall(Iterable> args, Operand data type for {@code output} output * @param inputs A list of partitioned inputs which must have the same shape. * @param partitionDims A list of integers describing how each dimension is partitioned. Emptiness * indicates the inputs are replicated. @@ -1372,7 +1349,6 @@ public PartitionedInput partitionedInput(Iterable data type for {@code output} output * @param inputs A tensor which represents the full shape of partitioned tensors. * @param numSplits The value of the numSplits attribute * @param partitionDims A list of integers describing how each dimension is partitioned. Emptiness @@ -1454,7 +1430,6 @@ public ReplicateMetadata replicateMetadata(Long numReplicas, * *

The above computation has a replicated input of two replicas. * - * @param data type for {@code output} output * @param inputs The inputs value * @param options carries optional attribute values * @param data type for {@code TPUReplicatedInput} output and operands @@ -1476,7 +1451,6 @@ public ReplicatedInput replicatedInput(Iterable> * *

The above computation has a replicated output of two replicas. * - * @param data type for {@code outputs} output * @param input The input value * @param numReplicas The value of the numReplicas attribute * @param data type for {@code TPUReplicatedOutput} output and operands @@ -1784,8 +1758,6 @@ public ShutdownTPUSystem shutdownTPUSystem() { * values. This op is to split these values into two groups for two types, and * construct each group as one tensor to return. * - * @param data type for {@code integer_tensor} output - * @param data type for {@code float_tensor} output * @param input An XLA tuple including integer and float elements as deduplication data tuple. * @param integerType integer_tensor type. Allowed types: int32, int64, uint32, uint64. * @param floatType float_tensor type. Allowed types: half, bfloat16, float. @@ -1913,7 +1885,6 @@ public TPUReplicateMetadata tPUReplicateMetadata(Long numReplicas, * *

The above computation has a replicated input of two replicas. * - * @param data type for {@code output} output * @deprecated use {@link org.tensorflow.op.tpu.ReplicatedInput} instead * @param inputs The inputs value * @param options carries optional attribute values @@ -1937,7 +1908,6 @@ public TPUReplicatedInput tPUReplicatedInput(Iterable *

The above computation has a replicated output of two replicas. * - * @param data type for {@code outputs} output * @deprecated use {@link org.tensorflow.op.tpu.ReplicatedOutput} instead * @param input The input value * @param numReplicas The value of the numReplicas attribute diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/TrainOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/TrainOps.java index 0442b896828..3ee5b8de813 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/TrainOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/TrainOps.java @@ -166,7 +166,6 @@ public AccumulatorSetGlobalStep accumulatorSetGlobalStep(Operand handle * the accumulated gradients. Also automatically increments the recorded * global_step in the accumulator by 1, and resets the aggregate to 0. * - * @param data type for {@code average} output * @param handle The handle to an accumulator. * @param numRequired Number of gradients required before we return an aggregate. * @param dtype The data type of accumulated gradients. Needs to correspond to the type @@ -185,7 +184,6 @@ public AccumulatorTakeGradient accumulatorTakeGradient( * v_t <- max(beta2 * v_{t-1}, abs(g)) * variable <- variable - learning_rate / (1 - beta1^t) * m_t / (v_t + epsilon) * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param m Should be from a Variable(). * @param v Should be from a Variable(). @@ -212,7 +210,6 @@ public ApplyAdaMax applyAdaMax(Operand var, Operand m * update_accum = rho() * update_accum + (1 - rho()) * update.square(); * var -= update; * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param accum Should be from a Variable(). * @param accumUpdate Should be from a Variable(). @@ -235,7 +232,6 @@ public ApplyAdadelta applyAdadelta(Operand var, Operand< * accum += grad * grad * var -= lr * grad * (1 / sqrt(accum)) * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param accum Should be from a Variable(). * @param lr Scaling factor. Must be a scalar. @@ -252,7 +248,6 @@ public ApplyAdagrad applyAdagrad(Operand var, Operand /** * Update '*var' according to the proximal adagrad scheme. * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param gradientAccumulator Should be from a Variable(). * @param gradientSquaredAccumulator Should be from a Variable(). @@ -277,7 +272,6 @@ public ApplyAdagradDa applyAdagradDa(Operand var, * accum += grad * grad * var -= lr * grad * (1 / sqrt(accum)) * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param accum Should be from a Variable(). * @param lr Scaling factor. Must be a scalar. @@ -299,7 +293,6 @@ public ApplyAdagradV2 applyAdagradV2(Operand var, Operan * $$v_t := \beta_2 \cdot v_{t-1} + (1 - \beta_2) \cdot g^2$$ * $$\text{var} := \begin{cases} \text{var} - (m_t \beta_1 + g \cdot (1 - \beta_1))\cdot\text{lr}_t/(\sqrt{v_t} + \epsilon), &\text{if use_nesterov}\\ \text{var} - m_t \cdot \text{lr}_t /(\sqrt{v_t} + \epsilon), &\text{otherwise} \end{cases}$$ * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param m Should be from a Variable(). * @param v Should be from a Variable(). @@ -326,7 +319,6 @@ public ApplyAdam applyAdam(Operand var, Operand m, Op * update <- (alpha + sign_decay * sign(g) *sign(m)) * g * variable <- variable - lr_t * update * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param m Should be from a Variable(). * @param lr Scaling factor. Must be a scalar. @@ -361,7 +353,6 @@ public ApplyAddSign applyAddSign(Operand var, Operand * mom <- momentum * mom_{t-1} + lr * grad / sqrt(ms - mg * mg + epsilon) * var <- var - mom * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param mg Should be from a Variable(). * @param ms Should be from a Variable(). @@ -392,7 +383,6 @@ public ApplyCenteredRmsProp applyCenteredRmsProp(Operand * var = (sign(linear) * l1 - linear) / quadratic if |linear| > l1 else 0.0 * accum = accum_new * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param accum Should be from a Variable(). * @param linear Should be from a Variable(). @@ -415,7 +405,6 @@ public ApplyFtrl applyFtrl(Operand var, Operand accum /** * Update '*var' by subtracting 'alpha' * 'delta' from it. * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param alpha Scaling factor. Must be a scalar. * @param delta The change. @@ -434,7 +423,6 @@ public ApplyGradientDescent applyGradientDescent(Operand *

accum = accum * momentum + grad * var -= lr * accum * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param accum Should be from a Variable(). * @param lr Scaling factor. Must be a scalar. @@ -455,7 +443,6 @@ public ApplyMomentum applyMomentum(Operand var, Operand< * update <- exp(logbase * sign_decay * sign(g) * sign(m_t)) * g * variable <- variable - lr_t * update * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param m Should be from a Variable(). * @param lr Scaling factor. Must be a scalar. @@ -479,7 +466,6 @@ public ApplyPowerSign applyPowerSign(Operand var, Operan * prox_v = var - lr * grad * (1 / sqrt(accum)) * var = sign(prox_v)/(1+lrl2) * max{|prox_v|-lrl1,0} * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param accum Should be from a Variable(). * @param lr Scaling factor. Must be a scalar. @@ -501,7 +487,6 @@ public ApplyProximalAdagrad applyProximalAdagrad(Operand * prox_v = var - alpha * delta * var = sign(prox_v)/(1+alphal2) * max{|prox_v|-alphal1,0} * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param alpha Scaling factor. Must be a scalar. * @param l1 L1 regularization. Must be a scalar. @@ -528,7 +513,6 @@ public ApplyProximalGradientDescent applyProximalGradientDe * mom <- momentum * mom_{t-1} + lr * grad / sqrt(ms + epsilon) * var <- var - mom * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param ms Should be from a Variable(). * @param mom Should be from a Variable(). @@ -570,7 +554,6 @@ public ApplyRmsProp applyRmsProp(Operand var, Operand * about broadcasting * here . * - * @param data type for {@code output} output * @param x 2-D or higher with shape {@code [..., r_x, c_x]}. * @param y 2-D or higher with shape {@code [..., r_y, c_y]}. * @param Tout If not spcified, Tout is the same type to input type. @@ -717,7 +700,6 @@ public NegTrain negTrain(Operand wIn, Operand wOut, Operand< * op exists to prevent subtle bugs from silently returning unimplemented * gradients in some corner cases. * - * @param data type for {@code output} output * @param input any tensor. * @param options carries optional attribute values * @param data type for {@code PreventGradient} output and operands @@ -776,7 +758,6 @@ public ResourceAccumulatorSetGlobalStep resourceAccumulatorSetGlobalStep( * the accumulated gradients. Also automatically increments the recorded * global_step in the accumulator by 1, and resets the aggregate to 0. * - * @param data type for {@code average} output * @param handle The handle to an accumulator. * @param numRequired Number of gradients required before we return an aggregate. * @param dtype The data type of accumulated gradients. Needs to correspond to the type @@ -1535,7 +1516,6 @@ public Restore restore(Operand prefix, Operand tensorNames, *

The {@code shape_and_slice} input has the same format as the * elements of the {@code shapes_and_slices} input of the {@code SaveSlices} op. * - * @param data type for {@code tensor} output * @param filePattern Must have a single element. The pattern of the files from * which we read the tensor. * @param tensorName Must have a single element. The name of the tensor to be @@ -1687,7 +1667,6 @@ public SdcaShrinkL1 sdcaShrinkL1(Iterable> weights, Float l1, /** * var: Should be from a Variable(). * - * @param data type for {@code out} output * @param var The var value * @param accum Should be from a Variable(). * @param accumUpdate : Should be from a Variable(). @@ -1712,7 +1691,6 @@ public SparseApplyAdadelta sparseApplyAdadelta(Operand v * $$accum += grad * grad$$ * $$var -= lr * grad * (1 / sqrt(accum))$$ * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param accum Should be from a Variable(). * @param lr Learning rate. Must be a scalar. @@ -1732,7 +1710,6 @@ public SparseApplyAdagrad sparseApplyAdagrad(Operand var /** * Update entries in '*var' and '*accum' according to the proximal adagrad scheme. * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param gradientAccumulator Should be from a Variable(). * @param gradientSquaredAccumulator Should be from a Variable(). @@ -1769,7 +1746,6 @@ public SparseApplyAdagradDa sparseApplyAdagradDa(Operand * $$mom <- momentum * mom_{t-1} + lr * grad / sqrt(ms + epsilon)$$ * $$var <- var - mom$$ * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param mg Should be from a Variable(). * @param ms Should be from a Variable(). @@ -1802,7 +1778,6 @@ public SparseApplyCenteredRmsProp sparseApplyCenteredRmsPro * var = (sign(linear) * l1 - linear) / quadratic if |linear| > l1 else 0.0 * accum = accum_new * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param accum Should be from a Variable(). * @param linear Should be from a Variable(). @@ -1831,7 +1806,6 @@ public SparseApplyFtrl sparseApplyFtrl(Operand var, Oper *

$$accum = accum * momentum + grad$$ * $$var -= lr * accum$$ * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param accum Should be from a Variable(). * @param lr Learning rate. Must be a scalar. @@ -1856,7 +1830,6 @@ public SparseApplyMomentum sparseApplyMomentum(Operand v * $$prox_v -= lr * grad * (1 / sqrt(accum))$$ * $$var = sign(prox_v)/(1+lrl2) * max{|prox_v|-lrl1,0}$$ * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param accum Should be from a Variable(). * @param lr Learning rate. Must be a scalar. @@ -1880,7 +1853,6 @@ public SparseApplyProximalAdagrad sparseApplyProximalAdagra * $$prox_v = var - alpha * grad$$ * $$var = sign(prox_v)/(1+alphal2) * max{|prox_v|-alphal1,0}$$ * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param alpha Scaling factor. Must be a scalar. * @param l1 L1 regularization. Must be a scalar. @@ -1908,7 +1880,6 @@ public SparseApplyProximalGradientDescent sparseApplyProxim * $$mom <- momentum * mom_{t-1} + lr * grad / sqrt(ms + epsilon)$$ * $$var <- var - mom$$ * - * @param data type for {@code out} output * @param var Should be from a Variable(). * @param ms Should be from a Variable(). * @param mom Should be from a Variable(). @@ -1960,7 +1931,6 @@ public SymbolicGradient symbolicGradient(Iterable> input, * along each dimension, {@code train.TileGrad} takes in {@code multiples} and aggregates * each repeated tile of {@code input} into {@code output}. * - * @param data type for {@code output} output * @param input The input value * @param multiples The multiples value * @param data type for {@code TileGrad} output and operands diff --git a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/XlaOps.java b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/XlaOps.java index 75f9104ce4b..38961e1570a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/XlaOps.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/annotations/org/tensorflow/op/XlaOps.java @@ -27,16 +27,19 @@ import org.tensorflow.op.xla.SplitND; import org.tensorflow.op.xla.XlaHostCompute; import org.tensorflow.op.xla.XlaRecvFromHost; -import org.tensorflow.op.xla.XlaRecvTPUEmbeddingActivations; -import org.tensorflow.op.xla.XlaRecvTPUEmbeddingDeduplicationData; -import org.tensorflow.op.xla.XlaSendTPUEmbeddingGradients; import org.tensorflow.op.xla.XlaSendToHost; +import org.tensorflow.op.xla.XlaSparseActivationsUnstack; import org.tensorflow.op.xla.XlaSparseCoreAdagrad; import org.tensorflow.op.xla.XlaSparseCoreAdagradMomentum; import org.tensorflow.op.xla.XlaSparseCoreAdam; import org.tensorflow.op.xla.XlaSparseCoreFtrl; import org.tensorflow.op.xla.XlaSparseCoreSgd; import org.tensorflow.op.xla.XlaSparseDenseMatmul; +import org.tensorflow.op.xla.XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput; +import org.tensorflow.op.xla.XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput; +import org.tensorflow.op.xla.XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput; +import org.tensorflow.op.xla.XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput; +import org.tensorflow.op.xla.XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput; import org.tensorflow.op.xla.XlaSparseDenseMatmulGradWithAdagradAndCsrInput; import org.tensorflow.op.xla.XlaSparseDenseMatmulGradWithAdagradMomentumAndCsrInput; import org.tensorflow.op.xla.XlaSparseDenseMatmulGradWithAdamAndCsrInput; @@ -45,6 +48,7 @@ import org.tensorflow.op.xla.XlaSparseDenseMatmulWithCsrInput; import org.tensorflow.types.TFloat32; import org.tensorflow.types.TInt32; +import org.tensorflow.types.family.TNumber; import org.tensorflow.types.family.TType; /** @@ -95,18 +99,8 @@ public final class XlaOps { * * * @param resource Resource variable for concatenated input tensors across all dimensions. - * } - * in_arg { - * name: "inputs" - * description: <<END - * Input tensor slices in row-major order to merge across all dimensions. All + * @param inputs Input tensor slices in row-major order to merge across all dimensions. All * inputs must have the same shape. - * } - * out_arg { - * name: "output" - * description: <<END - * Output tensor formed from merging input slices based on num_concats defined. - * @param inputs The inputs value * @param numConcats Number of ways to merge per dimension. * @param options carries optional attribute values * @return a new instance of AssignVariableConcatND @@ -149,14 +143,8 @@ public AssignVariableConcatND assignVariableConcatND(Operand re * [8, 9, 10]] * * - * @param data type for {@code output} output * @param inputs Input tensor slices in row-major order to merge across all dimensions. All * inputs must have the same shape. - * } - * out_arg { - * name: "output" - * description: <<END - * Output tensor formed from merging input slices based on num_concats defined. * @param numConcats Number of ways to merge per dimension. * @param options carries optional attribute values * @param data type for {@code XlaConcatND} output and operands @@ -199,13 +187,7 @@ public ConcatND concatND(Iterable> inputs, List< * [0, 0]] * * - * @param data type for {@code outputs} output * @param resource Resource variable of input tensor to split across all dimensions. - * } - * out_arg { - * name: "outputs" - * description: <<END - * Output slices based on input and num_splits defined, in row-major order. * @param T The value of the T attribute * @param N The value of the N attribute * @param numSplits Number of ways to split per dimension. Shape dimensions must be evenly @@ -252,13 +234,7 @@ public ReadVariableSplitND readVariableSplitND( * [0, 0]] * * - * @param data type for {@code outputs} output * @param input Input tensor to split across all dimensions. - * } - * out_arg { - * name: "outputs" - * description: <<END - * Output slices based on input and num_splits defined, in row-major order. * @param N The value of the N attribute * @param numSplits Number of ways to split per dimension. Shape dimensions must be evenly * divisible. @@ -298,7 +274,6 @@ public XlaHostCompute xlaHostCompute(Iterable> inputs, * shape: shape for output. * key: A unique identifier for this region used to match up host transfers. * - * @param data type for {@code output} output * @param Toutput The value of the Toutput attribute * @param shape The value of the shape attribute * @param key The value of the key attribute @@ -310,76 +285,6 @@ public XlaRecvFromHost xlaRecvFromHost(Class Toutput, Sh return XlaRecvFromHost.create(scope, Toutput, shape, key); } - /** - * An op that receives embedding activations on the TPU. - * The TPU system performs the embedding lookups and aggregations. The results of - * these aggregations are visible to the Tensorflow Graph as the outputs of a - * XlaRecvTPUEmbeddingActivations Op. This op returns a list containing one - * Tensor of activations per table specified in the model. - * - * @param deduplicationData A Tensor with type=DT_VARIANT containing the deduplication - * data. The tensor is an XLA nested tuple containing N elements (where N is - * the ratio of the number of embedding to tensor cores per TPU chip). Each - * element of the nested tuple is a tuple of rank 1 tensors. Each tensor either - * contains indices (DT_UINT32) for embedding lookup on the TensorCore or - * weights (DT_FLOAT) to apply to the output of the embedding lookup operation. - * @param numTables The number of output activation tensors. If feature descriptor is - * present in the tpu embedding config, it is equal to the number of features - * otherwise equal to number of embedding tables in the model. - * @param config Serialized TPUEmbeddingConfiguration proto. - * @return a new instance of XlaRecvTPUEmbeddingActivations - */ - public XlaRecvTPUEmbeddingActivations xlaRecvTPUEmbeddingActivations( - Operand deduplicationData, Long numTables, String config) { - return XlaRecvTPUEmbeddingActivations.create(scope, deduplicationData, numTables, config); - } - - /** - * Receives deduplication data (indices and weights) from the embedding core. - * The deduplication data is a Tensor with type=DT_VARIANT. The tensor itself is an - * XLA nested tuple containing N elements (where N is the ratio of the number of - * embedding to tensor cores per TPU chip). Each element of the nested tuple is a - * tuple of rank 1 tensors. Each tensor either contains indices (DT_UINT32) for - * embedding lookup on the TensorCore or weights (DT_FLOAT) to apply to the output - * of the embedding lookup operation. - * - * @param config Serialized TPUEmbeddingConfiguration proto. - * @return a new instance of XlaRecvTPUEmbeddingDeduplicationData - */ - public XlaRecvTPUEmbeddingDeduplicationData xlaRecvTPUEmbeddingDeduplicationData(String config) { - return XlaRecvTPUEmbeddingDeduplicationData.create(scope, config); - } - - /** - * An op that performs gradient updates of embedding tables. - * The gradients argument is a TensorList having the same length and shapes as the - * return value of XlaRecvTPUEmbeddingActivations, but contains gradients of the - * model's loss with respect to the embedding activations. The embedding tables are - * updated from these gradients via the optimizer specified in the - * TPUEmbeddingConfiguration proto given to tpu.initialize_system. - * - * @param gradients A TensorList of gradients with which to update embedding tables. - * @param learningRates A TensorList of learning rates used for updating the embedding - * tables via the optimizer. The length of the TensorList must be equal to the - * number of dynamic learning rate tags specified in the - * TPUEmbeddingConfiguration proto. - * @param deduplicationData A Tensor with type=DT_VARIANT containing the deduplication - * data. The tensor is an XLA nested tuple containing N elements (where N is - * the ratio of the number of embedding to tensor cores per TPU chip). Each - * element of the nested tuple is a tuple of rank 1 tensors. Each tensor either - * contains indices (DT_UINT32) for embedding lookup on the TensorCore or - * weights (DT_FLOAT) to apply to the output of the embedding lookup operation. - * @param config Serialized TPUEmbeddingConfiguration proto. - * @param options carries optional attribute values - * @return a new instance of XlaSendTPUEmbeddingGradients - */ - public XlaSendTPUEmbeddingGradients xlaSendTPUEmbeddingGradients( - Iterable> gradients, Iterable> learningRates, - Operand deduplicationData, String config, - XlaSendTPUEmbeddingGradients.Options... options) { - return XlaSendTPUEmbeddingGradients.create(scope, gradients, learningRates, deduplicationData, config, options); - } - /** * An op to send a tensor to the host. * input: the tensor that will be sent to the host. @@ -394,6 +299,24 @@ public XlaSendToHost xlaSendToHost(Operand input, String key) { return XlaSendToHost.create(scope, input, key); } + /** + * The XlaSparseActivationsUnstack operation + * + * @param stackedActivations The stackedActivations value + * @param numTables The value of the numTables attribute + * @param sampleCounts The value of the sampleCounts attribute + * @param features The value of the features attribute + * @param interleaved The value of the interleaved attribute + * @param dtype The value of the dtype attribute + * @param data type for {@code XlaSparseActivationsUnstack} output and operands + * @return a new instance of XlaSparseActivationsUnstack + */ + public XlaSparseActivationsUnstack xlaSparseActivationsUnstack( + Operand stackedActivations, Long numTables, List sampleCounts, + List features, Boolean interleaved, Class dtype) { + return XlaSparseActivationsUnstack.create(scope, stackedActivations, numTables, sampleCounts, features, interleaved, dtype); + } + /** * The XlaSparseCoreAdagrad operation * @@ -520,6 +443,217 @@ public XlaSparseDenseMatmul xlaSparseDenseMatmul(Operand rowIds, return XlaSparseDenseMatmul.create(scope, rowIds, colIds, values, offsets, embeddingTable, maxIdsPerPartition, maxUniqueIdsPerPartition, inputSize); } + /** + * The XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput operation + * + * @param rowPointers The rowPointers value + * @param sortedSampleIds The sortedSampleIds value + * @param sortedTokenIds The sortedTokenIds value + * @param sortedPosIds The sortedPosIds value + * @param sortedGains The sortedGains value + * @param weights The weights value + * @param preservedValencies The preservedValencies value + * @param preservedVectors The preservedVectors value + * @param preservedWeights The preservedWeights value + * @param activationGradients The activationGradients value + * @param learningRate The learningRate value + * @param combinerWeightsLearningRate The combinerWeightsLearningRate value + * @param embeddingTable The embeddingTable value + * @param accumulator The accumulator value + * @param maxValency The value of the maxValency attribute + * @param numWeights The value of the numWeights attribute + * @param combinerTableVjpComputation The value of the combinerTableVjpComputation attribute + * @param combinerWeightsVjpComputation The value of the combinerWeightsVjpComputation attribute + * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @return a new instance of XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput + */ + public XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput xlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput( + Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, + Operand sortedPosIds, Operand sortedGains, Operand weights, + Operand preservedValencies, Operand preservedVectors, + Operand preservedWeights, Operand activationGradients, + Operand learningRate, Operand combinerWeightsLearningRate, + Operand embeddingTable, Operand accumulator, Long maxValency, + Long numWeights, ConcreteFunction combinerTableVjpComputation, + ConcreteFunction combinerWeightsVjpComputation, String tableName, + XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput.Options... options) { + return XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput.create(scope, rowPointers, sortedSampleIds, sortedTokenIds, sortedPosIds, sortedGains, weights, preservedValencies, preservedVectors, preservedWeights, activationGradients, learningRate, combinerWeightsLearningRate, embeddingTable, accumulator, maxValency, numWeights, combinerTableVjpComputation, combinerWeightsVjpComputation, tableName, options); + } + + /** + * The XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput operation + * + * @param rowPointers The rowPointers value + * @param sortedSampleIds The sortedSampleIds value + * @param sortedTokenIds The sortedTokenIds value + * @param sortedPosIds The sortedPosIds value + * @param sortedGains The sortedGains value + * @param weights The weights value + * @param preservedValencies The preservedValencies value + * @param preservedVectors The preservedVectors value + * @param preservedWeights The preservedWeights value + * @param activationGradients The activationGradients value + * @param learningRate The learningRate value + * @param combinerWeightsLearningRate The combinerWeightsLearningRate value + * @param embeddingTable The embeddingTable value + * @param accumulator The accumulator value + * @param momenta The momenta value + * @param useNesterov The value of the useNesterov attribute + * @param exponent The value of the exponent attribute + * @param beta1 The value of the beta1 attribute + * @param beta2 The value of the beta2 attribute + * @param epsilon The value of the epsilon attribute + * @param maxValency The value of the maxValency attribute + * @param numWeights The value of the numWeights attribute + * @param combinerTableVjpComputation The value of the combinerTableVjpComputation attribute + * @param combinerWeightsVjpComputation The value of the combinerWeightsVjpComputation attribute + * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @return a new instance of XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput + */ + public XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput xlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput( + Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, + Operand sortedPosIds, Operand sortedGains, Operand weights, + Operand preservedValencies, Operand preservedVectors, + Operand preservedWeights, Operand activationGradients, + Operand learningRate, Operand combinerWeightsLearningRate, + Operand embeddingTable, Operand accumulator, Operand momenta, + Boolean useNesterov, Float exponent, Float beta1, Float beta2, Float epsilon, Long maxValency, + Long numWeights, ConcreteFunction combinerTableVjpComputation, + ConcreteFunction combinerWeightsVjpComputation, String tableName, + XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput.Options... options) { + return XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput.create(scope, rowPointers, sortedSampleIds, sortedTokenIds, sortedPosIds, sortedGains, weights, preservedValencies, preservedVectors, preservedWeights, activationGradients, learningRate, combinerWeightsLearningRate, embeddingTable, accumulator, momenta, useNesterov, exponent, beta1, beta2, epsilon, maxValency, numWeights, combinerTableVjpComputation, combinerWeightsVjpComputation, tableName, options); + } + + /** + * The XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput operation + * + * @param rowPointers The rowPointers value + * @param sortedSampleIds The sortedSampleIds value + * @param sortedTokenIds The sortedTokenIds value + * @param sortedPosIds The sortedPosIds value + * @param sortedGains The sortedGains value + * @param weights The weights value + * @param preservedValencies The preservedValencies value + * @param preservedVectors The preservedVectors value + * @param preservedWeights The preservedWeights value + * @param activationGradients The activationGradients value + * @param learningRate The learningRate value + * @param combinerWeightsLearningRate The combinerWeightsLearningRate value + * @param embeddingTable The embeddingTable value + * @param momenta The momenta value + * @param velocity The velocity value + * @param useSumInsideSqrt The value of the useSumInsideSqrt attribute + * @param beta1 The value of the beta1 attribute + * @param beta2 The value of the beta2 attribute + * @param epsilon The value of the epsilon attribute + * @param maxValency The value of the maxValency attribute + * @param numWeights The value of the numWeights attribute + * @param combinerTableVjpComputation The value of the combinerTableVjpComputation attribute + * @param combinerWeightsVjpComputation The value of the combinerWeightsVjpComputation attribute + * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @return a new instance of XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput + */ + public XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput xlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput( + Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, + Operand sortedPosIds, Operand sortedGains, Operand weights, + Operand preservedValencies, Operand preservedVectors, + Operand preservedWeights, Operand activationGradients, + Operand learningRate, Operand combinerWeightsLearningRate, + Operand embeddingTable, Operand momenta, Operand velocity, + Boolean useSumInsideSqrt, Float beta1, Float beta2, Float epsilon, Long maxValency, + Long numWeights, ConcreteFunction combinerTableVjpComputation, + ConcreteFunction combinerWeightsVjpComputation, String tableName, + XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput.Options... options) { + return XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput.create(scope, rowPointers, sortedSampleIds, sortedTokenIds, sortedPosIds, sortedGains, weights, preservedValencies, preservedVectors, preservedWeights, activationGradients, learningRate, combinerWeightsLearningRate, embeddingTable, momenta, velocity, useSumInsideSqrt, beta1, beta2, epsilon, maxValency, numWeights, combinerTableVjpComputation, combinerWeightsVjpComputation, tableName, options); + } + + /** + * The XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput operation + * + * @param rowPointers The rowPointers value + * @param sortedSampleIds The sortedSampleIds value + * @param sortedTokenIds The sortedTokenIds value + * @param sortedPosIds The sortedPosIds value + * @param sortedGains The sortedGains value + * @param weights The weights value + * @param preservedValencies The preservedValencies value + * @param preservedVectors The preservedVectors value + * @param preservedWeights The preservedWeights value + * @param activationGradients The activationGradients value + * @param tables The tables value + * @param hyperparameters The hyperparameters value + * @param combinerWeightsLearningRate The combinerWeightsLearningRate value + * @param maxValency The value of the maxValency attribute + * @param numWeights The value of the numWeights attribute + * @param combinerTableVjpComputation The value of the combinerTableVjpComputation attribute + * @param combinerWeightsVjpComputation The value of the combinerWeightsVjpComputation attribute + * @param optimizerCustomComputation The value of the optimizerCustomComputation attribute + * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @return a new instance of XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput + */ + public XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput xlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput( + Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, + Operand sortedPosIds, Operand sortedGains, Operand weights, + Operand preservedValencies, Operand preservedVectors, + Operand preservedWeights, Operand activationGradients, + Iterable> tables, Iterable> hyperparameters, + Operand combinerWeightsLearningRate, Long maxValency, Long numWeights, + ConcreteFunction combinerTableVjpComputation, ConcreteFunction combinerWeightsVjpComputation, + ConcreteFunction optimizerCustomComputation, String tableName, + XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput.Options... options) { + return XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput.create(scope, rowPointers, sortedSampleIds, sortedTokenIds, sortedPosIds, sortedGains, weights, preservedValencies, preservedVectors, preservedWeights, activationGradients, tables, hyperparameters, combinerWeightsLearningRate, maxValency, numWeights, combinerTableVjpComputation, combinerWeightsVjpComputation, optimizerCustomComputation, tableName, options); + } + + /** + * The XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput operation + * + * @param rowPointers The rowPointers value + * @param sortedSampleIds The sortedSampleIds value + * @param sortedTokenIds The sortedTokenIds value + * @param sortedPosIds The sortedPosIds value + * @param sortedGains The sortedGains value + * @param weights The weights value + * @param preservedValencies The preservedValencies value + * @param preservedVectors The preservedVectors value + * @param preservedWeights The preservedWeights value + * @param activationGradients The activationGradients value + * @param learningRate The learningRate value + * @param combinerWeightsLearningRate The combinerWeightsLearningRate value + * @param embeddingTable The embeddingTable value + * @param accumulator The accumulator value + * @param linear The linear value + * @param multiplyLinearByLearningRate The value of the multiplyLinearByLearningRate attribute + * @param beta The value of the beta attribute + * @param learningRatePower The value of the learningRatePower attribute + * @param l1RegularizationStrength The value of the l1RegularizationStrength attribute + * @param l2RegularizationStrength The value of the l2RegularizationStrength attribute + * @param maxValency The value of the maxValency attribute + * @param numWeights The value of the numWeights attribute + * @param combinerTableVjpComputation The value of the combinerTableVjpComputation attribute + * @param combinerWeightsVjpComputation The value of the combinerWeightsVjpComputation attribute + * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @return a new instance of XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput + */ + public XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput xlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput( + Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, + Operand sortedPosIds, Operand sortedGains, Operand weights, + Operand preservedValencies, Operand preservedVectors, + Operand preservedWeights, Operand activationGradients, + Operand learningRate, Operand combinerWeightsLearningRate, + Operand embeddingTable, Operand accumulator, Operand linear, + Boolean multiplyLinearByLearningRate, Float beta, Float learningRatePower, + Float l1RegularizationStrength, Float l2RegularizationStrength, Long maxValency, + Long numWeights, ConcreteFunction combinerTableVjpComputation, + ConcreteFunction combinerWeightsVjpComputation, String tableName, + XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput.Options... options) { + return XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput.create(scope, rowPointers, sortedSampleIds, sortedTokenIds, sortedPosIds, sortedGains, weights, preservedValencies, preservedVectors, preservedWeights, activationGradients, learningRate, combinerWeightsLearningRate, embeddingTable, accumulator, linear, multiplyLinearByLearningRate, beta, learningRatePower, l1RegularizationStrength, l2RegularizationStrength, maxValency, numWeights, combinerTableVjpComputation, combinerWeightsVjpComputation, tableName, options); + } + /** * The XlaSparseDenseMatmulGradWithAdagradAndCsrInput operation * @@ -681,15 +815,17 @@ public XlaSparseDenseMatmulGradWithSgdAndCsrInput xlaSparseDenseMatmulGradWithSg * @param quantizationConfigHigh The value of the quantizationConfigHigh attribute * @param quantizationConfigNumBuckets The value of the quantizationConfigNumBuckets attribute * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @param data type for {@code XlaSparseDenseMatmulWithCsrInput} output and operands * @return a new instance of XlaSparseDenseMatmulWithCsrInput */ - public XlaSparseDenseMatmulWithCsrInput xlaSparseDenseMatmulWithCsrInput( + public XlaSparseDenseMatmulWithCsrInput xlaSparseDenseMatmulWithCsrInput( Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, - Operand sortedGains, Operand embeddingTable, + Operand sortedGains, Operand embeddingTable, Operand numMinibatchesPerPhysicalSparseCore, Long inputSize, Float quantizationConfigLow, Float quantizationConfigHigh, Long quantizationConfigNumBuckets, - String tableName) { - return XlaSparseDenseMatmulWithCsrInput.create(scope, rowPointers, sortedSampleIds, sortedTokenIds, sortedGains, embeddingTable, numMinibatchesPerPhysicalSparseCore, inputSize, quantizationConfigLow, quantizationConfigHigh, quantizationConfigNumBuckets, tableName); + String tableName, XlaSparseDenseMatmulWithCsrInput.Options... options) { + return XlaSparseDenseMatmulWithCsrInput.create(scope, rowPointers, sortedSampleIds, sortedTokenIds, sortedGains, embeddingTable, numMinibatchesPerPhysicalSparseCore, inputSize, quantizationConfigLow, quantizationConfigHigh, quantizationConfigNumBuckets, tableName, options); } /** diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseAnd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseAnd.java index 34789dce80c..7fea36a03b3 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseAnd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseAnd.java @@ -52,8 +52,6 @@ * res = bitwise_ops.bitwise_and(lhs, rhs) * tf.assert_equal(tf.cast(res, tf.float32), exp) # TRUE * - * - * @param data type for {@code z} output */ @OpMetadata( opType = BitwiseAnd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseOr.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseOr.java index afa384f6e38..1e57451698b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseOr.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseOr.java @@ -52,8 +52,6 @@ * res = bitwise_ops.bitwise_or(lhs, rhs) * tf.assert_equal(tf.cast(res, tf.float32), exp) # TRUE * - * - * @param data type for {@code z} output */ @OpMetadata( opType = BitwiseOr.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseXor.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseXor.java index dc26dc145aa..52953422482 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseXor.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/BitwiseXor.java @@ -52,8 +52,6 @@ * res = bitwise_ops.bitwise_xor(lhs, rhs) * tf.assert_equal(tf.cast(res, tf.float32), exp) # TRUE * - * - * @param data type for {@code z} output */ @OpMetadata( opType = BitwiseXor.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/Invert.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/Invert.java index a2d9a985bae..8dcb5a72de7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/Invert.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/Invert.java @@ -73,8 +73,6 @@ * expected = tf.constant([dtype.max - x for x in inputs], dtype=tf.float32) * tf.assert_equal(tf.cast(inverted, tf.float32), tf.cast(expected, tf.float32)) * - * - * @param data type for {@code y} output */ @OpMetadata( opType = Invert.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/LeftShift.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/LeftShift.java index 5874dc12979..ccf41c473f8 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/LeftShift.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/LeftShift.java @@ -63,8 +63,6 @@ * bitwise_ops.left_shift(lhs, rhs) * # <tf.Tensor: shape=(4,), dtype=int8, numpy=array([ -2, 64, 101, 32], dtype=int8)> * - * - * @param data type for {@code z} output */ @OpMetadata( opType = LeftShift.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/RightShift.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/RightShift.java index 22c95c81136..6c1407b9d19 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/RightShift.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/bitwise/RightShift.java @@ -65,8 +65,6 @@ * bitwise_ops.right_shift(lhs, rhs) * # <tf.Tensor: shape=(4,), dtype=int8, numpy=array([ -2, 64, 101, 32], dtype=int8)> * - * - * @param data type for {@code z} output */ @OpMetadata( opType = RightShift.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveAllToAll.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveAllToAll.java index 99ccff79289..9c513486b9b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveAllToAll.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveAllToAll.java @@ -37,8 +37,6 @@ /** * Mutually exchanges multiple tensors of identical type and shape. - * - * @param data type for {@code data} output */ @OpMetadata( opType = CollectiveAllToAll.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveBcastRecv.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveBcastRecv.java index 332b5dcf9ab..a66995e4d4e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveBcastRecv.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveBcastRecv.java @@ -38,8 +38,6 @@ /** * Receives a tensor value broadcast from another device. - * - * @param data type for {@code data} output */ @OpMetadata( opType = CollectiveBcastRecv.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveBcastSend.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveBcastSend.java index ee495b56951..df7a315413f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveBcastSend.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveBcastSend.java @@ -36,8 +36,6 @@ /** * Broadcasts a tensor value to one or more other devices. - * - * @param data type for {@code data} output */ @OpMetadata( opType = CollectiveBcastSend.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveGather.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveGather.java index d3997e8743f..57a2b134ff6 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveGather.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveGather.java @@ -41,8 +41,6 @@ * {@code is_stateless} means each op does not need control dependencies to other * collective ops. In this case, keys that are unique at runtime * (e.g. {@code instance_key}) should be used to distinguish collective groups. - * - * @param data type for {@code data} output */ @OpMetadata( opType = CollectiveGather.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectivePermute.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectivePermute.java index 9fd029facf3..380a949a664 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectivePermute.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectivePermute.java @@ -40,8 +40,6 @@ *

For example, suppose there are 4 TPU instances: {@code [A, B, C, D]}. Passing * source_target_pairs={@code [[0,1],[1,2],[2,3],[3,0]]} gets the outputs: * {@code [D, A, B, C]}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = CollectivePermute.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveReduce.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveReduce.java index 7eab3bb0f17..8f6c26778e1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveReduce.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveReduce.java @@ -37,8 +37,6 @@ /** * Mutually reduces multiple tensors of identical type and shape. - * - * @param data type for {@code data} output */ @OpMetadata( opType = CollectiveReduce.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveReduceScatter.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveReduceScatter.java index 5ab06edf273..8b89dbaf183 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveReduceScatter.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/collective/CollectiveReduceScatter.java @@ -41,8 +41,6 @@ * {@code is_stateless} means each op does not need control dependencies to other * collective ops. In this case, keys that are unique at runtime * (e.g. {@code instance_key}) should be used to distinguish collective groups. - * - * @param data type for {@code data} output */ @OpMetadata( opType = CollectiveReduceScatter.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ApproxTopK.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ApproxTopK.java index 1daca9f077e..48f4f94315b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ApproxTopK.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ApproxTopK.java @@ -38,8 +38,6 @@ * Returns min/max k values and their indices of the input operand in an approximate manner. * See https://arxiv.org/abs/2206.14286 for the algorithm details. * This op is only optimized on TPU currently. - * - * @param data type for {@code values} output */ @OpMetadata( opType = ApproxTopK.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Assign.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Assign.java index a8001c6103a..e49f3eafacc 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Assign.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Assign.java @@ -37,8 +37,6 @@ * Update 'ref' by assigning 'value' to it. * This operation outputs "ref" after the assignment is done. * This makes it easier to chain operations that need to use the reset value. - * - * @param data type for {@code output_ref} output */ @OpMetadata( opType = Assign.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignAdd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignAdd.java index 2b6f78046ca..848231d569a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignAdd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignAdd.java @@ -37,8 +37,6 @@ * Update 'ref' by adding 'value' to it. * This operation outputs "ref" after the update is done. * This makes it easier to chain operations that need to use the reset value. - * - * @param data type for {@code output_ref} output */ @OpMetadata( opType = AssignAdd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignSub.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignSub.java index 162fc069e92..cc96d634945 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignSub.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/AssignSub.java @@ -37,8 +37,6 @@ * Update 'ref' by subtracting 'value' from it. * This operation outputs "ref" after the update is done. * This makes it easier to chain operations that need to use the reset value. - * - * @param data type for {@code output_ref} output */ @OpMetadata( opType = AssignSub.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BatchFunction.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BatchFunction.java index d544fdeca5a..577f213f47d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BatchFunction.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BatchFunction.java @@ -163,6 +163,12 @@ public static BatchFunction create(Scope scope, Iterable> inTensors, if (opts.lowPriorityMaxEnqueuedBatches != null) { opBuilder.setAttr("low_priority_max_enqueued_batches", opts.lowPriorityMaxEnqueuedBatches); } + if (opts.mixedPriorityPolicy != null) { + opBuilder.setAttr("mixed_priority_policy", opts.mixedPriorityPolicy); + } + if (opts.batchPaddingPolicy != null) { + opBuilder.setAttr("batch_padding_policy", opts.batchPaddingPolicy); + } if (opts.enableLargeBatchSplitting != null) { opBuilder.setAttr("enable_large_batch_splitting", opts.enableLargeBatchSplitting); } @@ -291,6 +297,26 @@ public static Options lowPriorityMaxEnqueuedBatches(Long lowPriorityMaxEnqueuedB return new Options().lowPriorityMaxEnqueuedBatches(lowPriorityMaxEnqueuedBatches); } + /** + * Sets the mixedPriorityPolicy option. + * + * @param mixedPriorityPolicy the mixedPriorityPolicy option + * @return this Options instance. + */ + public static Options mixedPriorityPolicy(String mixedPriorityPolicy) { + return new Options().mixedPriorityPolicy(mixedPriorityPolicy); + } + + /** + * Sets the batchPaddingPolicy option. + * + * @param batchPaddingPolicy the batchPaddingPolicy option + * @return this Options instance. + */ + public static Options batchPaddingPolicy(String batchPaddingPolicy) { + return new Options().batchPaddingPolicy(batchPaddingPolicy); + } + /** * Sets the enableLargeBatchSplitting option. * @@ -339,6 +365,10 @@ public static class Options { private Long lowPriorityMaxEnqueuedBatches; + private String mixedPriorityPolicy; + + private String batchPaddingPolicy; + private Boolean enableLargeBatchSplitting; private Options() { @@ -475,6 +505,28 @@ public Options lowPriorityMaxEnqueuedBatches(Long lowPriorityMaxEnqueuedBatches) return this; } + /** + * Sets the mixedPriorityPolicy option. + * + * @param mixedPriorityPolicy the mixedPriorityPolicy option + * @return this Options instance. + */ + public Options mixedPriorityPolicy(String mixedPriorityPolicy) { + this.mixedPriorityPolicy = mixedPriorityPolicy; + return this; + } + + /** + * Sets the batchPaddingPolicy option. + * + * @param batchPaddingPolicy the batchPaddingPolicy option + * @return this Options instance. + */ + public Options batchPaddingPolicy(String batchPaddingPolicy) { + this.batchPaddingPolicy = batchPaddingPolicy; + return this; + } + /** * Sets the enableLargeBatchSplitting option. * @@ -571,6 +623,16 @@ public static class Inputs extends RawOpInputs { */ public final long lowPriorityMaxEnqueuedBatches; + /** + * The mixedPriorityPolicy attribute + */ + public final String mixedPriorityPolicy; + + /** + * The batchPaddingPolicy attribute + */ + public final String batchPaddingPolicy; + /** * the types of tensors to be batched. */ @@ -593,7 +655,7 @@ public static class Inputs extends RawOpInputs { public final boolean enableLargeBatchSplitting; public Inputs(GraphOperation op) { - super(new BatchFunction(op), op, Arrays.asList("num_batch_threads", "max_batch_size", "batch_timeout_micros", "max_enqueued_batches", "allowed_batch_sizes", "container", "shared_name", "batching_queue", "low_priority_max_batch_size", "low_priority_batch_timeout_micros", "low_priority_allowed_batch_sizes", "low_priority_max_enqueued_batches", "Tin", "Tcaptured", "Tout", "enable_large_batch_splitting")); + super(new BatchFunction(op), op, Arrays.asList("num_batch_threads", "max_batch_size", "batch_timeout_micros", "max_enqueued_batches", "allowed_batch_sizes", "container", "shared_name", "batching_queue", "low_priority_max_batch_size", "low_priority_batch_timeout_micros", "low_priority_allowed_batch_sizes", "low_priority_max_enqueued_batches", "mixed_priority_policy", "batch_padding_policy", "Tin", "Tcaptured", "Tout", "enable_large_batch_splitting")); int inputIndex = 0; int inTensorsLength = op.inputListLength("in_tensors"); inTensors = Arrays.asList((Operand[]) op.inputList(inputIndex, inTensorsLength)); @@ -613,6 +675,8 @@ public Inputs(GraphOperation op) { lowPriorityBatchTimeoutMicros = op.attributes().getAttrInt("low_priority_batch_timeout_micros"); lowPriorityAllowedBatchSizes = op.attributes().getAttrIntList("low_priority_allowed_batch_sizes"); lowPriorityMaxEnqueuedBatches = op.attributes().getAttrInt("low_priority_max_enqueued_batches"); + mixedPriorityPolicy = op.attributes().getAttrString("mixed_priority_policy"); + batchPaddingPolicy = op.attributes().getAttrString("batch_padding_policy"); Tin = op.attributes().getAttrTypeList("Tin"); Tcaptured = op.attributes().getAttrTypeList("Tcaptured"); Tout = op.attributes().getAttrTypeList("Tout"); diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BatchToSpace.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BatchToSpace.java index 889bd521e0d..09fa1d49bcb 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BatchToSpace.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BatchToSpace.java @@ -42,8 +42,6 @@ * this op outputs a copy of the input tensor where values from the {@code batch} * dimension are moved in spatial blocks to the {@code height} and {@code width} dimensions, * followed by cropping along the {@code height} and {@code width} dimensions. - * - * @param data type for {@code output} output */ @OpMetadata( opType = BatchToSpace.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BatchToSpaceNd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BatchToSpaceNd.java index c7cf592d517..65a98188342 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BatchToSpaceNd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BatchToSpaceNd.java @@ -42,8 +42,6 @@ * the input. The spatial dimensions of this intermediate result are then * optionally cropped according to {@code crops} to produce the output. This is the * reverse of SpaceToBatch. See below for a precise description. - * - * @param data type for {@code output} output */ @OpMetadata( opType = BatchToSpaceNd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Bitcast.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Bitcast.java index c1bd2421b15..82a2a99d295 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Bitcast.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Bitcast.java @@ -96,8 +96,6 @@ * endian orderings will give different results. A copy from input buffer to output * buffer is made on BE machines when types are of different sizes in order to get * the same casting results as on LE machines. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Bitcast.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BroadcastDynamicShape.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BroadcastDynamicShape.java index 96cfa009842..165e7e12b9a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BroadcastDynamicShape.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BroadcastDynamicShape.java @@ -37,8 +37,6 @@ * Return the shape of s0 op s1 with broadcast. * Given {@code s0} and {@code s1}, tensors that represent shapes, compute {@code r0}, the * broadcasted shape. {@code s0}, {@code s1} and {@code r0} are all integer vectors. - * - * @param data type for {@code r0} output */ @OpMetadata( opType = BroadcastDynamicShape.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BroadcastGradientArgs.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BroadcastGradientArgs.java index fe9cf0e7039..f29d66c8de6 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BroadcastGradientArgs.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BroadcastGradientArgs.java @@ -36,8 +36,6 @@ /** * Return the reduction indices for computing gradients of s0 op s1 with broadcast. * This is typically used by gradient computations for a broadcasting operation. - * - * @param data type for {@code r0} output */ @OpMetadata( opType = BroadcastGradientArgs.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BroadcastTo.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BroadcastTo.java index d9ada9ae323..f27247cd37a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BroadcastTo.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/BroadcastTo.java @@ -72,8 +72,6 @@ * The newly-created tensor takes the full memory of the broadcasted * shape. (In a graph context, {@code broadcast_to} might be fused to * subsequent operation and then be optimized away, however.) - * - * @param data type for {@code output} output */ @OpMetadata( opType = BroadcastTo.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/CheckPinned.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/CheckPinned.java new file mode 100644 index 00000000000..2708bcad2bf --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/CheckPinned.java @@ -0,0 +1,115 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.core; + +import java.util.Arrays; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.op.annotation.Operator; +import org.tensorflow.proto.DataType; +import org.tensorflow.types.family.TType; + +/** + * Checks whether a tensor is located in host memory pinned for GPU. + * When run: + *

    + *
  • Reports an {@code InvalidArgument} error if {@code tensor} is not in pinned memory.
  • + *
  • Reports a {@code FailedPrecondition} error if not built with CUDA.
  • + *
+ */ +@OpMetadata( + opType = CheckPinned.OP_NAME, + inputsClass = CheckPinned.Inputs.class +) +@Operator +public final class CheckPinned extends RawOp implements Operand { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "CheckPinned"; + + private Output output; + + public CheckPinned(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + output = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new CheckPinned operation. + * + * @param scope current scope + * @param tensor The tensor value + * @param data type for {@code CheckPinned} output and operands + * @return a new instance of CheckPinned + */ + @Endpoint( + describeByClass = true + ) + public static CheckPinned create(Scope scope, Operand tensor) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "CheckPinned"); + opBuilder.addInput(tensor.asOutput()); + return new CheckPinned<>(opBuilder.build()); + } + + /** + * Gets output. + * + * @return output. + */ + public Output output() { + return output; + } + + @Override + public Output asOutput() { + return output; + } + + @OpInputsMetadata( + outputsClass = CheckPinned.class + ) + public static class Inputs extends RawOpInputs> { + /** + * The tensor input + */ + public final Operand tensor; + + /** + * The T attribute + */ + public final DataType T; + + public Inputs(GraphOperation op) { + super(new CheckPinned<>(op), op, Arrays.asList("T")); + int inputIndex = 0; + tensor = (Operand) op.input(inputIndex++); + T = op.attributes().getAttrType("T"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ClipByValue.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ClipByValue.java index 4477b0d4924..2ae7185a7e5 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ClipByValue.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ClipByValue.java @@ -39,8 +39,6 @@ * shape as {@code t} with its values clipped to {@code clip_value_min} and {@code clip_value_max}. * Any values less than {@code clip_value_min} are set to {@code clip_value_min}. Any values * greater than {@code clip_value_max} are set to {@code clip_value_max}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = ClipByValue.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Concat.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Concat.java index 894b3a574be..cf3b735f4be 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Concat.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Concat.java @@ -37,8 +37,6 @@ /** * Concatenates tensors along one dimension. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Concat.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ConcatOffset.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ConcatOffset.java index df14b30a11b..9b9a8d813c3 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ConcatOffset.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ConcatOffset.java @@ -47,14 +47,12 @@ * y = [2, 3, 7] * z = [2, 9, 7] * offsets = concat_offset(1, [x, y, z]) - * [list(off.numpy()) for off in offsets] + * [[a.item() for a in list(off.numpy())] for off in offsets] * [[0, 0, 0], [0, 2, 0], [0, 5, 0]] * * * *

This is typically used by gradient computations for a concat operation. - * - * @param data type for {@code offset} output */ @OpMetadata( opType = ConcatOffset.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Copy.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Copy.java index 9b55fac9069..a04de48877b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Copy.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Copy.java @@ -42,8 +42,6 @@ * deep-copying. See the documentation of Debug* ops for more details. *

Unlike the CopyHost Op, this op does not have HostMemory constraint on its * input or output. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Copy.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/CopyHost.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/CopyHost.java index 59af18c8b33..055c9d878bf 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/CopyHost.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/CopyHost.java @@ -40,8 +40,6 @@ * gRPC gating status, the output will simply forward the input tensor without * deep-copying. See the documentation of Debug* ops for more details. *

Unlike the Copy Op, this op has HostMemory constraint on its input or output. - * - * @param data type for {@code output} output */ @OpMetadata( opType = CopyHost.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/CopyToMesh.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/CopyToMesh.java index f83d6c6ad61..166d4613d54 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/CopyToMesh.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/CopyToMesh.java @@ -35,8 +35,6 @@ /** * The CopyToMesh operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = CopyToMesh.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/CopyToMeshGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/CopyToMeshGrad.java index fa3467cd849..095d5b5d7ce 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/CopyToMeshGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/CopyToMeshGrad.java @@ -35,8 +35,6 @@ /** * The CopyToMeshGrad operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = CopyToMeshGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/CountUpTo.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/CountUpTo.java index 7a81a4419e6..0f404fa1419 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/CountUpTo.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/CountUpTo.java @@ -35,8 +35,6 @@ /** * Increments 'ref' until it reaches 'limit'. - * - * @param data type for {@code output} output */ @OpMetadata( opType = CountUpTo.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/DeepCopy.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/DeepCopy.java index ca15dbb9a55..f0b9b3927a8 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/DeepCopy.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/DeepCopy.java @@ -35,8 +35,6 @@ /** * Makes a copy of {@code x}. - * - * @param data type for {@code y} output */ @OpMetadata( opType = DeepCopy.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/DestroyTemporaryVariable.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/DestroyTemporaryVariable.java index cc8f2bafb2f..876a1e46ee5 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/DestroyTemporaryVariable.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/DestroyTemporaryVariable.java @@ -41,8 +41,6 @@ * This is typically achieved by chaining the ref through each assign op, or by * using control dependencies. *

Outputs the final value of the tensor pointed to by 'ref'. - * - * @param data type for {@code value} output */ @OpMetadata( opType = DestroyTemporaryVariable.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/DynamicPartition.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/DynamicPartition.java index b851e0cccdf..d7d7bf7c328 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/DynamicPartition.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/DynamicPartition.java @@ -78,8 +78,6 @@ * * * - * - * @param data type for {@code outputs} output */ @OpMetadata( opType = DynamicPartition.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/DynamicStitch.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/DynamicStitch.java index 9aba2968627..d160ab8255c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/DynamicStitch.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/DynamicStitch.java @@ -90,8 +90,6 @@ *

* *
- * - * @param data type for {@code merged} output */ @OpMetadata( opType = DynamicStitch.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Empty.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Empty.java index 02c76780ba2..6f7d74d94e5 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Empty.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Empty.java @@ -38,8 +38,6 @@ /** * Creates a tensor with the given shape. *

This operation creates a tensor of {@code shape} and {@code dtype}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Empty.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/EnsureShape.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/EnsureShape.java index 131285dc0e6..bbada3714ac 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/EnsureShape.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/EnsureShape.java @@ -38,8 +38,6 @@ * Ensures that the tensor's shape matches the expected shape. * Raises an error if the input tensor's shape does not match the specified shape. * Returns the input tensor otherwise. - * - * @param data type for {@code output} output */ @OpMetadata( opType = EnsureShape.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Enter.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Enter.java index baed3b18053..309e5700eb1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Enter.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Enter.java @@ -40,8 +40,6 @@ * {@code is_constant} is true, {@code output} is a constant in the child frame; otherwise * it may be changed in the child frame. At most {@code parallel_iterations} iterations * are run in parallel in the child frame. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Enter.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Exit.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Exit.java index c1535016b59..8dea6a66fe6 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Exit.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Exit.java @@ -36,8 +36,6 @@ /** * Exits the current frame to its parent frame. * Exit makes its input {@code data} available to the parent frame. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Exit.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ExpandDims.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ExpandDims.java index bf17427d228..0f0e030b71d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ExpandDims.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ExpandDims.java @@ -59,8 +59,6 @@ *

{@code -1-input.dims() <= dim <= input.dims()} *

This operation is related to {@code squeeze()}, which removes dimensions of * size 1. - * - * @param data type for {@code output} output */ @OpMetadata( opType = ExpandDims.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ExtractVolumePatches.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ExtractVolumePatches.java index 12afb6060b3..350c416e235 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ExtractVolumePatches.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ExtractVolumePatches.java @@ -36,8 +36,6 @@ /** * Extract {@code patches} from {@code input} and put them in the {@code "depth"} output dimension. 3D extension of {@code extract_image_patches}. - * - * @param data type for {@code patches} output */ @OpMetadata( opType = ExtractVolumePatches.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/FakeParam.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/FakeParam.java index ee07de5268d..79e63958dda 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/FakeParam.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/FakeParam.java @@ -40,8 +40,6 @@ * valid output when run, so must either be removed (e.g. replaced with a * function input) or guaranteed not to be used (e.g. if mirroring an * intermediate output needed for the gradient computation of the other branch). - * - * @param data type for {@code output} output */ @OpMetadata( opType = FakeParam.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Fill.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Fill.java index 5ba5931795e..8634981f57c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Fill.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Fill.java @@ -53,8 +53,6 @@ *

  • Because {@code tf.fill} evaluates at graph runtime, it supports dynamic shapes * based on other runtime Tensors, unlike {@code tf.constant}.
  • * - * - * @param data type for {@code output} output */ @OpMetadata( opType = Fill.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Gather.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Gather.java index 1b1e3f888ee..43e09807b66 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Gather.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Gather.java @@ -57,9 +57,10 @@ *

    Note that on CPU, if an out of bound index is found, an error is returned. * On GPU, if an out of bound index is found, a 0 is stored in the * corresponding output value. + *

    Note that on TPU, if any dimension of {@code params} is of size 0 then the output will + * be the expected shape filled with zeros. On CPU and GPU an error will be + * returned. *

    See also {@code tf.batch_gather} and {@code tf.gather_nd}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Gather.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/GatherNd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/GatherNd.java index b1a05118129..755bf4e7905 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/GatherNd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/GatherNd.java @@ -57,9 +57,17 @@ *

      * indices.shape[:-1] + params.shape[indices.shape[-1]:]
      * 
    - *

    Note that on CPU, if an out of bound index is found, an error is returned. - * On GPU, if an out of bound index is found, a 0 is stored in the - * corresponding output value. + *

    If {@code indices} contains any out-of-bound indices, depending on + * {@code bad_indices_policy}, the op will either return an error or ignore the + * out-of-bound indices. {@code bad_indices_policy} can be one of the following values: + *

      + *
    1. "" or "DEFAULT": raises on CPU and ignore on GPU. This is because + * historically on CPU and GPU we handle errors in different ways, and for + * backward compatibility we keep the default behavior.
    2. + *
    3. "ERROR": raises error; GPU does not support this value.
    4. + *
    5. "IGNORE": ignore error and set the corresponding output to 0; + * supported on both CPU and GPU.
    6. + *
    *

    Some examples below. *

    Simple indexing into a matrix: *

    @@ -125,8 +133,6 @@
      *     output = [['b0', 'b1'], ['d0', 'c1']]
      * 
    *

    See also {@code tf.gather} and {@code tf.batch_gather}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = GatherNd.OP_NAME, @@ -153,6 +159,7 @@ public GatherNd(Operation operation) { * @param scope current scope * @param params The tensor from which to gather values. * @param indices Index tensor. + * @param options carries optional attribute values * @param data type for {@code GatherNd} output and operands * @return a new instance of GatherNd */ @@ -160,13 +167,30 @@ public GatherNd(Operation operation) { describeByClass = true ) public static GatherNd create(Scope scope, Operand params, - Operand indices) { + Operand indices, Options... options) { OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "GatherNd"); opBuilder.addInput(params.asOutput()); opBuilder.addInput(indices.asOutput()); + if (options != null) { + for (Options opts : options) { + if (opts.badIndicesPolicy != null) { + opBuilder.setAttr("bad_indices_policy", opts.badIndicesPolicy); + } + } + } return new GatherNd<>(opBuilder.build()); } + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public static Options badIndicesPolicy(String badIndicesPolicy) { + return new Options().badIndicesPolicy(badIndicesPolicy); + } + /** * Gets output. * Values from {@code params} gathered from indices given by {@code indices}, with @@ -182,6 +206,27 @@ public Output asOutput() { return output; } + /** + * Optional attributes for {@link org.tensorflow.op.core.GatherNd} + */ + public static class Options { + private String badIndicesPolicy; + + private Options() { + } + + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public Options badIndicesPolicy(String badIndicesPolicy) { + this.badIndicesPolicy = badIndicesPolicy; + return this; + } + } + @OpInputsMetadata( outputsClass = GatherNd.class ) @@ -206,13 +251,19 @@ public static class Inputs extends RawOpInputs> { */ public final DataType Tindices; + /** + * The badIndicesPolicy attribute + */ + public final String badIndicesPolicy; + public Inputs(GraphOperation op) { - super(new GatherNd<>(op), op, Arrays.asList("Tparams", "Tindices")); + super(new GatherNd<>(op), op, Arrays.asList("Tparams", "Tindices", "bad_indices_policy")); int inputIndex = 0; params = (Operand) op.input(inputIndex++); indices = (Operand) op.input(inputIndex++); Tparams = op.attributes().getAttrType("Tparams"); Tindices = op.attributes().getAttrType("Tindices"); + badIndicesPolicy = op.attributes().getAttrString("bad_indices_policy"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/GetSessionTensor.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/GetSessionTensor.java index a2445004e6d..0cccfb42045 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/GetSessionTensor.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/GetSessionTensor.java @@ -37,8 +37,6 @@ /** * Get the value of the tensor specified by its handle. - * - * @param data type for {@code value} output */ @OpMetadata( opType = GetSessionTensor.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/GuaranteeConst.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/GuaranteeConst.java index 8839f77471f..c4235de8ff2 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/GuaranteeConst.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/GuaranteeConst.java @@ -39,8 +39,6 @@ *

    Only accepts value typed tensors as inputs and rejects resource variable handles * as input. *

    Returns the input tensor without modification. - * - * @param data type for {@code output} output */ @OpMetadata( opType = GuaranteeConst.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/HistogramFixedWidth.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/HistogramFixedWidth.java index 0846ac056c0..782cfc69f05 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/HistogramFixedWidth.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/HistogramFixedWidth.java @@ -51,8 +51,6 @@ * variables.global_variables_initializer().run() * sess.run(hist) => [2, 1, 1, 0, 2] * - * - * @param data type for {@code out} output */ @OpMetadata( opType = HistogramFixedWidth.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/HostConst.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/HostConst.java index 8aa7bf2e13c..82f5ef8f295 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/HostConst.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/HostConst.java @@ -37,8 +37,6 @@ /** * Returns a constant tensor on the host. Only for writing C++ tests. - * - * @param data type for {@code output} output */ @OpMetadata( opType = HostConst.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Identity.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Identity.java index 12c84344373..d0729ab93da 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Identity.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Identity.java @@ -35,8 +35,6 @@ /** * Return a tensor with the same shape and contents as the input tensor or value. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Identity.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ImmutableConst.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ImmutableConst.java index 47cbe749ee9..12d647268ba 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ImmutableConst.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ImmutableConst.java @@ -38,8 +38,6 @@ /** * Returns immutable tensor from memory region. * The current implementation memmaps the tensor from a file. - * - * @param data type for {@code tensor} output */ @OpMetadata( opType = ImmutableConst.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/InplaceAdd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/InplaceAdd.java index c42388fc55c..78f37851589 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/InplaceAdd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/InplaceAdd.java @@ -39,8 +39,6 @@ *

      * Computes y = x; y[i, :] += v; return y.
      * 
    - * - * @param data type for {@code y} output */ @OpMetadata( opType = InplaceAdd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/InplaceSub.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/InplaceSub.java index a39bf6d741b..31d0287aab2 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/InplaceSub.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/InplaceSub.java @@ -40,8 +40,6 @@ * * Computes y = x; y[i, :] -= v; return y. * - * - * @param data type for {@code y} output */ @OpMetadata( opType = InplaceSub.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/InplaceUpdate.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/InplaceUpdate.java index 8aecb6edf8c..d34e0f15011 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/InplaceUpdate.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/InplaceUpdate.java @@ -39,8 +39,6 @@ * Computes {@code x[i, :] = v; return x}. *

    Originally this function is mutative however for compilation we make this * operation create / operate on a copy of {@code x}. - * - * @param data type for {@code y} output */ @OpMetadata( opType = InplaceUpdate.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/LinSpace.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/LinSpace.java index 3473ddf487e..317eb054e29 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/LinSpace.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/LinSpace.java @@ -42,8 +42,6 @@ *

      * tf.linspace(10.0, 12.0, 3, name="linspace") => [ 10.0  11.0  12.0]
      * 
    - * - * @param data type for {@code output} output */ @OpMetadata( opType = LinSpace.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/LookupTableExport.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/LookupTableExport.java index 7406671423c..7546b26f8f4 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/LookupTableExport.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/LookupTableExport.java @@ -36,10 +36,6 @@ /** * Outputs all keys and values in the table. - * - * @param data type for {@code keys} output - * - * @param data type for {@code values} output */ @OpMetadata( opType = LookupTableExport.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/LookupTableFind.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/LookupTableFind.java index b097f2ee81d..1155c94662f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/LookupTableFind.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/LookupTableFind.java @@ -39,8 +39,6 @@ * The output {@code values} is of the type of the table values. *

    The scalar {@code default_value} is the value output for keys not present in the * table. It must also be of the same type as the table values. - * - * @param data type for {@code values} output */ @OpMetadata( opType = LookupTableFind.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/LowerBound.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/LowerBound.java index 8cf633e2d7f..2a4b761a8fd 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/LowerBound.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/LowerBound.java @@ -51,8 +51,6 @@ *

    result = LowerBound(sorted_sequence, values) *

    result == [[1, 2, 2], * [0, 1, 5]] - * - * @param data type for {@code output} output */ @OpMetadata( opType = LowerBound.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Max.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Max.java index fb03ee5c942..04c4f1481d3 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Max.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Max.java @@ -39,8 +39,6 @@ * {@code keep_dims} is true, the rank of the tensor is reduced by 1 for each entry in * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Max.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Merge.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Merge.java index 7e4c77434b9..f5a189c9c58 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Merge.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Merge.java @@ -41,8 +41,6 @@ * It is usually combined with {@code Switch} to implement branching. *

    {@code Merge} forwards the first tensor to become available to {@code output}, and sets * {@code value_index} to its index in {@code inputs}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Merge.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Min.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Min.java index f3db8fedac0..89ac31b5854 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Min.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Min.java @@ -39,8 +39,6 @@ * {@code keep_dims} is true, the rank of the tensor is reduced by 1 for each entry in * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Min.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/MirrorPad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/MirrorPad.java index e63036ec117..751bec8fd66 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/MirrorPad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/MirrorPad.java @@ -57,8 +57,6 @@ * [5, 4, 4, 5, 6, 6, 5] * [5, 4, 4, 5, 6, 6, 5]] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = MirrorPad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/MirrorPadGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/MirrorPadGrad.java index 64235a34e0a..d1286e4bd89 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/MirrorPadGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/MirrorPadGrad.java @@ -50,8 +50,6 @@ * pad(t, paddings) ==> [[ 1, 5] * [11, 28]] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = MirrorPadGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/NcclAllReduce.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/NcclAllReduce.java index d49045a1bad..5e8f5709b65 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/NcclAllReduce.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/NcclAllReduce.java @@ -46,8 +46,6 @@ * num_devices: The number of devices participating in this reduction. * shared_name: Identifier that shared between ops of the same reduction. * - * @param data type for {@code data} output - * * @deprecated use {@link org.tensorflow.op.distribute.NcclAllReduce} instead */ @OpMetadata( diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/NcclBroadcast.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/NcclBroadcast.java index 4d5c2d771de..5e6c2a583ef 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/NcclBroadcast.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/NcclBroadcast.java @@ -43,8 +43,6 @@ * output: The same as input. * shape: The shape of the input tensor. * - * @param data type for {@code output} output - * * @deprecated use {@link org.tensorflow.op.distribute.NcclBroadcast} instead */ @OpMetadata( diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/NcclReduce.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/NcclReduce.java index 8b050aba7e3..cd3dea3af6f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/NcclReduce.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/NcclReduce.java @@ -43,8 +43,6 @@ * data: the value of the reduction across all {@code num_devices} devices. * reduction: the reduction operation to perform. * - * @param data type for {@code data} output - * * @deprecated use {@link org.tensorflow.op.distribute.NcclReduce} instead */ @OpMetadata( diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/NextIteration.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/NextIteration.java index 33e50ce1b5d..1f0f73c672f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/NextIteration.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/NextIteration.java @@ -35,8 +35,6 @@ /** * Makes its input available to the next iteration. - * - * @param data type for {@code output} output */ @OpMetadata( opType = NextIteration.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/OneHot.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/OneHot.java index 09f55f7eaff..8ed3c25bd8e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/OneHot.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/OneHot.java @@ -111,8 +111,6 @@ * [0.0, 0.0, 0.0] // one_hot(-1) * ] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = OneHot.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/OnesLike.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/OnesLike.java index b69df0d0952..51178e062f4 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/OnesLike.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/OnesLike.java @@ -35,8 +35,6 @@ /** * Returns a tensor of ones with the same shape and type as x. - * - * @param data type for {@code y} output */ @OpMetadata( opType = OnesLike.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Pad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Pad.java index d80e87f0f2d..60ddbcf6817 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Pad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Pad.java @@ -56,8 +56,6 @@ * [0, 0, 2, 2, 0, 0] * [0, 0, 0, 0, 0, 0]] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = Pad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ParallelConcat.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ParallelConcat.java index c5cbde1618c..b12c3b896aa 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ParallelConcat.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ParallelConcat.java @@ -50,8 +50,6 @@ * that the input shapes be known during graph construction. Parallel concat * will copy pieces of the input into the output as they become available, in * some situations this can provide a performance benefit. - * - * @param data type for {@code output} output */ @OpMetadata( opType = ParallelConcat.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ParallelDynamicStitch.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ParallelDynamicStitch.java index a23c3d135a8..c9fd16880ca 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ParallelDynamicStitch.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ParallelDynamicStitch.java @@ -89,8 +89,6 @@ *

    * *
    - * - * @param data type for {@code merged} output */ @OpMetadata( opType = ParallelDynamicStitch.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Placeholder.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Placeholder.java index 634500dcfc0..f4c450973da 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Placeholder.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Placeholder.java @@ -40,8 +40,6 @@ * N.B. This operation will fail with an error if it is executed. It is * intended as a way to represent a value that will always be fed, and to * provide attrs that enable the fed value to be checked at runtime. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Placeholder.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/PlaceholderWithDefault.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/PlaceholderWithDefault.java index 9604ea0a92a..202d4cc476c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/PlaceholderWithDefault.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/PlaceholderWithDefault.java @@ -36,8 +36,6 @@ /** * A placeholder op that passes through {@code input} when its output is not fed. - * - * @param data type for {@code output} output */ @OpMetadata( opType = PlaceholderWithDefault.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Prod.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Prod.java index 71c7f986eb6..3f1c696a0bc 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Prod.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Prod.java @@ -40,8 +40,6 @@ * {@code keep_dims} is true, the rank of the tensor is reduced by 1 for each entry in * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Prod.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/QuantizedReshape.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/QuantizedReshape.java index 6e92b83bf89..84816c6893f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/QuantizedReshape.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/QuantizedReshape.java @@ -37,8 +37,6 @@ /** * Reshapes a quantized tensor as per the Reshape op. - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedReshape.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RandomIndexShuffle.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RandomIndexShuffle.java index 68cd7f9f0eb..76538abf9cb 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RandomIndexShuffle.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RandomIndexShuffle.java @@ -39,8 +39,6 @@ *

    If multiple inputs are vectors (matrix in case of seed) then the size of the * first dimension must match. *

    The outputs are deterministic. - * - * @param data type for {@code output} output */ @OpMetadata( opType = RandomIndexShuffle.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Range.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Range.java index 0699bd59b09..702214095a5 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Range.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Range.java @@ -44,8 +44,6 @@ * # 'delta' is 3 * tf.range(start, limit, delta) ==> [3, 6, 9, 12, 15] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = Range.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReadVariableOp.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReadVariableOp.java index 236991942ee..f57c2781c3f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReadVariableOp.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReadVariableOp.java @@ -41,8 +41,6 @@ * writes on which this operation depends directly or indirectly, and to not be * influenced by any of the writes which depend directly or indirectly on this * operation. - * - * @param data type for {@code value} output */ @OpMetadata( opType = ReadVariableOp.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Recv.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Recv.java index 1853328543d..5b3caab37b8 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Recv.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Recv.java @@ -36,8 +36,6 @@ /** * Receives the named tensor from send_device on recv_device. - * - * @param data type for {@code tensor} output */ @OpMetadata( opType = Recv.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReduceMax.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReduceMax.java index 529841fd5fa..dca6c6a5ffc 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReduceMax.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReduceMax.java @@ -39,8 +39,6 @@ * {@code keep_dims} is true, the rank of the tensor is reduced by 1 for each entry in * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. - * - * @param data type for {@code output} output */ @OpMetadata( opType = ReduceMax.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReduceMin.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReduceMin.java index f349357096b..a7e544cfaab 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReduceMin.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReduceMin.java @@ -39,8 +39,6 @@ * {@code keep_dims} is true, the rank of the tensor is reduced by 1 for each entry in * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. - * - * @param data type for {@code output} output */ @OpMetadata( opType = ReduceMin.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReduceProd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReduceProd.java index 49008ad1a36..3dc53ad9c58 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReduceProd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReduceProd.java @@ -40,8 +40,6 @@ * {@code keep_dims} is true, the rank of the tensor is reduced by 1 for each entry in * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. - * - * @param data type for {@code output} output */ @OpMetadata( opType = ReduceProd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReduceSum.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReduceSum.java index 05851e60764..bbe161f9210 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReduceSum.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReduceSum.java @@ -40,8 +40,6 @@ * {@code keep_dims} is true, the rank of the tensor is reduced by 1 for each entry in * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. - * - * @param data type for {@code output} output */ @OpMetadata( opType = ReduceSum.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefEnter.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefEnter.java index 888c0ee977b..218092a2563 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefEnter.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefEnter.java @@ -39,8 +39,6 @@ * {@code is_constant} is true, {@code output} is a constant in the child frame; otherwise * it may be changed in the child frame. At most {@code parallel_iterations} iterations * are run in parallel in the child frame. - * - * @param data type for {@code output} output */ @OpMetadata( opType = RefEnter.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefExit.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefExit.java index c23ff2d03d7..9a840da2c3d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefExit.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefExit.java @@ -36,8 +36,6 @@ /** * Exits the current frame to its parent frame. * Exit makes its input {@code data} available to the parent frame. - * - * @param data type for {@code output} output */ @OpMetadata( opType = RefExit.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefIdentity.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefIdentity.java index 53d515be8e1..c3bb004b548 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefIdentity.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefIdentity.java @@ -35,8 +35,6 @@ /** * Return the same ref tensor as the input ref tensor. - * - * @param data type for {@code output} output */ @OpMetadata( opType = RefIdentity.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefMerge.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefMerge.java index 9354cb2847b..4baf6cc6260 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefMerge.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefMerge.java @@ -41,8 +41,6 @@ * It is usually combined with {@code Switch} to implement branching. *

    {@code Merge} forwards the first tensor for become available to {@code output}, and sets * {@code value_index} to its index in {@code inputs}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = RefMerge.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefNextIteration.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefNextIteration.java index 5c7f1d2c4b7..ef647c70cd6 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefNextIteration.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefNextIteration.java @@ -35,8 +35,6 @@ /** * Makes its input available to the next iteration. - * - * @param data type for {@code output} output */ @OpMetadata( opType = RefNextIteration.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefSelect.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefSelect.java index 02c6ddc8e2f..d7ffa33956e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefSelect.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefSelect.java @@ -37,8 +37,6 @@ /** * Forwards the {@code index}th element of {@code inputs} to {@code output}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = RefSelect.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefSwitch.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefSwitch.java index 04a2d4811ab..2e97b2bbcad 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefSwitch.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RefSwitch.java @@ -39,8 +39,6 @@ * If {@code pred} is true, the {@code data} input is forwarded to {@code output_true}. Otherwise, * the data goes to {@code output_false}. *

    See also {@code Switch} and {@code Merge}. - * - * @param data type for {@code output_false} output */ @OpMetadata( opType = RefSwitch.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Relayout.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Relayout.java index 959987e6200..503d3cfe42a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Relayout.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Relayout.java @@ -35,8 +35,6 @@ /** * The Relayout operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = Relayout.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RelayoutLike.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RelayoutLike.java index 7fd8a91fb8b..499cb8d6c72 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RelayoutLike.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/RelayoutLike.java @@ -35,8 +35,6 @@ /** * The RelayoutLike operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = RelayoutLike.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Reshape.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Reshape.java index 4b1ce466a7d..54c0aba057e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Reshape.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Reshape.java @@ -90,8 +90,6 @@ * # shape `[]` reshapes to a scalar * reshape(t, []) ==> 7 * - * - * @param data type for {@code output} output */ @OpMetadata( opType = Reshape.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceCountUpTo.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceCountUpTo.java index f8e5cf5abef..0ca0faa179e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceCountUpTo.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceCountUpTo.java @@ -37,8 +37,6 @@ /** * Increments variable pointed to by 'resource' until it reaches 'limit'. - * - * @param data type for {@code output} output */ @OpMetadata( opType = ResourceCountUpTo.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceGather.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceGather.java index 5dff2d95dc2..c458bacea4c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceGather.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceGather.java @@ -49,8 +49,6 @@ * # Higher rank indices * output[i, ..., j, :, ... :] = params[indices[i, ..., j], :, ..., :] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = ResourceGather.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceGatherNd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceGatherNd.java index 1a86a282ab9..f9c6b72b544 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceGatherNd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceGatherNd.java @@ -37,8 +37,6 @@ /** * The ResourceGatherNd operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = ResourceGatherNd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdAdd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdAdd.java index 4c1d9d3820c..ee6c1cf7d61 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdAdd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdAdd.java @@ -103,6 +103,9 @@ public static ResourceScatterNdAdd create(Scope scope, Operand if (opts.useLocking != null) { opBuilder.setAttr("use_locking", opts.useLocking); } + if (opts.badIndicesPolicy != null) { + opBuilder.setAttr("bad_indices_policy", opts.badIndicesPolicy); + } } } return new ResourceScatterNdAdd(opBuilder.build()); @@ -120,12 +123,24 @@ public static Options useLocking(Boolean useLocking) { return new Options().useLocking(useLocking); } + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public static Options badIndicesPolicy(String badIndicesPolicy) { + return new Options().badIndicesPolicy(badIndicesPolicy); + } + /** * Optional attributes for {@link org.tensorflow.op.core.ResourceScatterNdAdd} */ public static class Options { private Boolean useLocking; + private String badIndicesPolicy; + private Options() { } @@ -141,6 +156,17 @@ public Options useLocking(Boolean useLocking) { this.useLocking = useLocking; return this; } + + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public Options badIndicesPolicy(String badIndicesPolicy) { + this.badIndicesPolicy = badIndicesPolicy; + return this; + } } @OpInputsMetadata( @@ -181,8 +207,13 @@ public static class Inputs extends RawOpInputs { */ public final boolean useLocking; + /** + * The badIndicesPolicy attribute + */ + public final String badIndicesPolicy; + public Inputs(GraphOperation op) { - super(new ResourceScatterNdAdd(op), op, Arrays.asList("T", "Tindices", "use_locking")); + super(new ResourceScatterNdAdd(op), op, Arrays.asList("T", "Tindices", "use_locking", "bad_indices_policy")); int inputIndex = 0; ref = (Operand) op.input(inputIndex++); indices = (Operand) op.input(inputIndex++); @@ -190,6 +221,7 @@ public Inputs(GraphOperation op) { T = op.attributes().getAttrType("T"); Tindices = op.attributes().getAttrType("Tindices"); useLocking = op.attributes().getAttrBool("use_locking"); + badIndicesPolicy = op.attributes().getAttrString("bad_indices_policy"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdMax.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdMax.java index 193d4c7dfda..379843a67c7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdMax.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdMax.java @@ -77,6 +77,9 @@ public static ResourceScatterNdMax create(Scope scope, Operand if (opts.useLocking != null) { opBuilder.setAttr("use_locking", opts.useLocking); } + if (opts.badIndicesPolicy != null) { + opBuilder.setAttr("bad_indices_policy", opts.badIndicesPolicy); + } } } return new ResourceScatterNdMax(opBuilder.build()); @@ -94,12 +97,24 @@ public static Options useLocking(Boolean useLocking) { return new Options().useLocking(useLocking); } + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public static Options badIndicesPolicy(String badIndicesPolicy) { + return new Options().badIndicesPolicy(badIndicesPolicy); + } + /** * Optional attributes for {@link org.tensorflow.op.core.ResourceScatterNdMax} */ public static class Options { private Boolean useLocking; + private String badIndicesPolicy; + private Options() { } @@ -115,6 +130,17 @@ public Options useLocking(Boolean useLocking) { this.useLocking = useLocking; return this; } + + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public Options badIndicesPolicy(String badIndicesPolicy) { + this.badIndicesPolicy = badIndicesPolicy; + return this; + } } @OpInputsMetadata( @@ -155,8 +181,13 @@ public static class Inputs extends RawOpInputs { */ public final boolean useLocking; + /** + * The badIndicesPolicy attribute + */ + public final String badIndicesPolicy; + public Inputs(GraphOperation op) { - super(new ResourceScatterNdMax(op), op, Arrays.asList("T", "Tindices", "use_locking")); + super(new ResourceScatterNdMax(op), op, Arrays.asList("T", "Tindices", "use_locking", "bad_indices_policy")); int inputIndex = 0; ref = (Operand) op.input(inputIndex++); indices = (Operand) op.input(inputIndex++); @@ -164,6 +195,7 @@ public Inputs(GraphOperation op) { T = op.attributes().getAttrType("T"); Tindices = op.attributes().getAttrType("Tindices"); useLocking = op.attributes().getAttrBool("use_locking"); + badIndicesPolicy = op.attributes().getAttrString("bad_indices_policy"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdMin.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdMin.java index 9a1023916fd..ba46417abba 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdMin.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdMin.java @@ -77,6 +77,9 @@ public static ResourceScatterNdMin create(Scope scope, Operand if (opts.useLocking != null) { opBuilder.setAttr("use_locking", opts.useLocking); } + if (opts.badIndicesPolicy != null) { + opBuilder.setAttr("bad_indices_policy", opts.badIndicesPolicy); + } } } return new ResourceScatterNdMin(opBuilder.build()); @@ -94,12 +97,24 @@ public static Options useLocking(Boolean useLocking) { return new Options().useLocking(useLocking); } + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public static Options badIndicesPolicy(String badIndicesPolicy) { + return new Options().badIndicesPolicy(badIndicesPolicy); + } + /** * Optional attributes for {@link org.tensorflow.op.core.ResourceScatterNdMin} */ public static class Options { private Boolean useLocking; + private String badIndicesPolicy; + private Options() { } @@ -115,6 +130,17 @@ public Options useLocking(Boolean useLocking) { this.useLocking = useLocking; return this; } + + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public Options badIndicesPolicy(String badIndicesPolicy) { + this.badIndicesPolicy = badIndicesPolicy; + return this; + } } @OpInputsMetadata( @@ -155,8 +181,13 @@ public static class Inputs extends RawOpInputs { */ public final boolean useLocking; + /** + * The badIndicesPolicy attribute + */ + public final String badIndicesPolicy; + public Inputs(GraphOperation op) { - super(new ResourceScatterNdMin(op), op, Arrays.asList("T", "Tindices", "use_locking")); + super(new ResourceScatterNdMin(op), op, Arrays.asList("T", "Tindices", "use_locking", "bad_indices_policy")); int inputIndex = 0; ref = (Operand) op.input(inputIndex++); indices = (Operand) op.input(inputIndex++); @@ -164,6 +195,7 @@ public Inputs(GraphOperation op) { T = op.attributes().getAttrType("T"); Tindices = op.attributes().getAttrType("Tindices"); useLocking = op.attributes().getAttrBool("use_locking"); + badIndicesPolicy = op.attributes().getAttrString("bad_indices_policy"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdSub.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdSub.java index 4c321416231..f39e42e742b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdSub.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdSub.java @@ -103,6 +103,9 @@ public static ResourceScatterNdSub create(Scope scope, Operand if (opts.useLocking != null) { opBuilder.setAttr("use_locking", opts.useLocking); } + if (opts.badIndicesPolicy != null) { + opBuilder.setAttr("bad_indices_policy", opts.badIndicesPolicy); + } } } return new ResourceScatterNdSub(opBuilder.build()); @@ -120,12 +123,24 @@ public static Options useLocking(Boolean useLocking) { return new Options().useLocking(useLocking); } + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public static Options badIndicesPolicy(String badIndicesPolicy) { + return new Options().badIndicesPolicy(badIndicesPolicy); + } + /** * Optional attributes for {@link org.tensorflow.op.core.ResourceScatterNdSub} */ public static class Options { private Boolean useLocking; + private String badIndicesPolicy; + private Options() { } @@ -141,6 +156,17 @@ public Options useLocking(Boolean useLocking) { this.useLocking = useLocking; return this; } + + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public Options badIndicesPolicy(String badIndicesPolicy) { + this.badIndicesPolicy = badIndicesPolicy; + return this; + } } @OpInputsMetadata( @@ -181,8 +207,13 @@ public static class Inputs extends RawOpInputs { */ public final boolean useLocking; + /** + * The badIndicesPolicy attribute + */ + public final String badIndicesPolicy; + public Inputs(GraphOperation op) { - super(new ResourceScatterNdSub(op), op, Arrays.asList("T", "Tindices", "use_locking")); + super(new ResourceScatterNdSub(op), op, Arrays.asList("T", "Tindices", "use_locking", "bad_indices_policy")); int inputIndex = 0; ref = (Operand) op.input(inputIndex++); indices = (Operand) op.input(inputIndex++); @@ -190,6 +221,7 @@ public Inputs(GraphOperation op) { T = op.attributes().getAttrType("T"); Tindices = op.attributes().getAttrType("Tindices"); useLocking = op.attributes().getAttrBool("use_locking"); + badIndicesPolicy = op.attributes().getAttrString("bad_indices_policy"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdUpdate.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdUpdate.java index 1a21fa30916..588d923c05a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdUpdate.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ResourceScatterNdUpdate.java @@ -104,6 +104,9 @@ public static ResourceScatterNdUpdate create(Scope scope, Operand { */ public final boolean useLocking; + /** + * The badIndicesPolicy attribute + */ + public final String badIndicesPolicy; + public Inputs(GraphOperation op) { - super(new ResourceScatterNdUpdate(op), op, Arrays.asList("T", "Tindices", "use_locking")); + super(new ResourceScatterNdUpdate(op), op, Arrays.asList("T", "Tindices", "use_locking", "bad_indices_policy")); int inputIndex = 0; ref = (Operand) op.input(inputIndex++); indices = (Operand) op.input(inputIndex++); @@ -191,6 +222,7 @@ public Inputs(GraphOperation op) { T = op.attributes().getAttrType("T"); Tindices = op.attributes().getAttrType("Tindices"); useLocking = op.attributes().getAttrBool("use_locking"); + badIndicesPolicy = op.attributes().getAttrString("bad_indices_policy"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Reverse.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Reverse.java index 65a6ac9ab0c..711b7148209 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Reverse.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Reverse.java @@ -76,8 +76,6 @@ * [16, 17, 18, 19], * [12, 13, 14, 15]]]] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = Reverse.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReverseSequence.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReverseSequence.java index b7eb3fb25a2..e18f16874f0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReverseSequence.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ReverseSequence.java @@ -84,8 +84,6 @@ * output[3:, :, 2, :, ...] = input[3:, :, 2, :, ...] * output[2:, :, 3, :, ...] = input[2:, :, 3, :, ...] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = ReverseSequence.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Roll.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Roll.java index a2f04750d53..e190730b970 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Roll.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Roll.java @@ -54,8 +54,6 @@ * # 't' is [[0, 1, 2, 3, 4], [5, 6, 7, 8, 9]] * roll(t, shift=[2, -3], axis=[1, 1]) ==> [[1, 2, 3, 4, 0], [6, 7, 8, 9, 5]] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = Roll.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterAdd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterAdd.java index bc66b56b3d1..9f0bc6a526f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterAdd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterAdd.java @@ -55,8 +55,6 @@ *

    * *
    - * - * @param data type for {@code output_ref} output */ @OpMetadata( opType = ScatterAdd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterDiv.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterDiv.java index 083f4de2a81..902d11400e5 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterDiv.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterDiv.java @@ -52,8 +52,6 @@ *

    Duplicate entries are handled correctly: if multiple {@code indices} reference * the same location, their contributions divide. *

    Requires {@code updates.shape = indices.shape + ref.shape[1:]} or {@code updates.shape = []}. - * - * @param data type for {@code output_ref} output */ @OpMetadata( opType = ScatterDiv.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterMax.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterMax.java index 162556fb11c..9b761e52419 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterMax.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterMax.java @@ -54,8 +54,6 @@ *

    * *
    - * - * @param data type for {@code output_ref} output */ @OpMetadata( opType = ScatterMax.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterMin.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterMin.java index 4264f92bc7e..7f725ad19d0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterMin.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterMin.java @@ -54,8 +54,6 @@ *
    * *
    - * - * @param data type for {@code output_ref} output */ @OpMetadata( opType = ScatterMin.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterMul.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterMul.java index 7fb20e9d36e..ae8bbca9670 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterMul.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterMul.java @@ -52,8 +52,6 @@ *

    Duplicate entries are handled correctly: if multiple {@code indices} reference * the same location, their contributions multiply. *

    Requires {@code updates.shape = indices.shape + ref.shape[1:]} or {@code updates.shape = []}. - * - * @param data type for {@code output_ref} output */ @OpMetadata( opType = ScatterMul.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNd.java index 34487ebf9d7..ad6bcd00a16 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNd.java @@ -107,10 +107,16 @@ * [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]], * [[5, 5, 5, 5], [6, 6, 6, 6], [7, 7, 7, 7], [8, 8, 8, 8]]] * - *

    Note that on CPU, if an out of bound index is found, an error is returned. - * On GPU, if an out of bound index is found, the index is ignored. - * - * @param data type for {@code output} output + *

    If {@code indices} contains any out-of-bound indices, depending on + * {@code bad_indices_policy}, the op will either return an error or ignore the + * out-of-bound indices. {@code bad_indices_policy} can be one of the following values: + *

      + *
    1. "" or "DEFAULT": raises on CPU and ignore on GPU. This is because + * historically on CPU and GPU we handle errors in different ways, and for + * backward compatibility we keep the default behavior.
    2. + *
    3. "ERROR": raises error; GPU does not support this value.
    4. + *
    5. "IGNORE": ignore the bad indices; supported on both CPU and GPU.
    6. + *
    */ @OpMetadata( opType = ScatterNd.OP_NAME, @@ -138,6 +144,7 @@ public ScatterNd(Operation operation) { * @param indices Tensor of indices. * @param updates Values to scatter into the output tensor. * @param shape 1-D. The shape of the output tensor. + * @param options carries optional attribute values * @param data type for {@code ScatterNd} output and operands * @param data type for {@code ScatterNd} output and operands * @return a new instance of ScatterNd @@ -146,14 +153,31 @@ public ScatterNd(Operation operation) { describeByClass = true ) public static ScatterNd create(Scope scope, - Operand indices, Operand updates, Operand shape) { + Operand indices, Operand updates, Operand shape, Options... options) { OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "ScatterNd"); opBuilder.addInput(indices.asOutput()); opBuilder.addInput(updates.asOutput()); opBuilder.addInput(shape.asOutput()); + if (options != null) { + for (Options opts : options) { + if (opts.badIndicesPolicy != null) { + opBuilder.setAttr("bad_indices_policy", opts.badIndicesPolicy); + } + } + } return new ScatterNd<>(opBuilder.build()); } + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public static Options badIndicesPolicy(String badIndicesPolicy) { + return new Options().badIndicesPolicy(badIndicesPolicy); + } + /** * Gets output. * A new tensor with the given shape and updates applied according @@ -169,6 +193,27 @@ public Output asOutput() { return output; } + /** + * Optional attributes for {@link org.tensorflow.op.core.ScatterNd} + */ + public static class Options { + private String badIndicesPolicy; + + private Options() { + } + + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public Options badIndicesPolicy(String badIndicesPolicy) { + this.badIndicesPolicy = badIndicesPolicy; + return this; + } + } + @OpInputsMetadata( outputsClass = ScatterNd.class ) @@ -198,14 +243,20 @@ public static class Inputs extends RawOpInpu */ public final DataType Tindices; + /** + * The badIndicesPolicy attribute + */ + public final String badIndicesPolicy; + public Inputs(GraphOperation op) { - super(new ScatterNd<>(op), op, Arrays.asList("T", "Tindices")); + super(new ScatterNd<>(op), op, Arrays.asList("T", "Tindices", "bad_indices_policy")); int inputIndex = 0; indices = (Operand) op.input(inputIndex++); updates = (Operand) op.input(inputIndex++); shape = (Operand) op.input(inputIndex++); T = op.attributes().getAttrType("T"); Tindices = op.attributes().getAttrType("Tindices"); + badIndicesPolicy = op.attributes().getAttrString("bad_indices_policy"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdAdd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdAdd.java index aef9eed4a32..257dce25682 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdAdd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdAdd.java @@ -62,8 +62,6 @@ * *

    See {@code tf.scatter_nd} for more details about how to make updates to * slices. - * - * @param data type for {@code output_ref} output */ @OpMetadata( opType = ScatterNdAdd.OP_NAME, @@ -111,6 +109,9 @@ public static ScatterNdAdd create(Scope scope, Operand r if (opts.useLocking != null) { opBuilder.setAttr("use_locking", opts.useLocking); } + if (opts.badIndicesPolicy != null) { + opBuilder.setAttr("bad_indices_policy", opts.badIndicesPolicy); + } } } return new ScatterNdAdd<>(opBuilder.build()); @@ -128,6 +129,16 @@ public static Options useLocking(Boolean useLocking) { return new Options().useLocking(useLocking); } + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public static Options badIndicesPolicy(String badIndicesPolicy) { + return new Options().badIndicesPolicy(badIndicesPolicy); + } + /** * Gets outputRef. * Same as ref. Returned as a convenience for operations that want @@ -149,6 +160,8 @@ public Output asOutput() { public static class Options { private Boolean useLocking; + private String badIndicesPolicy; + private Options() { } @@ -164,6 +177,17 @@ public Options useLocking(Boolean useLocking) { this.useLocking = useLocking; return this; } + + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public Options badIndicesPolicy(String badIndicesPolicy) { + this.badIndicesPolicy = badIndicesPolicy; + return this; + } } @OpInputsMetadata( @@ -204,8 +228,13 @@ public static class Inputs extends RawOpInputs> */ public final boolean useLocking; + /** + * The badIndicesPolicy attribute + */ + public final String badIndicesPolicy; + public Inputs(GraphOperation op) { - super(new ScatterNdAdd<>(op), op, Arrays.asList("T", "Tindices", "use_locking")); + super(new ScatterNdAdd<>(op), op, Arrays.asList("T", "Tindices", "use_locking", "bad_indices_policy")); int inputIndex = 0; ref = (Operand) op.input(inputIndex++); indices = (Operand) op.input(inputIndex++); @@ -213,6 +242,7 @@ public Inputs(GraphOperation op) { T = op.attributes().getAttrType("T"); Tindices = op.attributes().getAttrType("Tindices"); useLocking = op.attributes().getAttrBool("use_locking"); + badIndicesPolicy = op.attributes().getAttrString("bad_indices_policy"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdMax.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdMax.java index 0adccafee2a..a7ebdf162d6 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdMax.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdMax.java @@ -36,8 +36,6 @@ /** * Computes element-wise maximum. - * - * @param data type for {@code output_ref} output */ @OpMetadata( opType = ScatterNdMax.OP_NAME, @@ -85,6 +83,9 @@ public static ScatterNdMax create(Scope scope, Operand r if (opts.useLocking != null) { opBuilder.setAttr("use_locking", opts.useLocking); } + if (opts.badIndicesPolicy != null) { + opBuilder.setAttr("bad_indices_policy", opts.badIndicesPolicy); + } } } return new ScatterNdMax<>(opBuilder.build()); @@ -102,6 +103,16 @@ public static Options useLocking(Boolean useLocking) { return new Options().useLocking(useLocking); } + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public static Options badIndicesPolicy(String badIndicesPolicy) { + return new Options().badIndicesPolicy(badIndicesPolicy); + } + /** * Gets outputRef. * Same as ref. Returned as a convenience for operations that want @@ -123,6 +134,8 @@ public Output asOutput() { public static class Options { private Boolean useLocking; + private String badIndicesPolicy; + private Options() { } @@ -138,6 +151,17 @@ public Options useLocking(Boolean useLocking) { this.useLocking = useLocking; return this; } + + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public Options badIndicesPolicy(String badIndicesPolicy) { + this.badIndicesPolicy = badIndicesPolicy; + return this; + } } @OpInputsMetadata( @@ -178,8 +202,13 @@ public static class Inputs extends RawOpInputs> */ public final boolean useLocking; + /** + * The badIndicesPolicy attribute + */ + public final String badIndicesPolicy; + public Inputs(GraphOperation op) { - super(new ScatterNdMax<>(op), op, Arrays.asList("T", "Tindices", "use_locking")); + super(new ScatterNdMax<>(op), op, Arrays.asList("T", "Tindices", "use_locking", "bad_indices_policy")); int inputIndex = 0; ref = (Operand) op.input(inputIndex++); indices = (Operand) op.input(inputIndex++); @@ -187,6 +216,7 @@ public Inputs(GraphOperation op) { T = op.attributes().getAttrType("T"); Tindices = op.attributes().getAttrType("Tindices"); useLocking = op.attributes().getAttrBool("use_locking"); + badIndicesPolicy = op.attributes().getAttrString("bad_indices_policy"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdMin.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdMin.java index d2780381fcb..3ade02671ed 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdMin.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdMin.java @@ -36,8 +36,6 @@ /** * Computes element-wise minimum. - * - * @param data type for {@code output_ref} output */ @OpMetadata( opType = ScatterNdMin.OP_NAME, @@ -85,6 +83,9 @@ public static ScatterNdMin create(Scope scope, Operand r if (opts.useLocking != null) { opBuilder.setAttr("use_locking", opts.useLocking); } + if (opts.badIndicesPolicy != null) { + opBuilder.setAttr("bad_indices_policy", opts.badIndicesPolicy); + } } } return new ScatterNdMin<>(opBuilder.build()); @@ -102,6 +103,16 @@ public static Options useLocking(Boolean useLocking) { return new Options().useLocking(useLocking); } + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public static Options badIndicesPolicy(String badIndicesPolicy) { + return new Options().badIndicesPolicy(badIndicesPolicy); + } + /** * Gets outputRef. * Same as ref. Returned as a convenience for operations that want @@ -123,6 +134,8 @@ public Output asOutput() { public static class Options { private Boolean useLocking; + private String badIndicesPolicy; + private Options() { } @@ -138,6 +151,17 @@ public Options useLocking(Boolean useLocking) { this.useLocking = useLocking; return this; } + + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public Options badIndicesPolicy(String badIndicesPolicy) { + this.badIndicesPolicy = badIndicesPolicy; + return this; + } } @OpInputsMetadata( @@ -178,8 +202,13 @@ public static class Inputs extends RawOpInputs> */ public final boolean useLocking; + /** + * The badIndicesPolicy attribute + */ + public final String badIndicesPolicy; + public Inputs(GraphOperation op) { - super(new ScatterNdMin<>(op), op, Arrays.asList("T", "Tindices", "use_locking")); + super(new ScatterNdMin<>(op), op, Arrays.asList("T", "Tindices", "use_locking", "bad_indices_policy")); int inputIndex = 0; ref = (Operand) op.input(inputIndex++); indices = (Operand) op.input(inputIndex++); @@ -187,6 +216,7 @@ public Inputs(GraphOperation op) { T = op.attributes().getAttrType("T"); Tindices = op.attributes().getAttrType("Tindices"); useLocking = op.attributes().getAttrBool("use_locking"); + badIndicesPolicy = op.attributes().getAttrString("bad_indices_policy"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdNonAliasingAdd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdNonAliasingAdd.java index 4d29ef748d8..c152dadc35e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdNonAliasingAdd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdNonAliasingAdd.java @@ -63,8 +63,6 @@ * [1, 13, 3, 14, 14, 6, 7, 20] * *

    See {@code tf.scatter_nd} for more details about how to make updates to slices. - * - * @param data type for {@code output} output */ @OpMetadata( opType = ScatterNdNonAliasingAdd.OP_NAME, @@ -94,6 +92,7 @@ public ScatterNdNonAliasingAdd(Operation operation) { * A tensor of indices into {@code input}. * @param updates A Tensor. Must have the same type as ref. A tensor of updated values * to add to {@code input}. + * @param options carries optional attribute values * @param data type for {@code ScatterNdNonAliasingAdd} output and operands * @return a new instance of ScatterNdNonAliasingAdd */ @@ -101,14 +100,31 @@ public ScatterNdNonAliasingAdd(Operation operation) { describeByClass = true ) public static ScatterNdNonAliasingAdd create(Scope scope, Operand input, - Operand indices, Operand updates) { + Operand indices, Operand updates, Options... options) { OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "ScatterNdNonAliasingAdd"); opBuilder.addInput(input.asOutput()); opBuilder.addInput(indices.asOutput()); opBuilder.addInput(updates.asOutput()); + if (options != null) { + for (Options opts : options) { + if (opts.badIndicesPolicy != null) { + opBuilder.setAttr("bad_indices_policy", opts.badIndicesPolicy); + } + } + } return new ScatterNdNonAliasingAdd<>(opBuilder.build()); } + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public static Options badIndicesPolicy(String badIndicesPolicy) { + return new Options().badIndicesPolicy(badIndicesPolicy); + } + /** * Gets output. * A {@code Tensor} with the same shape as {@code input}, containing values of {@code input} @@ -124,6 +140,27 @@ public Output asOutput() { return output; } + /** + * Optional attributes for {@link org.tensorflow.op.core.ScatterNdNonAliasingAdd} + */ + public static class Options { + private String badIndicesPolicy; + + private Options() { + } + + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public Options badIndicesPolicy(String badIndicesPolicy) { + this.badIndicesPolicy = badIndicesPolicy; + return this; + } + } + @OpInputsMetadata( outputsClass = ScatterNdNonAliasingAdd.class ) @@ -155,14 +192,20 @@ public static class Inputs extends RawOpInputs(op), op, Arrays.asList("T", "Tindices")); + super(new ScatterNdNonAliasingAdd<>(op), op, Arrays.asList("T", "Tindices", "bad_indices_policy")); int inputIndex = 0; input = (Operand) op.input(inputIndex++); indices = (Operand) op.input(inputIndex++); updates = (Operand) op.input(inputIndex++); T = op.attributes().getAttrType("T"); Tindices = op.attributes().getAttrType("Tindices"); + badIndicesPolicy = op.attributes().getAttrString("bad_indices_policy"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdSub.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdSub.java index b2018d27511..21654611e88 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdSub.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdSub.java @@ -63,8 +63,6 @@ * *

    See {@code tf.scatter_nd} for more details about how to make updates to * slices. - * - * @param data type for {@code output_ref} output */ @OpMetadata( opType = ScatterNdSub.OP_NAME, @@ -112,6 +110,9 @@ public static ScatterNdSub create(Scope scope, Operand r if (opts.useLocking != null) { opBuilder.setAttr("use_locking", opts.useLocking); } + if (opts.badIndicesPolicy != null) { + opBuilder.setAttr("bad_indices_policy", opts.badIndicesPolicy); + } } } return new ScatterNdSub<>(opBuilder.build()); @@ -129,6 +130,16 @@ public static Options useLocking(Boolean useLocking) { return new Options().useLocking(useLocking); } + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public static Options badIndicesPolicy(String badIndicesPolicy) { + return new Options().badIndicesPolicy(badIndicesPolicy); + } + /** * Gets outputRef. * Same as ref. Returned as a convenience for operations that want @@ -150,6 +161,8 @@ public Output asOutput() { public static class Options { private Boolean useLocking; + private String badIndicesPolicy; + private Options() { } @@ -165,6 +178,17 @@ public Options useLocking(Boolean useLocking) { this.useLocking = useLocking; return this; } + + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public Options badIndicesPolicy(String badIndicesPolicy) { + this.badIndicesPolicy = badIndicesPolicy; + return this; + } } @OpInputsMetadata( @@ -205,8 +229,13 @@ public static class Inputs extends RawOpInputs> */ public final boolean useLocking; + /** + * The badIndicesPolicy attribute + */ + public final String badIndicesPolicy; + public Inputs(GraphOperation op) { - super(new ScatterNdSub<>(op), op, Arrays.asList("T", "Tindices", "use_locking")); + super(new ScatterNdSub<>(op), op, Arrays.asList("T", "Tindices", "use_locking", "bad_indices_policy")); int inputIndex = 0; ref = (Operand) op.input(inputIndex++); indices = (Operand) op.input(inputIndex++); @@ -214,6 +243,7 @@ public Inputs(GraphOperation op) { T = op.attributes().getAttrType("T"); Tindices = op.attributes().getAttrType("Tindices"); useLocking = op.attributes().getAttrBool("use_locking"); + badIndicesPolicy = op.attributes().getAttrString("bad_indices_policy"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdUpdate.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdUpdate.java index 56427f20fac..5bf1e30fe35 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdUpdate.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterNdUpdate.java @@ -62,8 +62,6 @@ *

    See {@code tf.scatter_nd} for more details about how to make updates to * slices. *

    See also {@code tf.scatter_update} and {@code tf.batch_scatter_update}. - * - * @param data type for {@code output_ref} output */ @OpMetadata( opType = ScatterNdUpdate.OP_NAME, @@ -111,6 +109,9 @@ public static ScatterNdUpdate create(Scope scope, Operand(opBuilder.build()); @@ -128,6 +129,16 @@ public static Options useLocking(Boolean useLocking) { return new Options().useLocking(useLocking); } + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public static Options badIndicesPolicy(String badIndicesPolicy) { + return new Options().badIndicesPolicy(badIndicesPolicy); + } + /** * Gets outputRef. * Same as ref. Returned as a convenience for operations that want to @@ -149,6 +160,8 @@ public Output asOutput() { public static class Options { private Boolean useLocking; + private String badIndicesPolicy; + private Options() { } @@ -164,6 +177,17 @@ public Options useLocking(Boolean useLocking) { this.useLocking = useLocking; return this; } + + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public Options badIndicesPolicy(String badIndicesPolicy) { + this.badIndicesPolicy = badIndicesPolicy; + return this; + } } @OpInputsMetadata( @@ -204,8 +228,13 @@ public static class Inputs extends RawOpInputs(op), op, Arrays.asList("T", "Tindices", "use_locking")); + super(new ScatterNdUpdate<>(op), op, Arrays.asList("T", "Tindices", "use_locking", "bad_indices_policy")); int inputIndex = 0; ref = (Operand) op.input(inputIndex++); indices = (Operand) op.input(inputIndex++); @@ -213,6 +242,7 @@ public Inputs(GraphOperation op) { T = op.attributes().getAttrType("T"); Tindices = op.attributes().getAttrType("Tindices"); useLocking = op.attributes().getAttrBool("use_locking"); + badIndicesPolicy = op.attributes().getAttrString("bad_indices_policy"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterSub.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterSub.java index 06d274ff356..4686a81470f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterSub.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterSub.java @@ -54,8 +54,6 @@ *

    * *
    - * - * @param data type for {@code output_ref} output */ @OpMetadata( opType = ScatterSub.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterUpdate.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterUpdate.java index 711cbf7485f..60e22039589 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterUpdate.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ScatterUpdate.java @@ -57,8 +57,6 @@ * * *

    See also {@code tf.batch_scatter_update} and {@code tf.scatter_nd_update}. - * - * @param data type for {@code output_ref} output */ @OpMetadata( opType = ScatterUpdate.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Select.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Select.java index 71caff86d14..c88ea468f39 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Select.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Select.java @@ -36,8 +36,6 @@ /** * The SelectV2 operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = Select.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/SetDiff1d.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/SetDiff1d.java index 61af8e762a2..562b2088b93 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/SetDiff1d.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/SetDiff1d.java @@ -54,10 +54,6 @@ * out ==> [2, 4, 6] * idx ==> [1, 3, 5] * - * - * @param data type for {@code out} output - * - * @param data type for {@code idx} output */ @OpMetadata( opType = SetDiff1d.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Shape.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Shape.java index 4f9f9115847..2f7592fbc03 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Shape.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Shape.java @@ -44,8 +44,6 @@ * # 't' is [[[1, 1, 1], [2, 2, 2]], [[3, 3, 3], [4, 4, 4]]] * shape(t) ==> [2, 2, 3] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = Shape.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ShapeN.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ShapeN.java index b56a39452d5..b53a00a1a82 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ShapeN.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ShapeN.java @@ -41,8 +41,6 @@ /** * Returns shape of tensors. * This operation returns N 1-D integer tensors representing shape of {@code input[i]s}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = ShapeN.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Size.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Size.java index 1ad02bc0f9b..2be90850900 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Size.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Size.java @@ -45,8 +45,6 @@ * # 't' is [[[1, 1,, 1], [2, 2, 2]], [[3, 3, 3], [4, 4, 4]]]] * size(t) ==> 12 * - * - * @param data type for {@code output} output */ @OpMetadata( opType = Size.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Slice.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Slice.java index b53cae539a0..37a168fb6f7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Slice.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Slice.java @@ -41,8 +41,6 @@ * 'begin'. *

    Requirements: * 0 <= begin[i] <= begin[i] + size[i] <= Di for i in [0, n) - * - * @param data type for {@code output} output */ @OpMetadata( opType = Slice.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Snapshot.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Snapshot.java index d8b1ed563d9..bafca31221f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Snapshot.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Snapshot.java @@ -35,8 +35,6 @@ /** * Returns a copy of the input tensor. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Snapshot.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/SpaceToBatchNd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/SpaceToBatchNd.java index d56e6ef8709..2a366e46641 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/SpaceToBatchNd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/SpaceToBatchNd.java @@ -132,8 +132,6 @@ * *

    Among others, this operation is useful for reducing atrous convolution into * regular convolution. - * - * @param data type for {@code output} output */ @OpMetadata( opType = SpaceToBatchNd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Split.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Split.java index f6a01ed1950..dc4fad88677 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Split.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Split.java @@ -38,8 +38,6 @@ /** * Splits a tensor into {@code num_split} tensors along one dimension. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Split.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/SplitV.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/SplitV.java index 8d1beb3fc5b..cc0525e9645 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/SplitV.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/SplitV.java @@ -39,8 +39,6 @@ /** * Splits a tensor into {@code num_split} tensors along one dimension. - * - * @param data type for {@code output} output */ @OpMetadata( opType = SplitV.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Squeeze.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Squeeze.java index 3ccc9dff638..52155b47d43 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Squeeze.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Squeeze.java @@ -50,8 +50,6 @@ * # 't' is a tensor of shape [1, 2, 1, 3, 1, 1] * shape(squeeze(t, [2, 4])) ==> [1, 2, 3, 1] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = Squeeze.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Stack.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Stack.java index 0022997321a..976a86955b3 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Stack.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Stack.java @@ -51,8 +51,6 @@ * pack([x, y, z], axis=1) => [[1, 2, 3], [4, 5, 6]] * *

    This is the opposite of {@code unpack}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Stack.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StackPop.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StackPop.java index a6a3021ce14..502cfcc8c06 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StackPop.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StackPop.java @@ -36,8 +36,6 @@ /** * Pop the element at the top of the stack. - * - * @param data type for {@code elem} output */ @OpMetadata( opType = StackPop.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StackPush.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StackPush.java index c43aa1de30e..f9f05ff1912 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StackPush.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StackPush.java @@ -35,8 +35,6 @@ /** * Push an element onto the stack. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StackPush.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StochasticCastToInt.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StochasticCastToInt.java index 29da2cb9a53..a06a2c8017d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StochasticCastToInt.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StochasticCastToInt.java @@ -40,8 +40,6 @@ * Stochastically cast a given tensor from floats to ints. * The values are cast with a deterministic pseudo-random tensor from a uniform distribution generated from user given key, counter, algorithm. Values will saturate if out of the specified integer type range, and will become zero if inputs are NaN. *

    The outputs are a deterministic function of {@code input}, {@code key}, {@code counter}, {@code alg}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StochasticCastToInt.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StopGradient.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StopGradient.java index c2086cb3e92..fb486c42253 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StopGradient.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StopGradient.java @@ -85,8 +85,6 @@ *

  • Adversarial training, where no backprop should happen through the adversarial * example generation process.
  • * - * - * @param data type for {@code output} output */ @OpMetadata( opType = StopGradient.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StridedSlice.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StridedSlice.java index 6b8953f7995..ec55dae1c24 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StridedSlice.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StridedSlice.java @@ -133,8 +133,6 @@ *

    Requirements: * {@code 0 != strides[i] for i in [0, m)} * {@code ellipsis_mask must be a power of two (only one ellipsis)} - * - * @param data type for {@code output} output */ @OpMetadata( opType = StridedSlice.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StridedSliceAssign.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StridedSliceAssign.java index b2ab8d606e2..2911a675905 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StridedSliceAssign.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StridedSliceAssign.java @@ -41,8 +41,6 @@ * {@code begin}, {@code end}, {@code strides}, etc. work exactly as in {@code StridedSlice}. *

    NOTE this op currently does not support broadcasting and so {@code value}'s * shape must be exactly the shape produced by the slice of {@code ref}. - * - * @param data type for {@code output_ref} output */ @OpMetadata( opType = StridedSliceAssign.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StridedSliceGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StridedSliceGrad.java index 2a234c9ab7a..fcd7518dd87 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StridedSliceGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/StridedSliceGrad.java @@ -43,8 +43,6 @@ *

    Arguments are the same as StridedSliceGrad with the exception that * {@code dy} is the input gradient to be propagated and {@code shape} is the * shape of {@code StridedSlice}'s {@code input}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StridedSliceGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Sum.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Sum.java index 15957ea2189..abcdb1ee9ef 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Sum.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Sum.java @@ -40,8 +40,6 @@ * {@code keep_dims} is true, the rank of the tensor is reduced by 1 for each entry in * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Sum.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/SwitchCond.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/SwitchCond.java index c6a8f810467..c6842c9ab87 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/SwitchCond.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/SwitchCond.java @@ -39,8 +39,6 @@ * If {@code pred} is true, the {@code data} input is forwarded to {@code output_true}. Otherwise, * the data goes to {@code output_false}. *

    See also {@code RefSwitch} and {@code Merge}. - * - * @param data type for {@code output_false} output */ @OpMetadata( opType = SwitchCond.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TemporaryVariable.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TemporaryVariable.java index 3e8c8a70ec8..d66021bb728 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TemporaryVariable.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TemporaryVariable.java @@ -48,8 +48,6 @@ * var = state_ops.assign(var, [[4.0, 5.0]]) * var = state_ops.assign_add(var, [[6.0, 7.0]]) * final = state_ops._destroy_temporary_variable(var, var_name=var_name) - * - * @param data type for {@code ref} output */ @OpMetadata( opType = TemporaryVariable.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorArrayConcat.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorArrayConcat.java index b3dbc08ef3e..75ba48a0102 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorArrayConcat.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorArrayConcat.java @@ -48,8 +48,6 @@ * (n0 + n1 + ... + n(T-1) x d0 x d1 x ...) * *

    All elements must have the same shape (excepting the first dimension). - * - * @param data type for {@code value} output */ @OpMetadata( opType = TensorArrayConcat.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorArrayGather.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorArrayGather.java index 0f7fd351089..60d8b437b00 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorArrayGather.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorArrayGather.java @@ -40,8 +40,6 @@ /** * Gather specific elements from the TensorArray into output {@code value}. * All elements selected by {@code indices} must have the same shape. - * - * @param data type for {@code value} output */ @OpMetadata( opType = TensorArrayGather.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorArrayPack.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorArrayPack.java index 6e52e6ef906..d1cf5c89e65 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorArrayPack.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorArrayPack.java @@ -39,8 +39,6 @@ /** * The TensorArrayPack operation - * - * @param data type for {@code value} output */ @OpMetadata( opType = TensorArrayPack.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorArrayRead.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorArrayRead.java index 6765205c463..f5a0aa073a7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorArrayRead.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorArrayRead.java @@ -38,8 +38,6 @@ /** * Read an element from the TensorArray into output {@code value}. - * - * @param data type for {@code value} output */ @OpMetadata( opType = TensorArrayRead.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListConcat.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListConcat.java index 664783a09c5..70ef65f9314 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListConcat.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListConcat.java @@ -48,8 +48,6 @@ * is not already set. * tensor: The concated result. * lengths: Output tensor containing sizes of the 0th dimension of tensors in the list, used for computing the gradient. - * - * @param data type for {@code tensor} output */ @OpMetadata( opType = TensorListConcat.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListElementShape.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListElementShape.java index d955a6a636d..6190f9c1c01 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListElementShape.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListElementShape.java @@ -39,8 +39,6 @@ * The shape of the elements of the given list, as a tensor. * input_handle: the list * element_shape: the shape of elements of the list - * - * @param data type for {@code element_shape} output */ @OpMetadata( opType = TensorListElementShape.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListGather.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListGather.java index 27a627b4759..ac725c72b97 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListGather.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListGather.java @@ -42,8 +42,6 @@ *

    input_handle: The input tensor list. * indices: The indices used to index into the list. * values: The tensor. - * - * @param data type for {@code values} output */ @OpMetadata( opType = TensorListGather.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListGetItem.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListGetItem.java index 1ea76d2101e..244704b5754 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListGetItem.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListGetItem.java @@ -40,8 +40,6 @@ * input_handle: the list * index: the position in the list from which an element will be retrieved * item: the element at that position - * - * @param data type for {@code item} output */ @OpMetadata( opType = TensorListGetItem.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListPopBack.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListPopBack.java index ee7a5cde1c9..af805e71f9b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListPopBack.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListPopBack.java @@ -42,8 +42,6 @@ * tensor: the withdrawn last element of the list * element_dtype: the type of elements in the list * element_shape: the shape of the output tensor - * - * @param data type for {@code tensor} output */ @OpMetadata( opType = TensorListPopBack.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListStack.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListStack.java index fec4f942658..2d058b8e00d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListStack.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorListStack.java @@ -41,8 +41,6 @@ *

    input_handle: the input list * tensor: the gathered result * num_elements: optional. If not -1, the number of elements in the list. - * - * @param data type for {@code tensor} output */ @OpMetadata( opType = TensorListStack.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorMapLookup.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorMapLookup.java index dccdc1ee996..a3e8b54e888 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorMapLookup.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorMapLookup.java @@ -39,8 +39,6 @@ * input_handle: the input map * key: the key to be looked up * value: the value found from the given key - * - * @param data type for {@code value} output */ @OpMetadata( opType = TensorMapLookup.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorMapStackKeys.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorMapStackKeys.java index b2a217c98e6..8942b2f9f8b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorMapStackKeys.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorMapStackKeys.java @@ -38,8 +38,6 @@ * Returns a Tensor stack of all keys in a tensor map. * input_handle: the input map * keys: the returned Tensor of all keys in the map - * - * @param data type for {@code keys} output */ @OpMetadata( opType = TensorMapStackKeys.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdAdd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdAdd.java index a72a1defde1..77d1dd111d5 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdAdd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdAdd.java @@ -94,10 +94,16 @@ * * * - *

    Note: on CPU, if an out of bound index is found, an error is returned. - * On GPU, if an out of bound index is found, the index is ignored. - * - * @param data type for {@code output} output + *

    If {@code indices} contains any out-of-bound indices, depending on + * {@code bad_indices_policy}, the op will either return an error or ignore the + * out-of-bound indices. {@code bad_indices_policy} can be one of the following values: + *

      + *
    1. "" or "DEFAULT": raises on CPU and ignore on GPU. This is because + * historically on CPU and GPU we handle errors in different ways, and for + * backward compatibility we keep the default behavior.
    2. + *
    3. "ERROR": raises error; GPU does not support this value.
    4. + *
    5. "IGNORE": ignore the bad indices; supported on both CPU and GPU.
    6. + *
    */ @OpMetadata( opType = TensorScatterNdAdd.OP_NAME, @@ -125,6 +131,7 @@ public TensorScatterNdAdd(Operation operation) { * @param tensor Tensor to copy/update. * @param indices Index tensor. * @param updates Updates to scatter into output. + * @param options carries optional attribute values * @param data type for {@code TensorScatterAdd} output and operands * @return a new instance of TensorScatterNdAdd */ @@ -132,14 +139,31 @@ public TensorScatterNdAdd(Operation operation) { describeByClass = true ) public static TensorScatterNdAdd create(Scope scope, Operand tensor, - Operand indices, Operand updates) { + Operand indices, Operand updates, Options... options) { OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "TensorScatterNdAdd"); opBuilder.addInput(tensor.asOutput()); opBuilder.addInput(indices.asOutput()); opBuilder.addInput(updates.asOutput()); + if (options != null) { + for (Options opts : options) { + if (opts.badIndicesPolicy != null) { + opBuilder.setAttr("bad_indices_policy", opts.badIndicesPolicy); + } + } + } return new TensorScatterNdAdd<>(opBuilder.build()); } + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public static Options badIndicesPolicy(String badIndicesPolicy) { + return new Options().badIndicesPolicy(badIndicesPolicy); + } + /** * Gets output. * A new tensor copied from tensor and updates added according to the indices. @@ -154,6 +178,27 @@ public Output asOutput() { return output; } + /** + * Optional attributes for {@link org.tensorflow.op.core.TensorScatterNdAdd} + */ + public static class Options { + private String badIndicesPolicy; + + private Options() { + } + + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public Options badIndicesPolicy(String badIndicesPolicy) { + this.badIndicesPolicy = badIndicesPolicy; + return this; + } + } + @OpInputsMetadata( outputsClass = TensorScatterNdAdd.class ) @@ -183,14 +228,20 @@ public static class Inputs extends RawOpInputs(op), op, Arrays.asList("T", "Tindices")); + super(new TensorScatterNdAdd<>(op), op, Arrays.asList("T", "Tindices", "bad_indices_policy")); int inputIndex = 0; tensor = (Operand) op.input(inputIndex++); indices = (Operand) op.input(inputIndex++); updates = (Operand) op.input(inputIndex++); T = op.attributes().getAttrType("T"); Tindices = op.attributes().getAttrType("Tindices"); + badIndicesPolicy = op.attributes().getAttrString("bad_indices_policy"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdMax.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdMax.java index ceddda24a20..cbf9b2dd471 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdMax.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdMax.java @@ -50,8 +50,6 @@ * * *

    Refer to {@code tf.tensor_scatter_nd_update} for more details. - * - * @param data type for {@code output} output */ @OpMetadata( opType = TensorScatterNdMax.OP_NAME, @@ -79,6 +77,7 @@ public TensorScatterNdMax(Operation operation) { * @param tensor Tensor to update. * @param indices Index tensor. * @param updates Updates to scatter into output. + * @param options carries optional attribute values * @param data type for {@code TensorScatterMax} output and operands * @return a new instance of TensorScatterNdMax */ @@ -86,14 +85,31 @@ public TensorScatterNdMax(Operation operation) { describeByClass = true ) public static TensorScatterNdMax create(Scope scope, Operand tensor, - Operand indices, Operand updates) { + Operand indices, Operand updates, Options... options) { OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "TensorScatterNdMax"); opBuilder.addInput(tensor.asOutput()); opBuilder.addInput(indices.asOutput()); opBuilder.addInput(updates.asOutput()); + if (options != null) { + for (Options opts : options) { + if (opts.badIndicesPolicy != null) { + opBuilder.setAttr("bad_indices_policy", opts.badIndicesPolicy); + } + } + } return new TensorScatterNdMax<>(opBuilder.build()); } + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public static Options badIndicesPolicy(String badIndicesPolicy) { + return new Options().badIndicesPolicy(badIndicesPolicy); + } + /** * Gets output. * A new tensor copied from tensor whose values are element-wise maximum between tensor and updates according to the indices. @@ -108,6 +124,27 @@ public Output asOutput() { return output; } + /** + * Optional attributes for {@link org.tensorflow.op.core.TensorScatterNdMax} + */ + public static class Options { + private String badIndicesPolicy; + + private Options() { + } + + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public Options badIndicesPolicy(String badIndicesPolicy) { + this.badIndicesPolicy = badIndicesPolicy; + return this; + } + } + @OpInputsMetadata( outputsClass = TensorScatterNdMax.class ) @@ -137,14 +174,20 @@ public static class Inputs extends RawOpInputs(op), op, Arrays.asList("T", "Tindices")); + super(new TensorScatterNdMax<>(op), op, Arrays.asList("T", "Tindices", "bad_indices_policy")); int inputIndex = 0; tensor = (Operand) op.input(inputIndex++); indices = (Operand) op.input(inputIndex++); updates = (Operand) op.input(inputIndex++); T = op.attributes().getAttrType("T"); Tindices = op.attributes().getAttrType("Tindices"); + badIndicesPolicy = op.attributes().getAttrString("bad_indices_policy"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdMin.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdMin.java index b6da07b4c31..7db99c551d1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdMin.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdMin.java @@ -36,8 +36,6 @@ /** * The TensorScatterMin operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = TensorScatterNdMin.OP_NAME, @@ -65,6 +63,7 @@ public TensorScatterNdMin(Operation operation) { * @param tensor Tensor to update. * @param indices Index tensor. * @param updates Updates to scatter into output. + * @param options carries optional attribute values * @param data type for {@code TensorScatterMin} output and operands * @return a new instance of TensorScatterNdMin */ @@ -72,14 +71,31 @@ public TensorScatterNdMin(Operation operation) { describeByClass = true ) public static TensorScatterNdMin create(Scope scope, Operand tensor, - Operand indices, Operand updates) { + Operand indices, Operand updates, Options... options) { OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "TensorScatterNdMin"); opBuilder.addInput(tensor.asOutput()); opBuilder.addInput(indices.asOutput()); opBuilder.addInput(updates.asOutput()); + if (options != null) { + for (Options opts : options) { + if (opts.badIndicesPolicy != null) { + opBuilder.setAttr("bad_indices_policy", opts.badIndicesPolicy); + } + } + } return new TensorScatterNdMin<>(opBuilder.build()); } + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public static Options badIndicesPolicy(String badIndicesPolicy) { + return new Options().badIndicesPolicy(badIndicesPolicy); + } + /** * Gets output. * A new tensor copied from tensor whose values are element-wise minimum between tensor and updates according to the indices. @@ -94,6 +110,27 @@ public Output asOutput() { return output; } + /** + * Optional attributes for {@link org.tensorflow.op.core.TensorScatterNdMin} + */ + public static class Options { + private String badIndicesPolicy; + + private Options() { + } + + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public Options badIndicesPolicy(String badIndicesPolicy) { + this.badIndicesPolicy = badIndicesPolicy; + return this; + } + } + @OpInputsMetadata( outputsClass = TensorScatterNdMin.class ) @@ -123,14 +160,20 @@ public static class Inputs extends RawOpInputs(op), op, Arrays.asList("T", "Tindices")); + super(new TensorScatterNdMin<>(op), op, Arrays.asList("T", "Tindices", "bad_indices_policy")); int inputIndex = 0; tensor = (Operand) op.input(inputIndex++); indices = (Operand) op.input(inputIndex++); updates = (Operand) op.input(inputIndex++); T = op.attributes().getAttrType("T"); Tindices = op.attributes().getAttrType("Tindices"); + badIndicesPolicy = op.attributes().getAttrString("bad_indices_policy"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdSub.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdSub.java index 3623707e77e..095e0428962 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdSub.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdSub.java @@ -91,8 +91,6 @@ * *

    Note that on CPU, if an out of bound index is found, an error is returned. * On GPU, if an out of bound index is found, the index is ignored. - * - * @param data type for {@code output} output */ @OpMetadata( opType = TensorScatterNdSub.OP_NAME, @@ -120,6 +118,7 @@ public TensorScatterNdSub(Operation operation) { * @param tensor Tensor to copy/update. * @param indices Index tensor. * @param updates Updates to scatter into output. + * @param options carries optional attribute values * @param data type for {@code TensorScatterSub} output and operands * @return a new instance of TensorScatterNdSub */ @@ -127,14 +126,31 @@ public TensorScatterNdSub(Operation operation) { describeByClass = true ) public static TensorScatterNdSub create(Scope scope, Operand tensor, - Operand indices, Operand updates) { + Operand indices, Operand updates, Options... options) { OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "TensorScatterNdSub"); opBuilder.addInput(tensor.asOutput()); opBuilder.addInput(indices.asOutput()); opBuilder.addInput(updates.asOutput()); + if (options != null) { + for (Options opts : options) { + if (opts.badIndicesPolicy != null) { + opBuilder.setAttr("bad_indices_policy", opts.badIndicesPolicy); + } + } + } return new TensorScatterNdSub<>(opBuilder.build()); } + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public static Options badIndicesPolicy(String badIndicesPolicy) { + return new Options().badIndicesPolicy(badIndicesPolicy); + } + /** * Gets output. * A new tensor copied from tensor and updates subtracted according to the indices. @@ -149,6 +165,27 @@ public Output asOutput() { return output; } + /** + * Optional attributes for {@link org.tensorflow.op.core.TensorScatterNdSub} + */ + public static class Options { + private String badIndicesPolicy; + + private Options() { + } + + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public Options badIndicesPolicy(String badIndicesPolicy) { + this.badIndicesPolicy = badIndicesPolicy; + return this; + } + } + @OpInputsMetadata( outputsClass = TensorScatterNdSub.class ) @@ -178,14 +215,20 @@ public static class Inputs extends RawOpInputs(op), op, Arrays.asList("T", "Tindices")); + super(new TensorScatterNdSub<>(op), op, Arrays.asList("T", "Tindices", "bad_indices_policy")); int inputIndex = 0; tensor = (Operand) op.input(inputIndex++); indices = (Operand) op.input(inputIndex++); updates = (Operand) op.input(inputIndex++); T = op.attributes().getAttrType("T"); Tindices = op.attributes().getAttrType("Tindices"); + badIndicesPolicy = op.attributes().getAttrString("bad_indices_policy"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdUpdate.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdUpdate.java index 3c53fca7eab..96323c0db29 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdUpdate.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorScatterNdUpdate.java @@ -42,7 +42,6 @@ * scattered onto an existing tensor (as opposed to a zero-tensor). If the memory * for the existing tensor cannot be re-used, a copy is made and updated. *

    If {@code indices} contains duplicates, then we pick the last update for the index. - *

    If an out of bound index is found on CPU, an error is returned. *

    WARNING: There are some GPU specific semantics for this operation. *

      *
    • If an out of bound index is found, the index is ignored.
    • @@ -64,9 +63,17 @@ *
        * indices.shape[:-1] + tensor.shape[indices.shape[-1]:]
        * 
      + *

      If {@code indices} contains any out-of-bound indices, depending on + * {@code bad_indices_policy}, the op will either return an error or ignore the + * out-of-bound indices. {@code bad_indices_policy} can be one of the following values: + *

        + *
      1. "" or "DEFAULT": raises on CPU and ignore on GPU. This is because + * historically on CPU and GPU we handle errors in different ways, and for + * backward compatibility we keep the default behavior.
      2. + *
      3. "ERROR": raises error; GPU does not support this value.
      4. + *
      5. "IGNORE": ignore the bad indices; supported on both CPU and GPU.
      6. + *
      *

      For usage examples see the python tf.tensor_scatter_nd_update {@link org.tensorflow.op.Ops#tensorScatterNdUpdate} function - * - * @param data type for {@code output} output */ @OpMetadata( opType = TensorScatterNdUpdate.OP_NAME, @@ -94,6 +101,7 @@ public TensorScatterNdUpdate(Operation operation) { * @param tensor Tensor to copy/update. * @param indices Index tensor. * @param updates Updates to scatter into output. + * @param options carries optional attribute values * @param data type for {@code TensorScatterUpdate} output and operands * @return a new instance of TensorScatterNdUpdate */ @@ -101,14 +109,31 @@ public TensorScatterNdUpdate(Operation operation) { describeByClass = true ) public static TensorScatterNdUpdate create(Scope scope, Operand tensor, - Operand indices, Operand updates) { + Operand indices, Operand updates, Options... options) { OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "TensorScatterNdUpdate"); opBuilder.addInput(tensor.asOutput()); opBuilder.addInput(indices.asOutput()); opBuilder.addInput(updates.asOutput()); + if (options != null) { + for (Options opts : options) { + if (opts.badIndicesPolicy != null) { + opBuilder.setAttr("bad_indices_policy", opts.badIndicesPolicy); + } + } + } return new TensorScatterNdUpdate<>(opBuilder.build()); } + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public static Options badIndicesPolicy(String badIndicesPolicy) { + return new Options().badIndicesPolicy(badIndicesPolicy); + } + /** * Gets output. * A new tensor with the given shape and updates applied according @@ -124,6 +149,27 @@ public Output asOutput() { return output; } + /** + * Optional attributes for {@link org.tensorflow.op.core.TensorScatterNdUpdate} + */ + public static class Options { + private String badIndicesPolicy; + + private Options() { + } + + /** + * Sets the badIndicesPolicy option. + * + * @param badIndicesPolicy the badIndicesPolicy option + * @return this Options instance. + */ + public Options badIndicesPolicy(String badIndicesPolicy) { + this.badIndicesPolicy = badIndicesPolicy; + return this; + } + } + @OpInputsMetadata( outputsClass = TensorScatterNdUpdate.class ) @@ -153,14 +199,20 @@ public static class Inputs extends RawOpInputs(op), op, Arrays.asList("T", "Tindices")); + super(new TensorScatterNdUpdate<>(op), op, Arrays.asList("T", "Tindices", "bad_indices_policy")); int inputIndex = 0; tensor = (Operand) op.input(inputIndex++); indices = (Operand) op.input(inputIndex++); updates = (Operand) op.input(inputIndex++); T = op.attributes().getAttrType("T"); Tindices = op.attributes().getAttrType("Tindices"); + badIndicesPolicy = op.attributes().getAttrString("bad_indices_policy"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorStridedSliceUpdate.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorStridedSliceUpdate.java index 23b2d386a05..de80c141d72 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorStridedSliceUpdate.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/TensorStridedSliceUpdate.java @@ -41,8 +41,6 @@ * {@code strides} etc. work exactly as in {@code StridedSlice}. *

      NOTE this op currently does not support broadcasting and so {@code value}'s shape * must be exactly the shape produced by the slice of {@code input}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = TensorStridedSliceUpdate.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Tile.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Tile.java index c9a58b9158c..7339fdbb3de 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Tile.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Tile.java @@ -67,8 +67,6 @@ * * * - * - * @param data type for {@code output} output */ @OpMetadata( opType = Tile.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Unbatch.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Unbatch.java index a49747c48ca..fa4c04f3c27 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Unbatch.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Unbatch.java @@ -53,8 +53,6 @@ * shared_name: Instances of Unbatch with the same container and shared_name are * assumed to possibly belong to the same batch. If left empty, the op name will * be used as the shared name. - * - * @param data type for {@code unbatched_tensor} output */ @OpMetadata( opType = Unbatch.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UnbatchGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UnbatchGrad.java index 912e08c3a6b..25418f3986f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UnbatchGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UnbatchGrad.java @@ -49,8 +49,6 @@ * shared_name: Instances of UnbatchGrad with the same container and shared_name * are assumed to possibly belong to the same batch. If left empty, the op name * will be used as the shared name. - * - * @param data type for {@code batched_grad} output */ @OpMetadata( opType = UnbatchGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UniformQuantizedClipByValue.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UniformQuantizedClipByValue.java index ca3c5dfdd14..f1a4eb739d1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UniformQuantizedClipByValue.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UniformQuantizedClipByValue.java @@ -40,8 +40,6 @@ * Given quantized {@code operand} which was quantized using {@code scales} and {@code zero_points}, performs clip by value using {@code min} and {@code max} values. * If quantization_axis is -1 (per-tensor quantized), the entire operand is clipped using scalar min, max. * Otherwise (per-channel quantized), the clipping is also done per-channel. - * - * @param data type for {@code output} output */ @OpMetadata( opType = UniformQuantizedClipByValue.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Unique.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Unique.java index c4324a9f324..4d17cf9f141 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Unique.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Unique.java @@ -74,10 +74,6 @@ * [2, 0]] * idx ==> [0, 1, 1] * - * - * @param data type for {@code y} output - * - * @param data type for {@code idx} output */ @OpMetadata( opType = Unique.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UniqueWithCounts.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UniqueWithCounts.java index 80a1804887f..8046082f95b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UniqueWithCounts.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UniqueWithCounts.java @@ -78,10 +78,6 @@ * idx ==> [0, 1, 1] * count ==> [1, 2] * - * - * @param data type for {@code y} output - * - * @param data type for {@code idx} output */ @OpMetadata( opType = UniqueWithCounts.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UnravelIndex.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UnravelIndex.java index 5393635bc69..ec7c8f8c6e9 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UnravelIndex.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UnravelIndex.java @@ -52,8 +52,6 @@ *

      {@literal @}compatibility(numpy)
      * Equivalent to np.unravel_index *
      {@literal @}end_compatibility - * - * @param data type for {@code output} output */ @OpMetadata( opType = UnravelIndex.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Unstack.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Unstack.java index fd20a76940d..64c8de23911 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Unstack.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Unstack.java @@ -46,8 +46,6 @@ * and each tensor in {@code output} will have shape {@code (A, C, D)}. * Etc. *

      This is the opposite of {@code pack}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Unstack.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UpperBound.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UpperBound.java index d5e939ffde6..78e45391c8a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UpperBound.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/UpperBound.java @@ -51,8 +51,6 @@ *

      result = UpperBound(sorted_sequence, values) *

      result == [[1, 2, 4], * [0, 2, 5]] - * - * @param data type for {@code output} output */ @OpMetadata( opType = UpperBound.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Variable.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Variable.java index a0febf9c223..d8b09bfddde 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Variable.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/Variable.java @@ -40,8 +40,6 @@ * Outputs a ref to the tensor state so it may be read or modified. * TODO(zhifengc/mrry): Adds a pointer to a more detail document * about sharing states in tensorflow. - * - * @param data type for {@code ref} output */ @OpMetadata( opType = Variable.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/VariableShape.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/VariableShape.java index 3f94b9efbd6..abfd8d7c504 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/VariableShape.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/VariableShape.java @@ -44,8 +44,6 @@ * # 't' is [[[1, 1, 1], [2, 2, 2]], [[3, 3, 3], [4, 4, 4]]] * shape(t) ==> [2, 2, 3] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = VariableShape.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ZerosLike.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ZerosLike.java index 792a37d112c..497cf5128b8 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ZerosLike.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/core/ZerosLike.java @@ -35,8 +35,6 @@ /** * Returns a tensor of zeros with the same shape and type as x. - * - * @param data type for {@code y} output */ @OpMetadata( opType = ZerosLike.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/GlobalShuffleDataset.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/GlobalShuffleDataset.java new file mode 100644 index 00000000000..19ec4cd2e96 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/GlobalShuffleDataset.java @@ -0,0 +1,230 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.data; + +import java.util.Arrays; +import java.util.List; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.ndarray.Shape; +import org.tensorflow.op.Operands; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.proto.DataType; +import org.tensorflow.types.TInt64; +import org.tensorflow.types.family.TType; + +/** + * The GlobalShuffleDataset operation + */ +@OpMetadata( + opType = GlobalShuffleDataset.OP_NAME, + inputsClass = GlobalShuffleDataset.Inputs.class +) +public final class GlobalShuffleDataset extends RawOp implements Operand { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "GlobalShuffleDataset"; + + private Output handle; + + @SuppressWarnings("unchecked") + public GlobalShuffleDataset(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + handle = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new GlobalShuffleDataset operation. + * + * @param scope current scope + * @param inputDataset The inputDataset value + * @param seed The seed value + * @param seed2 The seed2 value + * @param seedGenerator The seedGenerator value + * @param outputTypes The value of the outputTypes attribute + * @param outputShapes The value of the outputShapes attribute + * @param options carries optional attribute values + * @return a new instance of GlobalShuffleDataset + */ + @Endpoint( + describeByClass = true + ) + public static GlobalShuffleDataset create(Scope scope, Operand inputDataset, + Operand seed, Operand seed2, Operand seedGenerator, + List> outputTypes, List outputShapes, Options... options) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "GlobalShuffleDataset"); + opBuilder.addInput(inputDataset.asOutput()); + opBuilder.addInput(seed.asOutput()); + opBuilder.addInput(seed2.asOutput()); + opBuilder.addInput(seedGenerator.asOutput()); + opBuilder.setAttr("output_types", Operands.toDataTypes(outputTypes)); + Shape[] outputShapesArray = new Shape[outputShapes.size()]; + for (int i = 0 ; i < outputShapesArray.length ; i++) { + outputShapesArray[i] = outputShapes.get(i); + } + opBuilder.setAttr("output_shapes", outputShapesArray); + if (options != null) { + for (Options opts : options) { + if (opts.reshuffleEachIteration != null) { + opBuilder.setAttr("reshuffle_each_iteration", opts.reshuffleEachIteration); + } + if (opts.metadata != null) { + opBuilder.setAttr("metadata", opts.metadata); + } + } + } + return new GlobalShuffleDataset(opBuilder.build()); + } + + /** + * Sets the reshuffleEachIteration option. + * + * @param reshuffleEachIteration the reshuffleEachIteration option + * @return this Options instance. + */ + public static Options reshuffleEachIteration(Boolean reshuffleEachIteration) { + return new Options().reshuffleEachIteration(reshuffleEachIteration); + } + + /** + * Sets the metadata option. + * + * @param metadata the metadata option + * @return this Options instance. + */ + public static Options metadata(String metadata) { + return new Options().metadata(metadata); + } + + /** + * Gets handle. + * + * @return handle. + */ + public Output handle() { + return handle; + } + + @Override + @SuppressWarnings("unchecked") + public Output asOutput() { + return (Output) handle; + } + + /** + * Optional attributes for {@link org.tensorflow.op.data.GlobalShuffleDataset} + */ + public static class Options { + private Boolean reshuffleEachIteration; + + private String metadata; + + private Options() { + } + + /** + * Sets the reshuffleEachIteration option. + * + * @param reshuffleEachIteration the reshuffleEachIteration option + * @return this Options instance. + */ + public Options reshuffleEachIteration(Boolean reshuffleEachIteration) { + this.reshuffleEachIteration = reshuffleEachIteration; + return this; + } + + /** + * Sets the metadata option. + * + * @param metadata the metadata option + * @return this Options instance. + */ + public Options metadata(String metadata) { + this.metadata = metadata; + return this; + } + } + + @OpInputsMetadata( + outputsClass = GlobalShuffleDataset.class + ) + public static class Inputs extends RawOpInputs { + /** + * The inputDataset input + */ + public final Operand inputDataset; + + /** + * The seed input + */ + public final Operand seed; + + /** + * The seed2 input + */ + public final Operand seed2; + + /** + * The seedGenerator input + */ + public final Operand seedGenerator; + + /** + * The reshuffleEachIteration attribute + */ + public final boolean reshuffleEachIteration; + + /** + * The outputTypes attribute + */ + public final DataType[] outputTypes; + + /** + * The outputShapes attribute + */ + public final Shape[] outputShapes; + + /** + * The metadata attribute + */ + public final String metadata; + + public Inputs(GraphOperation op) { + super(new GlobalShuffleDataset(op), op, Arrays.asList("reshuffle_each_iteration", "output_types", "output_shapes", "metadata")); + int inputIndex = 0; + inputDataset = (Operand) op.input(inputIndex++); + seed = (Operand) op.input(inputIndex++); + seed2 = (Operand) op.input(inputIndex++); + seedGenerator = (Operand) op.input(inputIndex++); + reshuffleEachIteration = op.attributes().getAttrBool("reshuffle_each_iteration"); + outputTypes = op.attributes().getAttrTypeList("output_types"); + outputShapes = op.attributes().getAttrShapeList("output_shapes"); + metadata = op.attributes().getAttrString("metadata"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/IndexFlatMapDataset.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/IndexFlatMapDataset.java new file mode 100644 index 00000000000..b5d3f116ad5 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/IndexFlatMapDataset.java @@ -0,0 +1,224 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.data; + +import java.util.Arrays; +import java.util.List; +import org.tensorflow.ConcreteFunction; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.ndarray.Shape; +import org.tensorflow.op.Operands; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.op.annotation.Operator; +import org.tensorflow.proto.DataType; +import org.tensorflow.types.TInt64; +import org.tensorflow.types.family.TType; + +/** + * The IndexFlatMapDataset operation + */ +@OpMetadata( + opType = IndexFlatMapDataset.OP_NAME, + inputsClass = IndexFlatMapDataset.Inputs.class +) +@Operator( + group = "data" +) +public final class IndexFlatMapDataset extends RawOp implements Operand { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "IndexFlatMapDataset"; + + private Output handle; + + @SuppressWarnings("unchecked") + public IndexFlatMapDataset(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + handle = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new IndexFlatMapDataset operation. + * + * @param scope current scope + * @param inputDataset The inputDataset value + * @param mapFuncOtherArgs The mapFuncOtherArgs value + * @param indexMapFuncOtherArgs The indexMapFuncOtherArgs value + * @param outputCardinality The outputCardinality value + * @param mapFunc The value of the mapFunc attribute + * @param indexMapFunc The value of the indexMapFunc attribute + * @param outputTypes The value of the outputTypes attribute + * @param outputShapes The value of the outputShapes attribute + * @param options carries optional attribute values + * @return a new instance of IndexFlatMapDataset + */ + @Endpoint( + describeByClass = true + ) + public static IndexFlatMapDataset create(Scope scope, Operand inputDataset, + Iterable> mapFuncOtherArgs, Iterable> indexMapFuncOtherArgs, + Operand outputCardinality, ConcreteFunction mapFunc, ConcreteFunction indexMapFunc, + List> outputTypes, List outputShapes, Options... options) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "IndexFlatMapDataset"); + opBuilder.addInput(inputDataset.asOutput()); + opBuilder.addInputList(Operands.asOutputs(mapFuncOtherArgs)); + opBuilder.addInputList(Operands.asOutputs(indexMapFuncOtherArgs)); + opBuilder.addInput(outputCardinality.asOutput()); + opBuilder.setAttr("map_func", mapFunc); + opBuilder.setAttr("index_map_func", indexMapFunc); + opBuilder.setAttr("output_types", Operands.toDataTypes(outputTypes)); + Shape[] outputShapesArray = new Shape[outputShapes.size()]; + for (int i = 0 ; i < outputShapesArray.length ; i++) { + outputShapesArray[i] = outputShapes.get(i); + } + opBuilder.setAttr("output_shapes", outputShapesArray); + if (options != null) { + for (Options opts : options) { + if (opts.metadata != null) { + opBuilder.setAttr("metadata", opts.metadata); + } + } + } + return new IndexFlatMapDataset(opBuilder.build()); + } + + /** + * Sets the metadata option. + * + * @param metadata the metadata option + * @return this Options instance. + */ + public static Options metadata(String metadata) { + return new Options().metadata(metadata); + } + + /** + * Gets handle. + * + * @return handle. + */ + public Output handle() { + return handle; + } + + @Override + @SuppressWarnings("unchecked") + public Output asOutput() { + return (Output) handle; + } + + /** + * Optional attributes for {@link org.tensorflow.op.data.IndexFlatMapDataset} + */ + public static class Options { + private String metadata; + + private Options() { + } + + /** + * Sets the metadata option. + * + * @param metadata the metadata option + * @return this Options instance. + */ + public Options metadata(String metadata) { + this.metadata = metadata; + return this; + } + } + + @OpInputsMetadata( + outputsClass = IndexFlatMapDataset.class + ) + public static class Inputs extends RawOpInputs { + /** + * The inputDataset input + */ + public final Operand inputDataset; + + /** + * The mapFuncOtherArgs input + */ + public final Iterable> mapFuncOtherArgs; + + /** + * The indexMapFuncOtherArgs input + */ + public final Iterable> indexMapFuncOtherArgs; + + /** + * The outputCardinality input + */ + public final Operand outputCardinality; + + /** + * The TmapFuncArgs attribute + */ + public final DataType[] TmapFuncArgs; + + /** + * The TindexMapFuncArgs attribute + */ + public final DataType[] TindexMapFuncArgs; + + /** + * The outputTypes attribute + */ + public final DataType[] outputTypes; + + /** + * The outputShapes attribute + */ + public final Shape[] outputShapes; + + /** + * The metadata attribute + */ + public final String metadata; + + public Inputs(GraphOperation op) { + super(new IndexFlatMapDataset(op), op, Arrays.asList("Tmap_func_args", "Tindex_map_func_args", "output_types", "output_shapes", "metadata")); + int inputIndex = 0; + inputDataset = (Operand) op.input(inputIndex++); + int mapFuncOtherArgsLength = op.inputListLength("map_func_other_args"); + mapFuncOtherArgs = Arrays.asList((Operand[]) op.inputList(inputIndex, mapFuncOtherArgsLength)); + inputIndex += mapFuncOtherArgsLength; + int indexMapFuncOtherArgsLength = op.inputListLength("index_map_func_other_args"); + indexMapFuncOtherArgs = Arrays.asList((Operand[]) op.inputList(inputIndex, indexMapFuncOtherArgsLength)); + inputIndex += indexMapFuncOtherArgsLength; + outputCardinality = (Operand) op.input(inputIndex++); + TmapFuncArgs = op.attributes().getAttrTypeList("Tmap_func_args"); + TindexMapFuncArgs = op.attributes().getAttrTypeList("Tindex_map_func_args"); + outputTypes = op.attributes().getAttrTypeList("output_types"); + outputShapes = op.attributes().getAttrShapeList("output_shapes"); + metadata = op.attributes().getAttrString("metadata"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/IteratorGetModelProto.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/IteratorGetModelProto.java new file mode 100644 index 00000000000..1ad0de4c183 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/IteratorGetModelProto.java @@ -0,0 +1,102 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.data; + +import java.util.Arrays; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.types.TString; +import org.tensorflow.types.family.TType; + +/** + * Returns the serialized model proto of an iterator resource. + * Returns the serialized model proto of an iterator resource. + */ +@OpMetadata( + opType = IteratorGetModelProto.OP_NAME, + inputsClass = IteratorGetModelProto.Inputs.class +) +public final class IteratorGetModelProto extends RawOp implements Operand { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "IteratorGetModelProto"; + + private Output modelProto; + + public IteratorGetModelProto(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + modelProto = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new IteratorGetModelProto operation. + * + * @param scope current scope + * @param iterator An resource from an dataset iterator. + * @return a new instance of IteratorGetModelProto + */ + @Endpoint( + describeByClass = true + ) + public static IteratorGetModelProto create(Scope scope, Operand iterator) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "IteratorGetModelProto"); + opBuilder.addInput(iterator.asOutput()); + return new IteratorGetModelProto(opBuilder.build()); + } + + /** + * Gets modelProto. + * A serialized model proto. + * @return modelProto. + */ + public Output modelProto() { + return modelProto; + } + + @Override + public Output asOutput() { + return modelProto; + } + + @OpInputsMetadata( + outputsClass = IteratorGetModelProto.class + ) + public static class Inputs extends RawOpInputs { + /** + * An resource from an dataset iterator. + */ + public final Operand iterator; + + public Inputs(GraphOperation op) { + super(new IteratorGetModelProto(op), op, Arrays.asList()); + int inputIndex = 0; + iterator = (Operand) op.input(inputIndex++); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/LeakyReluGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/LeakyReluGrad.java index a42cc0f51d2..131903f2fc1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/LeakyReluGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/LeakyReluGrad.java @@ -35,8 +35,6 @@ /** * Computes rectified linear gradients for a LeakyRelu operation. - * - * @param data type for {@code backprops} output */ @OpMetadata( opType = LeakyReluGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/MapDataset.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/MapDataset.java index 6e8ca298f38..4b6e7355a51 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/MapDataset.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/MapDataset.java @@ -98,6 +98,9 @@ public static MapDataset create(Scope scope, Operand inputDatas if (opts.preserveCardinality != null) { opBuilder.setAttr("preserve_cardinality", opts.preserveCardinality); } + if (opts.forceSynchronous != null) { + opBuilder.setAttr("force_synchronous", opts.forceSynchronous); + } if (opts.metadata != null) { opBuilder.setAttr("metadata", opts.metadata); } @@ -126,6 +129,16 @@ public static Options preserveCardinality(Boolean preserveCardinality) { return new Options().preserveCardinality(preserveCardinality); } + /** + * Sets the forceSynchronous option. + * + * @param forceSynchronous the forceSynchronous option + * @return this Options instance. + */ + public static Options forceSynchronous(Boolean forceSynchronous) { + return new Options().forceSynchronous(forceSynchronous); + } + /** * Sets the metadata option. * @@ -159,6 +172,8 @@ public static class Options { private Boolean preserveCardinality; + private Boolean forceSynchronous; + private String metadata; private Options() { @@ -186,6 +201,17 @@ public Options preserveCardinality(Boolean preserveCardinality) { return this; } + /** + * Sets the forceSynchronous option. + * + * @param forceSynchronous the forceSynchronous option + * @return this Options instance. + */ + public Options forceSynchronous(Boolean forceSynchronous) { + this.forceSynchronous = forceSynchronous; + return this; + } + /** * Sets the metadata option. * @@ -237,13 +263,18 @@ public static class Inputs extends RawOpInputs { */ public final boolean preserveCardinality; + /** + * The forceSynchronous attribute + */ + public final boolean forceSynchronous; + /** * The metadata attribute */ public final String metadata; public Inputs(GraphOperation op) { - super(new MapDataset(op), op, Arrays.asList("Targuments", "output_types", "output_shapes", "use_inter_op_parallelism", "preserve_cardinality", "metadata")); + super(new MapDataset(op), op, Arrays.asList("Targuments", "output_types", "output_shapes", "use_inter_op_parallelism", "preserve_cardinality", "force_synchronous", "metadata")); int inputIndex = 0; inputDataset = (Operand) op.input(inputIndex++); int otherArgumentsLength = op.inputListLength("other_arguments"); @@ -254,6 +285,7 @@ public Inputs(GraphOperation op) { outputShapes = op.attributes().getAttrShapeList("output_shapes"); useInterOpParallelism = op.attributes().getAttrBool("use_inter_op_parallelism"); preserveCardinality = op.attributes().getAttrBool("preserve_cardinality"); + forceSynchronous = op.attributes().getAttrBool("force_synchronous"); metadata = op.attributes().getAttrString("metadata"); } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/ParallelMapDataset.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/ParallelMapDataset.java index 68e97058b5c..6b783929411 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/ParallelMapDataset.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/ParallelMapDataset.java @@ -107,6 +107,9 @@ public static ParallelMapDataset create(Scope scope, Operand in if (opts.preserveCardinality != null) { opBuilder.setAttr("preserve_cardinality", opts.preserveCardinality); } + if (opts.useUnboundedThreadpool != null) { + opBuilder.setAttr("use_unbounded_threadpool", opts.useUnboundedThreadpool); + } if (opts.metadata != null) { opBuilder.setAttr("metadata", opts.metadata); } @@ -145,6 +148,16 @@ public static Options preserveCardinality(Boolean preserveCardinality) { return new Options().preserveCardinality(preserveCardinality); } + /** + * Sets the useUnboundedThreadpool option. + * + * @param useUnboundedThreadpool the useUnboundedThreadpool option + * @return this Options instance. + */ + public static Options useUnboundedThreadpool(Boolean useUnboundedThreadpool) { + return new Options().useUnboundedThreadpool(useUnboundedThreadpool); + } + /** * Sets the metadata option. * @@ -180,6 +193,8 @@ public static class Options { private Boolean preserveCardinality; + private Boolean useUnboundedThreadpool; + private String metadata; private Options() { @@ -218,6 +233,17 @@ public Options preserveCardinality(Boolean preserveCardinality) { return this; } + /** + * Sets the useUnboundedThreadpool option. + * + * @param useUnboundedThreadpool the useUnboundedThreadpool option + * @return this Options instance. + */ + public Options useUnboundedThreadpool(Boolean useUnboundedThreadpool) { + this.useUnboundedThreadpool = useUnboundedThreadpool; + return this; + } + /** * Sets the metadata option. * @@ -280,13 +306,18 @@ public static class Inputs extends RawOpInputs { */ public final boolean preserveCardinality; + /** + * The useUnboundedThreadpool attribute + */ + public final boolean useUnboundedThreadpool; + /** * The metadata attribute */ public final String metadata; public Inputs(GraphOperation op) { - super(new ParallelMapDataset(op), op, Arrays.asList("Targuments", "output_types", "output_shapes", "use_inter_op_parallelism", "deterministic", "preserve_cardinality", "metadata")); + super(new ParallelMapDataset(op), op, Arrays.asList("Targuments", "output_types", "output_shapes", "use_inter_op_parallelism", "deterministic", "preserve_cardinality", "use_unbounded_threadpool", "metadata")); int inputIndex = 0; inputDataset = (Operand) op.input(inputIndex++); int otherArgumentsLength = op.inputListLength("other_arguments"); @@ -299,6 +330,7 @@ public Inputs(GraphOperation op) { useInterOpParallelism = op.attributes().getAttrBool("use_inter_op_parallelism"); deterministic = op.attributes().getAttrString("deterministic"); preserveCardinality = op.attributes().getAttrBool("preserve_cardinality"); + useUnboundedThreadpool = op.attributes().getAttrBool("use_unbounded_threadpool"); metadata = op.attributes().getAttrString("metadata"); } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/WeightedFlatMapDataset.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/WeightedFlatMapDataset.java new file mode 100644 index 00000000000..2f97c1e168c --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/WeightedFlatMapDataset.java @@ -0,0 +1,186 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.data; + +import java.util.Arrays; +import java.util.List; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.ndarray.Shape; +import org.tensorflow.op.Operands; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.proto.DataType; +import org.tensorflow.types.TFloat64; +import org.tensorflow.types.family.TType; + +/** + * The WeightedFlatMapDataset operation + */ +@OpMetadata( + opType = WeightedFlatMapDataset.OP_NAME, + inputsClass = WeightedFlatMapDataset.Inputs.class +) +public final class WeightedFlatMapDataset extends RawOp implements Operand { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "WeightedFlatMapDataset"; + + private Output handle; + + @SuppressWarnings("unchecked") + public WeightedFlatMapDataset(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + handle = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new WeightedFlatMapDataset operation. + * + * @param scope current scope + * @param inputDatasets The inputDatasets value + * @param weights The weights value + * @param outputTypes The value of the outputTypes attribute + * @param outputShapes The value of the outputShapes attribute + * @param options carries optional attribute values + * @return a new instance of WeightedFlatMapDataset + */ + @Endpoint( + describeByClass = true + ) + public static WeightedFlatMapDataset create(Scope scope, + Iterable> inputDatasets, Iterable> weights, + List> outputTypes, List outputShapes, Options... options) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "WeightedFlatMapDataset"); + opBuilder.addInputList(Operands.asOutputs(inputDatasets)); + opBuilder.addInputList(Operands.asOutputs(weights)); + opBuilder.setAttr("output_types", Operands.toDataTypes(outputTypes)); + Shape[] outputShapesArray = new Shape[outputShapes.size()]; + for (int i = 0 ; i < outputShapesArray.length ; i++) { + outputShapesArray[i] = outputShapes.get(i); + } + opBuilder.setAttr("output_shapes", outputShapesArray); + if (options != null) { + for (Options opts : options) { + if (opts.metadata != null) { + opBuilder.setAttr("metadata", opts.metadata); + } + } + } + return new WeightedFlatMapDataset(opBuilder.build()); + } + + /** + * Sets the metadata option. + * + * @param metadata the metadata option + * @return this Options instance. + */ + public static Options metadata(String metadata) { + return new Options().metadata(metadata); + } + + /** + * Gets handle. + * + * @return handle. + */ + public Output handle() { + return handle; + } + + @Override + @SuppressWarnings("unchecked") + public Output asOutput() { + return (Output) handle; + } + + /** + * Optional attributes for {@link org.tensorflow.op.data.WeightedFlatMapDataset} + */ + public static class Options { + private String metadata; + + private Options() { + } + + /** + * Sets the metadata option. + * + * @param metadata the metadata option + * @return this Options instance. + */ + public Options metadata(String metadata) { + this.metadata = metadata; + return this; + } + } + + @OpInputsMetadata( + outputsClass = WeightedFlatMapDataset.class + ) + public static class Inputs extends RawOpInputs { + /** + * The inputDatasets input + */ + public final Iterable> inputDatasets; + + /** + * The weights input + */ + public final Iterable> weights; + + /** + * The outputTypes attribute + */ + public final DataType[] outputTypes; + + /** + * The outputShapes attribute + */ + public final Shape[] outputShapes; + + /** + * The metadata attribute + */ + public final String metadata; + + public Inputs(GraphOperation op) { + super(new WeightedFlatMapDataset(op), op, Arrays.asList("output_types", "output_shapes", "metadata")); + int inputIndex = 0; + int inputDatasetsLength = op.inputListLength("input_datasets"); + inputDatasets = Arrays.asList((Operand[]) op.inputList(inputIndex, inputDatasetsLength)); + inputIndex += inputDatasetsLength; + int weightsLength = op.inputListLength("weights"); + weights = Arrays.asList((Operand[]) op.inputList(inputIndex, weightsLength)); + inputIndex += weightsLength; + outputTypes = op.attributes().getAttrTypeList("output_types"); + outputShapes = op.attributes().getAttrShapeList("output_shapes"); + metadata = op.attributes().getAttrString("metadata"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/experimental/MapDataset.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/experimental/MapDataset.java index f02bba6e46a..7c8cfafc8f4 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/experimental/MapDataset.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/data/experimental/MapDataset.java @@ -98,6 +98,9 @@ public static MapDataset create(Scope scope, Operand inputDatas if (opts.preserveCardinality != null) { opBuilder.setAttr("preserve_cardinality", opts.preserveCardinality); } + if (opts.forceSynchronous != null) { + opBuilder.setAttr("force_synchronous", opts.forceSynchronous); + } } } return new MapDataset(opBuilder.build()); @@ -123,6 +126,16 @@ public static Options preserveCardinality(Boolean preserveCardinality) { return new Options().preserveCardinality(preserveCardinality); } + /** + * Sets the forceSynchronous option. + * + * @param forceSynchronous the forceSynchronous option + * @return this Options instance. + */ + public static Options forceSynchronous(Boolean forceSynchronous) { + return new Options().forceSynchronous(forceSynchronous); + } + /** * Gets handle. * @@ -146,6 +159,8 @@ public static class Options { private Boolean preserveCardinality; + private Boolean forceSynchronous; + private Options() { } @@ -170,6 +185,17 @@ public Options preserveCardinality(Boolean preserveCardinality) { this.preserveCardinality = preserveCardinality; return this; } + + /** + * Sets the forceSynchronous option. + * + * @param forceSynchronous the forceSynchronous option + * @return this Options instance. + */ + public Options forceSynchronous(Boolean forceSynchronous) { + this.forceSynchronous = forceSynchronous; + return this; + } } @OpInputsMetadata( @@ -211,8 +237,13 @@ public static class Inputs extends RawOpInputs { */ public final boolean preserveCardinality; + /** + * The forceSynchronous attribute + */ + public final boolean forceSynchronous; + public Inputs(GraphOperation op) { - super(new MapDataset(op), op, Arrays.asList("Targuments", "output_types", "output_shapes", "use_inter_op_parallelism", "preserve_cardinality")); + super(new MapDataset(op), op, Arrays.asList("Targuments", "output_types", "output_shapes", "use_inter_op_parallelism", "preserve_cardinality", "force_synchronous")); int inputIndex = 0; inputDataset = (Operand) op.input(inputIndex++); int otherArgumentsLength = op.inputListLength("other_arguments"); @@ -223,6 +254,7 @@ public Inputs(GraphOperation op) { outputShapes = op.attributes().getAttrShapeList("output_shapes"); useInterOpParallelism = op.attributes().getAttrBool("use_inter_op_parallelism"); preserveCardinality = op.attributes().getAttrBool("preserve_cardinality"); + forceSynchronous = op.attributes().getAttrBool("force_synchronous"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/CheckNumerics.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/CheckNumerics.java index d1aae3e74ad..86215fa9a9c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/CheckNumerics.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/CheckNumerics.java @@ -39,8 +39,6 @@ * that are not a number (NaN) or infinity (Inf). Otherwise, returns the input * tensor. Unlike CheckNumerics (V1), CheckNumericsV2 distinguishes -Inf and +Inf * in the errors it throws. - * - * @param data type for {@code output} output */ @OpMetadata( opType = CheckNumerics.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/DebugGradientIdentity.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/DebugGradientIdentity.java index 37f2fec7d91..776a971ef27 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/DebugGradientIdentity.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/DebugGradientIdentity.java @@ -37,8 +37,6 @@ * This op is hidden from public in Python. It is used by TensorFlow Debugger to * register gradient tensors for gradient debugging. * This op operates on non-reference-type tensors. - * - * @param data type for {@code output} output */ @OpMetadata( opType = DebugGradientIdentity.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/DebugGradientRefIdentity.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/DebugGradientRefIdentity.java index 5071299a66a..76a9e9029ca 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/DebugGradientRefIdentity.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/DebugGradientRefIdentity.java @@ -37,8 +37,6 @@ * This op is hidden from public in Python. It is used by TensorFlow Debugger to * register gradient tensors for gradient debugging. * This op operates on reference-type tensors. - * - * @param data type for {@code output} output */ @OpMetadata( opType = DebugGradientRefIdentity.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/DebugIdentity.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/DebugIdentity.java index 63c7105e3c8..10edd71d4b1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/DebugIdentity.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/DebugIdentity.java @@ -36,8 +36,6 @@ /** * Provides an identity mapping of the non-Ref type input tensor for debugging. * Provides an identity mapping of the non-Ref type input tensor for debugging. - * - * @param data type for {@code output} output */ @OpMetadata( opType = DebugIdentity.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/DebugNumericsSummary.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/DebugNumericsSummary.java index ec63e9da708..d83f728b452 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/DebugNumericsSummary.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/debugging/DebugNumericsSummary.java @@ -40,8 +40,6 @@ * Computes a numeric summary of the input tensor. The shape of the output * depends on the tensor_debug_mode attribute. * This op is used internally by TensorFlow Debugger (tfdbg) v2. - * - * @param data type for {@code output} output */ @OpMetadata( opType = DebugNumericsSummary.OP_NAME, @@ -104,7 +102,7 @@ public static DebugNumericsSummary create(Scope scope, describeByClass = true ) public static DebugNumericsSummary create(Scope scope, Operand input, - Options[] options) { + Options... options) { return create(scope, input, TFloat32.class, options); } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/distribute/NcclAllReduce.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/distribute/NcclAllReduce.java index c5416746198..7cc17dd9d36 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/distribute/NcclAllReduce.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/distribute/NcclAllReduce.java @@ -45,8 +45,6 @@ * reduction: the reduction operation to perform. * num_devices: The number of devices participating in this reduction. * shared_name: Identifier that shared between ops of the same reduction. - * - * @param data type for {@code data} output */ @OpMetadata( opType = NcclAllReduce.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/distribute/NcclBroadcast.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/distribute/NcclBroadcast.java index 3824d6a10dd..41a2050e44f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/distribute/NcclBroadcast.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/distribute/NcclBroadcast.java @@ -42,8 +42,6 @@ *

      input: The input to the broadcast. * output: The same as input. * shape: The shape of the input tensor. - * - * @param data type for {@code output} output */ @OpMetadata( opType = NcclBroadcast.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/distribute/NcclReduce.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/distribute/NcclReduce.java index 2a80593be6c..8fcf62bf4cc 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/distribute/NcclReduce.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/distribute/NcclReduce.java @@ -42,8 +42,6 @@ *

      input: The input to the reduction. * data: the value of the reduction across all {@code num_devices} devices. * reduction: the reduction operation to perform. - * - * @param data type for {@code data} output */ @OpMetadata( opType = NcclReduce.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/dtypes/AsString.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/dtypes/AsString.java index 1f9b0285c6c..25dfbfe50ff 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/dtypes/AsString.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/dtypes/AsString.java @@ -38,7 +38,7 @@ * Converts each entry in the given tensor to strings. * Supports many numeric types and boolean. *

      For Unicode, see the - * [https://www.tensorflow.org/tutorials/representation/unicode](Working with Unicode text) + * [https://www.tensorflow.org/text/guide/unicode](Working with Unicode text) * tutorial. *

      Examples: *

      diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/dtypes/Cast.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/dtypes/Cast.java index 806ad99e2ea..af516490d88 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/dtypes/Cast.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/dtypes/Cast.java @@ -36,8 +36,6 @@ /** * Cast x of type SrcT to y of DstT. - * - * @param data type for {@code y} output */ @OpMetadata( opType = Cast.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/dtypes/Complex.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/dtypes/Complex.java index 6b0a717157c..0da2678549f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/dtypes/Complex.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/dtypes/Complex.java @@ -48,8 +48,6 @@ * # tensor `imag` is [4.75, 5.75] * tf.complex(real, imag) ==> [[2.25 + 4.75j], [3.25 + 5.75j]] * - * - * @param data type for {@code out} output */ @OpMetadata( opType = Complex.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/AdjustContrast.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/AdjustContrast.java index 0a6a141c036..123c74afd50 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/AdjustContrast.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/AdjustContrast.java @@ -43,8 +43,6 @@ *

      For each channel, the Op first computes the mean of the image pixels in the * channel and then adjusts each component of each pixel to * {@code (x - mean) * contrast_factor + mean}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = AdjustContrast.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/AdjustHue.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/AdjustHue.java index 45fe50175c4..b0001085638 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/AdjustHue.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/AdjustHue.java @@ -41,8 +41,6 @@ *

      The input image is considered in the RGB colorspace. Conceptually, the RGB * colors are first mapped into HSV. A delta is then applied all the hue values, * and then remapped back to RGB colorspace. - * - * @param data type for {@code output} output */ @OpMetadata( opType = AdjustHue.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/AdjustSaturation.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/AdjustSaturation.java index a7fea42d8fb..5f0c063dc1d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/AdjustSaturation.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/AdjustSaturation.java @@ -41,8 +41,6 @@ *

      The input image is considered in the RGB colorspace. Conceptually, the RGB * colors are first mapped into HSV. A scale is then applied all the saturation * values, and then remapped back to RGB colorspace. - * - * @param data type for {@code output} output */ @OpMetadata( opType = AdjustSaturation.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/CropAndResizeGradImage.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/CropAndResizeGradImage.java index 59e98a3252d..e639b0f2cb7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/CropAndResizeGradImage.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/CropAndResizeGradImage.java @@ -38,8 +38,6 @@ /** * Computes the gradient of the crop_and_resize op wrt the input image tensor. - * - * @param data type for {@code output} output */ @OpMetadata( opType = CropAndResizeGradImage.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/DecodeImage.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/DecodeImage.java index ae91e89973a..891c31bb514 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/DecodeImage.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/DecodeImage.java @@ -37,24 +37,23 @@ import org.tensorflow.types.family.TNumber; /** - * Function for decode_bmp, decode_gif, decode_jpeg, and decode_png. - * Detects whether an image is a BMP, GIF, JPEG, or PNG, and performs the + * Function for decode_bmp, decode_gif, decode_jpeg, decode_webp, and decode_png. + * Detects whether an image is a BMP, GIF, JPEG, WebP, or PNG, and performs the * appropriate operation to convert the input bytes string into a Tensor of type * dtype. - *

      NOTE: decode_gif returns a 4-D array [num_frames, height, width, 3], as - * opposed to decode_bmp, decode_jpeg and decode_png, which return 3-D arrays - * [height, width, num_channels]. Make sure to take this into account when - * constructing your graph if you are intermixing GIF files with BMP, JPEG, and/or - * PNG files. Alternately, set the expand_animations argument of this function to - * False, in which case the op will return 3-dimensional tensors and will truncate - * animated GIF files to the first frame. + *

      NOTE: decode_gif and decode_webp return a 4-D + * array [num_frames, height, width, 3], as opposed to decode_bmp, + * decode_jpeg, and decode_png, which always return 3-D arrays [height, + * width, num_channels]. Make sure to take this into account when + * constructing your graph if you are intermixing animated files with + * BMP, JPEG, and/or PNG files. Alternately, set the expand_animations + * argument of this function to False, in which case the op will return + * 3-dimensional tensors and will truncate animations to the first frame. *

      NOTE: If the first frame of an animated GIF does not occupy the entire * canvas (maximum frame width x maximum frame height), then it fills the * unoccupied areas (in the first frame) with zeros (black). For frames after the * first frame that does not occupy the entire canvas, it uses the previous * frame to fill the unoccupied areas. - * - * @param data type for {@code image} output */ @OpMetadata( opType = DecodeImage.OP_NAME, @@ -120,7 +119,7 @@ public static DecodeImage create(Scope scope, Operand create(Scope scope, Operand contents, - Options[] options) { + Options... options) { return create(scope, contents, TUint8.class, options); } @@ -137,10 +136,11 @@ public static Options channels(Long channels) { /** * Sets the expandAnimations option. * - * @param expandAnimations Controls the output shape of the returned op. If True, the returned op will - * produce a 3-D tensor for PNG, JPEG, and BMP files; and a 4-D tensor for all - * GIFs, whether animated or not. If, False, the returned op will produce a 3-D - * tensor for all file types and will truncate animated GIFs to the first frame. + * @param expandAnimations Controls the output shape of the returned op. If True, the returned op + * will produce a 3-D tensor for PNG, JPEG, and BMP files; and a 4-D + * tensor for all GIFs and WebP images, whether animated or not. If, + * False, the returned op will produce a 3-D tensor for all file types + * and will truncate animated images to the first frame. * @return this Options instance. */ public static Options expandAnimations(Boolean expandAnimations) { @@ -187,10 +187,11 @@ public Options channels(Long channels) { /** * Sets the expandAnimations option. * - * @param expandAnimations Controls the output shape of the returned op. If True, the returned op will - * produce a 3-D tensor for PNG, JPEG, and BMP files; and a 4-D tensor for all - * GIFs, whether animated or not. If, False, the returned op will produce a 3-D - * tensor for all file types and will truncate animated GIFs to the first frame. + * @param expandAnimations Controls the output shape of the returned op. If True, the returned op + * will produce a 3-D tensor for PNG, JPEG, and BMP files; and a 4-D + * tensor for all GIFs and WebP images, whether animated or not. If, + * False, the returned op will produce a 3-D tensor for all file types + * and will truncate animated images to the first frame. * @return this Options instance. */ public Options expandAnimations(Boolean expandAnimations) { @@ -219,10 +220,11 @@ public static class Inputs extends RawOpInputs> { public final DataType dtype; /** - * Controls the output shape of the returned op. If True, the returned op will - * produce a 3-D tensor for PNG, JPEG, and BMP files; and a 4-D tensor for all - * GIFs, whether animated or not. If, False, the returned op will produce a 3-D - * tensor for all file types and will truncate animated GIFs to the first frame. + * Controls the output shape of the returned op. If True, the returned op + * will produce a 3-D tensor for PNG, JPEG, and BMP files; and a 4-D + * tensor for all GIFs and WebP images, whether animated or not. If, + * False, the returned op will produce a 3-D tensor for all file types + * and will truncate animated images to the first frame. */ public final boolean expandAnimations; diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/DecodePng.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/DecodePng.java index db44c3b3146..8352476fae0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/DecodePng.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/DecodePng.java @@ -51,8 +51,6 @@ * of color channels. *

      This op also supports decoding JPEGs and non-animated GIFs since the interface * is the same, though it is cleaner to use {@code tf.io.decode_image}. - * - * @param data type for {@code image} output */ @OpMetadata( opType = DecodePng.OP_NAME, @@ -115,7 +113,7 @@ public static DecodePng create(Scope scope, Operand create(Scope scope, Operand contents, - Options[] options) { + Options... options) { return create(scope, contents, TUint8.class, options); } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/DecodeWebP.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/DecodeWebP.java new file mode 100644 index 00000000000..16a7b6b54cb --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/DecodeWebP.java @@ -0,0 +1,189 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.image; + +import java.util.Arrays; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.Operands; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.op.annotation.Operator; +import org.tensorflow.proto.DataType; +import org.tensorflow.types.TString; +import org.tensorflow.types.TUint8; +import org.tensorflow.types.family.TNumber; + +/** + * Decode a WebP-encoded image to a uint8 tensor. + * The attr {@code channels} indicates the desired number of color channels for the + * decoded image. + *

      Accepted values are: + *

        + *
      • 0: Use the number of channels in the WebP-encoded image.
      • + *
      • 3: output an RGB image.
      • + *
      • 4: output an RGBA image.
      • + *
      + *

      The number of channels must currently match that of the underlying file. + * For WebP animations, only 4-channel RGBA is supported. + */ +@OpMetadata( + opType = DecodeWebP.OP_NAME, + inputsClass = DecodeWebP.Inputs.class +) +@Operator( + group = "image" +) +public final class DecodeWebP extends RawOp implements Operand { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "DecodeWebP"; + + private Output image; + + public DecodeWebP(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + image = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new DecodeWebP operation. + * + * @param scope current scope + * @param contents 0-D. The WebP-encoded image. + * @param dtype The value of the dtype attribute + * @param options carries optional attribute values + * @param data type for {@code DecodeWebP} output and operands + * @return a new instance of DecodeWebP + */ + @Endpoint( + describeByClass = true + ) + public static DecodeWebP create(Scope scope, Operand contents, + Class dtype, Options... options) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "DecodeWebP"); + opBuilder.addInput(contents.asOutput()); + opBuilder.setAttr("dtype", Operands.toDataType(dtype)); + if (options != null) { + for (Options opts : options) { + if (opts.channels != null) { + opBuilder.setAttr("channels", opts.channels); + } + } + } + return new DecodeWebP<>(opBuilder.build()); + } + + /** + * Factory method to create a class wrapping a new DecodeWebP operation, with the default output types. + * + * @param scope current scope + * @param contents 0-D. The WebP-encoded image. + * @param options carries optional attribute values + * @return a new instance of DecodeWebP, with default output types + */ + @Endpoint( + describeByClass = true + ) + public static DecodeWebP create(Scope scope, Operand contents, + Options... options) { + return create(scope, contents, TUint8.class, options); + } + + /** + * Sets the channels option. + * + * @param channels Number of color channels for the decoded image. + * @return this Options instance. + */ + public static Options channels(Long channels) { + return new Options().channels(channels); + } + + /** + * Gets image. + * 4-D with shape {@code [num_frames, height, width, channels]}. + * @return image. + */ + public Output image() { + return image; + } + + @Override + public Output asOutput() { + return image; + } + + /** + * Optional attributes for {@link org.tensorflow.op.image.DecodeWebP} + */ + public static class Options { + private Long channels; + + private Options() { + } + + /** + * Sets the channels option. + * + * @param channels Number of color channels for the decoded image. + * @return this Options instance. + */ + public Options channels(Long channels) { + this.channels = channels; + return this; + } + } + + @OpInputsMetadata( + outputsClass = DecodeWebP.class + ) + public static class Inputs extends RawOpInputs> { + /** + * 0-D. The WebP-encoded image. + */ + public final Operand contents; + + /** + * Number of color channels for the decoded image. + */ + public final long channels; + + /** + * The dtype attribute + */ + public final DataType dtype; + + public Inputs(GraphOperation op) { + super(new DecodeWebP<>(op), op, Arrays.asList("channels", "dtype")); + int inputIndex = 0; + contents = (Operand) op.input(inputIndex++); + channels = op.attributes().getAttrInt("channels"); + dtype = op.attributes().getAttrType("dtype"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/DrawBoundingBoxes.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/DrawBoundingBoxes.java index 8033cecb4c9..56c64a5e50c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/DrawBoundingBoxes.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/DrawBoundingBoxes.java @@ -45,8 +45,6 @@ * box is {@code [0.1, 0.2, 0.5, 0.9]}, the upper-left and bottom-right coordinates of * the bounding box will be {@code (40, 10)} to {@code (100, 50)} (in (x,y) coordinates). *

      Parts of the bounding box may fall outside the image. - * - * @param data type for {@code output} output */ @OpMetadata( opType = DrawBoundingBoxes.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ExtractImagePatches.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ExtractImagePatches.java index 69492ac2873..54395a44acc 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ExtractImagePatches.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ExtractImagePatches.java @@ -36,8 +36,6 @@ /** * Extract {@code patches} from {@code images} and put them in the "depth" output dimension. - * - * @param data type for {@code patches} output */ @OpMetadata( opType = ExtractImagePatches.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ExtractJpegShape.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ExtractJpegShape.java index 368fe5cfd02..4ca887e7e72 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ExtractJpegShape.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ExtractJpegShape.java @@ -39,8 +39,6 @@ /** * Extract the shape information of a JPEG-encoded image. * This op only parses the image header, so it is much faster than DecodeJpeg. - * - * @param data type for {@code image_shape} output */ @OpMetadata( opType = ExtractJpegShape.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/HsvToRgb.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/HsvToRgb.java index 6e32b95ca11..abd3d53d884 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/HsvToRgb.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/HsvToRgb.java @@ -39,8 +39,6 @@ * value of the pixels. The output is only well defined if the value in {@code images} * are in {@code [0,1]}. *

      See {@code rgb_to_hsv} for a description of the HSV encoding. - * - * @param data type for {@code output} output */ @OpMetadata( opType = HsvToRgb.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ImageProjectiveTransformV2.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ImageProjectiveTransformV2.java index 572b3e59d16..cef590ad519 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ImageProjectiveTransformV2.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ImageProjectiveTransformV2.java @@ -42,8 +42,6 @@ * {@code (x', y') = ((a0 x + a1 y + a2) / k, (b0 x + b1 y + b2) / k)}, where * {@code k = c0 x + c1 y + 1}. If the transformed point lays outside of the input * image, the output pixel is set to 0. - * - * @param data type for {@code transformed_images} output */ @OpMetadata( opType = ImageProjectiveTransformV2.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ImageProjectiveTransformV3.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ImageProjectiveTransformV3.java index 2c448fc9397..59f06c2b982 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ImageProjectiveTransformV3.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ImageProjectiveTransformV3.java @@ -42,8 +42,6 @@ * {@code (x', y') = ((a0 x + a1 y + a2) / k, (b0 x + b1 y + b2) / k)}, where * {@code k = c0 x + c1 y + 1}. If the transformed point lays outside of the input * image, the output pixel is set to fill_value. - * - * @param data type for {@code transformed_images} output */ @OpMetadata( opType = ImageProjectiveTransformV3.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/NonMaxSuppression.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/NonMaxSuppression.java index 65c6f7f7f2a..f682bfd1f5a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/NonMaxSuppression.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/NonMaxSuppression.java @@ -58,8 +58,6 @@ * of other overlapping boxes instead of directly causing them to be pruned. * To enable this Soft-NMS mode, set the {@code soft_nms_sigma} parameter to be * larger than 0. - * - * @param data type for {@code selected_scores} output */ @OpMetadata( opType = NonMaxSuppression.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/QuantizedResizeBilinear.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/QuantizedResizeBilinear.java index def6ca5246e..94b4e077416 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/QuantizedResizeBilinear.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/QuantizedResizeBilinear.java @@ -38,8 +38,6 @@ /** * Resize quantized {@code images} to {@code size} using quantized bilinear interpolation. * Input images and output images must be quantized types. - * - * @param data type for {@code resized_images} output */ @OpMetadata( opType = QuantizedResizeBilinear.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/RandomCrop.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/RandomCrop.java index 966401d271c..063b7b8f529 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/RandomCrop.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/RandomCrop.java @@ -41,8 +41,6 @@ *

      This Op picks a random location in {@code image} and crops a {@code height} by {@code width} * rectangle from that location. The random location is picked so the cropped * area will fit inside the original image. - * - * @param data type for {@code output} output */ @OpMetadata( opType = RandomCrop.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ResizeBicubicGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ResizeBicubicGrad.java index 16d5af61802..c04fe6d13e0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ResizeBicubicGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ResizeBicubicGrad.java @@ -36,8 +36,6 @@ /** * Computes the gradient of bicubic interpolation. - * - * @param data type for {@code output} output */ @OpMetadata( opType = ResizeBicubicGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ResizeBilinearGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ResizeBilinearGrad.java index dbd172bfbf2..166d6b46de6 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ResizeBilinearGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ResizeBilinearGrad.java @@ -36,8 +36,6 @@ /** * Computes the gradient of bilinear interpolation. - * - * @param data type for {@code output} output */ @OpMetadata( opType = ResizeBilinearGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ResizeNearestNeighbor.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ResizeNearestNeighbor.java index 1fc40174782..355ac564de1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ResizeNearestNeighbor.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ResizeNearestNeighbor.java @@ -36,8 +36,6 @@ /** * Resize {@code images} to {@code size} using nearest neighbor interpolation. - * - * @param data type for {@code resized_images} output */ @OpMetadata( opType = ResizeNearestNeighbor.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ResizeNearestNeighborGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ResizeNearestNeighborGrad.java index 485aa4ba63b..36df9e12b2d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ResizeNearestNeighborGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ResizeNearestNeighborGrad.java @@ -36,8 +36,6 @@ /** * Computes the gradient of nearest neighbor interpolation. - * - * @param data type for {@code output} output */ @OpMetadata( opType = ResizeNearestNeighborGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/RgbToHsv.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/RgbToHsv.java index 3709f0bd4f7..be3c84d9b66 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/RgbToHsv.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/RgbToHsv.java @@ -56,8 +56,6 @@ *

      * * - * - * @param data type for {@code output} output */ @OpMetadata( opType = RgbToHsv.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/SampleDistortedBoundingBox.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/SampleDistortedBoundingBox.java index 152f96ce75f..a7378278309 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/SampleDistortedBoundingBox.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/SampleDistortedBoundingBox.java @@ -70,8 +70,6 @@ * {@code use_image_if_no_bounding_boxes = true} will assume there is a single implicit * bounding box covering the whole image. If {@code use_image_if_no_bounding_boxes} is * false and no bounding boxes are supplied, an error is raised. - * - * @param data type for {@code begin} output */ @OpMetadata( opType = SampleDistortedBoundingBox.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ScaleAndTranslateGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ScaleAndTranslateGrad.java index 55dae2a4ae8..1749d046b37 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ScaleAndTranslateGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/ScaleAndTranslateGrad.java @@ -36,8 +36,6 @@ /** * The ScaleAndTranslateGrad operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = ScaleAndTranslateGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/StatelessSampleDistortedBoundingBox.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/StatelessSampleDistortedBoundingBox.java index ac9dfdfe74d..31c4de5388d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/StatelessSampleDistortedBoundingBox.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/image/StatelessSampleDistortedBoundingBox.java @@ -95,8 +95,6 @@ * {@code use_image_if_no_bounding_boxes = true} will assume there is a single implicit * bounding box covering the whole image. If {@code use_image_if_no_bounding_boxes} is * false and no bounding boxes are supplied, an error is raised. - * - * @param data type for {@code begin} output */ @OpMetadata( opType = StatelessSampleDistortedBoundingBox.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/DecodePaddedRaw.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/DecodePaddedRaw.java index 0ef81b9eff2..07eac6679d4 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/DecodePaddedRaw.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/DecodePaddedRaw.java @@ -38,8 +38,6 @@ /** * Reinterpret the bytes of a string as a vector of numbers. - * - * @param data type for {@code output} output */ @OpMetadata( opType = DecodePaddedRaw.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/DecodeRaw.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/DecodeRaw.java index 068d203c2b0..217c843796f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/DecodeRaw.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/DecodeRaw.java @@ -37,8 +37,6 @@ /** * Reinterpret the bytes of a string as a vector of numbers. - * - * @param data type for {@code output} output */ @OpMetadata( opType = DecodeRaw.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/DeserializeManySparse.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/DeserializeManySparse.java index 1ff234ea6b6..9704bd78d15 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/DeserializeManySparse.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/DeserializeManySparse.java @@ -77,8 +77,6 @@ * values = [1, 2, 3, 4, 5] * shape = [2 50] * - * - * @param data type for {@code sparse_values} output */ @OpMetadata( opType = DeserializeManySparse.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/ParseTensor.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/ParseTensor.java index 66a64b13c0b..039ff1546f0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/ParseTensor.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/ParseTensor.java @@ -37,8 +37,6 @@ /** * Transforms a serialized tensorflow.TensorProto proto into a Tensor. - * - * @param data type for {@code output} output */ @OpMetadata( opType = ParseTensor.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/SerializeManySparse.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/SerializeManySparse.java index b0e447608f3..70f9327d112 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/SerializeManySparse.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/SerializeManySparse.java @@ -44,8 +44,6 @@ * {@code SparseTensor} objects going into each row of {@code serialized_sparse} will have * rank {@code R-1}. *

      The minibatch size {@code N} is extracted from {@code sparse_shape[0]}. - * - * @param data type for {@code serialized_sparse} output */ @OpMetadata( opType = SerializeManySparse.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/SerializeSparse.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/SerializeSparse.java index 2f450dcf3bd..b0c2b5935bf 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/SerializeSparse.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/io/SerializeSparse.java @@ -38,8 +38,6 @@ /** * Serialize a {@code SparseTensor} into a {@code [3]} {@code Tensor} object. - * - * @param data type for {@code serialized_sparse} output */ @OpMetadata( opType = SerializeSparse.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BandPart.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BandPart.java index 34f179ed2b0..a521e77b040 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BandPart.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BandPart.java @@ -65,8 +65,6 @@ * tf.linalg.band_part(input, -1, 0) ==> Lower triangular part. * tf.linalg.band_part(input, 0, 0) ==> Diagonal. * - * - * @param data type for {@code band} output */ @OpMetadata( opType = BandPart.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BandedTriangularSolve.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BandedTriangularSolve.java index 9dc6dba4348..532d4fe148b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BandedTriangularSolve.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BandedTriangularSolve.java @@ -35,8 +35,6 @@ /** * The BandedTriangularSolve operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = BandedTriangularSolve.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchCholesky.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchCholesky.java index 0016839b211..b43cf15b48e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchCholesky.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchCholesky.java @@ -35,8 +35,6 @@ /** * The BatchCholesky operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = BatchCholesky.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchCholeskyGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchCholeskyGrad.java index d9ce332f7e2..5e917e740b8 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchCholeskyGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchCholeskyGrad.java @@ -35,8 +35,6 @@ /** * The BatchCholeskyGrad operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = BatchCholeskyGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixBandPart.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixBandPart.java index 55e8a0d6a75..99cb57ff97f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixBandPart.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixBandPart.java @@ -36,8 +36,6 @@ /** * The BatchMatrixBandPart operation - * - * @param data type for {@code band} output */ @OpMetadata( opType = BatchMatrixBandPart.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixDeterminant.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixDeterminant.java index c50a706e073..7f1bd32a749 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixDeterminant.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixDeterminant.java @@ -35,8 +35,6 @@ /** * The BatchMatrixDeterminant operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = BatchMatrixDeterminant.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixDiag.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixDiag.java index bba3cae6292..edc731b1f36 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixDiag.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixDiag.java @@ -35,8 +35,6 @@ /** * The BatchMatrixDiag operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = BatchMatrixDiag.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixDiagPart.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixDiagPart.java index 63e7e0e3026..ac379b960aa 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixDiagPart.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixDiagPart.java @@ -35,8 +35,6 @@ /** * The BatchMatrixDiagPart operation - * - * @param data type for {@code diagonal} output */ @OpMetadata( opType = BatchMatrixDiagPart.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixInverse.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixInverse.java index 081dab67e8b..009deec3658 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixInverse.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixInverse.java @@ -35,8 +35,10 @@ /** * The BatchMatrixInverse operation - * - * @param data type for {@code output} output + * DEPRECATED: This operation is deprecated and will be removed in a future version. + * Use tf.linalg.inv instead. + *

      Computes the inverse of one or more square invertible matrices or their + * adjoints (conjugate transposes). */ @OpMetadata( opType = BatchMatrixInverse.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixSetDiag.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixSetDiag.java index 67a97a485c0..eaea0c7db31 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixSetDiag.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixSetDiag.java @@ -35,8 +35,6 @@ /** * The BatchMatrixSetDiag operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = BatchMatrixSetDiag.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixSolve.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixSolve.java index dc65bb1dce1..5b6749c53e4 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixSolve.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixSolve.java @@ -35,8 +35,6 @@ /** * The BatchMatrixSolve operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = BatchMatrixSolve.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixSolveLs.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixSolveLs.java index 801c5262946..7cb6714696f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixSolveLs.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixSolveLs.java @@ -36,8 +36,6 @@ /** * The BatchMatrixSolveLs operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = BatchMatrixSolveLs.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixTriangularSolve.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixTriangularSolve.java index ae63e405dd7..d7b326bae21 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixTriangularSolve.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchMatrixTriangularSolve.java @@ -35,8 +35,6 @@ /** * The BatchMatrixTriangularSolve operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = BatchMatrixTriangularSolve.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchSelfAdjointEig.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchSelfAdjointEig.java index 1d6588ac785..637625bd5db 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchSelfAdjointEig.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchSelfAdjointEig.java @@ -35,8 +35,6 @@ /** * The BatchSelfAdjointEigV2 operation - * - * @param data type for {@code e} output */ @OpMetadata( opType = BatchSelfAdjointEig.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchSvd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchSvd.java index cf723ceeedc..a2411601e63 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchSvd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/BatchSvd.java @@ -35,8 +35,6 @@ /** * The BatchSvd operation - * - * @param data type for {@code s} output */ @OpMetadata( opType = BatchSvd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Cholesky.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Cholesky.java index 294a41889da..ef6d0ca1a3d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Cholesky.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Cholesky.java @@ -45,8 +45,6 @@ *

      Note: The gradient computation on GPU is faster for large matrices but * not for large batch dimensions when the submatrices are small. In this * case it might be faster to use the CPU. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Cholesky.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/CholeskyGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/CholeskyGrad.java index f2529b61318..ce7975bbb29 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/CholeskyGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/CholeskyGrad.java @@ -37,8 +37,6 @@ * Computes the reverse mode backpropagated gradient of the Cholesky algorithm. * For an explanation see "Differentiation of the Cholesky algorithm" by * Iain Murray http://arxiv.org/abs/1602.07527. - * - * @param data type for {@code output} output */ @OpMetadata( opType = CholeskyGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/ConjugateTranspose.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/ConjugateTranspose.java index e14f2e71ef9..561e4fecbf1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/ConjugateTranspose.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/ConjugateTranspose.java @@ -39,8 +39,6 @@ * The output {@code y} has the same rank as {@code x}. The shapes of {@code x} and {@code y} satisfy: * {@code y.shape[i] == x.shape[perm[i]] for i in [0, 1, ..., rank(x) - 1]} * {@code y[i,j,k,...,s,t,u] == conj(x[perm[i], perm[j], perm[k],...,perm[s], perm[t], perm[u]])} - * - * @param data type for {@code y} output */ @OpMetadata( opType = ConjugateTranspose.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Cross.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Cross.java index 68ee2a65439..5c942c1e41b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Cross.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Cross.java @@ -38,8 +38,6 @@ * {@code a} and {@code b} must be the same shape; they can either be simple 3-element vectors, * or any shape where the innermost dimension is 3. In the latter case, each pair * of corresponding 3-element vectors is cross-multiplied independently. - * - * @param data type for {@code product} output */ @OpMetadata( opType = Cross.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Det.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Det.java index 62aafcde736..d63118c9f73 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Det.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Det.java @@ -38,8 +38,6 @@ * The input is a tensor of shape {@code [..., M, M]} whose inner-most 2 dimensions * form square matrices. The output is a tensor containing the determinants * for all input submatrices {@code [..., :, :]}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Det.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Eig.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Eig.java index 783950dfde9..3276bbb78fe 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Eig.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Eig.java @@ -46,8 +46,6 @@ * e, v = eig(a) * e = eig(a, compute_v=False) * - * - * @param data type for {@code e} output */ @OpMetadata( opType = Eig.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Einsum.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Einsum.java index 51d3eeb3fa6..5b57bad8aa4 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Einsum.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Einsum.java @@ -99,8 +99,6 @@ * supported by {@code numpy.einsum}. *
      {@literal @}end_compatibility *

    - * - * @param data type for {@code output} output */ @OpMetadata( opType = Einsum.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/EuclideanNorm.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/EuclideanNorm.java index ab6f58f4885..f544381e1a7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/EuclideanNorm.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/EuclideanNorm.java @@ -40,8 +40,6 @@ * {@code keep_dims} is true, the rank of the tensor is reduced by 1 for each entry in * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. - * - * @param data type for {@code output} output */ @OpMetadata( opType = EuclideanNorm.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Inv.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Inv.java index 6b02bc2a059..93338f1df07 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Inv.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Inv.java @@ -42,8 +42,6 @@ *

    If a matrix is not invertible there is no guarantee what the op does. It * may detect the condition and raise an exception or it may simply return a * garbage result. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Inv.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/LogMatrixDeterminant.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/LogMatrixDeterminant.java index 298e01306db..a144ac2d31c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/LogMatrixDeterminant.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/LogMatrixDeterminant.java @@ -43,8 +43,6 @@ * The {@code log_abs_determinant} is computed as {@code det(P)*sum(log(diag(LU)))} where {@code LU} * is the {@code LU} decomposition of the input and {@code P} is the corresponding * permutation matrix. - * - * @param data type for {@code sign} output */ @OpMetadata( opType = LogMatrixDeterminant.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Lu.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Lu.java index 480ed23e696..9063fab1875 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Lu.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Lu.java @@ -51,10 +51,6 @@ *

    P represents a permutation matrix encoded as a list of indices each between {@code 0} * and {@code M-1}, inclusive. If P_mat denotes the permutation matrix corresponding to * P, then the L, U and P satisfies P_mat * input = L * U. - * - * @param data type for {@code lu} output - * - * @param data type for {@code p} output */ @OpMetadata( opType = Lu.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatMul.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatMul.java index a592a65396a..c817cbc9037 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatMul.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatMul.java @@ -41,8 +41,6 @@ * true). *

    Note: The default kernel implementation for MatMul on GPUs uses * cublas. - * - * @param data type for {@code product} output */ @OpMetadata( opType = MatMul.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixDiag.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixDiag.java index 0a292c9d1b1..5241708f71a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixDiag.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixDiag.java @@ -116,8 +116,6 @@ * [1, 9], * [9, 2]] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = MatrixDiag.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixDiagPart.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixDiagPart.java index 084c946193e..a818b134cbe 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixDiagPart.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixDiagPart.java @@ -96,8 +96,6 @@ * [3, 4, 9], * [4, 3, 8]]] * - * - * @param data type for {@code diagonal} output */ @OpMetadata( opType = MatrixDiagPart.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixDiagPartV3.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixDiagPartV3.java index d4794ab7571..c6ecab46bab 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixDiagPartV3.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixDiagPartV3.java @@ -126,8 +126,6 @@ * [4, 3, 8]]] * * - * - * @param data type for {@code diagonal} output */ @OpMetadata( opType = MatrixDiagPartV3.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixDiagV3.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixDiagV3.java index 943b92e2c95..67b5b3b74b0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixDiagV3.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixDiagV3.java @@ -144,8 +144,6 @@ * [9, 2]] * * - * - * @param data type for {@code output} output */ @OpMetadata( opType = MatrixDiagV3.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixExponential.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixExponential.java index 961f57037f4..9332cd02b3e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixExponential.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixExponential.java @@ -35,8 +35,6 @@ /** * Deprecated, use python implementation tf.linalg.matrix_exponential. - * - * @param data type for {@code output} output */ @OpMetadata( opType = MatrixExponential.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixLogarithm.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixLogarithm.java index b3876d3a572..f1529a1c264 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixLogarithm.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixLogarithm.java @@ -46,8 +46,6 @@ *

    The input is a tensor of shape {@code [..., M, M]} whose inner-most 2 dimensions * form square matrices. The output is a tensor of the same shape as the input * containing the exponential for all input submatrices {@code [..., :, :]}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = MatrixLogarithm.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixSetDiag.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixSetDiag.java index 0ae2c206569..1ec3a1444f5 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixSetDiag.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixSetDiag.java @@ -132,8 +132,6 @@ * [7, 4, 2, 4]]] * * - * - * @param data type for {@code output} output */ @OpMetadata( opType = MatrixSetDiag.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixSolveLs.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixSolveLs.java index 3b340034827..d0601c6ee57 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixSolveLs.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/MatrixSolveLs.java @@ -66,8 +66,6 @@ * least-squares solution, even when \(A\) is rank deficient. This path is * typically 6-7 times slower than the fast path. If {@code fast} is {@code False} then * {@code l2_regularizer} is ignored. - * - * @param data type for {@code output} output */ @OpMetadata( opType = MatrixSolveLs.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Qr.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Qr.java index 9e73edaf6b8..037f024d04b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Qr.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Qr.java @@ -47,8 +47,6 @@ * q, r = qr(a) * q_full, r_full = qr(a, full_matrices=True) * - * - * @param data type for {@code q} output */ @OpMetadata( opType = Qr.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/QuantizedMatMul.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/QuantizedMatMul.java index 93ca4112092..d3136668a39 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/QuantizedMatMul.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/QuantizedMatMul.java @@ -41,8 +41,6 @@ * {@code a} (after being transposed if {@code transpose_a} is non-zero) must match the * outer dimension of {@code b} (after being transposed if {@code transposed_b} is * non-zero). - * - * @param data type for {@code out} output */ @OpMetadata( opType = QuantizedMatMul.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/QuantizedMatMulWithBias.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/QuantizedMatMulWithBias.java index 4ff470d2594..0cc43361bf4 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/QuantizedMatMulWithBias.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/QuantizedMatMulWithBias.java @@ -43,8 +43,6 @@ * match the outer dimension of {@code b} (after being transposed if {@code transposed_b} is * non-zero). Then do broadcast add operation with bias values on the matrix * multiplication result. The bias size must match inner dimension of {@code b}. - * - * @param data type for {@code out} output */ @OpMetadata( opType = QuantizedMatMulWithBias.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/QuantizedMatMulWithBiasAndRelu.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/QuantizedMatMulWithBiasAndRelu.java index ad1182c50de..eee116597b9 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/QuantizedMatMulWithBiasAndRelu.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/QuantizedMatMulWithBiasAndRelu.java @@ -44,8 +44,6 @@ * non-zero). Then do broadcast add operation with bias values on the matrix * multiplication result. The bias size must match inner dimension of {@code b}. Then do * relu activation to get non-negative result. - * - * @param data type for {@code out} output */ @OpMetadata( opType = QuantizedMatMulWithBiasAndRelu.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/QuantizedMatMulWithBiasAndReluAndRequantize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/QuantizedMatMulWithBiasAndReluAndRequantize.java index 91eefc72f1b..82bdde439f1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/QuantizedMatMulWithBiasAndReluAndRequantize.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/QuantizedMatMulWithBiasAndReluAndRequantize.java @@ -45,8 +45,6 @@ * multiplication result. The bias size must match inner dimension of {@code b}. Then do * relu activation to get non-negative result. Then do requantize operation to get * final uint8 result. - * - * @param data type for {@code out} output */ @OpMetadata( opType = QuantizedMatMulWithBiasAndReluAndRequantize.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/SelfAdjointEig.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/SelfAdjointEig.java index 2d64ddb4dda..75c06a99f2a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/SelfAdjointEig.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/SelfAdjointEig.java @@ -45,8 +45,6 @@ * e, v = self_adjoint_eig(a) * e = self_adjoint_eig(a, compute_v=False) * - * - * @param data type for {@code e} output */ @OpMetadata( opType = SelfAdjointEig.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Solve.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Solve.java index a0f41eda3f5..d1057183227 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Solve.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Solve.java @@ -41,8 +41,6 @@ * satisfies {@code matrix[..., :, :] * output[..., :, :] = rhs[..., :, :]}. * If {@code adjoint} is {@code True} then each output matrix satisfies * {@code adjoint(matrix[..., :, :]) * output[..., :, :] = rhs[..., :, :]}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Solve.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Sqrtm.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Sqrtm.java index 224688c8e1d..cf48c52605a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Sqrtm.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Sqrtm.java @@ -47,8 +47,6 @@ *

    The input is a tensor of shape {@code [..., M, M]} whose inner-most 2 dimensions * form square matrices. The output is a tensor of the same shape as the input * containing the matrix square root for all input submatrices {@code [..., :, :]}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Sqrtm.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Svd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Svd.java index b17b01cf88e..b11eafdccfc 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Svd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Svd.java @@ -45,8 +45,6 @@ * s, u, v = svd(a) * s, _, _ = svd(a, compute_uv=False) * - * - * @param data type for {@code s} output */ @OpMetadata( opType = Svd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TensorDiag.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TensorDiag.java index 6292194a118..69ee9258392 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TensorDiag.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TensorDiag.java @@ -48,8 +48,6 @@ * [0, 0, 3, 0] * [0, 0, 0, 4]] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = TensorDiag.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TensorDiagPart.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TensorDiagPart.java index ae21a73b071..838a036f84b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TensorDiagPart.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TensorDiagPart.java @@ -49,8 +49,6 @@ * * tf.diag_part(input) ==> [1, 2, 3, 4] * - * - * @param data type for {@code diagonal} output */ @OpMetadata( opType = TensorDiagPart.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Transpose.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Transpose.java index 65f22dfe32b..712576c0989 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Transpose.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/Transpose.java @@ -38,8 +38,6 @@ * Shuffle dimensions of x according to a permutation. * The output {@code y} has the same rank as {@code x}. The shapes of {@code x} and {@code y} satisfy: * {@code y.shape[i] == x.shape[perm[i]] for i in [0, 1, ..., rank(x) - 1]} - * - * @param data type for {@code y} output */ @OpMetadata( opType = Transpose.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TriangularSolve.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TriangularSolve.java index 891f4e1f608..026fbfb70bf 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TriangularSolve.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TriangularSolve.java @@ -77,8 +77,6 @@ * # [4. ], * # [1.9999999]], dtype=float32)> * - * - * @param data type for {@code output} output */ @OpMetadata( opType = TriangularSolve.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TridiagonalMatMul.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TridiagonalMatMul.java index bd69ed483e4..a6122dabc83 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TridiagonalMatMul.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TridiagonalMatMul.java @@ -36,8 +36,6 @@ /** * Calculate product with tridiagonal matrix. * Calculates product of two matrices, where left matrix is a tridiagonal matrix. - * - * @param data type for {@code output} output */ @OpMetadata( opType = TridiagonalMatMul.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TridiagonalSolve.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TridiagonalSolve.java index 57c0864ef7d..6b0a890d12e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TridiagonalSolve.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/TridiagonalSolve.java @@ -42,8 +42,6 @@ * pivoting, depending on {@code partial_pivoting} attribute. On GPU, Nvidia's cuSPARSE * library is used: https://docs.nvidia.com/cuda/cusparse/index.html#gtsv * Partial pivoting is not yet supported by XLA backends. - * - * @param data type for {@code output} output */ @OpMetadata( opType = TridiagonalSolve.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/sparse/CSRSparseMatrixComponents.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/sparse/CSRSparseMatrixComponents.java index 27d77557bfb..7fd47c7c6f5 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/sparse/CSRSparseMatrixComponents.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/sparse/CSRSparseMatrixComponents.java @@ -39,8 +39,6 @@ * Reads out the CSR components at batch {@code index}. * This op is meant only for debugging / testing, and its interface is not expected * to be stable. - * - * @param data type for {@code values} output */ @OpMetadata( opType = CSRSparseMatrixComponents.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/sparse/CSRSparseMatrixToDense.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/sparse/CSRSparseMatrixToDense.java index 51bed06f6ba..97fb87d7250 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/sparse/CSRSparseMatrixToDense.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/sparse/CSRSparseMatrixToDense.java @@ -36,8 +36,6 @@ /** * Convert a (possibly batched) CSRSparseMatrix to dense. - * - * @param data type for {@code dense_output} output */ @OpMetadata( opType = CSRSparseMatrixToDense.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/sparse/CSRSparseMatrixToSparseTensor.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/sparse/CSRSparseMatrixToSparseTensor.java index 5c111887894..ad365783cea 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/sparse/CSRSparseMatrixToSparseTensor.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/sparse/CSRSparseMatrixToSparseTensor.java @@ -37,8 +37,6 @@ /** * Converts a (possibly batched) CSRSparesMatrix to a SparseTensor. - * - * @param data type for {@code values} output */ @OpMetadata( opType = CSRSparseMatrixToSparseTensor.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/sparse/SparseMatrixMatMul.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/sparse/SparseMatrixMatMul.java index 2de2e93ec3b..5d9ed9bbbf2 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/sparse/SparseMatrixMatMul.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/linalg/sparse/SparseMatrixMatMul.java @@ -56,8 +56,6 @@ * C = conjugate(transpose(A . B)) = conjugate(transpose(B)) . * conjugate(transpose(A)) * - * - * @param data type for {@code output} output */ @OpMetadata( opType = SparseMatrixMatMul.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Abs.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Abs.java index ef53c5f5693..0f4ee840704 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Abs.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Abs.java @@ -38,8 +38,6 @@ * Given a tensor {@code x}, this operation returns a tensor containing the absolute * value of each element in {@code x}. For example, if x is an input element and y is * an output element, this operation computes \(y = |x|\). - * - * @param data type for {@code y} output */ @OpMetadata( opType = Abs.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/AccumulateN.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/AccumulateN.java index 61d1df63943..3a0e466e8cd 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/AccumulateN.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/AccumulateN.java @@ -43,8 +43,6 @@ * storage is proportional to the output size rather than the inputs size. *

    Unlike the original {@code accumulate_n}, {@code accumulate_n_v2} is differentiable. *

    Returns a {@code Tensor} of same shape and type as the elements of {@code inputs}. - * - * @param data type for {@code sum} output */ @OpMetadata( opType = AccumulateN.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Acos.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Acos.java index 078326e1891..915e5b98b63 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Acos.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Acos.java @@ -37,8 +37,6 @@ * Computes acos of x element-wise. * Provided an input tensor, the {@code tf.math.acos} operation returns the inverse cosine of each element of the tensor. If {@code y = tf.math.cos(x)} then, {@code x = tf.math.acos(y)}. *

    Input range is {@code [-1, 1]} and the output has a range of {@code [0, pi]}. - * - * @param data type for {@code y} output */ @OpMetadata( opType = Acos.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Acosh.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Acosh.java index 60edbd7880f..8ade37b1990 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Acosh.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Acosh.java @@ -41,8 +41,6 @@ * x = tf.constant([-2, -0.5, 1, 1.2, 200, 10000, float("inf")]) * tf.math.acosh(x) ==> [nan nan 0. 0.62236255 5.9914584 9.903487 inf] * - * - * @param data type for {@code y} output */ @OpMetadata( opType = Acosh.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Add.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Add.java index 4f32acd9ee1..61db4d2e4ec 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Add.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Add.java @@ -39,8 +39,6 @@ * here *

    Given two input tensors, the {@code tf.add} operation computes the sum for every element in the tensor. *

    Both input and output have a range {@code (-inf, inf)}. - * - * @param data type for {@code z} output */ @OpMetadata( opType = Add.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/AddN.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/AddN.java index 6cd47212eef..f2ef9209796 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/AddN.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/AddN.java @@ -41,8 +41,6 @@ * x = [9, 7, 10] * tf.math.add_n(x) ==> 26 * - * - * @param data type for {@code sum} output */ @OpMetadata( opType = AddN.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Angle.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Angle.java index a9c7814636f..6ad1ff84bba 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Angle.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Angle.java @@ -51,8 +51,6 @@ *

    {@literal @}compatibility(numpy)
    * Equivalent to np.angle. *
    {@literal @}end_compatibility - * - * @param data type for {@code output} output */ @OpMetadata( opType = Angle.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/ArgMax.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/ArgMax.java index 5a7b5adec69..c222f3d54d5 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/ArgMax.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/ArgMax.java @@ -48,8 +48,6 @@ * # c = 4 * # here a[4] = 166.32 which is the largest element of a across axis 0 * - * - * @param data type for {@code output} output */ @OpMetadata( opType = ArgMax.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/ArgMin.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/ArgMin.java index ff138655b1f..41aa45a10ad 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/ArgMin.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/ArgMin.java @@ -48,8 +48,6 @@ * # c = 0 * # here a[0] = 1 which is the smallest element of a across axis 0 * - * - * @param data type for {@code output} output */ @OpMetadata( opType = ArgMin.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Asin.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Asin.java index 050107db969..810aeb5fa3b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Asin.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Asin.java @@ -47,8 +47,6 @@ * * tf.math.asin(y) # [1.047, 0.785] = x * - * - * @param data type for {@code y} output */ @OpMetadata( opType = Asin.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Asinh.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Asinh.java index d4170db292a..918518f2b82 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Asinh.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Asinh.java @@ -42,8 +42,6 @@ * x = tf.constant([-float("inf"), -2, -0.5, 1, 1.2, 200, 10000, float("inf")]) * tf.math.asinh(x) ==> [-inf -1.4436355 -0.4812118 0.8813736 1.0159732 5.991471 9.903487 inf] * - * - * @param data type for {@code y} output */ @OpMetadata( opType = Asinh.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Atan.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Atan.java index aab73783c10..8979ab75d9e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Atan.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Atan.java @@ -47,8 +47,6 @@ * * tf.math.atan(y) # [1.047, 0.785] = x * - * - * @param data type for {@code y} output */ @OpMetadata( opType = Atan.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Atan2.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Atan2.java index dfff4a48676..2d566d3cc22 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Atan2.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Atan2.java @@ -51,8 +51,6 @@ * * * - * - * @param data type for {@code z} output */ @OpMetadata( opType = Atan2.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Atanh.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Atanh.java index ea5729193bf..c4dd0f1ead2 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Atanh.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Atanh.java @@ -44,8 +44,6 @@ * x = tf.constant([-float("inf"), -1, -0.5, 1, 0, 0.5, 10, float("inf")]) * tf.math.atanh(x) ==> [nan -inf -0.54930615 inf 0. 0.54930615 nan nan] * - * - * @param data type for {@code y} output */ @OpMetadata( opType = Atanh.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/BesselI0.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/BesselI0.java index d3782706f20..945d2107a39 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/BesselI0.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/BesselI0.java @@ -35,8 +35,6 @@ /** * The BesselI0 operation - * - * @param data type for {@code y} output */ @OpMetadata( opType = BesselI0.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/BesselI0e.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/BesselI0e.java index eec8b3281a3..7e27d3e4263 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/BesselI0e.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/BesselI0e.java @@ -35,8 +35,6 @@ /** * The BesselI0e operation - * - * @param data type for {@code y} output */ @OpMetadata( opType = BesselI0e.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/BesselI1.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/BesselI1.java index bb59dc19f5c..28304567e86 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/BesselI1.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/BesselI1.java @@ -35,8 +35,6 @@ /** * The BesselI1 operation - * - * @param data type for {@code y} output */ @OpMetadata( opType = BesselI1.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/BesselI1e.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/BesselI1e.java index fe929e32eb1..df3b3f937e8 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/BesselI1e.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/BesselI1e.java @@ -35,8 +35,6 @@ /** * The BesselI1e operation - * - * @param data type for {@code y} output */ @OpMetadata( opType = BesselI1e.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Betainc.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Betainc.java index f7b9904c100..1a895c89f00 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Betainc.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Betainc.java @@ -41,8 +41,6 @@ *

    \(B(x; a, b) = \int_0^x t^{a-1} (1 - t)^{b-1} dt\) *

    is the incomplete beta function and \(B(a, b)\) is the complete * beta function. - * - * @param data type for {@code z} output */ @OpMetadata( opType = Betainc.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Bincount.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Bincount.java index 6e78f0799fc..463dc277eae 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Bincount.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Bincount.java @@ -42,8 +42,6 @@ * the value in {@code weights} at each index where the corresponding value in {@code arr} is * {@code i}. *

    Values in {@code arr} outside of the range [0, size) are ignored. - * - * @param data type for {@code bins} output */ @OpMetadata( opType = Bincount.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Ceil.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Ceil.java index 3db46461d7c..1a69b94a8e4 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Ceil.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Ceil.java @@ -35,8 +35,6 @@ /** * Returns element-wise smallest integer not less than x. - * - * @param data type for {@code y} output */ @OpMetadata( opType = Ceil.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/ComplexAbs.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/ComplexAbs.java index 798b2a9cb1a..9461d599888 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/ComplexAbs.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/ComplexAbs.java @@ -52,8 +52,6 @@ * * * - * - * @param data type for {@code y} output */ @OpMetadata( opType = ComplexAbs.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Conj.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Conj.java index 266da810658..d46b7f2ae5b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Conj.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Conj.java @@ -45,8 +45,6 @@ * # tensor 'input' is [-2.25 + 4.75j, 3.25 + 5.75j] * tf.conj(input) ==> [-2.25 - 4.75j, 3.25 - 5.75j] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = Conj.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Cos.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Cos.java index 0ab0152ff02..b6b5b9595c5 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Cos.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Cos.java @@ -43,8 +43,6 @@ * x = tf.constant([-float("inf"), -9, -0.5, 1, 1.2, 200, 10000, float("inf")]) * tf.math.cos(x) ==> [nan -0.91113025 0.87758255 0.5403023 0.36235774 0.48718765 -0.95215535 nan] * - * - * @param data type for {@code y} output */ @OpMetadata( opType = Cos.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Cosh.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Cosh.java index 76a98abe533..391d2efd7ab 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Cosh.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Cosh.java @@ -42,8 +42,6 @@ * x = tf.constant([-float("inf"), -9, -0.5, 1, 1.2, 2, 10, float("inf")]) * tf.math.cosh(x) ==> [inf 4.0515420e+03 1.1276259e+00 1.5430807e+00 1.8106556e+00 3.7621956e+00 1.1013233e+04 inf] * - * - * @param data type for {@code y} output */ @OpMetadata( opType = Cosh.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Cumprod.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Cumprod.java index 3e901959c5d..90bdcdc0038 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Cumprod.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Cumprod.java @@ -56,8 +56,6 @@ *

      * tf.cumprod([a, b, c], exclusive=True, reverse=True)  # => [b * c, c, 1]
      * 
    - * - * @param data type for {@code out} output */ @OpMetadata( opType = Cumprod.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Cumsum.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Cumsum.java index 12b3346db25..ff8dca235c9 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Cumsum.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Cumsum.java @@ -56,8 +56,6 @@ *
      * tf.cumsum([a, b, c], exclusive=True, reverse=True)  # => [b + c, c, 0]
      * 
    - * - * @param data type for {@code out} output */ @OpMetadata( opType = Cumsum.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/CumulativeLogsumexp.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/CumulativeLogsumexp.java index 52595f56eea..f7367703a41 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/CumulativeLogsumexp.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/CumulativeLogsumexp.java @@ -51,8 +51,6 @@ * floating point type is used instead. *

    By setting the {@code reverse} kwarg to {@code True}, the cumulative log-sum-exp is performed in the * opposite direction. - * - * @param data type for {@code out} output */ @OpMetadata( opType = CumulativeLogsumexp.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/DenseBincount.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/DenseBincount.java index ff9a38ba24d..808be372c5f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/DenseBincount.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/DenseBincount.java @@ -41,8 +41,6 @@ * the value in {@code weights} at each index where the corresponding value in {@code arr} is * {@code i}. *

    Values in {@code arr} outside of the range [0, size) are ignored. - * - * @param data type for {@code output} output */ @OpMetadata( opType = DenseBincount.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Digamma.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Digamma.java index 37117f4e1b8..3a48d548bd4 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Digamma.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Digamma.java @@ -36,8 +36,6 @@ /** * Computes Psi, the derivative of Lgamma (the log of the absolute value of * {@code Gamma(x)}), element-wise. - * - * @param data type for {@code y} output */ @OpMetadata( opType = Digamma.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Div.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Div.java index 62a15f37da7..8ad37113d3f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Div.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Div.java @@ -37,8 +37,6 @@ * Returns x / y element-wise. * NOTE: {@code math.Div} supports broadcasting. More about broadcasting * here - * - * @param data type for {@code z} output */ @OpMetadata( opType = Div.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/DivNoNan.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/DivNoNan.java index bb098cfdf14..43047bad3c6 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/DivNoNan.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/DivNoNan.java @@ -37,8 +37,6 @@ * Returns 0 if the denominator is zero. * NOTE: {@code math.DivNoNan} supports broadcasting. More about broadcasting * here - * - * @param data type for {@code z} output */ @OpMetadata( opType = DivNoNan.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Erf.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Erf.java index 1e2046e2892..ef607d7778b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Erf.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Erf.java @@ -35,8 +35,6 @@ /** * Computes the Gauss error function of {@code x} element-wise. In statistics, for non-negative values of $x$, the error function has the following interpretation: for a random variable $Y$ that is normally distributed with mean 0 and variance $1/\sqrt{2}$, $erf(x)$ is the probability that $Y$ falls in the range $[−x, x]$. - * - * @param data type for {@code y} output */ @OpMetadata( opType = Erf.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Erfc.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Erfc.java index b8d11327b94..25fdbcd648c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Erfc.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Erfc.java @@ -35,8 +35,6 @@ /** * Computes the complementary error function of {@code x} element-wise. - * - * @param data type for {@code y} output */ @OpMetadata( opType = Erfc.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Exp.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Exp.java index 1a5c7456b51..fe1d6ed1515 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Exp.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Exp.java @@ -56,8 +56,6 @@ * x = tf.constant(1 + 1j) * tf.math.exp(x) ==> 1.4686939399158851+2.2873552871788423j * - * - * @param data type for {@code y} output */ @OpMetadata( opType = Exp.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Expm1.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Expm1.java index a6f8f64ab43..b9c80edf84b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Expm1.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Expm1.java @@ -47,8 +47,6 @@ * x = tf.constant(1 + 1j) * tf.math.expm1(x) ==> (0.46869393991588515+2.2873552871788423j) * - * - * @param data type for {@code y} output */ @OpMetadata( opType = Expm1.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Floor.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Floor.java index bb9dbc4aa32..27ed6af66ac 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Floor.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Floor.java @@ -35,8 +35,6 @@ /** * Returns element-wise largest integer not greater than x. - * - * @param data type for {@code y} output */ @OpMetadata( opType = Floor.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/FloorDiv.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/FloorDiv.java index 47887e1a4dd..61d57ac8c4f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/FloorDiv.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/FloorDiv.java @@ -37,8 +37,6 @@ * Returns x // y element-wise. * NOTE: {@code math.FloorDiv} supports broadcasting. More about broadcasting * here - * - * @param data type for {@code z} output */ @OpMetadata( opType = FloorDiv.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/FloorMod.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/FloorMod.java index 58c90f87123..b41e5d112b2 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/FloorMod.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/FloorMod.java @@ -40,8 +40,6 @@ * {@code floor(x / y) * y + floormod(x, y) = x}, regardless of the signs of x and y. *

    NOTE: {@code math.FloorMod} supports broadcasting. More about broadcasting * here - * - * @param data type for {@code z} output */ @OpMetadata( opType = FloorMod.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Igamma.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Igamma.java index 4f116ba6e63..224c434af9f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Igamma.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Igamma.java @@ -42,8 +42,6 @@ *

    is the lower incomplete Gamma function. *

    Note, above {@code Q(a, x)} ({@code Igammac}) is the upper regularized complete * Gamma function. - * - * @param data type for {@code z} output */ @OpMetadata( opType = Igamma.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/IgammaGradA.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/IgammaGradA.java index f9e7aced432..a3c6c4f20ad 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/IgammaGradA.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/IgammaGradA.java @@ -35,8 +35,6 @@ /** * Computes the gradient of {@code igamma(a, x)} wrt {@code a}. - * - * @param data type for {@code z} output */ @OpMetadata( opType = IgammaGradA.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Igammac.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Igammac.java index 1cc0549ad00..80f2545ce69 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Igammac.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Igammac.java @@ -42,8 +42,6 @@ *

    is the upper incomplete Gamma function. *

    Note, above {@code P(a, x)} ({@code Igamma}) is the lower regularized complete * Gamma function. - * - * @param data type for {@code z} output */ @OpMetadata( opType = Igammac.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Imag.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Imag.java index fe04cd17336..509de2b8c7b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Imag.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Imag.java @@ -47,8 +47,6 @@ * # tensor 'input' is [-2.25 + 4.75j, 3.25 + 5.75j] * tf.imag(input) ==> [4.75, 5.75] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = Imag.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/InvertPermutation.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/InvertPermutation.java index 3035d46e60c..a466109898c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/InvertPermutation.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/InvertPermutation.java @@ -46,8 +46,6 @@ * # tensor `x` is [3, 4, 0, 2, 1] * invert_permutation(x) ==> [2, 4, 3, 0, 1] * - * - * @param data type for {@code y} output */ @OpMetadata( opType = InvertPermutation.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Lgamma.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Lgamma.java index d8c6b4889a2..4c5aea1de84 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Lgamma.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Lgamma.java @@ -42,8 +42,6 @@ * x = tf.constant([0, 0.5, 1, 4.5, -4, -5.6]) * tf.math.lgamma(x) ==> [inf, 0.5723649, 0., 2.4537368, inf, -4.6477685] * - * - * @param data type for {@code y} output */ @OpMetadata( opType = Lgamma.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Log.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Log.java index 32ee589536a..911ab61ff0c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Log.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Log.java @@ -41,8 +41,6 @@ * x = tf.constant([0, 0.5, 1, 5]) * tf.math.log(x) ==> [-inf, -0.6931472, 0. , 1.609438] * - * - * @param data type for {@code y} output */ @OpMetadata( opType = Log.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Log1p.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Log1p.java index f280d8b0062..05fe31ad376 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Log1p.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Log1p.java @@ -41,8 +41,6 @@ * x = tf.constant([0, 0.5, 1, 5]) * tf.math.log1p(x) ==> [0., 0.4054651, 0.6931472, 1.7917595] * - * - * @param data type for {@code y} output */ @OpMetadata( opType = Log1p.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Maximum.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Maximum.java index c46c8c6e384..0c864b79f5e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Maximum.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Maximum.java @@ -37,8 +37,6 @@ * Returns the max of x and y (i.e. x > y ? x : y) element-wise. * NOTE: {@code math.Maximum} supports broadcasting. More about broadcasting * here - * - * @param data type for {@code z} output */ @OpMetadata( opType = Maximum.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Mean.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Mean.java index 94de9fc5bd4..9018aa2bd6d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Mean.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Mean.java @@ -40,8 +40,6 @@ * {@code keep_dims} is true, the rank of the tensor is reduced by 1 for each entry in * {@code axis}. If {@code keep_dims} is true, the reduced dimensions are * retained with length 1. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Mean.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Minimum.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Minimum.java index 588bcb3328b..b516ee5c302 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Minimum.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Minimum.java @@ -37,8 +37,6 @@ * Returns the min of x and y (i.e. x < y ? x : y) element-wise. * NOTE: {@code math.Minimum} supports broadcasting. More about broadcasting * here - * - * @param data type for {@code z} output */ @OpMetadata( opType = Minimum.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Mod.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Mod.java index d318de97c9c..60ccc32e855 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Mod.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Mod.java @@ -39,8 +39,6 @@ * {@code tf.truncatediv(x, y) * y + truncate_mod(x, y) = x}. *

    NOTE: {@code math.Mod} supports broadcasting. More about broadcasting * here - * - * @param data type for {@code z} output */ @OpMetadata( opType = Mod.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Mul.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Mul.java index d7466085ada..d18a48a6472 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Mul.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Mul.java @@ -37,8 +37,6 @@ * Returns x * y element-wise. * NOTE: {@code math.Mul} supports broadcasting. More about broadcasting * here - * - * @param data type for {@code z} output */ @OpMetadata( opType = Mul.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/MulNoNan.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/MulNoNan.java index 85429b70ca1..7e85f94c31d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/MulNoNan.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/MulNoNan.java @@ -37,8 +37,6 @@ * Returns x * y element-wise. Returns zero if y is zero, even if x if infinite or NaN. * NOTE: {@code math.MulNoNan} supports broadcasting. More about broadcasting * here - * - * @param data type for {@code z} output */ @OpMetadata( opType = MulNoNan.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Ndtri.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Ndtri.java index 37d1ffb8fc9..2c9b4f4719f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Ndtri.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Ndtri.java @@ -35,8 +35,6 @@ /** * The Ndtri operation - * - * @param data type for {@code y} output */ @OpMetadata( opType = Ndtri.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Neg.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Neg.java index e0ec5783144..e11b274470a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Neg.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Neg.java @@ -36,8 +36,6 @@ /** * Computes numerical negative value element-wise. * I.e., \(y = -x\). - * - * @param data type for {@code y} output */ @OpMetadata( opType = Neg.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/NextAfter.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/NextAfter.java index 45ff3a179ca..fef32810db3 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/NextAfter.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/NextAfter.java @@ -40,8 +40,6 @@ *

    {@literal @}compatibility(cpp)
    * Equivalent to C++ std::nextafter function. *
    {@literal @}end_compatibility - * - * @param data type for {@code output} output */ @OpMetadata( opType = NextAfter.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Polygamma.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Polygamma.java index b2fb442489b..f391fef2335 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Polygamma.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Polygamma.java @@ -39,8 +39,6 @@ *

    \(\psi^{(a)}(x) = \frac{d^a}{dx^a} \psi(x)\) *

    where \(\psi(x)\) is the digamma function. * The polygamma function is defined only for non-negative integer orders \a\. - * - * @param data type for {@code z} output */ @OpMetadata( opType = Polygamma.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Pow.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Pow.java index f50532e8d62..3a8f8acbb7a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Pow.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Pow.java @@ -42,8 +42,6 @@ * # tensor 'y' is [[8, 16], [2, 3]] * tf.pow(x, y) ==> [[256, 65536], [9, 27]] * - * - * @param data type for {@code z} output */ @OpMetadata( opType = Pow.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/QuantizedAdd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/QuantizedAdd.java index ad59711dca9..cf02c4ad713 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/QuantizedAdd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/QuantizedAdd.java @@ -37,8 +37,6 @@ /** * Returns x + y element-wise, working on quantized buffers. - * - * @param data type for {@code z} output */ @OpMetadata( opType = QuantizedAdd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/QuantizedMul.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/QuantizedMul.java index 6b5c3d05579..b9f1e5b062c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/QuantizedMul.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/QuantizedMul.java @@ -37,8 +37,6 @@ /** * Returns x * y element-wise, working on quantized buffers. - * - * @param data type for {@code z} output */ @OpMetadata( opType = QuantizedMul.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Real.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Real.java index 6217269b474..c85e0d73861 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Real.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Real.java @@ -47,8 +47,6 @@ * # tensor 'input' is [-2.25 + 4.75j, 3.25 + 5.75j] * tf.real(input) ==> [-2.25, 3.25] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = Real.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/RealDiv.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/RealDiv.java index c1aceba76d3..fb2e7e77d33 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/RealDiv.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/RealDiv.java @@ -38,8 +38,6 @@ * If {@code x} and {@code y} are reals, this will return the floating-point division. *

    NOTE: {@code Div} supports broadcasting. More about broadcasting * here - * - * @param data type for {@code z} output */ @OpMetadata( opType = RealDiv.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Reciprocal.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Reciprocal.java index 97ae15f6015..c0e6b9c573a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Reciprocal.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Reciprocal.java @@ -36,8 +36,6 @@ /** * Computes the reciprocal of x element-wise. * I.e., \(y = 1 / x\). - * - * @param data type for {@code y} output */ @OpMetadata( opType = Reciprocal.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/ReciprocalGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/ReciprocalGrad.java index 13b7b7592ab..9d1c672629f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/ReciprocalGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/ReciprocalGrad.java @@ -37,8 +37,6 @@ * Computes the gradient for the inverse of {@code x} wrt its input. * Specifically, {@code grad = -dy * y*y}, where {@code y = 1/x}, and {@code dy} * is the corresponding input gradient. - * - * @param data type for {@code z} output */ @OpMetadata( opType = ReciprocalGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/RequantizePerChannel.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/RequantizePerChannel.java index c2a71d1d594..f6dcf220ade 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/RequantizePerChannel.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/RequantizePerChannel.java @@ -37,8 +37,6 @@ /** * Requantizes input with min and max values known per channel. - * - * @param data type for {@code output} output */ @OpMetadata( opType = RequantizePerChannel.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Rint.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Rint.java index 716bc8be07b..62a48d4ecd0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Rint.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Rint.java @@ -43,8 +43,6 @@ * rint(0.5000001) ==> 1.0 * rint([-1.7, -1.5, -0.2, 0.2, 1.5, 1.7, 2.0]) ==> [-2., -2., -0., 0., 2., 2., 2.] * - * - * @param data type for {@code y} output */ @OpMetadata( opType = Rint.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Round.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Round.java index d8a5aff3d2d..0e7441efeb1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Round.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Round.java @@ -37,8 +37,6 @@ * Rounds the values of a tensor to the nearest integer, element-wise. * Rounds half to even. Also known as bankers rounding. If you want to round * according to the current system rounding mode use std::cint. - * - * @param data type for {@code y} output */ @OpMetadata( opType = Round.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Rsqrt.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Rsqrt.java index 12ce75ef035..3d438f10f12 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Rsqrt.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Rsqrt.java @@ -36,8 +36,6 @@ /** * Computes reciprocal of square root of x element-wise. * I.e., \(y = 1 / \sqrt{x}\). - * - * @param data type for {@code y} output */ @OpMetadata( opType = Rsqrt.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/RsqrtGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/RsqrtGrad.java index f92da40a82b..90fc4892083 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/RsqrtGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/RsqrtGrad.java @@ -37,8 +37,6 @@ * Computes the gradient for the rsqrt of {@code x} wrt its input. * Specifically, {@code grad = dy * -0.5 * y^3}, where {@code y = rsqrt(x)}, and {@code dy} * is the corresponding input gradient. - * - * @param data type for {@code z} output */ @OpMetadata( opType = RsqrtGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentMax.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentMax.java index 1939c7a4d3a..44ec468eaf4 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentMax.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentMax.java @@ -73,8 +73,6 @@ * * * - * - * @param data type for {@code output} output */ @OpMetadata( opType = SegmentMax.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentMean.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentMean.java index 7d0e2af1606..2e69b2bb8b5 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentMean.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentMean.java @@ -64,8 +64,6 @@ * * * - * - * @param data type for {@code output} output */ @OpMetadata( opType = SegmentMean.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentMin.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentMin.java index cb5a312d3ff..9dce52fceed 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentMin.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentMin.java @@ -73,8 +73,6 @@ * * * - * - * @param data type for {@code output} output */ @OpMetadata( opType = SegmentMin.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentProd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentProd.java index 87738a1ac3a..77fd53d92a0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentProd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentProd.java @@ -66,8 +66,6 @@ * * * - * - * @param data type for {@code output} output */ @OpMetadata( opType = SegmentProd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentSum.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentSum.java index 578d159e289..c47c3acd24f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentSum.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SegmentSum.java @@ -44,9 +44,6 @@ * that {@code segment_ids[j] == i}. *

    If the sum is empty for a given segment ID {@code i}, {@code output[i] = 0}. *

    Note that this op is currently only supported with jit_compile=True. - * - * - * @param data type for {@code output} output */ @OpMetadata( opType = SegmentSum.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sigmoid.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sigmoid.java index bd93a0303eb..8e71006a2c0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sigmoid.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sigmoid.java @@ -36,8 +36,6 @@ /** * Computes sigmoid of {@code x} element-wise. * Specifically, {@code y = 1 / (1 + exp(-x))}. - * - * @param data type for {@code y} output */ @OpMetadata( opType = Sigmoid.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SigmoidGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SigmoidGrad.java index 8f4b7cfe45c..a85b754cc61 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SigmoidGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SigmoidGrad.java @@ -37,8 +37,6 @@ * Computes the gradient of the sigmoid of {@code x} wrt its input. * Specifically, {@code grad = dy * y * (1 - y)}, where {@code y = sigmoid(x)}, and * {@code dy} is the corresponding input gradient. - * - * @param data type for {@code z} output */ @OpMetadata( opType = SigmoidGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sign.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sign.java index 15f5e07b597..ee9d2d65154 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sign.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sign.java @@ -46,8 +46,6 @@ * * * - * - * @param data type for {@code y} output */ @OpMetadata( opType = Sign.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sin.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sin.java index 06269cb6278..1a13ada1838 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sin.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sin.java @@ -42,8 +42,6 @@ * x = tf.constant([-float("inf"), -9, -0.5, 1, 1.2, 200, 10, float("inf")]) * tf.math.sin(x) ==> [nan -0.4121185 -0.47942555 0.84147096 0.9320391 -0.87329733 -0.54402107 nan] * - * - * @param data type for {@code y} output */ @OpMetadata( opType = Sin.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sinh.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sinh.java index 9e1a692df76..b4af201ab99 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sinh.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sinh.java @@ -42,8 +42,6 @@ * x = tf.constant([-float("inf"), -9, -0.5, 1, 1.2, 2, 10, float("inf")]) * tf.math.sinh(x) ==> [-inf -4.0515420e+03 -5.2109528e-01 1.1752012e+00 1.5094614e+00 3.6268604e+00 1.1013232e+04 inf] * - * - * @param data type for {@code y} output */ @OpMetadata( opType = Sinh.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SobolSample.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SobolSample.java index 95f33401f0b..5989ca78f57 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SobolSample.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SobolSample.java @@ -40,8 +40,6 @@ * Generates points from the Sobol sequence. * Creates a Sobol sequence with {@code num_results} samples. Each sample has dimension * {@code dim}. Skips the first {@code skip} samples. - * - * @param data type for {@code samples} output */ @OpMetadata( opType = SobolSample.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Softplus.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Softplus.java index aa80f8d0840..cdb0aea4f9f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Softplus.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Softplus.java @@ -35,8 +35,6 @@ /** * The Softplus operation - * - * @param data type for {@code activations} output */ @OpMetadata( opType = Softplus.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SoftplusGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SoftplusGrad.java index 5a8445dad45..3f2901810ce 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SoftplusGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SoftplusGrad.java @@ -35,8 +35,6 @@ /** * Computes softplus gradients for a softplus operation. - * - * @param data type for {@code backprops} output */ @OpMetadata( opType = SoftplusGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sqrt.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sqrt.java index ac6cd68b529..8c6edfc6e89 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sqrt.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sqrt.java @@ -36,8 +36,6 @@ /** * Computes square root of x element-wise. * I.e., \(y = \sqrt{x} = x^{1/2}\). - * - * @param data type for {@code y} output */ @OpMetadata( opType = Sqrt.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SqrtGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SqrtGrad.java index 451143c16e4..eed0209152b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SqrtGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SqrtGrad.java @@ -37,8 +37,6 @@ * Computes the gradient for the sqrt of {@code x} wrt its input. * Specifically, {@code grad = dy * 0.5 / y}, where {@code y = sqrt(x)}, and {@code dy} * is the corresponding input gradient. - * - * @param data type for {@code z} output */ @OpMetadata( opType = SqrtGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Square.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Square.java index d5811d17c2a..2952af307d2 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Square.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Square.java @@ -36,8 +36,6 @@ /** * Computes square of x element-wise. * I.e., \(y = x * x = x^2\). - * - * @param data type for {@code y} output */ @OpMetadata( opType = Square.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SquaredDifference.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SquaredDifference.java index 2af6fe083e3..4d880a79baa 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SquaredDifference.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/SquaredDifference.java @@ -37,8 +37,6 @@ * Returns conj(x - y)(x - y) element-wise. * NOTE: {@code math.SquaredDifference} supports broadcasting. More about broadcasting * here - * - * @param data type for {@code z} output */ @OpMetadata( opType = SquaredDifference.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sub.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sub.java index 6313555f9f1..b48b311d80e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sub.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Sub.java @@ -37,8 +37,6 @@ * Returns x - y element-wise. * NOTE: {@code math.Sub} supports broadcasting. More about broadcasting * here - * - * @param data type for {@code z} output */ @OpMetadata( opType = Sub.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Tan.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Tan.java index 566b7d2b03f..c1073f8a5bb 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Tan.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Tan.java @@ -43,8 +43,6 @@ * x = tf.constant([-float("inf"), -9, -0.5, 1, 1.2, 200, 10000, float("inf")]) * tf.math.tan(x) ==> [nan 0.45231566 -0.5463025 1.5574077 2.572152 -1.7925274 0.32097113 nan] * - * - * @param data type for {@code y} output */ @OpMetadata( opType = Tan.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Tanh.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Tanh.java index ee24b4085df..706a8d90cd0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Tanh.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Tanh.java @@ -49,8 +49,6 @@ * * * - * - * @param data type for {@code y} output */ @OpMetadata( opType = Tanh.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/TanhGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/TanhGrad.java index c638f78b3fe..273adcf20a6 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/TanhGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/TanhGrad.java @@ -37,8 +37,6 @@ * Computes the gradient for the tanh of {@code x} wrt its input. * Specifically, {@code grad = dy * (1 - y*y)}, where {@code y = tanh(x)}, and {@code dy} * is the corresponding input gradient. - * - * @param data type for {@code z} output */ @OpMetadata( opType = TanhGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/TruncateDiv.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/TruncateDiv.java index 377eb5848d8..7857bd6221b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/TruncateDiv.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/TruncateDiv.java @@ -41,8 +41,6 @@ * Python Semantics. *

    NOTE: {@code math.TruncateDiv} supports broadcasting. More about broadcasting * here - * - * @param data type for {@code z} output */ @OpMetadata( opType = TruncateDiv.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/TruncateMod.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/TruncateMod.java index e80c75e5709..bd7a41fafd2 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/TruncateMod.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/TruncateMod.java @@ -38,8 +38,6 @@ * the result here is consistent with a truncating divide. E.g. {@code truncate(x / y) * y + truncate_mod(x, y) = x}. *

    NOTE: {@code math.TruncateMod} supports broadcasting. More about broadcasting * here - * - * @param data type for {@code z} output */ @OpMetadata( opType = TruncateMod.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UniformQuantizedAdd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UniformQuantizedAdd.java index 535d432dcca..312c712b44e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UniformQuantizedAdd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UniformQuantizedAdd.java @@ -52,8 +52,6 @@ * i.e. For both operands {@code lhs} and {@code rhs}, * if {@code operand.quantization_axis} >= 0 and {@code output.quantization_axis} >= 0, * {@code operand.dims} - {@code operand.quantization_axis} must be equal to {@code output.dims} - {@code output.quantization_axis}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = UniformQuantizedAdd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UnsortedSegmentMax.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UnsortedSegmentMax.java index 50d32494e80..27888d7f1f5 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UnsortedSegmentMax.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UnsortedSegmentMax.java @@ -67,8 +67,6 @@ * * * - * - * @param data type for {@code output} output */ @OpMetadata( opType = UnsortedSegmentMax.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UnsortedSegmentMin.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UnsortedSegmentMin.java index db83daaead7..af919665a56 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UnsortedSegmentMin.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UnsortedSegmentMin.java @@ -64,8 +64,6 @@ * result in safe but unspecified behavior, which may include ignoring * out-of-bound indices or outputting a tensor with a 0 stored in the first * dimension of its shape if {@code num_segments} is 0. - * - * @param data type for {@code output} output */ @OpMetadata( opType = UnsortedSegmentMin.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UnsortedSegmentProd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UnsortedSegmentProd.java index a36c653ef2a..fd3f76bc1e7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UnsortedSegmentProd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UnsortedSegmentProd.java @@ -64,8 +64,6 @@ * result in safe but unspecified behavior, which may include ignoring * out-of-bound indices or outputting a tensor with a 0 stored in the first * dimension of its shape if {@code num_segments} is 0. - * - * @param data type for {@code output} output */ @OpMetadata( opType = UnsortedSegmentProd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UnsortedSegmentSum.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UnsortedSegmentSum.java index 14c0bef2293..af4dd57e39f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UnsortedSegmentSum.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/UnsortedSegmentSum.java @@ -67,8 +67,6 @@ * * * - * - * @param data type for {@code output} output */ @OpMetadata( opType = UnsortedSegmentSum.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Xdivy.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Xdivy.java index 8be3546a9f0..0ba35ba8a83 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Xdivy.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Xdivy.java @@ -35,8 +35,6 @@ /** * Returns 0 if x == 0, and x / y otherwise, elementwise. - * - * @param data type for {@code z} output */ @OpMetadata( opType = Xdivy.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Xlog1py.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Xlog1py.java index b798c8ef598..c6e6184bed0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Xlog1py.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Xlog1py.java @@ -35,8 +35,6 @@ /** * Returns 0 if x == 0, and x * log1p(y) otherwise, elementwise. - * - * @param data type for {@code z} output */ @OpMetadata( opType = Xlog1py.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Xlogy.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Xlogy.java index b4ad543093f..e27ef9a210c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Xlogy.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Xlogy.java @@ -35,8 +35,6 @@ /** * Returns 0 if x == 0, and x * log(y) otherwise, elementwise. - * - * @param data type for {@code z} output */ @OpMetadata( opType = Xlogy.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Zeta.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Zeta.java index 887fb1af711..593507c4340 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Zeta.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/Zeta.java @@ -37,8 +37,6 @@ * Compute the Hurwitz zeta function \(\zeta(x, q)\). * The Hurwitz zeta function is defined as: *

    \(\zeta(x, q) = \sum_{n=0}^{\infty} (q + n)^{-x}\) - * - * @param data type for {@code z} output */ @OpMetadata( opType = Zeta.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/erfinv.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/erfinv.java index a4b68423646..a208c49973f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/erfinv.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/erfinv.java @@ -35,8 +35,6 @@ /** * The Erfinv operation - * - * @param data type for {@code y} output */ @OpMetadata( opType = erfinv.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselJ0.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselJ0.java index 6ef1d289c7d..839ca6179b3 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselJ0.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselJ0.java @@ -35,8 +35,6 @@ /** * The BesselJ0 operation - * - * @param data type for {@code y} output */ @OpMetadata( opType = BesselJ0.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselJ1.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselJ1.java index 5e7718f4144..6e125a29821 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselJ1.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselJ1.java @@ -35,8 +35,6 @@ /** * The BesselJ1 operation - * - * @param data type for {@code y} output */ @OpMetadata( opType = BesselJ1.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselK0.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselK0.java index 338b5759a10..8ec9f528212 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselK0.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselK0.java @@ -35,8 +35,6 @@ /** * The BesselK0 operation - * - * @param data type for {@code y} output */ @OpMetadata( opType = BesselK0.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselK0e.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselK0e.java index f2a01b68ba8..69d5995c59d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselK0e.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselK0e.java @@ -35,8 +35,6 @@ /** * The BesselK0e operation - * - * @param data type for {@code y} output */ @OpMetadata( opType = BesselK0e.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselK1.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselK1.java index 8143c8107d5..f26b95a8c53 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselK1.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselK1.java @@ -35,8 +35,6 @@ /** * The BesselK1 operation - * - * @param data type for {@code y} output */ @OpMetadata( opType = BesselK1.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselK1e.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselK1e.java index 08ea2073dab..995eaccd9dd 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselK1e.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselK1e.java @@ -35,8 +35,6 @@ /** * The BesselK1e operation - * - * @param data type for {@code y} output */ @OpMetadata( opType = BesselK1e.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselY0.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselY0.java index c82e15022db..1beae63d61f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselY0.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselY0.java @@ -35,8 +35,6 @@ /** * The BesselY0 operation - * - * @param data type for {@code y} output */ @OpMetadata( opType = BesselY0.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselY1.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselY1.java index 5b86f1987e3..3985dee42d0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselY1.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/BesselY1.java @@ -35,8 +35,6 @@ /** * The BesselY1 operation - * - * @param data type for {@code y} output */ @OpMetadata( opType = BesselY1.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/Dawsn.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/Dawsn.java index 045ffc0d94c..e34e0376249 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/Dawsn.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/Dawsn.java @@ -35,8 +35,6 @@ /** * The Dawsn operation - * - * @param data type for {@code y} output */ @OpMetadata( opType = Dawsn.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/Expint.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/Expint.java index bcdff92cb07..9b61e0fcb90 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/Expint.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/Expint.java @@ -35,8 +35,6 @@ /** * The Expint operation - * - * @param data type for {@code y} output */ @OpMetadata( opType = Expint.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/FresnelCos.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/FresnelCos.java index 790daad9115..dffb6bda0f0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/FresnelCos.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/FresnelCos.java @@ -35,8 +35,6 @@ /** * The FresnelCos operation - * - * @param data type for {@code y} output */ @OpMetadata( opType = FresnelCos.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/FresnelSin.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/FresnelSin.java index a148cb42bff..23e7e1d4bbd 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/FresnelSin.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/FresnelSin.java @@ -35,8 +35,6 @@ /** * The FresnelSin operation - * - * @param data type for {@code y} output */ @OpMetadata( opType = FresnelSin.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/Spence.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/Spence.java index 7835a2fca79..0a012a3be6c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/Spence.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/math/special/Spence.java @@ -35,8 +35,6 @@ /** * The Spence operation - * - * @param data type for {@code y} output */ @OpMetadata( opType = Spence.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/AvgPool.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/AvgPool.java index aa583ae8174..3d6355679c8 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/AvgPool.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/AvgPool.java @@ -38,8 +38,6 @@ * Performs average pooling on the input. * Each entry in {@code output} is the mean of the corresponding size {@code ksize} * window in {@code value}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = AvgPool.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/AvgPool3d.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/AvgPool3d.java index b7b61a50351..5f5410d91d5 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/AvgPool3d.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/AvgPool3d.java @@ -38,8 +38,6 @@ * Performs 3D average pooling on the input. * Each entry in {@code output} is the mean of the corresponding size {@code ksize} window in * {@code value}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = AvgPool3d.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/AvgPool3dGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/AvgPool3dGrad.java index 6acc17b69ae..4b41a0338b3 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/AvgPool3dGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/AvgPool3dGrad.java @@ -37,8 +37,6 @@ /** * Computes gradients of average pooling function. - * - * @param data type for {@code output} output */ @OpMetadata( opType = AvgPool3dGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/AvgPoolGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/AvgPoolGrad.java index 74acc456c92..9a2c1511bba 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/AvgPoolGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/AvgPoolGrad.java @@ -37,8 +37,6 @@ /** * Computes gradients of the average pooling function. - * - * @param data type for {@code output} output */ @OpMetadata( opType = AvgPoolGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BatchNormWithGlobalNormalization.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BatchNormWithGlobalNormalization.java index deaec7bdd3d..ef7ead8115e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BatchNormWithGlobalNormalization.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BatchNormWithGlobalNormalization.java @@ -36,8 +36,6 @@ /** * Batch normalization. * This op is deprecated. Prefer {@code tf.nn.batch_normalization}. - * - * @param data type for {@code result} output */ @OpMetadata( opType = BatchNormWithGlobalNormalization.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BatchNormWithGlobalNormalizationGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BatchNormWithGlobalNormalizationGrad.java index f75aebb0e4c..03e84d778c4 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BatchNormWithGlobalNormalizationGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BatchNormWithGlobalNormalizationGrad.java @@ -36,8 +36,6 @@ /** * Gradients for batch normalization. * This op is deprecated. See {@code tf.nn.batch_normalization}. - * - * @param data type for {@code dx} output */ @OpMetadata( opType = BatchNormWithGlobalNormalizationGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BiasAdd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BiasAdd.java index c228699e9cb..5f826546b07 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BiasAdd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BiasAdd.java @@ -37,8 +37,6 @@ * Adds {@code bias} to {@code value}. * This is a special case of {@code tf.add} where {@code bias} is restricted to be 1-D. * Broadcasting is supported, so {@code value} may have any number of dimensions. - * - * @param data type for {@code output} output */ @OpMetadata( opType = BiasAdd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BiasAddGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BiasAddGrad.java index 01c90a2fd49..33c2829c271 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BiasAddGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BiasAddGrad.java @@ -38,8 +38,6 @@ * It accumulates all the values from out_backprop into the feature dimension. * For NHWC data format, the feature dimension is the last. For NCHW data format, * the feature dimension is the third-to-last. - * - * @param data type for {@code output} output */ @OpMetadata( opType = BiasAddGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BlockLSTM.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BlockLSTM.java index 3363a371d20..ef303c35efc 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BlockLSTM.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BlockLSTM.java @@ -56,8 +56,6 @@ * this op uses IFCO. So in order for the following snippet to be equivalent * all gate-related outputs should be reordered. * - * - * @param data type for {@code i} output */ @OpMetadata( opType = BlockLSTM.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BlockLSTMGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BlockLSTMGrad.java index 2684ae60017..85bc08f38b6 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BlockLSTMGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/BlockLSTMGrad.java @@ -37,8 +37,6 @@ /** * Computes the LSTM cell backward propagation for the entire time sequence. * This implementation is to be used in conjunction of BlockLSTMV2. - * - * @param data type for {@code x_grad} output */ @OpMetadata( opType = BlockLSTMGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv.java index 7e352a1ff76..096c8a3719f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv.java @@ -38,8 +38,6 @@ * Computes a N-D convolution given (N+1+batch_dims)-D {@code input} and (N+2)-D {@code filter} tensors. * General function for computing a N-D convolution. It is required that * {@code 1 <= N <= 3}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Conv.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2d.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2d.java index 9fef633fefd..6d7eb6e004e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2d.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2d.java @@ -56,8 +56,6 @@ * *

    Must have {@code strides[0] = strides[3] = 1}. For the most common case of the same * horizontal and vertices strides, {@code strides = [1, stride, stride, 1]}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Conv2d.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2dBackpropFilter.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2dBackpropFilter.java index 9d09ebaa1df..2d5af50d5e6 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2dBackpropFilter.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2dBackpropFilter.java @@ -37,8 +37,6 @@ /** * Computes the gradients of convolution with respect to the filter. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Conv2dBackpropFilter.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2dBackpropFilterV2.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2dBackpropFilterV2.java index 901d2a50f72..1b8a95c8728 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2dBackpropFilterV2.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2dBackpropFilterV2.java @@ -35,8 +35,6 @@ /** * Computes the gradients of convolution with respect to the filter. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Conv2dBackpropFilterV2.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2dBackpropInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2dBackpropInput.java index 9e44c7170cb..fc0f5f296e1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2dBackpropInput.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2dBackpropInput.java @@ -37,8 +37,6 @@ /** * Computes the gradients of convolution with respect to the input. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Conv2dBackpropInput.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2dBackpropInputV2.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2dBackpropInputV2.java index 1fa123e14b2..04941640016 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2dBackpropInputV2.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv2dBackpropInputV2.java @@ -35,8 +35,6 @@ /** * Computes the gradients of convolution with respect to the input. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Conv2dBackpropInputV2.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv3d.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv3d.java index 5d3d0925894..7de4f93716d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv3d.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv3d.java @@ -40,8 +40,6 @@ * two waveforms as a function of a time-lag applied to one of them. This * is also known as a sliding dot product or sliding inner-product. *

    Our Conv3D implements a form of cross-correlation. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Conv3d.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv3dBackpropFilter.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv3dBackpropFilter.java index 2cc01b0dfe0..79970ac4d15 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv3dBackpropFilter.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv3dBackpropFilter.java @@ -37,8 +37,6 @@ /** * Computes the gradients of 3-D convolution with respect to the filter. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Conv3dBackpropFilter.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv3dBackpropInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv3dBackpropInput.java index 651f027ac42..d60306ab96d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv3dBackpropInput.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Conv3dBackpropInput.java @@ -36,8 +36,6 @@ /** * Computes the gradients of 3-D convolution with respect to the input. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Conv3dBackpropInput.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CtcBeamSearchDecoder.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CtcBeamSearchDecoder.java index 59cde61eb54..f270607bb50 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CtcBeamSearchDecoder.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CtcBeamSearchDecoder.java @@ -43,8 +43,6 @@ * the first of these is emitted. That is, when the top path is "A B B B B", * "A B" is returned if merge_repeated = True but "A B B B B" is * returned if merge_repeated = False. - * - * @param data type for {@code log_probability} output */ @OpMetadata( opType = CtcBeamSearchDecoder.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CtcGreedyDecoder.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CtcGreedyDecoder.java index de01c874c33..688f60ab28e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CtcGreedyDecoder.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CtcGreedyDecoder.java @@ -45,8 +45,6 @@ *

    Regardless of the value of merge_repeated, if the maximum index of a given * time and batch corresponds to the blank, index {@code (num_classes - 1)}, no new * element is emitted. - * - * @param data type for {@code log_probability} output */ @OpMetadata( opType = CtcGreedyDecoder.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CtcLoss.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CtcLoss.java index d2dd09549fa..8369dae6c75 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CtcLoss.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CtcLoss.java @@ -39,8 +39,6 @@ * Calculates the CTC Loss (log probability) for each batch entry. Also calculates * the gradient. This class performs the softmax operation for you, so inputs * should be e.g. linear projections of outputs by an LSTM. - * - * @param data type for {@code loss} output */ @OpMetadata( opType = CtcLoss.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRNN.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRNN.java index 0525df86f45..8845090aa6e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRNN.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRNN.java @@ -73,8 +73,6 @@ * major. * reserve_space: An opaque tensor that can be used in backprop calculation. It * is only produced if is_training is true. - * - * @param data type for {@code output} output */ @OpMetadata( opType = CudnnRNN.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRNNBackprop.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRNNBackprop.java index d76dd629918..a1e09f597ac 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRNNBackprop.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRNNBackprop.java @@ -83,8 +83,6 @@ * shape as input_c. * params_backprop: The backprop to the params buffer in the forward pass. Has the * same shape as params. - * - * @param data type for {@code input_backprop} output */ @OpMetadata( opType = CudnnRNNBackprop.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRNNCanonicalToParams.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRNNCanonicalToParams.java index a513cf67d66..0c38a68a23e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRNNCanonicalToParams.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRNNCanonicalToParams.java @@ -65,8 +65,6 @@ * seed2: the 2nd part of a seed to initialize dropout. * num_proj: The output dimensionality for the projection matrices. If None or 0, * no projection is performed. - * - * @param data type for {@code params} output */ @OpMetadata( opType = CudnnRNNCanonicalToParams.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRNNParamsToCanonical.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRNNParamsToCanonical.java index 6a1e55f34e2..b85a3568412 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRNNParamsToCanonical.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRNNParamsToCanonical.java @@ -65,8 +65,6 @@ * seed2: the 2nd part of a seed to initialize dropout. * num_proj: The output dimensionality for the projection matrices. If None or 0, * no projection is performed. - * - * @param data type for {@code weights} output */ @OpMetadata( opType = CudnnRNNParamsToCanonical.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRnnParamsSize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRnnParamsSize.java index 051c792e878..1dbc4d48ad8 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRnnParamsSize.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/CudnnRnnParamsSize.java @@ -57,8 +57,6 @@ * compatible across GPUs. Please use CudnnRNNParamsWeights and * CudnnRNNParamsBiases to save and restore them in a way that is compatible * across different runs. - * - * @param data type for {@code params_size} output */ @OpMetadata( opType = CudnnRnnParamsSize.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DataFormatDimMap.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DataFormatDimMap.java index 3376ad9ed6e..6e83cd0c867 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DataFormatDimMap.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DataFormatDimMap.java @@ -36,8 +36,6 @@ /** * Returns the dimension index in the destination data format given the one in * the source data format. - * - * @param data type for {@code y} output */ @OpMetadata( opType = DataFormatDimMap.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DataFormatVecPermute.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DataFormatVecPermute.java index e02890a40ce..f719f7cc7ce 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DataFormatVecPermute.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DataFormatVecPermute.java @@ -64,8 +64,6 @@ *

      * [1, 2]
      * 
    - * - * @param data type for {@code y} output */ @OpMetadata( opType = DataFormatVecPermute.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DepthToSpace.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DepthToSpace.java index cceb78d27d1..2f1880cda02 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DepthToSpace.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DepthToSpace.java @@ -109,8 +109,6 @@ * [ [11], [12], [15], [16]]]] * * - * - * @param data type for {@code output} output */ @OpMetadata( opType = DepthToSpace.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DepthwiseConv2dNative.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DepthwiseConv2dNative.java index e3f7f02ac33..93a0b744513 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DepthwiseConv2dNative.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DepthwiseConv2dNative.java @@ -52,8 +52,6 @@ * *

    Must have {@code strides[0] = strides[3] = 1}. For the most common case of the same * horizontal and vertices strides, {@code strides = [1, stride, stride, 1]}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = DepthwiseConv2dNative.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DepthwiseConv2dNativeBackpropFilter.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DepthwiseConv2dNativeBackpropFilter.java index 6c55468131b..66eb190debf 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DepthwiseConv2dNativeBackpropFilter.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DepthwiseConv2dNativeBackpropFilter.java @@ -37,8 +37,6 @@ /** * Computes the gradients of depthwise convolution with respect to the filter. - * - * @param data type for {@code output} output */ @OpMetadata( opType = DepthwiseConv2dNativeBackpropFilter.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DepthwiseConv2dNativeBackpropInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DepthwiseConv2dNativeBackpropInput.java index 0f1a70bb566..287b29abba1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DepthwiseConv2dNativeBackpropInput.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/DepthwiseConv2dNativeBackpropInput.java @@ -37,8 +37,6 @@ /** * Computes the gradients of depthwise convolution with respect to the input. - * - * @param data type for {@code output} output */ @OpMetadata( opType = DepthwiseConv2dNativeBackpropInput.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Dilation2d.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Dilation2d.java index f213e685ab6..019c786873c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Dilation2d.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Dilation2d.java @@ -57,8 +57,6 @@ * kernel size and contains all zeros. *

    Note on duality: The dilation of {@code input} by the {@code filter} is equal to the * negation of the erosion of {@code -input} by the reflected {@code filter}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Dilation2d.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Dilation2dBackpropFilter.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Dilation2dBackpropFilter.java index 93381ee22cf..cae841aee0d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Dilation2dBackpropFilter.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Dilation2dBackpropFilter.java @@ -36,8 +36,6 @@ /** * Computes the gradient of morphological 2-D dilation with respect to the filter. - * - * @param data type for {@code filter_backprop} output */ @OpMetadata( opType = Dilation2dBackpropFilter.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Dilation2dBackpropInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Dilation2dBackpropInput.java index 7747bc57c64..8204785ae02 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Dilation2dBackpropInput.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Dilation2dBackpropInput.java @@ -36,8 +36,6 @@ /** * Computes the gradient of morphological 2-D dilation with respect to the input. - * - * @param data type for {@code in_backprop} output */ @OpMetadata( opType = Dilation2dBackpropInput.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Elu.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Elu.java index 6119dd0dec2..253baee2601 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Elu.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Elu.java @@ -55,8 +55,6 @@ * *

    See Fast and Accurate Deep Network Learning by Exponential Linear Units (ELUs) * - * - * @param data type for {@code activations} output */ @OpMetadata( opType = Elu.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/EluGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/EluGrad.java index 2df99ce5c8f..4d32b6d365f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/EluGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/EluGrad.java @@ -35,8 +35,6 @@ /** * Computes gradients for the exponential linear (Elu) operation. - * - * @param data type for {@code backprops} output */ @OpMetadata( opType = EluGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FractionalAvgPool.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FractionalAvgPool.java index 04cfd0e3cd9..bb525aac295 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FractionalAvgPool.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FractionalAvgPool.java @@ -41,8 +41,6 @@ * region generation step. The only difference is that after pooling regions are * generated, a mean operation is performed instead of a max operation in each * pooling region. - * - * @param data type for {@code output} output */ @OpMetadata( opType = FractionalAvgPool.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FractionalAvgPoolGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FractionalAvgPoolGrad.java index 71b1e624c55..eee42886ab1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FractionalAvgPoolGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FractionalAvgPoolGrad.java @@ -41,8 +41,6 @@ * out_backprop to those indices that form the same pooling cell. Therefore, we * just need to know the shape of original input tensor, instead of the whole * tensor. - * - * @param data type for {@code output} output */ @OpMetadata( opType = FractionalAvgPoolGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FractionalMaxPool.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FractionalMaxPool.java index d4c2cb5cf15..08bcbd1a63d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FractionalMaxPool.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FractionalMaxPool.java @@ -63,8 +63,6 @@ * *

    For more details on fractional max pooling, see this paper: * Benjamin Graham, Fractional Max-Pooling - * - * @param data type for {@code output} output */ @OpMetadata( opType = FractionalMaxPool.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FractionalMaxPoolGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FractionalMaxPoolGrad.java index 432d6bbfdb7..d44e062ccf7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FractionalMaxPoolGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FractionalMaxPoolGrad.java @@ -36,8 +36,6 @@ /** * Computes gradient of the FractionalMaxPool function. - * - * @param data type for {@code output} output */ @OpMetadata( opType = FractionalMaxPoolGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FusedBatchNorm.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FusedBatchNorm.java index 41e62263399..f5cede8855e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FusedBatchNorm.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FusedBatchNorm.java @@ -37,10 +37,6 @@ * Batch normalization. * Note that the size of 4D Tensors are defined by either "NHWC" or "NCHW". * The size of 1D Tensors matches the dimension C of the 4D Tensors. - * - * @param data type for {@code y} output - * - * @param data type for {@code batch_mean} output */ @OpMetadata( opType = FusedBatchNorm.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FusedBatchNormGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FusedBatchNormGrad.java index efc751554d2..985249a19fe 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FusedBatchNormGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FusedBatchNormGrad.java @@ -38,10 +38,6 @@ * Gradient for batch normalization. * Note that the size of 4D Tensors are defined by either "NHWC" or "NCHW". * The size of 1D Tensors matches the dimension C of the 4D Tensors. - * - * @param data type for {@code x_backprop} output - * - * @param data type for {@code scale_backprop} output */ @OpMetadata( opType = FusedBatchNormGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FusedPadConv2d.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FusedPadConv2d.java index 1a11cf9c722..336419f92ad 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FusedPadConv2d.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FusedPadConv2d.java @@ -48,8 +48,6 @@ * Internally this op uses a single per-graph scratch buffer, which means that it * will block if multiple versions are being run in parallel. This is because this * operator is primarily an optimization to minimize memory usage. - * - * @param data type for {@code output} output */ @OpMetadata( opType = FusedPadConv2d.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FusedResizeAndPadConv2d.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FusedResizeAndPadConv2d.java index 69b33a7ffee..8491feba1d7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FusedResizeAndPadConv2d.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/FusedResizeAndPadConv2d.java @@ -47,8 +47,6 @@ * Internally this op uses a single per-graph scratch buffer, which means that it * will block if multiple versions are being run in parallel. This is because this * operator is primarily an optimization to minimize memory usage. - * - * @param data type for {@code output} output */ @OpMetadata( opType = FusedResizeAndPadConv2d.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/GRUBlockCell.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/GRUBlockCell.java index 413c9db45cf..0db7843bced 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/GRUBlockCell.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/GRUBlockCell.java @@ -73,8 +73,6 @@ * * h = (1-u) \circ c + u \circ h_prev * - * - * @param data type for {@code r} output */ @OpMetadata( opType = GRUBlockCell.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/GRUBlockCellGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/GRUBlockCellGrad.java index 108aa910427..7379a2790ba 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/GRUBlockCellGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/GRUBlockCellGrad.java @@ -108,8 +108,6 @@ * * d_b_c = sum of d_c_bar along axis = 0 * - * - * @param data type for {@code d_x} output */ @OpMetadata( opType = GRUBlockCellGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/InvGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/InvGrad.java index 37f66b92878..5f178f53e50 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/InvGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/InvGrad.java @@ -37,8 +37,6 @@ * Computes the gradient for the inverse of {@code x} wrt its input. * Specifically, {@code grad = -dy * y*y}, where {@code y = 1/x}, and {@code dy} * is the corresponding input gradient. - * - * @param data type for {@code z} output */ @OpMetadata( opType = InvGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/IsotonicRegression.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/IsotonicRegression.java index 8936770d8b7..ecd511253e8 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/IsotonicRegression.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/IsotonicRegression.java @@ -38,8 +38,6 @@ /** * Solves a batch of isotonic regression problems. - * - * @param data type for {@code output} output */ @OpMetadata( opType = IsotonicRegression.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/L2Loss.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/L2Loss.java index e3b179e440c..9cc952c05cb 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/L2Loss.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/L2Loss.java @@ -39,8 +39,6 @@ *

      * output = sum(t ** 2) / 2
      * 
    - * - * @param data type for {@code output} output */ @OpMetadata( opType = L2Loss.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LSTMBlockCell.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LSTMBlockCell.java index 12d4402e70f..5b1e38d3fbe 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LSTMBlockCell.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LSTMBlockCell.java @@ -57,8 +57,6 @@ * co = tanh(cs) * h = co .* o * - * - * @param data type for {@code i} output */ @OpMetadata( opType = LSTMBlockCell.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LSTMBlockCellGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LSTMBlockCellGrad.java index e22e2241718..931e4bf2381 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LSTMBlockCellGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LSTMBlockCellGrad.java @@ -36,8 +36,6 @@ /** * Computes the LSTM cell backward propagation for 1 timestep. * This implementation is to be used in conjunction of LSTMBlockCell. - * - * @param data type for {@code cs_prev_grad} output */ @OpMetadata( opType = LSTMBlockCellGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LeakyRelu.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LeakyRelu.java index 022b81f82da..a0f088f9a03 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LeakyRelu.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LeakyRelu.java @@ -35,8 +35,6 @@ /** * Computes rectified linear: {@code max(features, features * alpha)}. - * - * @param data type for {@code activations} output */ @OpMetadata( opType = LeakyRelu.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LocalResponseNormalization.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LocalResponseNormalization.java index f0bb2b5017b..17c1e5c0d04 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LocalResponseNormalization.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LocalResponseNormalization.java @@ -46,8 +46,6 @@ * *

    For details, see Krizhevsky et al., ImageNet classification with deep * convolutional neural networks (NIPS 2012) . - * - * @param data type for {@code output} output */ @OpMetadata( opType = LocalResponseNormalization.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LocalResponseNormalizationGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LocalResponseNormalizationGrad.java index 041837b7871..c0b795094aa 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LocalResponseNormalizationGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LocalResponseNormalizationGrad.java @@ -35,8 +35,6 @@ /** * Gradients for Local Response Normalization. - * - * @param data type for {@code output} output */ @OpMetadata( opType = LocalResponseNormalizationGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LogSoftmax.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LogSoftmax.java index 1f9ee440140..1e19b56c19f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LogSoftmax.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/LogSoftmax.java @@ -39,8 +39,6 @@ *

      * logsoftmax[i, j] = logits[i, j] - log(sum(exp(logits[i])))
      * 
    - * - * @param data type for {@code logsoftmax} output */ @OpMetadata( opType = LogSoftmax.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPool.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPool.java index 427b3c92bb2..75b432b8ba3 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPool.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPool.java @@ -36,8 +36,6 @@ /** * Performs max pooling on the input. - * - * @param data type for {@code output} output */ @OpMetadata( opType = MaxPool.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPool3d.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPool3d.java index d9cace3d967..d701189d5e1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPool3d.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPool3d.java @@ -36,8 +36,6 @@ /** * Performs 3D max pooling on the input. - * - * @param data type for {@code output} output */ @OpMetadata( opType = MaxPool3d.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPool3dGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPool3dGrad.java index 6ac95b8a978..932399be80b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPool3dGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPool3dGrad.java @@ -36,8 +36,6 @@ /** * Computes gradients of 3D max pooling function. - * - * @param data type for {@code output} output */ @OpMetadata( opType = MaxPool3dGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPool3dGradGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPool3dGradGrad.java index 5efa05dec89..74dbc598b35 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPool3dGradGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPool3dGradGrad.java @@ -36,8 +36,6 @@ /** * Computes second-order gradients of the maxpooling function. - * - * @param data type for {@code output} output */ @OpMetadata( opType = MaxPool3dGradGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolGrad.java index 214b0b0d31c..a329757270c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolGrad.java @@ -36,8 +36,6 @@ /** * Computes gradients of the maxpooling function. - * - * @param data type for {@code output} output */ @OpMetadata( opType = MaxPoolGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolGradGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolGradGrad.java index a33ba6642b8..0b0f0f616b7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolGradGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolGradGrad.java @@ -36,8 +36,6 @@ /** * Computes second-order gradients of the maxpooling function. - * - * @param data type for {@code output} output */ @OpMetadata( opType = MaxPoolGradGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolGradGradWithArgmax.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolGradGradWithArgmax.java index 35f1ffeb6dd..9dedc6014b8 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolGradGradWithArgmax.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolGradGradWithArgmax.java @@ -36,8 +36,6 @@ /** * Computes second-order gradients of the maxpooling function. - * - * @param data type for {@code output} output */ @OpMetadata( opType = MaxPoolGradGradWithArgmax.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolGradWithArgmax.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolGradWithArgmax.java index 0edd2ca5adc..60d7e7de94c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolGradWithArgmax.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolGradWithArgmax.java @@ -36,8 +36,6 @@ /** * Computes gradients of the maxpooling function. - * - * @param data type for {@code output} output */ @OpMetadata( opType = MaxPoolGradWithArgmax.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolWithArgmax.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolWithArgmax.java index bcfba861e1e..78e871d2de7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolWithArgmax.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/MaxPoolWithArgmax.java @@ -46,10 +46,6 @@ * even if padding is involved and the mathematically correct answer is outside * (either negative or too large). This is a bug, but fixing it is difficult to do * in a safe backwards compatible way, especially due to flattening. - * - * @param data type for {@code output} output - * - * @param data type for {@code argmax} output */ @OpMetadata( opType = MaxPoolWithArgmax.OP_NAME, @@ -137,7 +133,7 @@ public static MaxPoolWithArgmax cre describeByClass = true ) public static MaxPoolWithArgmax create(Scope scope, - Operand input, List ksize, List strides, String padding, Options[] options) { + Operand input, List ksize, List strides, String padding, Options... options) { return create(scope, input, ksize, strides, TInt64.class, padding, options); } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/NthElement.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/NthElement.java index 383dbfc3b22..57754316380 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/NthElement.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/NthElement.java @@ -43,8 +43,6 @@ *
      * values.shape = input.shape[:-1]
      * 
    - * - * @param data type for {@code values} output */ @OpMetadata( opType = NthElement.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedAvgPool.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedAvgPool.java index 2e27d649947..8987fcd7d55 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedAvgPool.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedAvgPool.java @@ -37,8 +37,6 @@ /** * Produces the average pool of the input tensor for quantized types. - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedAvgPool.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedBatchNormWithGlobalNormalization.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedBatchNormWithGlobalNormalization.java index 0b9e3b27b55..7f22995509c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedBatchNormWithGlobalNormalization.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedBatchNormWithGlobalNormalization.java @@ -39,8 +39,6 @@ * Quantized Batch normalization. * This op is deprecated and will be removed in the future. Prefer * {@code tf.nn.batch_normalization}. - * - * @param data type for {@code result} output */ @OpMetadata( opType = QuantizedBatchNormWithGlobalNormalization.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedBiasAdd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedBiasAdd.java index c95300fa493..744eb1397eb 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedBiasAdd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedBiasAdd.java @@ -38,8 +38,6 @@ /** * Adds Tensor 'bias' to Tensor 'input' for Quantized types. * Broadcasts the values of bias on dimensions 0..N-2 of 'input'. - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedBiasAdd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DAndRelu.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DAndRelu.java index 4594e0401cc..9226b7b697e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DAndRelu.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DAndRelu.java @@ -38,8 +38,6 @@ /** * The QuantizedConv2DAndRelu operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedConv2DAndRelu.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DAndReluAndRequantize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DAndReluAndRequantize.java index 0104cbf9908..f02eba09012 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DAndReluAndRequantize.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DAndReluAndRequantize.java @@ -38,8 +38,6 @@ /** * The QuantizedConv2DAndReluAndRequantize operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedConv2DAndReluAndRequantize.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DAndRequantize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DAndRequantize.java index 5fe5999adab..66344508160 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DAndRequantize.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DAndRequantize.java @@ -38,8 +38,6 @@ /** * The QuantizedConv2DAndRequantize operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedConv2DAndRequantize.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DPerChannel.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DPerChannel.java index 134449aba91..bfd108c34d3 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DPerChannel.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DPerChannel.java @@ -38,8 +38,6 @@ /** * Computes QuantizedConv2D per channel. - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedConv2DPerChannel.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBias.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBias.java index 27f5343c6ff..fe5566ac7e9 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBias.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBias.java @@ -38,8 +38,6 @@ /** * The QuantizedConv2DWithBias operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedConv2DWithBias.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasAndRelu.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasAndRelu.java index 61c9bb31b45..ff7d157a846 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasAndRelu.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasAndRelu.java @@ -38,8 +38,6 @@ /** * The QuantizedConv2DWithBiasAndRelu operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedConv2DWithBiasAndRelu.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasAndReluAndRequantize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasAndReluAndRequantize.java index 081b8ac3863..b68080cc72c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasAndReluAndRequantize.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasAndReluAndRequantize.java @@ -38,8 +38,6 @@ /** * The QuantizedConv2DWithBiasAndReluAndRequantize operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedConv2DWithBiasAndReluAndRequantize.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasAndRequantize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasAndRequantize.java index 21f4eef7826..5301017e666 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasAndRequantize.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasAndRequantize.java @@ -38,8 +38,6 @@ /** * The QuantizedConv2DWithBiasAndRequantize operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedConv2DWithBiasAndRequantize.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasSignedSumAndReluAndRequantize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasSignedSumAndReluAndRequantize.java index afdd8b87219..687e41485d4 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasSignedSumAndReluAndRequantize.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasSignedSumAndReluAndRequantize.java @@ -38,8 +38,6 @@ /** * The QuantizedConv2DWithBiasSignedSumAndReluAndRequantize operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedConv2DWithBiasSignedSumAndReluAndRequantize.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasSumAndRelu.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasSumAndRelu.java index d92782f88bb..34ceb6e7898 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasSumAndRelu.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasSumAndRelu.java @@ -38,8 +38,6 @@ /** * The QuantizedConv2DWithBiasSumAndRelu operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedConv2DWithBiasSumAndRelu.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasSumAndReluAndRequantize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasSumAndReluAndRequantize.java index 0d9c4fab0f6..021873d6885 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasSumAndReluAndRequantize.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2DWithBiasSumAndReluAndRequantize.java @@ -38,8 +38,6 @@ /** * The QuantizedConv2DWithBiasSumAndReluAndRequantize operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedConv2DWithBiasSumAndReluAndRequantize.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2d.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2d.java index 88482fc869f..77d21ba9794 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2d.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedConv2d.java @@ -42,8 +42,6 @@ * number of the associated minimum, and the highest represents the maximum. * This means that you can only interpret the quantized output in the same way, by * taking the returned minimum and maximum values into account. - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedConv2d.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedDepthwiseConv2D.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedDepthwiseConv2D.java index 19c05799f1f..3281b31698b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedDepthwiseConv2D.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedDepthwiseConv2D.java @@ -38,8 +38,6 @@ /** * Computes quantized depthwise Conv2D. - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedDepthwiseConv2D.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedDepthwiseConv2DWithBias.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedDepthwiseConv2DWithBias.java index 9414fd9e015..70314ace0b0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedDepthwiseConv2DWithBias.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedDepthwiseConv2DWithBias.java @@ -38,8 +38,6 @@ /** * Computes quantized depthwise Conv2D with Bias. - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedDepthwiseConv2DWithBias.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedDepthwiseConv2DWithBiasAndRelu.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedDepthwiseConv2DWithBiasAndRelu.java index c8d6a30445b..76b0917f709 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedDepthwiseConv2DWithBiasAndRelu.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedDepthwiseConv2DWithBiasAndRelu.java @@ -38,8 +38,6 @@ /** * Computes quantized depthwise Conv2D with Bias and Relu. - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedDepthwiseConv2DWithBiasAndRelu.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedDepthwiseConv2DWithBiasAndReluAndRequantize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedDepthwiseConv2DWithBiasAndReluAndRequantize.java index b23311716d2..55dfdecdb39 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedDepthwiseConv2DWithBiasAndReluAndRequantize.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedDepthwiseConv2DWithBiasAndReluAndRequantize.java @@ -38,8 +38,6 @@ /** * Computes quantized depthwise Conv2D with Bias, Relu and Requantize. - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedDepthwiseConv2DWithBiasAndReluAndRequantize.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedInstanceNorm.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedInstanceNorm.java index 54bd27c1705..48aedde6806 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedInstanceNorm.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedInstanceNorm.java @@ -36,8 +36,6 @@ /** * Quantized Instance normalization. - * - * @param data type for {@code y} output */ @OpMetadata( opType = QuantizedInstanceNorm.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedMaxPool.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedMaxPool.java index b1323bb3b42..e57d4e945b4 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedMaxPool.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedMaxPool.java @@ -37,8 +37,6 @@ /** * Produces the max pool of the input tensor for quantized types. - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedMaxPool.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedRelu.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedRelu.java index b80e07346d9..ad55085ab6f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedRelu.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedRelu.java @@ -37,8 +37,6 @@ /** * Computes Quantized Rectified Linear: {@code max(features, 0)} - * - * @param data type for {@code activations} output */ @OpMetadata( opType = QuantizedRelu.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedRelu6.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedRelu6.java index d820e51188a..2b2f21a6b45 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedRelu6.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedRelu6.java @@ -37,8 +37,6 @@ /** * Computes Quantized Rectified Linear 6: {@code min(max(features, 0), 6)} - * - * @param data type for {@code activations} output */ @OpMetadata( opType = QuantizedRelu6.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedReluX.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedReluX.java index 577df61b8dd..41daae389b6 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedReluX.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/QuantizedReluX.java @@ -37,8 +37,6 @@ /** * Computes Quantized Rectified Linear X: {@code min(max(features, 0), max_value)} - * - * @param data type for {@code activations} output */ @OpMetadata( opType = QuantizedReluX.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Relu.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Relu.java index 218fee4f3d2..126eb0c4c56 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Relu.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Relu.java @@ -45,8 +45,6 @@ * * * - * - * @param data type for {@code activations} output */ @OpMetadata( opType = Relu.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Relu6.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Relu6.java index 19de03d7f8e..5500229b21c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Relu6.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Relu6.java @@ -35,8 +35,6 @@ /** * Computes rectified linear 6: {@code min(max(features, 0), 6)}. - * - * @param data type for {@code activations} output */ @OpMetadata( opType = Relu6.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Relu6Grad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Relu6Grad.java index 48ec9cb7037..9af8b816d87 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Relu6Grad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Relu6Grad.java @@ -35,8 +35,6 @@ /** * Computes rectified linear 6 gradients for a Relu6 operation. - * - * @param data type for {@code backprops} output */ @OpMetadata( opType = Relu6Grad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/ReluGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/ReluGrad.java index 5e7103853f3..b15132dd583 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/ReluGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/ReluGrad.java @@ -35,8 +35,6 @@ /** * Computes rectified linear gradients for a Relu operation. - * - * @param data type for {@code backprops} output */ @OpMetadata( opType = ReluGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Selu.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Selu.java index d382a2f5a75..33d504105ec 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Selu.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Selu.java @@ -40,8 +40,6 @@ * {@code initializer = tf.variance_scaling_initializer(factor=1.0, mode='FAN_IN')}. * For correct dropout, use {@code tf.contrib.nn.alpha_dropout}. *

    See Self-Normalizing Neural Networks - * - * @param data type for {@code activations} output */ @OpMetadata( opType = Selu.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SeluGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SeluGrad.java index 7a2e0656275..bd2d2203f69 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SeluGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SeluGrad.java @@ -35,8 +35,6 @@ /** * Computes gradients for the scaled exponential linear (Selu) operation. - * - * @param data type for {@code backprops} output */ @OpMetadata( opType = SeluGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Softmax.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Softmax.java index 36ef20f21fd..dd6b9ecb2b5 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Softmax.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Softmax.java @@ -39,8 +39,6 @@ *

      * $$softmax[i, j] = exp(logits[i, j]) / sum_j(exp(logits[i, j]))$$
      * 
    - * - * @param data type for {@code softmax} output */ @OpMetadata( opType = Softmax.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SoftmaxCrossEntropyWithLogits.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SoftmaxCrossEntropyWithLogits.java index 9a17188c048..a7836f24051 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SoftmaxCrossEntropyWithLogits.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SoftmaxCrossEntropyWithLogits.java @@ -36,8 +36,6 @@ /** * Computes softmax cross entropy cost and gradients to backpropagate. * Inputs are the logits, not probabilities. - * - * @param data type for {@code loss} output */ @OpMetadata( opType = SoftmaxCrossEntropyWithLogits.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Softsign.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Softsign.java index 1345a1ffd11..1144c4c21be 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Softsign.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/Softsign.java @@ -35,8 +35,6 @@ /** * Computes softsign: {@code features / (abs(features) + 1)}. - * - * @param data type for {@code activations} output */ @OpMetadata( opType = Softsign.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SoftsignGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SoftsignGrad.java index b16c933ffe0..3ebe407b08e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SoftsignGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SoftsignGrad.java @@ -35,8 +35,6 @@ /** * Computes softsign gradients for a softsign operation. - * - * @param data type for {@code backprops} output */ @OpMetadata( opType = SoftsignGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SpaceToBatch.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SpaceToBatch.java index 050a12e7f98..e35f65ee574 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SpaceToBatch.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SpaceToBatch.java @@ -100,8 +100,6 @@ * *

    Among others, this operation is useful for reducing atrous convolution into * regular convolution. - * - * @param data type for {@code output} output */ @OpMetadata( opType = SpaceToBatch.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SpaceToDepth.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SpaceToDepth.java index 18449c4627c..aaaddf55663 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SpaceToDepth.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SpaceToDepth.java @@ -103,8 +103,6 @@ * [[9, 10, 11, 12], * [13, 14, 15, 16]]]] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = SpaceToDepth.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SparseSoftmaxCrossEntropyWithLogits.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SparseSoftmaxCrossEntropyWithLogits.java index 043587de9b5..1b7c99a694e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SparseSoftmaxCrossEntropyWithLogits.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/SparseSoftmaxCrossEntropyWithLogits.java @@ -40,8 +40,6 @@ * of features. This label is considered to have probability 1.0 for the * given row. *

    Inputs are the logits, not probabilities. - * - * @param data type for {@code loss} output */ @OpMetadata( opType = SparseSoftmaxCrossEntropyWithLogits.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/TopK.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/TopK.java index b752c40666b..5185b5fd785 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/TopK.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/TopK.java @@ -46,10 +46,6 @@ * values.shape = indices.shape = input.shape[:-1] + [k] * *

    If two elements are equal, the lower-index element appears first. - * - * @param data type for {@code values} output - * - * @param data type for {@code indices} output */ @OpMetadata( opType = TopK.OP_NAME, @@ -122,7 +118,7 @@ public static TopK create(Scope sco describeByClass = true ) public static TopK create(Scope scope, Operand input, - Operand k, Options[] options) { + Operand k, Options... options) { return create(scope, input, k, TInt32.class, options); } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/UniformQuantizedConvolution.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/UniformQuantizedConvolution.java index 9b4715c3a21..124c2b062f0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/UniformQuantizedConvolution.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/UniformQuantizedConvolution.java @@ -55,8 +55,6 @@ * *

    {@code output} is also quantized, using the same formula. * If {@code rhs} is per-tensor quantized, {@code output} must be also per-tensor quantized. - * - * @param data type for {@code output} output */ @OpMetadata( opType = UniformQuantizedConvolution.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/UniformQuantizedConvolutionHybrid.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/UniformQuantizedConvolutionHybrid.java index 02b51c0dfe4..8510272759e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/UniformQuantizedConvolutionHybrid.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/nn/UniformQuantizedConvolutionHybrid.java @@ -55,8 +55,6 @@ * *

    {@code rhs} must be quantized Tensor, where its data value is quantized using the formula: * quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val). - * - * @param data type for {@code output} output */ @OpMetadata( opType = UniformQuantizedConvolutionHybrid.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/Dequantize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/Dequantize.java index 743b6c81d93..e1333747ce9 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/Dequantize.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/Dequantize.java @@ -80,8 +80,6 @@ * : std::max(min_range / min_expected_T, * max_range / max_expected_T); * - * - * @param data type for {@code output} output */ @OpMetadata( opType = Dequantize.OP_NAME, @@ -158,7 +156,7 @@ public static Dequantize create(Scope scope, describeByClass = true ) public static Dequantize create(Scope scope, Operand input, - Operand minRange, Operand maxRange, Options[] options) { + Operand minRange, Operand maxRange, Options... options) { return create(scope, input, minRange, maxRange, TFloat32.class, options); } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/FakeQuantWithMinMaxArgsGradient.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/FakeQuantWithMinMaxArgsGradient.java index 4f3b11ce977..87007c73d6b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/FakeQuantWithMinMaxArgsGradient.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/FakeQuantWithMinMaxArgsGradient.java @@ -136,6 +136,38 @@ public static Options narrowRange(Boolean narrowRange) { * Gets backprops. * Backpropagated gradients below the FakeQuantWithMinMaxArgs operation: * {@code gradients * (inputs >= min && inputs <= max)}. + *

    +   * import tensorflow as tf
    +   *
    +   * # Define some sample data
    +   * gradients = tf.random.uniform((2, 3), minval=-5.0, maxval=5.0, dtype=tf.float32)
    +   * inputs = tf.random.uniform((2, 3), minval=-10.0, maxval=10.0, dtype=tf.float32)
    +   *
    +   * # Define quantization parameters (adjust as needed)
    +   * min_val = -2.0
    +   * max_val = 8.0
    +   * num_bits = 4  # Number of bits for quantization
    +   *
    +   * # Calculate gradients for fake quantization with specified parameters
    +   * output_gradients = tf.quantization.fake_quant_with_min_max_args_gradient(
    +   *     gradients=gradients, inputs=inputs, min=min_val, max=max_val, num_bits=num_bits, narrow_range = False, name=None
    +   * )
    +   *
    +   * # Print the original gradients and the gradients after the fake-quant operation
    +   * print("Original Gradients:")
    +   * print(gradients)
    +   * print("\nGradients after Fake-Quantization:")
    +   * print(output_gradients)
    +   *
    +   * 
    + *

    #Original Gradients: + * #tf.Tensor( + * #[[ 1.242547 3.217492 3.568469 ] + * #[-0.55371046 0.23130894 2.608243 ]], shape=(2, 3), dtype=float32) + *

    #Gradients after Fake-Quantization: + * #tf.Tensor( + * #[[ 0. 3.217492 3.568469 ] + * [-0.55371046 0.23130894 2.608243 ]], shape=(2, 3), dtype=float32)
    * @return backprops. */ public Output backprops() { diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/FakeQuantWithMinMaxVars.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/FakeQuantWithMinMaxVars.java index faa38bb0585..e78b22ca6d5 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/FakeQuantWithMinMaxVars.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/FakeQuantWithMinMaxVars.java @@ -57,6 +57,28 @@ * *

    This operation has a gradient and thus allows for training {@code min} and {@code max} * values. + *

    + *
    + *
    + *

    constant_input = tf.constant([[1.2, -0.3, 0.7], [2.1, 0.5, -1.0]], dtype=tf.float32) + *

    min_val = -0.5 + * max_val = 0.8 + * num_bits = 8 + * narrow_range = False #False:for the quantization range [0; 2^num_bits - 1] + *

    quantized_data = tf.quantization.fake_quant_with_min_max_vars( + * ... inputs=constant_input, min=min_val, max=max_val, num_bits=num_bits, narrow_range=narrow_range + * ... ) + *

    print("Input:\n", constant_input.numpy()) + * Input: + * [[ 1.2 -0.3 0.7] + * [ 2.1 0.5 -1. ]] + * print("Output:\n", quantized_data.numpy()) + * Output: + * [[ 0.8003921 -0.3007843 0.6984313] + * [ 0.8003921 0.4996078 -0.4996078]] + *

    + *
    + *
    */ @OpMetadata( opType = FakeQuantWithMinMaxVars.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/Quantize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/Quantize.java index a6a5df07a8a..ed34d301ec7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/Quantize.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/Quantize.java @@ -128,8 +128,6 @@ *

    Ensures the minimum quantization range is at least this value. * The legacy default value for this is 0.01, but it is strongly suggested to * set it to 0 for new uses. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Quantize.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeAndDequantize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeAndDequantize.java index b6552257828..eeb9f05536c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeAndDequantize.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeAndDequantize.java @@ -38,8 +38,6 @@ * Quantizes then dequantizes a tensor. * This is almost identical to QuantizeAndDequantizeV2, except that num_bits is a * tensor, so its value can change during training. - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizeAndDequantize.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeAndDequantizeV3.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeAndDequantizeV3.java index a715ecdb8e5..e1de6cd2ab7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeAndDequantizeV3.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeAndDequantizeV3.java @@ -38,8 +38,6 @@ * Quantizes then dequantizes a tensor. * This is almost identical to QuantizeAndDequantizeV2, except that num_bits is a * tensor, so its value can change during training. - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizeAndDequantizeV3.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeAndDequantizeV4.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeAndDequantizeV4.java index 75b47a7f0f9..7de2e59c64b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeAndDequantizeV4.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeAndDequantizeV4.java @@ -37,8 +37,6 @@ * Quantizes then dequantizes a tensor. * This is almost identical to QuantizeAndDequantizeV2, except that it returns a * gradient of 1 for inputs that are within the quantization range, or 0 otherwise. - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizeAndDequantizeV4.OP_NAME, @@ -114,7 +112,7 @@ public static QuantizeAndDequantizeV4 create(Scope scope, * Sets the signedInput option. * * @param signedInput Whether the quantization is signed or unsigned. (actually this parameter should - * have been called {@code signed_output}</b>) + * have been called {@code signed_output}) * @return this Options instance. */ public static Options signedInput(Boolean signedInput) { @@ -218,7 +216,7 @@ private Options() { * Sets the signedInput option. * * @param signedInput Whether the quantization is signed or unsigned. (actually this parameter should - * have been called {@code signed_output}</b>) + * have been called {@code signed_output}) * @return this Options instance. */ public Options signedInput(Boolean signedInput) { @@ -317,7 +315,7 @@ public static class Inputs extends RawOpInputs{@code signed_output}</b>) + * have been called {@code signed_output}) */ public final boolean signedInput; diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeAndDequantizeV4Grad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeAndDequantizeV4Grad.java index d2d9d9e6035..65cf77c43ca 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeAndDequantizeV4Grad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeAndDequantizeV4Grad.java @@ -37,8 +37,6 @@ * Returns the gradient of {@code QuantizeAndDequantizeV4}. * Returns a gradient of 1 for inputs that are within the quantization range, * or 0 otherwise. - * - * @param data type for {@code input_backprop} output */ @OpMetadata( opType = QuantizeAndDequantizeV4Grad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeDownAndShrinkRange.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeDownAndShrinkRange.java index d8aee82efb2..77aaa257758 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeDownAndShrinkRange.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizeDownAndShrinkRange.java @@ -56,8 +56,6 @@ * input values that only uses a small fraction of the possible range. By feeding * that output into this operator, we can reduce it from 32 bits down to 8 with * minimal loss of accuracy. - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizeDownAndShrinkRange.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizedConcat.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizedConcat.java index cae65990d35..a52e49b8080 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizedConcat.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizedConcat.java @@ -38,8 +38,6 @@ /** * Concatenates quantized tensors along one dimension. - * - * @param data type for {@code output} output */ @OpMetadata( opType = QuantizedConcat.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizedMatMulWithBiasAndDequantize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizedMatMulWithBiasAndDequantize.java index 69827ccd019..c03a82caf5c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizedMatMulWithBiasAndDequantize.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizedMatMulWithBiasAndDequantize.java @@ -37,8 +37,6 @@ /** * The QuantizedMatMulWithBiasAndDequantize operation - * - * @param data type for {@code out} output */ @OpMetadata( opType = QuantizedMatMulWithBiasAndDequantize.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizedMatMulWithBiasAndRequantize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizedMatMulWithBiasAndRequantize.java index cd48b07ac48..b848d068a15 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizedMatMulWithBiasAndRequantize.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/QuantizedMatMulWithBiasAndRequantize.java @@ -37,8 +37,6 @@ /** * The QuantizedMatMulWithBiasAndRequantize operation - * - * @param data type for {@code out} output */ @OpMetadata( opType = QuantizedMatMulWithBiasAndRequantize.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/Requantize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/Requantize.java index 48bfa78ab74..0ebd2ce0e3a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/Requantize.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/Requantize.java @@ -43,8 +43,6 @@ * interpretation of the {@code input} data. For example, if {@code input_min} is -1.0f and * {@code input_max} is 1.0f, and we are dealing with {@code quint16} quantized data, then a 0 * value in the 16-bit data should be interpreted as -1.0f, and a 65535 means 1.0f. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Requantize.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformDequantize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformDequantize.java index 97dad1321da..8f5d44bf663 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformDequantize.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformDequantize.java @@ -40,8 +40,6 @@ * Perform dequantization on the quantized Tensor {@code input}. * Given quantized {@code input} which was quantized using {@code scales} and {@code zero_points}, performs dequantization using the formula: * dequantized_data = (quantized_data - zero_point) * scale. - * - * @param data type for {@code output} output */ @OpMetadata( opType = UniformDequantize.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformQuantize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformQuantize.java index 43fed90b7cc..390ceb83d8a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformQuantize.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformQuantize.java @@ -40,8 +40,6 @@ * Perform quantization on Tensor {@code input}. * Given {@code input}, {@code scales} and {@code zero_points}, performs quantization using the formula: * quantized_data = floor(input_data * (1.0f / scale) + 0.5f) + zero_point - * - * @param data type for {@code output} output */ @OpMetadata( opType = UniformQuantize.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformQuantizedDot.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformQuantizedDot.java index 16768a99b22..eff33c22ce7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformQuantizedDot.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformQuantizedDot.java @@ -44,8 +44,6 @@ * quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val). * {@code output} is also quantized, using the same formula. * If {@code rhs} is per-tensor quantized, {@code output} must be also per-tensor quantized. - * - * @param data type for {@code output} output */ @OpMetadata( opType = UniformQuantizedDot.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformQuantizedDotHybrid.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformQuantizedDotHybrid.java index ed8c67f9a53..1f30f7a1a4c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformQuantizedDotHybrid.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformQuantizedDotHybrid.java @@ -43,8 +43,6 @@ * {@code lhs} and {@code rhs} must be 2D Tensors and the lhs.dim_size(1) must match rhs.dim_size(0). * {@code rhs} must be quantized Tensor, where its data value is quantized using the formula: * quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val). - * - * @param data type for {@code output} output */ @OpMetadata( opType = UniformQuantizedDotHybrid.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformRequantize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformRequantize.java index 85f81e8f202..eb4c511b567 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformRequantize.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/quantization/UniformRequantize.java @@ -52,8 +52,6 @@ *

  • per-axis -> per-axis where input_quantization_axis equals output_quantization_axis. * i.e. At least one among input_quantization_axis and output_quantization_axis must be -1, or two must be equal.
  • * - * - * @param data type for {@code output} output */ @OpMetadata( opType = UniformRequantize.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedBincount.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedBincount.java index 2607b8e0fcf..0aadded3990 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedBincount.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedBincount.java @@ -42,8 +42,6 @@ * the value in {@code weights} at each index where the corresponding value in {@code arr} is * {@code i}. *

    Values in {@code arr} outside of the range [0, size) are ignored. - * - * @param data type for {@code output} output */ @OpMetadata( opType = RaggedBincount.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedCountSparseOutput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedCountSparseOutput.java index 1e654d1665b..720919e6873 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedCountSparseOutput.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedCountSparseOutput.java @@ -37,8 +37,6 @@ /** * Performs sparse-output bin counting for a ragged tensor input. * Counts the number of times each value occurs in the input. - * - * @param data type for {@code output_values} output */ @OpMetadata( opType = RaggedCountSparseOutput.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedCross.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedCross.java index 1d5cc361a5f..3b356804b4f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedCross.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedCross.java @@ -39,10 +39,6 @@ /** * Generates a feature cross from a list of tensors, and returns it as a * RaggedTensor. See {@code tf.ragged.cross} for more details. - * - * @param data type for {@code output_values} output - * - * @param data type for {@code output_row_splits} output */ @OpMetadata( opType = RaggedCross.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedFillEmptyRows.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedFillEmptyRows.java index 5f1b9cf66ec..d8414fd1ae3 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedFillEmptyRows.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedFillEmptyRows.java @@ -37,8 +37,6 @@ /** * The RaggedFillEmptyRows operation - * - * @param data type for {@code output_values} output */ @OpMetadata( opType = RaggedFillEmptyRows.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedFillEmptyRowsGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedFillEmptyRowsGrad.java index 9ea15d1320a..314e4a689af 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedFillEmptyRowsGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedFillEmptyRowsGrad.java @@ -36,8 +36,6 @@ /** * The RaggedFillEmptyRowsGrad operation - * - * @param data type for {@code d_values} output */ @OpMetadata( opType = RaggedFillEmptyRowsGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedGather.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedGather.java index 059c102f6ed..3c71b9987c4 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedGather.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedGather.java @@ -56,10 +56,6 @@ * *

    (Note: This c++ op is used to implement the higher-level python * {@code tf.ragged.gather} op, which also supports ragged indices.) - * - * @param data type for {@code output_nested_splits} output - * - * @param data type for {@code output_dense_values} output */ @OpMetadata( opType = RaggedGather.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedRange.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedRange.java index 52d8d2d66b9..39a6487398e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedRange.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedRange.java @@ -50,10 +50,6 @@ *

    The input tensors {@code starts}, {@code limits}, and {@code deltas} may be scalars or vectors. * The vector inputs must all have the same size. Scalar inputs are broadcast * to match the size of the vector inputs. - * - * @param data type for {@code rt_nested_splits} output - * - * @param data type for {@code rt_dense_values} output */ @OpMetadata( opType = RaggedRange.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedTensorFromVariant.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedTensorFromVariant.java index 9223acdcd39..5e9e6cae9a7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedTensorFromVariant.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedTensorFromVariant.java @@ -50,10 +50,6 @@ * values of the decoded {@code RaggedTensor}. If {@code input_ragged_rank} is -1, then it is * inferred as {@code output_ragged_rank} - {@code rank(encoded_ragged)}. See * {@code RaggedTensorToVariant} for the corresponding encoding logic. - * - * @param data type for {@code output_nested_splits} output - * - * @param data type for {@code output_dense_values} output */ @OpMetadata( opType = RaggedTensorFromVariant.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedTensorToSparse.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedTensorToSparse.java index 510cab39924..e765d995332 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedTensorToSparse.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedTensorToSparse.java @@ -41,8 +41,6 @@ * input=ragged.from_nested_row_splits(rt_dense_values, rt_nested_splits) * output=SparseTensor(indices=sparse_indices, values=sparse_values, * dense_shape=sparse_dense_shape) - * - * @param data type for {@code sparse_values} output */ @OpMetadata( opType = RaggedTensorToSparse.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedTensorToTensor.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedTensorToTensor.java index 127c85e9f72..1bbb93a9327 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedTensorToTensor.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedTensorToTensor.java @@ -54,8 +54,6 @@ *

  • "FIRST_DIM_SIZE": if value_rowids is used for the first dimension, then it * is preceded by "FIRST_DIM_SIZE".
  • * - * - * @param data type for {@code result} output */ @OpMetadata( opType = RaggedTensorToTensor.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedTensorToVariantGradient.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedTensorToVariantGradient.java index d8e57336a0e..ca254cd1cf5 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedTensorToVariantGradient.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/ragged/RaggedTensorToVariantGradient.java @@ -42,8 +42,6 @@ * op, given the variant-encoded ragged gradients of the outputs, along with * the outer row-splits and the shape of the dense-values that were provided as * inputs to the RaggedTensorToVariant op. - * - * @param data type for {@code dense_values_grad} output */ @OpMetadata( opType = RaggedTensorToVariantGradient.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/Multinomial.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/Multinomial.java index 6412651e6ac..c4625651dc9 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/Multinomial.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/Multinomial.java @@ -38,8 +38,6 @@ /** * Draws samples from a multinomial distribution. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Multinomial.OP_NAME, @@ -111,7 +109,7 @@ public static Multinomial create(Scope scope, describeByClass = true ) public static Multinomial create(Scope scope, Operand logits, - Operand numSamples, Options[] options) { + Operand numSamples, Options... options) { return create(scope, logits, numSamples, TInt64.class, options); } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/NonDeterministicInts.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/NonDeterministicInts.java index 6008cd03718..83f81ee6c51 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/NonDeterministicInts.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/NonDeterministicInts.java @@ -38,8 +38,6 @@ /** * Non-deterministically generates some integers. * This op may use some OS-provided source of non-determinism (e.g. an RNG), so each execution will give different results. - * - * @param data type for {@code output} output */ @OpMetadata( opType = NonDeterministicInts.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/ParameterizedTruncatedNormal.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/ParameterizedTruncatedNormal.java index e2a12f2a3c9..4bc87b4da51 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/ParameterizedTruncatedNormal.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/ParameterizedTruncatedNormal.java @@ -37,8 +37,6 @@ * Outputs random values from a normal distribution. The parameters may each be a * scalar which applies to the entire output, or a vector of length shape[0] which * stores the parameters for each batch. - * - * @param data type for {@code output} output */ @OpMetadata( opType = ParameterizedTruncatedNormal.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomGamma.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomGamma.java index 5558b534e66..cc1a0ab9ba6 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomGamma.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomGamma.java @@ -38,8 +38,6 @@ * This op uses the algorithm by Marsaglia et al. to acquire samples via * transformation-rejection from pairs of uniform and normal random variables. * See http://dl.acm.org/citation.cfm?id=358414 - * - * @param data type for {@code output} output */ @OpMetadata( opType = RandomGamma.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomGammaGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomGammaGrad.java index 7baaab08ee4..4ab62242717 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomGammaGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomGammaGrad.java @@ -35,8 +35,6 @@ /** * Computes the derivative of a Gamma random sample w.r.t. {@code alpha}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = RandomGammaGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomPoisson.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomPoisson.java index d26081bd288..8abad16a003 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomPoisson.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomPoisson.java @@ -45,8 +45,6 @@ * random variables. * See Donald E. Knuth (1969). Seminumerical Algorithms. The Art of Computer * Programming, Volume 2. Addison Wesley - * - * @param data type for {@code output} output */ @OpMetadata( opType = RandomPoisson.OP_NAME, @@ -120,7 +118,7 @@ public static RandomPoisson create(Scope scope, describeByClass = true ) public static RandomPoisson create(Scope scope, Operand shape, - Operand rate, Options[] options) { + Operand rate, Options... options) { return create(scope, shape, rate, TInt64.class, options); } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomShuffle.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomShuffle.java index 8c52e218fc8..517900e7df1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomShuffle.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomShuffle.java @@ -43,8 +43,6 @@ * [3, 4], ==> [1, 2], * [5, 6]] [3, 4]] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = RandomShuffle.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomStandardNormal.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomStandardNormal.java index 3addc74b9bb..322fe10883c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomStandardNormal.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomStandardNormal.java @@ -37,8 +37,6 @@ /** * Outputs random values from a normal distribution. * The generated values will have mean 0 and standard deviation 1. - * - * @param data type for {@code output} output */ @OpMetadata( opType = RandomStandardNormal.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomUniform.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomUniform.java index 74487b121aa..5940994392c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomUniform.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomUniform.java @@ -38,8 +38,6 @@ * Outputs random values from a uniform distribution. * The generated values follow a uniform distribution in the range {@code [0, 1)}. The * lower bound 0 is included in the range, while the upper bound 1 is excluded. - * - * @param data type for {@code output} output */ @OpMetadata( opType = RandomUniform.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomUniformInt.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomUniformInt.java index 243fd44c671..6eba6a6c8b8 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomUniformInt.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/RandomUniformInt.java @@ -41,8 +41,6 @@ *

    The random integers are slightly biased unless {@code maxval - minval} is an exact * power of two. The bias is small for values of {@code maxval - minval} significantly * smaller than the range of the output (either {@code 2^32} or {@code 2^64}). - * - * @param data type for {@code output} output */ @OpMetadata( opType = RandomUniformInt.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulRandomBinomial.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulRandomBinomial.java index fc03e7feddb..67bc6bf1167 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulRandomBinomial.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulRandomBinomial.java @@ -38,8 +38,6 @@ /** * The StatefulRandomBinomial operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatefulRandomBinomial.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulStandardNormal.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulStandardNormal.java index 8330a9f4b49..ff905308114 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulStandardNormal.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulStandardNormal.java @@ -39,8 +39,6 @@ /** * Outputs random values from a normal distribution. * The generated values will have mean 0 and standard deviation 1. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatefulStandardNormal.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulTruncatedNormal.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulTruncatedNormal.java index e623baabf5c..409dff36de6 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulTruncatedNormal.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulTruncatedNormal.java @@ -41,8 +41,6 @@ * The generated values follow a normal distribution with mean 0 and standard * deviation 1, except that values whose magnitude is more than 2 standard * deviations from the mean are dropped and re-picked. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatefulTruncatedNormal.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulUniform.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulUniform.java index a0e85b0458f..65f86463b06 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulUniform.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulUniform.java @@ -40,8 +40,6 @@ * Outputs random values from a uniform distribution. * The generated values follow a uniform distribution in the range {@code [0, 1)}. The * lower bound 0 is included in the range, while the upper bound 1 is excluded. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatefulUniform.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulUniformFullInt.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulUniformFullInt.java index a43b26418ea..80f425ff575 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulUniformFullInt.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulUniformFullInt.java @@ -38,8 +38,6 @@ /** * Outputs random integers from a uniform distribution. * The generated values are uniform integers covering the whole range of {@code dtype}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatefulUniformFullInt.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulUniformInt.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulUniformInt.java index 154f3bd2841..d2854aea992 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulUniformInt.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatefulUniformInt.java @@ -42,8 +42,6 @@ *

    The random integers are slightly biased unless {@code maxval - minval} is an exact * power of two. The bias is small for values of {@code maxval - minval} significantly * smaller than the range of the output (either {@code 2^32} or {@code 2^64}). - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatefulUniformInt.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessMultinomial.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessMultinomial.java index 1c306047fd5..45a902b2da8 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessMultinomial.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessMultinomial.java @@ -38,8 +38,6 @@ /** * Draws samples from a multinomial distribution. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatelessMultinomial.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessParameterizedTruncatedNormal.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessParameterizedTruncatedNormal.java index b10e961aab2..64f85682701 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessParameterizedTruncatedNormal.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessParameterizedTruncatedNormal.java @@ -35,8 +35,6 @@ /** * The StatelessParameterizedTruncatedNormal operation - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatelessParameterizedTruncatedNormal.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomBinomial.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomBinomial.java index 71a3cb24cf9..ebd295592eb 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomBinomial.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomBinomial.java @@ -39,8 +39,6 @@ * Outputs deterministic pseudorandom random numbers from a binomial distribution. * Outputs random values from a binomial distribution. *

    The outputs are a deterministic function of {@code shape}, {@code seed}, {@code counts}, and {@code probs}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatelessRandomBinomial.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomGamma.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomGamma.java index e57dfcf90f6..69bd0d03ddd 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomGamma.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomGamma.java @@ -39,8 +39,6 @@ * Outputs deterministic pseudorandom random numbers from a gamma distribution. * Outputs random values from a gamma distribution. *

    The outputs are a deterministic function of the inputs. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatelessRandomGamma.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomNormal.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomNormal.java index 7081e980beb..bf0fa718d0e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomNormal.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomNormal.java @@ -39,8 +39,6 @@ * Outputs deterministic pseudorandom values from a normal distribution. * The generated values will have mean 0 and standard deviation 1. *

    The outputs are a deterministic function of {@code shape} and {@code seed}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatelessRandomNormal.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomNormalV2.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomNormalV2.java index b1e9dcb4439..ef4f9aafee6 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomNormalV2.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomNormalV2.java @@ -41,8 +41,6 @@ * Outputs deterministic pseudorandom values from a normal distribution. * The generated values will have mean 0 and standard deviation 1. *

    The outputs are a deterministic function of {@code shape}, {@code key}, {@code counter} and {@code alg}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatelessRandomNormalV2.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomPoisson.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomPoisson.java index 3a55731c32d..c617e49f652 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomPoisson.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomPoisson.java @@ -38,8 +38,6 @@ * Outputs deterministic pseudorandom random numbers from a Poisson distribution. * Outputs random values from a Poisson distribution. *

    The outputs are a deterministic function of {@code shape}, {@code seed}, and {@code lam}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatelessRandomPoisson.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniform.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniform.java index 6e18ceffb6f..86c24f1e171 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniform.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniform.java @@ -40,8 +40,6 @@ * The generated values follow a uniform distribution in the range {@code [0, 1)}. The * lower bound 0 is included in the range, while the upper bound 1 is excluded. *

    The outputs are a deterministic function of {@code shape} and {@code seed}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatelessRandomUniform.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformFullInt.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformFullInt.java index ef2bf5e7884..41e703d9ddf 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformFullInt.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformFullInt.java @@ -38,8 +38,6 @@ * Outputs deterministic pseudorandom random integers from a uniform distribution. * The generated values are uniform integers covering the whole range of {@code dtype}. *

    The outputs are a deterministic function of {@code shape} and {@code seed}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatelessRandomUniformFullInt.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformFullIntV2.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformFullIntV2.java index 50fb67d6fe1..7a910d86feb 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformFullIntV2.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformFullIntV2.java @@ -40,8 +40,6 @@ * Outputs deterministic pseudorandom random integers from a uniform distribution. * The generated values are uniform integers covering the whole range of {@code dtype}. *

    The outputs are a deterministic function of {@code shape}, {@code key}, {@code counter} and {@code alg}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatelessRandomUniformFullIntV2.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformInt.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformInt.java index 8bce8bc129e..5c792f75e51 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformInt.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformInt.java @@ -37,8 +37,6 @@ * Outputs deterministic pseudorandom random integers from a uniform distribution. * The generated values follow a uniform distribution in the range {@code [minval, maxval)}. *

    The outputs are a deterministic function of {@code shape}, {@code seed}, {@code minval}, and {@code maxval}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatelessRandomUniformInt.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformIntV2.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformIntV2.java index aa3e3d0de83..ae538d14050 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformIntV2.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformIntV2.java @@ -39,8 +39,6 @@ * Outputs deterministic pseudorandom random integers from a uniform distribution. * The generated values follow a uniform distribution in the range {@code [minval, maxval)}. *

    The outputs are a deterministic function of {@code shape}, {@code key}, {@code counter}, {@code alg}, {@code minval} and {@code maxval}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatelessRandomUniformIntV2.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformV2.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformV2.java index 8b0e106cb95..86bb5202639 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformV2.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessRandomUniformV2.java @@ -42,8 +42,6 @@ * The generated values follow a uniform distribution in the range {@code [0, 1)}. The * lower bound 0 is included in the range, while the upper bound 1 is excluded. *

    The outputs are a deterministic function of {@code shape}, {@code key}, {@code counter} and {@code alg}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatelessRandomUniformV2.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessTruncatedNormal.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessTruncatedNormal.java index 2ddedee0436..83c4ebdab9c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessTruncatedNormal.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessTruncatedNormal.java @@ -41,8 +41,6 @@ * deviation 1, except that values whose magnitude is more than 2 standard * deviations from the mean are dropped and re-picked. *

    The outputs are a deterministic function of {@code shape} and {@code seed}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatelessTruncatedNormal.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessTruncatedNormalV2.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessTruncatedNormalV2.java index 6505cd06561..ae8b00ae1df 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessTruncatedNormalV2.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/StatelessTruncatedNormalV2.java @@ -43,8 +43,6 @@ * deviation 1, except that values whose magnitude is more than 2 standard * deviations from the mean are dropped and re-picked. *

    The outputs are a deterministic function of {@code shape}, {@code key}, {@code counter} and {@code alg}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatelessTruncatedNormalV2.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/TruncatedNormal.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/TruncatedNormal.java index ee3e12c25e3..36fbe8a2a05 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/TruncatedNormal.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/TruncatedNormal.java @@ -39,8 +39,6 @@ * The generated values follow a normal distribution with mean 0 and standard * deviation 1, except that values whose magnitude is more than 2 standard * deviations from the mean are dropped and re-picked. - * - * @param data type for {@code output} output */ @OpMetadata( opType = TruncatedNormal.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/experimental/StatelessShuffle.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/experimental/StatelessShuffle.java index 5100d0ef8c6..dc17294084b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/experimental/StatelessShuffle.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/random/experimental/StatelessShuffle.java @@ -45,8 +45,6 @@ * [5, 6]] [3, 4]] * *

    The outputs are a deterministic function of {@code value}, {@code key}, {@code counter} and {@code alg}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = StatelessShuffle.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Fft.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Fft.java index 42ef1e6bdf9..220c72d1723 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Fft.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Fft.java @@ -37,8 +37,6 @@ * Fast Fourier transform. * Computes the 1-dimensional discrete Fourier transform over the inner-most * dimension of {@code input}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Fft.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Fft2d.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Fft2d.java index 118d2db63e0..4f78086027b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Fft2d.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Fft2d.java @@ -37,8 +37,6 @@ * 2D fast Fourier transform. * Computes the 2-dimensional discrete Fourier transform over the inner-most * 2 dimensions of {@code input}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Fft2d.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Fft3d.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Fft3d.java index 6195de0eae8..7f5478e228a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Fft3d.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Fft3d.java @@ -37,8 +37,6 @@ * 3D fast Fourier transform. * Computes the 3-dimensional discrete Fourier transform over the inner-most 3 * dimensions of {@code input}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Fft3d.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/FftNd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/FftNd.java index b7f4268150c..8f530229379 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/FftNd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/FftNd.java @@ -44,8 +44,6 @@ * is not given, the default shape(input) is used. *

    Axes mean the dimensions to perform the transform on. Default is to perform on * all axes. - * - * @param data type for {@code output} output */ @OpMetadata( opType = FftNd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Ifft.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Ifft.java index 3a313a6f23e..6b1f6fa6d8c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Ifft.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Ifft.java @@ -37,8 +37,6 @@ * Inverse fast Fourier transform. * Computes the inverse 1-dimensional discrete Fourier transform over the * inner-most dimension of {@code input}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Ifft.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Ifft2d.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Ifft2d.java index ad0902bf3a1..2c4c19b2ead 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Ifft2d.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Ifft2d.java @@ -37,8 +37,6 @@ * Inverse 2D fast Fourier transform. * Computes the inverse 2-dimensional discrete Fourier transform over the * inner-most 2 dimensions of {@code input}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Ifft2d.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Ifft3d.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Ifft3d.java index 82251ed232c..efcb06fafcd 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Ifft3d.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Ifft3d.java @@ -37,8 +37,6 @@ * Inverse 3D fast Fourier transform. * Computes the inverse 3-dimensional discrete Fourier transform over the * inner-most 3 dimensions of {@code input}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Ifft3d.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/IfftNd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/IfftNd.java index 82855d2bab4..181e3756015 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/IfftNd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/IfftNd.java @@ -44,8 +44,6 @@ * is not given, the default shape(input) is used. *

    Axes mean the dimensions to perform the transform on. Default is to perform on * all axes. - * - * @param data type for {@code output} output */ @OpMetadata( opType = IfftNd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Irfft.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Irfft.java index ecf2703b6e8..50f6daef0a0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Irfft.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Irfft.java @@ -50,8 +50,6 @@ *

    Along the axis {@code signal.Irfft} is computed on, if {@code fft_length / 2 + 1} is smaller * than the corresponding dimension of {@code input}, the dimension is cropped. If it is * larger, the dimension is padded with zeros. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Irfft.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Irfft2d.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Irfft2d.java index 8a448fd2a52..01214bfec41 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Irfft2d.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Irfft2d.java @@ -51,8 +51,6 @@ * {@code fft_length / 2 + 1} for the inner-most dimension) is smaller than the * corresponding dimension of {@code input}, the dimension is cropped. If it is larger, * the dimension is padded with zeros. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Irfft2d.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Irfft3d.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Irfft3d.java index a336791cb83..c83389668b4 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Irfft3d.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Irfft3d.java @@ -51,8 +51,6 @@ * {@code fft_length / 2 + 1} for the inner-most dimension) is smaller than the * corresponding dimension of {@code input}, the dimension is cropped. If it is larger, * the dimension is padded with zeros. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Irfft3d.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/IrfftNd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/IrfftNd.java index 93006aea156..5e83c9f4dc3 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/IrfftNd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/IrfftNd.java @@ -48,8 +48,6 @@ * is not given, the default shape(input) is used. *

    Axes mean the dimensions to perform the transform on. Default is to perform on * all axes. - * - * @param data type for {@code output} output */ @OpMetadata( opType = IrfftNd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Rfft.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Rfft.java index f5c14f6eec7..c4d7b74e39a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Rfft.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Rfft.java @@ -46,8 +46,6 @@ *

    Along the axis {@code signal.Rfft} is computed on, if {@code fft_length} is smaller than the * corresponding dimension of {@code input}, the dimension is cropped. If it is larger, * the dimension is padded with zeros. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Rfft.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Rfft2d.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Rfft2d.java index 6587b7378c1..314d16f4eec 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Rfft2d.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Rfft2d.java @@ -47,8 +47,6 @@ *

    Along each axis {@code signal.Rfft2d} is computed on, if {@code fft_length} is smaller than the * corresponding dimension of {@code input}, the dimension is cropped. If it is larger, * the dimension is padded with zeros. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Rfft2d.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Rfft3d.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Rfft3d.java index 35746c0f93b..282c4b7386e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Rfft3d.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/Rfft3d.java @@ -47,8 +47,6 @@ *

    Along each axis {@code signal.Rfft3d} is computed on, if {@code fft_length} is smaller than the * corresponding dimension of {@code input}, the dimension is cropped. If it is larger, * the dimension is padded with zeros. - * - * @param data type for {@code output} output */ @OpMetadata( opType = Rfft3d.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/RfftNd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/RfftNd.java index 85e48957ee4..17bf1368600 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/RfftNd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/signal/RfftNd.java @@ -47,8 +47,6 @@ * is not given, the default shape(input) is used. *

    Axes mean the dimensions to perform the transform on. Default is to perform on * all axes. - * - * @param data type for {@code output} output */ @OpMetadata( opType = RfftNd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/ConvertToListOfSparseCoreCooTensors.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/ConvertToListOfSparseCoreCooTensors.java new file mode 100644 index 00000000000..7ed71c4c316 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/ConvertToListOfSparseCoreCooTensors.java @@ -0,0 +1,209 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.sparse; + +import java.util.Arrays; +import java.util.List; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.op.annotation.Operator; +import org.tensorflow.types.TFloat32; +import org.tensorflow.types.TInt32; + +/** + * The ConvertToListOfSparseCoreCooTensors operation + */ +@OpMetadata( + opType = ConvertToListOfSparseCoreCooTensors.OP_NAME, + inputsClass = ConvertToListOfSparseCoreCooTensors.Inputs.class +) +@Operator( + group = "sparse" +) +public final class ConvertToListOfSparseCoreCooTensors extends RawOp { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "ConvertToListOfSparseCoreCooTensors"; + + private List> rowIdsList; + + private List> colIdsList; + + private List> gainsList; + + @SuppressWarnings("unchecked") + public ConvertToListOfSparseCoreCooTensors(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + int rowIdsListLength = operation.outputListLength("row_ids_list"); + rowIdsList = Arrays.asList((Output[]) operation.outputList(outputIdx, rowIdsListLength)); + outputIdx += rowIdsListLength; + int colIdsListLength = operation.outputListLength("col_ids_list"); + colIdsList = Arrays.asList((Output[]) operation.outputList(outputIdx, colIdsListLength)); + outputIdx += colIdsListLength; + int gainsListLength = operation.outputListLength("gains_list"); + gainsList = Arrays.asList((Output[]) operation.outputList(outputIdx, gainsListLength)); + outputIdx += gainsListLength; + } + + /** + * Factory method to create a class wrapping a new ConvertToListOfSparseCoreCooTensors operation. + * + * @param scope current scope + * @param indicesOrRowSplits The indicesOrRowSplits value + * @param values The values value + * @param weights The weights value + * @param sampleCount The value of the sampleCount attribute + * @param numScPerChip The value of the numScPerChip attribute + * @param rowOffset The value of the rowOffset attribute + * @param colOffset The value of the colOffset attribute + * @param colShift The value of the colShift attribute + * @param numScShards The value of the numScShards attribute + * @param stackedTableSampleCount The value of the stackedTableSampleCount attribute + * @param combiner The value of the combiner attribute + * @return a new instance of ConvertToListOfSparseCoreCooTensors + */ + @Endpoint( + describeByClass = true + ) + public static ConvertToListOfSparseCoreCooTensors create(Scope scope, + Operand indicesOrRowSplits, Operand values, Operand weights, + Long sampleCount, Long numScPerChip, Long rowOffset, Long colOffset, Long colShift, + Long numScShards, Long stackedTableSampleCount, String combiner) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "ConvertToListOfSparseCoreCooTensors"); + opBuilder.addInput(indicesOrRowSplits.asOutput()); + opBuilder.addInput(values.asOutput()); + opBuilder.addInput(weights.asOutput()); + opBuilder.setAttr("sample_count", sampleCount); + opBuilder.setAttr("num_sc_per_chip", numScPerChip); + opBuilder.setAttr("row_offset", rowOffset); + opBuilder.setAttr("col_offset", colOffset); + opBuilder.setAttr("col_shift", colShift); + opBuilder.setAttr("num_sc_shards", numScShards); + opBuilder.setAttr("stacked_table_sample_count", stackedTableSampleCount); + opBuilder.setAttr("combiner", combiner); + return new ConvertToListOfSparseCoreCooTensors(opBuilder.build()); + } + + /** + * Gets rowIdsList. + * + * @return rowIdsList. + */ + public List> rowIdsList() { + return rowIdsList; + } + + /** + * Gets colIdsList. + * + * @return colIdsList. + */ + public List> colIdsList() { + return colIdsList; + } + + /** + * Gets gainsList. + * + * @return gainsList. + */ + public List> gainsList() { + return gainsList; + } + + @OpInputsMetadata( + outputsClass = ConvertToListOfSparseCoreCooTensors.class + ) + public static class Inputs extends RawOpInputs { + /** + * The indicesOrRowSplits input + */ + public final Operand indicesOrRowSplits; + + /** + * The values input + */ + public final Operand values; + + /** + * The weights input + */ + public final Operand weights; + + /** + * The sampleCount attribute + */ + public final long sampleCount; + + /** + * The rowOffset attribute + */ + public final long rowOffset; + + /** + * The colOffset attribute + */ + public final long colOffset; + + /** + * The colShift attribute + */ + public final long colShift; + + /** + * The numScShards attribute + */ + public final long numScShards; + + /** + * The stackedTableSampleCount attribute + */ + public final long stackedTableSampleCount; + + /** + * The combiner attribute + */ + public final String combiner; + + public Inputs(GraphOperation op) { + super(new ConvertToListOfSparseCoreCooTensors(op), op, Arrays.asList("sample_count", "row_offset", "col_offset", "col_shift", "num_sc_shards", "stacked_table_sample_count", "combiner")); + int inputIndex = 0; + indicesOrRowSplits = (Operand) op.input(inputIndex++); + values = (Operand) op.input(inputIndex++); + weights = (Operand) op.input(inputIndex++); + sampleCount = op.attributes().getAttrInt("sample_count"); + rowOffset = op.attributes().getAttrInt("row_offset"); + colOffset = op.attributes().getAttrInt("col_offset"); + colShift = op.attributes().getAttrInt("col_shift"); + numScShards = op.attributes().getAttrInt("num_sc_shards"); + stackedTableSampleCount = op.attributes().getAttrInt("stacked_table_sample_count"); + combiner = op.attributes().getAttrString("combiner"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/ConvertToSparseCoreCsrWrappedCooTensor.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/ConvertToSparseCoreCsrWrappedCooTensor.java new file mode 100644 index 00000000000..6590a927699 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/ConvertToSparseCoreCsrWrappedCooTensor.java @@ -0,0 +1,283 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.sparse; + +import java.util.Arrays; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.Operands; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.op.annotation.Operator; +import org.tensorflow.types.TFloat32; +import org.tensorflow.types.TInt32; +import org.tensorflow.types.TInt64; + +/** + * The ConvertToSparseCoreCsrWrappedCooTensor operation + */ +@OpMetadata( + opType = ConvertToSparseCoreCsrWrappedCooTensor.OP_NAME, + inputsClass = ConvertToSparseCoreCsrWrappedCooTensor.Inputs.class +) +@Operator( + group = "sparse" +) +public final class ConvertToSparseCoreCsrWrappedCooTensor extends RawOp { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "ConvertToSparseCoreCsrWrappedCooTensor"; + + private Output rowPointers; + + private Output sortedSampleIds; + + private Output sortedTokenIds; + + private Output sortedGains; + + private Output rowPointersUnpaddedSize; + + private Output idsUnpaddedSize; + + private Output numMinibatchesPerSc; + + public ConvertToSparseCoreCsrWrappedCooTensor(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + rowPointers = operation.output(outputIdx++); + sortedSampleIds = operation.output(outputIdx++); + sortedTokenIds = operation.output(outputIdx++); + sortedGains = operation.output(outputIdx++); + rowPointersUnpaddedSize = operation.output(outputIdx++); + idsUnpaddedSize = operation.output(outputIdx++); + numMinibatchesPerSc = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new ConvertToSparseCoreCsrWrappedCooTensor operation. + * + * @param scope current scope + * @param sortedRowIdsList The sortedRowIdsList value + * @param sortedColIdsList The sortedColIdsList value + * @param sortedGainsList The sortedGainsList value + * @param idCountsList The idCountsList value + * @param splits The splits value + * @param sampleCountPerSc The value of the sampleCountPerSc attribute + * @param numReplica The value of the numReplica attribute + * @param maxMinibatchesPerSc The value of the maxMinibatchesPerSc attribute + * @param maxIdsPerChipPerSample The value of the maxIdsPerChipPerSample attribute + * @param tableVocabSize The value of the tableVocabSize attribute + * @param featureWidth The value of the featureWidth attribute + * @param tableName The value of the tableName attribute + * @param allowIdDropping The value of the allowIdDropping attribute + * @return a new instance of ConvertToSparseCoreCsrWrappedCooTensor + */ + @Endpoint( + describeByClass = true + ) + public static ConvertToSparseCoreCsrWrappedCooTensor create(Scope scope, + Iterable> sortedRowIdsList, Iterable> sortedColIdsList, + Iterable> sortedGainsList, Iterable> idCountsList, + Operand splits, Long sampleCountPerSc, Long numReplica, Long maxMinibatchesPerSc, + Long maxIdsPerChipPerSample, Long tableVocabSize, Long featureWidth, String tableName, + Boolean allowIdDropping) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "ConvertToSparseCoreCsrWrappedCooTensor"); + opBuilder.addInputList(Operands.asOutputs(sortedRowIdsList)); + opBuilder.addInputList(Operands.asOutputs(sortedColIdsList)); + opBuilder.addInputList(Operands.asOutputs(sortedGainsList)); + opBuilder.addInputList(Operands.asOutputs(idCountsList)); + opBuilder.addInput(splits.asOutput()); + opBuilder.setAttr("sample_count_per_sc", sampleCountPerSc); + opBuilder.setAttr("num_replica", numReplica); + opBuilder.setAttr("max_minibatches_per_sc", maxMinibatchesPerSc); + opBuilder.setAttr("max_ids_per_chip_per_sample", maxIdsPerChipPerSample); + opBuilder.setAttr("table_vocab_size", tableVocabSize); + opBuilder.setAttr("feature_width", featureWidth); + opBuilder.setAttr("table_name", tableName); + opBuilder.setAttr("allow_id_dropping", allowIdDropping); + return new ConvertToSparseCoreCsrWrappedCooTensor(opBuilder.build()); + } + + /** + * Gets rowPointers. + * + * @return rowPointers. + */ + public Output rowPointers() { + return rowPointers; + } + + /** + * Gets sortedSampleIds. + * + * @return sortedSampleIds. + */ + public Output sortedSampleIds() { + return sortedSampleIds; + } + + /** + * Gets sortedTokenIds. + * + * @return sortedTokenIds. + */ + public Output sortedTokenIds() { + return sortedTokenIds; + } + + /** + * Gets sortedGains. + * + * @return sortedGains. + */ + public Output sortedGains() { + return sortedGains; + } + + /** + * Gets rowPointersUnpaddedSize. + * + * @return rowPointersUnpaddedSize. + */ + public Output rowPointersUnpaddedSize() { + return rowPointersUnpaddedSize; + } + + /** + * Gets idsUnpaddedSize. + * + * @return idsUnpaddedSize. + */ + public Output idsUnpaddedSize() { + return idsUnpaddedSize; + } + + /** + * Gets numMinibatchesPerSc. + * + * @return numMinibatchesPerSc. + */ + public Output numMinibatchesPerSc() { + return numMinibatchesPerSc; + } + + @OpInputsMetadata( + outputsClass = ConvertToSparseCoreCsrWrappedCooTensor.class + ) + public static class Inputs extends RawOpInputs { + /** + * The sortedRowIdsList input + */ + public final Iterable> sortedRowIdsList; + + /** + * The sortedColIdsList input + */ + public final Iterable> sortedColIdsList; + + /** + * The sortedGainsList input + */ + public final Iterable> sortedGainsList; + + /** + * The idCountsList input + */ + public final Iterable> idCountsList; + + /** + * The splits input + */ + public final Operand splits; + + /** + * The sampleCountPerSc attribute + */ + public final long sampleCountPerSc; + + /** + * The numReplica attribute + */ + public final long numReplica; + + /** + * The maxMinibatchesPerSc attribute + */ + public final long maxMinibatchesPerSc; + + /** + * The maxIdsPerChipPerSample attribute + */ + public final long maxIdsPerChipPerSample; + + /** + * The tableVocabSize attribute + */ + public final long tableVocabSize; + + /** + * The featureWidth attribute + */ + public final long featureWidth; + + /** + * The tableName attribute + */ + public final String tableName; + + /** + * The allowIdDropping attribute + */ + public final boolean allowIdDropping; + + public Inputs(GraphOperation op) { + super(new ConvertToSparseCoreCsrWrappedCooTensor(op), op, Arrays.asList("sample_count_per_sc", "num_replica", "max_minibatches_per_sc", "max_ids_per_chip_per_sample", "table_vocab_size", "feature_width", "table_name", "allow_id_dropping")); + int inputIndex = 0; + int sortedRowIdsListLength = op.inputListLength("sorted_row_ids_list"); + sortedRowIdsList = Arrays.asList((Operand[]) op.inputList(inputIndex, sortedRowIdsListLength)); + inputIndex += sortedRowIdsListLength; + int sortedColIdsListLength = op.inputListLength("sorted_col_ids_list"); + sortedColIdsList = Arrays.asList((Operand[]) op.inputList(inputIndex, sortedColIdsListLength)); + inputIndex += sortedColIdsListLength; + int sortedGainsListLength = op.inputListLength("sorted_gains_list"); + sortedGainsList = Arrays.asList((Operand[]) op.inputList(inputIndex, sortedGainsListLength)); + inputIndex += sortedGainsListLength; + int idCountsListLength = op.inputListLength("id_counts_list"); + idCountsList = Arrays.asList((Operand[]) op.inputList(inputIndex, idCountsListLength)); + inputIndex += idCountsListLength; + splits = (Operand) op.input(inputIndex++); + sampleCountPerSc = op.attributes().getAttrInt("sample_count_per_sc"); + numReplica = op.attributes().getAttrInt("num_replica"); + maxMinibatchesPerSc = op.attributes().getAttrInt("max_minibatches_per_sc"); + maxIdsPerChipPerSample = op.attributes().getAttrInt("max_ids_per_chip_per_sample"); + tableVocabSize = op.attributes().getAttrInt("table_vocab_size"); + featureWidth = op.attributes().getAttrInt("feature_width"); + tableName = op.attributes().getAttrString("table_name"); + allowIdDropping = op.attributes().getAttrBool("allow_id_dropping"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/DenseCountSparseOutput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/DenseCountSparseOutput.java index 49d78c0517c..5cf78a2a0a6 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/DenseCountSparseOutput.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/DenseCountSparseOutput.java @@ -37,8 +37,6 @@ /** * Performs sparse-output bin counting for a tf.tensor input. * Counts the number of times each value occurs in the input. - * - * @param data type for {@code output_values} output */ @OpMetadata( opType = DenseCountSparseOutput.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/DenseToDenseSetOperation.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/DenseToDenseSetOperation.java index 2ea6aa671d1..546adba1a9d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/DenseToDenseSetOperation.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/DenseToDenseSetOperation.java @@ -42,8 +42,6 @@ * has rank {@code n} and the same 1st {@code n-1} dimensions as {@code set1} and {@code set2}. The {@code nth} * dimension contains the result of {@code set_operation} applied to the corresponding * {@code [0...n-1]} dimension of {@code set}. - * - * @param data type for {@code result_values} output */ @OpMetadata( opType = DenseToDenseSetOperation.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/DenseToSparseSetOperation.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/DenseToSparseSetOperation.java index bb75893bfd4..1b8cbcaee50 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/DenseToSparseSetOperation.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/DenseToSparseSetOperation.java @@ -48,8 +48,6 @@ * has rank {@code n} and the same 1st {@code n-1} dimensions as {@code set1} and {@code set2}. The {@code nth} * dimension contains the result of {@code set_operation} applied to the corresponding * {@code [0...n-1]} dimension of {@code set}. - * - * @param data type for {@code result_values} output */ @OpMetadata( opType = DenseToSparseSetOperation.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/DeserializeSparse.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/DeserializeSparse.java index 697249eca81..ba0c51f9a1e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/DeserializeSparse.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/DeserializeSparse.java @@ -76,8 +76,6 @@ * values = [1, 2, 3, 4, 5] * shape = [2 50] * - * - * @param data type for {@code sparse_values} output */ @OpMetadata( opType = DeserializeSparse.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/GetStatsFromListOfSparseCoreCooTensors.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/GetStatsFromListOfSparseCoreCooTensors.java new file mode 100644 index 00000000000..51f5c33d66b --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/GetStatsFromListOfSparseCoreCooTensors.java @@ -0,0 +1,204 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.sparse; + +import java.util.Arrays; +import java.util.List; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.Operands; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.op.annotation.Operator; +import org.tensorflow.types.TFloat32; +import org.tensorflow.types.TInt32; + +/** + * The GetStatsFromListOfSparseCoreCooTensors operation + */ +@OpMetadata( + opType = GetStatsFromListOfSparseCoreCooTensors.OP_NAME, + inputsClass = GetStatsFromListOfSparseCoreCooTensors.Inputs.class +) +@Operator( + group = "sparse" +) +public final class GetStatsFromListOfSparseCoreCooTensors extends RawOp { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "GetStatsFromListOfSparseCoreCooTensors"; + + private Output maxIdsPerSparseCore; + + private Output maxUniqueIdsPerSparseCore; + + public GetStatsFromListOfSparseCoreCooTensors(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + maxIdsPerSparseCore = operation.output(outputIdx++); + maxUniqueIdsPerSparseCore = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new GetStatsFromListOfSparseCoreCooTensors operation. + * + * @param scope current scope + * @param rowIdsList The rowIdsList value + * @param colIdsList The colIdsList value + * @param gainsList The gainsList value + * @param sampleCountList The value of the sampleCountList attribute + * @param colOffsetList The value of the colOffsetList attribute + * @param numReplica The value of the numReplica attribute + * @param tableVocabSize The value of the tableVocabSize attribute + * @param featureWidth The value of the featureWidth attribute + * @param numScPerChip The value of the numScPerChip attribute + * @param tableName The value of the tableName attribute + * @return a new instance of GetStatsFromListOfSparseCoreCooTensors + */ + @Endpoint( + describeByClass = true + ) + public static GetStatsFromListOfSparseCoreCooTensors create(Scope scope, + Iterable> rowIdsList, Iterable> colIdsList, + Iterable> gainsList, List sampleCountList, List colOffsetList, + Long numReplica, Long tableVocabSize, Long featureWidth, Long numScPerChip, + String tableName) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "GetStatsFromListOfSparseCoreCooTensors"); + opBuilder.addInputList(Operands.asOutputs(rowIdsList)); + opBuilder.addInputList(Operands.asOutputs(colIdsList)); + opBuilder.addInputList(Operands.asOutputs(gainsList)); + long[] sampleCountListArray = new long[sampleCountList.size()]; + for (int i = 0 ; i < sampleCountListArray.length ; i++) { + sampleCountListArray[i] = sampleCountList.get(i); + } + opBuilder.setAttr("sample_count_list", sampleCountListArray); + long[] colOffsetListArray = new long[colOffsetList.size()]; + for (int i = 0 ; i < colOffsetListArray.length ; i++) { + colOffsetListArray[i] = colOffsetList.get(i); + } + opBuilder.setAttr("col_offset_list", colOffsetListArray); + opBuilder.setAttr("num_replica", numReplica); + opBuilder.setAttr("table_vocab_size", tableVocabSize); + opBuilder.setAttr("feature_width", featureWidth); + opBuilder.setAttr("num_sc_per_chip", numScPerChip); + opBuilder.setAttr("table_name", tableName); + return new GetStatsFromListOfSparseCoreCooTensors(opBuilder.build()); + } + + /** + * Gets maxIdsPerSparseCore. + * + * @return maxIdsPerSparseCore. + */ + public Output maxIdsPerSparseCore() { + return maxIdsPerSparseCore; + } + + /** + * Gets maxUniqueIdsPerSparseCore. + * + * @return maxUniqueIdsPerSparseCore. + */ + public Output maxUniqueIdsPerSparseCore() { + return maxUniqueIdsPerSparseCore; + } + + @OpInputsMetadata( + outputsClass = GetStatsFromListOfSparseCoreCooTensors.class + ) + public static class Inputs extends RawOpInputs { + /** + * The rowIdsList input + */ + public final Iterable> rowIdsList; + + /** + * The colIdsList input + */ + public final Iterable> colIdsList; + + /** + * The gainsList input + */ + public final Iterable> gainsList; + + /** + * The sampleCountList attribute + */ + public final long[] sampleCountList; + + /** + * The colOffsetList attribute + */ + public final long[] colOffsetList; + + /** + * The numReplica attribute + */ + public final long numReplica; + + /** + * The tableVocabSize attribute + */ + public final long tableVocabSize; + + /** + * The featureWidth attribute + */ + public final long featureWidth; + + /** + * The numScPerChip attribute + */ + public final long numScPerChip; + + /** + * The tableName attribute + */ + public final String tableName; + + public Inputs(GraphOperation op) { + super(new GetStatsFromListOfSparseCoreCooTensors(op), op, Arrays.asList("sample_count_list", "col_offset_list", "num_replica", "table_vocab_size", "feature_width", "num_sc_per_chip", "table_name")); + int inputIndex = 0; + int rowIdsListLength = op.inputListLength("row_ids_list"); + rowIdsList = Arrays.asList((Operand[]) op.inputList(inputIndex, rowIdsListLength)); + inputIndex += rowIdsListLength; + int colIdsListLength = op.inputListLength("col_ids_list"); + colIdsList = Arrays.asList((Operand[]) op.inputList(inputIndex, colIdsListLength)); + inputIndex += colIdsListLength; + int gainsListLength = op.inputListLength("gains_list"); + gainsList = Arrays.asList((Operand[]) op.inputList(inputIndex, gainsListLength)); + inputIndex += gainsListLength; + sampleCountList = op.attributes().getAttrIntList("sample_count_list"); + colOffsetList = op.attributes().getAttrIntList("col_offset_list"); + numReplica = op.attributes().getAttrInt("num_replica"); + tableVocabSize = op.attributes().getAttrInt("table_vocab_size"); + featureWidth = op.attributes().getAttrInt("feature_width"); + numScPerChip = op.attributes().getAttrInt("num_sc_per_chip"); + tableName = op.attributes().getAttrString("table_name"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SortListOfSparseCoreCooTensors.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SortListOfSparseCoreCooTensors.java new file mode 100644 index 00000000000..fb26033cfd2 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SortListOfSparseCoreCooTensors.java @@ -0,0 +1,240 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.sparse; + +import java.util.Arrays; +import java.util.List; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.Operands; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.types.TFloat32; +import org.tensorflow.types.TInt32; + +/** + * The SortListOfSparseCoreCooTensors operation + */ +@OpMetadata( + opType = SortListOfSparseCoreCooTensors.OP_NAME, + inputsClass = SortListOfSparseCoreCooTensors.Inputs.class +) +public final class SortListOfSparseCoreCooTensors extends RawOp { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "SortListOfSparseCoreCooTensors"; + + private Output sortedRowIds; + + private Output sortedColIds; + + private Output sortedGains; + + private Output idCounts; + + public SortListOfSparseCoreCooTensors(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + sortedRowIds = operation.output(outputIdx++); + sortedColIds = operation.output(outputIdx++); + sortedGains = operation.output(outputIdx++); + idCounts = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new SortListOfSparseCoreCooTensors operation. + * + * @param scope current scope + * @param rowIdsList The rowIdsList value + * @param colIdsList The colIdsList value + * @param gainsList The gainsList value + * @param sampleCountList The value of the sampleCountList attribute + * @param colOffsetList The value of the colOffsetList attribute + * @param numReplica The value of the numReplica attribute + * @param tableVocabSize The value of the tableVocabSize attribute + * @param featureWidth The value of the featureWidth attribute + * @param numScPerChip The value of the numScPerChip attribute + * @param maxIdsPerSparseCore The value of the maxIdsPerSparseCore attribute + * @param maxUniqueIdsPerSparseCore The value of the maxUniqueIdsPerSparseCore attribute + * @param tableName The value of the tableName attribute + * @return a new instance of SortListOfSparseCoreCooTensors + */ + @Endpoint( + describeByClass = true + ) + public static SortListOfSparseCoreCooTensors create(Scope scope, + Iterable> rowIdsList, Iterable> colIdsList, + Iterable> gainsList, List sampleCountList, List colOffsetList, + Long numReplica, Long tableVocabSize, Long featureWidth, Long numScPerChip, + Long maxIdsPerSparseCore, Long maxUniqueIdsPerSparseCore, String tableName) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "SortListOfSparseCoreCooTensors"); + opBuilder.addInputList(Operands.asOutputs(rowIdsList)); + opBuilder.addInputList(Operands.asOutputs(colIdsList)); + opBuilder.addInputList(Operands.asOutputs(gainsList)); + long[] sampleCountListArray = new long[sampleCountList.size()]; + for (int i = 0 ; i < sampleCountListArray.length ; i++) { + sampleCountListArray[i] = sampleCountList.get(i); + } + opBuilder.setAttr("sample_count_list", sampleCountListArray); + long[] colOffsetListArray = new long[colOffsetList.size()]; + for (int i = 0 ; i < colOffsetListArray.length ; i++) { + colOffsetListArray[i] = colOffsetList.get(i); + } + opBuilder.setAttr("col_offset_list", colOffsetListArray); + opBuilder.setAttr("num_replica", numReplica); + opBuilder.setAttr("table_vocab_size", tableVocabSize); + opBuilder.setAttr("feature_width", featureWidth); + opBuilder.setAttr("num_sc_per_chip", numScPerChip); + opBuilder.setAttr("max_ids_per_sparse_core", maxIdsPerSparseCore); + opBuilder.setAttr("max_unique_ids_per_sparse_core", maxUniqueIdsPerSparseCore); + opBuilder.setAttr("table_name", tableName); + return new SortListOfSparseCoreCooTensors(opBuilder.build()); + } + + /** + * Gets sortedRowIds. + * + * @return sortedRowIds. + */ + public Output sortedRowIds() { + return sortedRowIds; + } + + /** + * Gets sortedColIds. + * + * @return sortedColIds. + */ + public Output sortedColIds() { + return sortedColIds; + } + + /** + * Gets sortedGains. + * + * @return sortedGains. + */ + public Output sortedGains() { + return sortedGains; + } + + /** + * Gets idCounts. + * + * @return idCounts. + */ + public Output idCounts() { + return idCounts; + } + + @OpInputsMetadata( + outputsClass = SortListOfSparseCoreCooTensors.class + ) + public static class Inputs extends RawOpInputs { + /** + * The rowIdsList input + */ + public final Iterable> rowIdsList; + + /** + * The colIdsList input + */ + public final Iterable> colIdsList; + + /** + * The gainsList input + */ + public final Iterable> gainsList; + + /** + * The sampleCountList attribute + */ + public final long[] sampleCountList; + + /** + * The colOffsetList attribute + */ + public final long[] colOffsetList; + + /** + * The numReplica attribute + */ + public final long numReplica; + + /** + * The tableVocabSize attribute + */ + public final long tableVocabSize; + + /** + * The featureWidth attribute + */ + public final long featureWidth; + + /** + * The numScPerChip attribute + */ + public final long numScPerChip; + + /** + * The maxIdsPerSparseCore attribute + */ + public final long maxIdsPerSparseCore; + + /** + * The maxUniqueIdsPerSparseCore attribute + */ + public final long maxUniqueIdsPerSparseCore; + + /** + * The tableName attribute + */ + public final String tableName; + + public Inputs(GraphOperation op) { + super(new SortListOfSparseCoreCooTensors(op), op, Arrays.asList("sample_count_list", "col_offset_list", "num_replica", "table_vocab_size", "feature_width", "num_sc_per_chip", "max_ids_per_sparse_core", "max_unique_ids_per_sparse_core", "table_name")); + int inputIndex = 0; + int rowIdsListLength = op.inputListLength("row_ids_list"); + rowIdsList = Arrays.asList((Operand[]) op.inputList(inputIndex, rowIdsListLength)); + inputIndex += rowIdsListLength; + int colIdsListLength = op.inputListLength("col_ids_list"); + colIdsList = Arrays.asList((Operand[]) op.inputList(inputIndex, colIdsListLength)); + inputIndex += colIdsListLength; + int gainsListLength = op.inputListLength("gains_list"); + gainsList = Arrays.asList((Operand[]) op.inputList(inputIndex, gainsListLength)); + inputIndex += gainsListLength; + sampleCountList = op.attributes().getAttrIntList("sample_count_list"); + colOffsetList = op.attributes().getAttrIntList("col_offset_list"); + numReplica = op.attributes().getAttrInt("num_replica"); + tableVocabSize = op.attributes().getAttrInt("table_vocab_size"); + featureWidth = op.attributes().getAttrInt("feature_width"); + numScPerChip = op.attributes().getAttrInt("num_sc_per_chip"); + maxIdsPerSparseCore = op.attributes().getAttrInt("max_ids_per_sparse_core"); + maxUniqueIdsPerSparseCore = op.attributes().getAttrInt("max_unique_ids_per_sparse_core"); + tableName = op.attributes().getAttrString("table_name"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseAccumulatorTakeGradient.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseAccumulatorTakeGradient.java index aeb639d2d6e..fb8a868349d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseAccumulatorTakeGradient.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseAccumulatorTakeGradient.java @@ -45,8 +45,6 @@ * average of the accumulated gradients. Also automatically increments * the recorded global_step in the accumulator by 1, and resets the * aggregate to 0. - * - * @param data type for {@code values} output */ @OpMetadata( opType = SparseAccumulatorTakeGradient.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseAdd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseAdd.java index 1591773a20c..88ef61b78a1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseAdd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseAdd.java @@ -48,8 +48,6 @@ * {@code thresh == 0} (default) means everything is kept and actual thresholding happens * only for a positive value. *

    In the following shapes, {@code nnz} is the count after taking {@code thresh} into account. - * - * @param data type for {@code sum_values} output */ @OpMetadata( opType = SparseAdd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseAddGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseAddGrad.java index 7d6c0923f4f..8a844c96eff 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseAddGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseAddGrad.java @@ -40,8 +40,6 @@ * as {@code SparseTensor} objects. This op takes in the upstream gradient w.r.t. * non-empty values of the sum, and outputs the gradients w.r.t. the non-empty * values of A and B. - * - * @param data type for {@code a_val_grad} output */ @OpMetadata( opType = SparseAddGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseBincount.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseBincount.java index b7414e4ab54..9eca1295d45 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseBincount.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseBincount.java @@ -42,8 +42,6 @@ * the value in {@code weights} at each index where the corresponding value in {@code arr} is * {@code i}. *

    Values in {@code arr} outside of the range [0, size) are ignored. - * - * @param data type for {@code output} output */ @OpMetadata( opType = SparseBincount.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseConcat.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseConcat.java index 6d53b3a723b..016f010647b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseConcat.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseConcat.java @@ -74,8 +74,6 @@ * [ a] concat [ d e ] = [ a d e ] * [b c ] [ ] [b c ] * - * - * @param data type for {@code output_values} output */ @OpMetadata( opType = SparseConcat.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseCountSparseOutput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseCountSparseOutput.java index c3983444bd3..4c59b4e2774 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseCountSparseOutput.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseCountSparseOutput.java @@ -37,8 +37,6 @@ /** * Performs sparse-output bin counting for a sparse tensor input. * Counts the number of times each value occurs in the input. - * - * @param data type for {@code output_values} output */ @OpMetadata( opType = SparseCountSparseOutput.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseDenseCwiseAdd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseDenseCwiseAdd.java index 261d292d3b0..10ac8721d98 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseDenseCwiseAdd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseDenseCwiseAdd.java @@ -43,8 +43,6 @@ *

    By these rules, the result is a logical SparseTensor with exactly the same * indices and shape, but possibly with different non-zero values. The output of * this Op is the resultant non-zero values. - * - * @param data type for {@code output} output */ @OpMetadata( opType = SparseDenseCwiseAdd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseDenseCwiseDiv.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseDenseCwiseDiv.java index e0b56d6827c..724997892b1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseDenseCwiseDiv.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseDenseCwiseDiv.java @@ -38,8 +38,6 @@ * Component-wise divides a SparseTensor by a dense Tensor. * Limitation: this Op only broadcasts the dense side to the sparse side, but not * the other direction. - * - * @param data type for {@code output} output */ @OpMetadata( opType = SparseDenseCwiseDiv.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseDenseCwiseMul.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseDenseCwiseMul.java index 3fb7a03c683..fe8386f0838 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseDenseCwiseMul.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseDenseCwiseMul.java @@ -41,8 +41,6 @@ * contents of the dense tensor (even if it's +/-INF and that INF*0 == NaN). *

    Limitation: this Op only broadcasts the dense side to the sparse side, but not * the other direction. - * - * @param data type for {@code output} output */ @OpMetadata( opType = SparseDenseCwiseMul.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseFillEmptyRows.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseFillEmptyRows.java index 989fda03492..ef0d2f85afa 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseFillEmptyRows.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseFillEmptyRows.java @@ -71,8 +71,6 @@ *

      * reverse_index_map[j] = out_j s.t. indices[j, :] == output_indices[out_j, :]
      * 
    - * - * @param data type for {@code output_values} output */ @OpMetadata( opType = SparseFillEmptyRows.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseFillEmptyRowsGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseFillEmptyRowsGrad.java index 21d4e2f099f..3b1c80bb5b1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseFillEmptyRowsGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseFillEmptyRowsGrad.java @@ -43,8 +43,6 @@ *

    d_values[j] = grad_values[reverse_index_map[j]] * d_default_value = sum_{k : 0 .. N_full - 1} ( * grad_values[k] * 1{k not in reverse_index_map}) - * - * @param data type for {@code d_values} output */ @OpMetadata( opType = SparseFillEmptyRowsGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReduceMax.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReduceMax.java index 1e48a53ea82..256695f0acd 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReduceMax.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReduceMax.java @@ -47,8 +47,6 @@ *

    If {@code reduction_axes} has no entries, all dimensions are reduced, and a tensor * with a single element is returned. Additionally, the axes can be negative, * which are interpreted according to the indexing rules in Python. - * - * @param data type for {@code output} output */ @OpMetadata( opType = SparseReduceMax.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReduceMaxSparse.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReduceMaxSparse.java index 8f337f0c19e..b0a65daea67 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReduceMaxSparse.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReduceMaxSparse.java @@ -47,8 +47,6 @@ *

    If {@code reduction_axes} has no entries, all dimensions are reduced, and a tensor * with a single element is returned. Additionally, the axes can be negative, * which are interpreted according to the indexing rules in Python. - * - * @param data type for {@code output_values} output */ @OpMetadata( opType = SparseReduceMaxSparse.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReduceSum.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReduceSum.java index 26e0ecbfc45..3589487bece 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReduceSum.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReduceSum.java @@ -47,8 +47,6 @@ *

    If {@code reduction_axes} has no entries, all dimensions are reduced, and a tensor * with a single element is returned. Additionally, the axes can be negative, * which are interpreted according to the indexing rules in Python. - * - * @param data type for {@code output} output */ @OpMetadata( opType = SparseReduceSum.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReduceSumSparse.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReduceSumSparse.java index bb434694ccf..ef58eac0af1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReduceSumSparse.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReduceSumSparse.java @@ -47,8 +47,6 @@ *

    If {@code reduction_axes} has no entries, all dimensions are reduced, and a tensor * with a single element is returned. Additionally, the axes can be negative, * which are interpreted according to the indexing rules in Python. - * - * @param data type for {@code output_values} output */ @OpMetadata( opType = SparseReduceSumSparse.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReorder.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReorder.java index 9e963285d77..4e2883435f9 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReorder.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseReorder.java @@ -42,8 +42,6 @@ *

    Reordering does not affect the shape of the SparseTensor. *

    If the tensor has rank {@code R} and {@code N} non-empty values, {@code input_indices} has * shape {@code [N, R]}, input_values has length {@code N}, and input_shape has length {@code R}. - * - * @param data type for {@code output_values} output */ @OpMetadata( opType = SparseReorder.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentMean.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentMean.java index c1899b2fbf6..4703ba10fca 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentMean.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentMean.java @@ -38,8 +38,6 @@ * See {@code tf.sparse.segment_sum} for usage examples. *

    Like {@code SegmentMean}, but {@code segment_ids} can have rank less than {@code data}'s first * dimension, selecting a subset of dimension 0, specified by {@code indices}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = SparseSegmentMean.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentMeanGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentMeanGrad.java index 50f29512a23..9da8038eee9 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentMeanGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentMeanGrad.java @@ -39,10 +39,6 @@ * Returns tensor "output" with same shape as grad, except for dimension 0 whose * value is the number of unique indexes in "indices". Also returns vector * "sorted_unique_indices" containing the corresponding indexes from "indices". - * - * @param data type for {@code output} output - * - * @param data type for {@code sorted_unique_indices} output */ @OpMetadata( opType = SparseSegmentMeanGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentMeanWithNumSegments.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentMeanWithNumSegments.java index d1c0e07c099..99cf33231a5 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentMeanWithNumSegments.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentMeanWithNumSegments.java @@ -40,8 +40,6 @@ *

    Read * the section on segmentation * for an explanation of segments. - * - * @param data type for {@code output} output */ @OpMetadata( opType = SparseSegmentMeanWithNumSegments.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSqrtN.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSqrtN.java index ee0dc4238fc..5e299d7d124 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSqrtN.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSqrtN.java @@ -37,8 +37,6 @@ * Computes the sum along sparse segments of a tensor divided by the sqrt of N. * N is the size of the segment being reduced. *

    See {@code tf.sparse.segment_sum} for usage examples. - * - * @param data type for {@code output} output */ @OpMetadata( opType = SparseSegmentSqrtN.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSqrtNGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSqrtNGrad.java index 075cbacbcfb..b458c7daff9 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSqrtNGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSqrtNGrad.java @@ -39,10 +39,6 @@ * Returns tensor "output" with same shape as grad, except for dimension 0 whose * value is the number of unique indexes in "indices". Also returns vector * "sorted_unique_indices" containing the corresponding indexes from "indices". - * - * @param data type for {@code output} output - * - * @param data type for {@code sorted_unique_indices} output */ @OpMetadata( opType = SparseSegmentSqrtNGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSqrtNWithNumSegments.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSqrtNWithNumSegments.java index 84ccc501312..146dd696d6e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSqrtNWithNumSegments.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSqrtNWithNumSegments.java @@ -41,8 +41,6 @@ *

    Read * the section on segmentation * for an explanation of segments. - * - * @param data type for {@code output} output */ @OpMetadata( opType = SparseSegmentSqrtNWithNumSegments.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSum.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSum.java index cf2ce2c9851..2f28386d05c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSum.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSum.java @@ -61,8 +61,6 @@ * # Which is equivalent to: * tf.segment_sum(c, tf.constant([0, 0, 1])) * - * - * @param data type for {@code output} output */ @OpMetadata( opType = SparseSegmentSum.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSumGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSumGrad.java index 71b8f92448e..1372d6f7089 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSumGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSumGrad.java @@ -39,10 +39,6 @@ * Returns tensor "output" with same shape as grad, except for dimension 0 whose * value is the number of unique indexes in "indices". Also returns vector * "sorted_unique_indices" containing the corresponding indexes from "indices". - * - * @param data type for {@code output} output - * - * @param data type for {@code sorted_unique_indices} output */ @OpMetadata( opType = SparseSegmentSumGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSumWithNumSegments.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSumWithNumSegments.java index 4c44377244d..88b577afec1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSumWithNumSegments.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSegmentSumWithNumSegments.java @@ -59,8 +59,6 @@ * # [-1 -2 -3 -4] * # [ 0 0 0 0]] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = SparseSegmentSumWithNumSegments.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSlice.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSlice.java index 58c794dfb2f..a3718f1a7e0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSlice.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSlice.java @@ -52,8 +52,6 @@ * [ d e ] * [ ] * - * - * @param data type for {@code output_values} output */ @OpMetadata( opType = SparseSlice.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSliceGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSliceGrad.java index 4cfa41a7e45..969ef935dc7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSliceGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSliceGrad.java @@ -39,8 +39,6 @@ * This op takes in the upstream gradient w.r.t. non-empty values of * the sliced {@code SparseTensor}, and outputs the gradients w.r.t. * the non-empty values of input {@code SparseTensor}. - * - * @param data type for {@code val_grad} output */ @OpMetadata( opType = SparseSliceGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSoftmax.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSoftmax.java index be61533da26..43cd85b5a9f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSoftmax.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSoftmax.java @@ -48,8 +48,6 @@ * (3) Renormalizes the remaining elements. *

    Hence, the {@code SparseTensor} result has exactly the same non-zero indices and * shape. - * - * @param data type for {@code output} output */ @OpMetadata( opType = SparseSoftmax.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSparseMaximum.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSparseMaximum.java index 22a1d407274..80b44623ca8 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSparseMaximum.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSparseMaximum.java @@ -37,8 +37,6 @@ /** * Returns the element-wise max of two SparseTensors. * Assumes the two SparseTensors have the same shape, i.e., no broadcasting. - * - * @param data type for {@code output_values} output */ @OpMetadata( opType = SparseSparseMaximum.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSparseMinimum.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSparseMinimum.java index 8dd8978c627..ecbc022d09d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSparseMinimum.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSparseMinimum.java @@ -37,8 +37,6 @@ /** * Returns the element-wise min of two SparseTensors. * Assumes the two SparseTensors have the same shape, i.e., no broadcasting. - * - * @param data type for {@code output_values} output */ @OpMetadata( opType = SparseSparseMinimum.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSplit.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSplit.java index a09e9ff9d38..da66d34d134 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSplit.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseSplit.java @@ -55,8 +55,6 @@ * [ d e ] * [ ] * - * - * @param data type for {@code output_values} output */ @OpMetadata( opType = SparseSplit.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseTensorDenseAdd.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseTensorDenseAdd.java index c153cf68776..7f73769030b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseTensorDenseAdd.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseTensorDenseAdd.java @@ -37,8 +37,6 @@ /** * Adds up a {@code SparseTensor} and a dense {@code Tensor}, producing a dense {@code Tensor}. * This Op does not require {@code a_indices} be sorted in standard lexicographic order. - * - * @param data type for {@code output} output */ @OpMetadata( opType = SparseTensorDenseAdd.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseTensorDenseMatMul.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseTensorDenseMatMul.java index 346c9297596..0425354268c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseTensorDenseMatMul.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseTensorDenseMatMul.java @@ -45,8 +45,6 @@ * if adjoint_a == true: * A should be sorted in order of increasing dimension 1 (i.e., "column major" * order instead of "row major" order). - * - * @param data type for {@code product} output */ @OpMetadata( opType = SparseTensorDenseMatMul.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseToDense.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseToDense.java index 95c8f189d48..448a7c4ec83 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseToDense.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseToDense.java @@ -52,8 +52,6 @@ *

    Indices should be sorted in lexicographic order, and indices must not * contain any repeats. If {@code validate_indices} is true, these properties * are checked during execution. - * - * @param data type for {@code dense} output */ @OpMetadata( opType = SparseToDense.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseToSparseSetOperation.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseToSparseSetOperation.java index 8a71016a669..e658f88abb7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseToSparseSetOperation.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/SparseToSparseSetOperation.java @@ -54,8 +54,6 @@ * has rank {@code n} and the same 1st {@code n-1} dimensions as {@code set1} and {@code set2}. The {@code nth} * dimension contains the result of {@code set_operation} applied to the corresponding * {@code [0...n-1]} dimension of {@code set}. - * - * @param data type for {@code result_values} output */ @OpMetadata( opType = SparseToSparseSetOperation.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/TakeManySparseFromTensorsMap.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/TakeManySparseFromTensorsMap.java index e72ec904466..2c6293f402d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/TakeManySparseFromTensorsMap.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/sparse/TakeManySparseFromTensorsMap.java @@ -77,8 +77,6 @@ * values = [1, 2, 3, 4, 5] * shape = [2 50] * - * - * @param data type for {@code sparse_values} output */ @OpMetadata( opType = TakeManySparseFromTensorsMap.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/strings/StringNGrams.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/strings/StringNGrams.java index 6f5739989d0..c04fa6cd987 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/strings/StringNGrams.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/strings/StringNGrams.java @@ -40,8 +40,6 @@ * This op accepts a ragged tensor with 1 ragged dimension containing only * strings and outputs a ragged tensor with 1 ragged dimension containing ngrams * of that string, joined along the innermost axis. - * - * @param data type for {@code ngrams_splits} output */ @OpMetadata( opType = StringNGrams.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/strings/ToNumber.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/strings/ToNumber.java index e4564334bf1..74e4816ed43 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/strings/ToNumber.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/strings/ToNumber.java @@ -50,8 +50,6 @@ * * * - * - * @param data type for {@code output} output */ @OpMetadata( opType = ToNumber.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/strings/UnicodeDecode.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/strings/UnicodeDecode.java index bffb35e17e0..cc29b554bef 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/strings/UnicodeDecode.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/strings/UnicodeDecode.java @@ -52,8 +52,6 @@ *

  • {@code row_splits[i+1] - row_splits[i]} is the number of characters in the {@code i}th * string (in row-major order).
  • * - * - * @param data type for {@code row_splits} output */ @OpMetadata( opType = UnicodeDecode.OP_NAME, @@ -132,7 +130,7 @@ public static UnicodeDecode create(Scope scope, Operand create(Scope scope, Operand input, - String inputEncoding, Options[] options) { + String inputEncoding, Options... options) { return create(scope, input, inputEncoding, TInt64.class, options); } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/strings/UnicodeDecodeWithOffsets.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/strings/UnicodeDecodeWithOffsets.java index 690789b6843..fb8887c4594 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/strings/UnicodeDecodeWithOffsets.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/strings/UnicodeDecodeWithOffsets.java @@ -56,8 +56,6 @@ *
  • {@code row_splits[i+1] - row_splits[i]} is the number of characters in the {@code i}th * string (in row-major order).
  • * - * - * @param data type for {@code row_splits} output */ @OpMetadata( opType = UnicodeDecodeWithOffsets.OP_NAME, @@ -139,7 +137,7 @@ public static UnicodeDecodeWithOffsets create(Scope scope describeByClass = true ) public static UnicodeDecodeWithOffsets create(Scope scope, Operand input, - String inputEncoding, Options[] options) { + String inputEncoding, Options... options) { return create(scope, input, inputEncoding, TInt64.class, options); } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/AllToAll.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/AllToAll.java index dfe6664886c..3bd1592cbc7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/AllToAll.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/AllToAll.java @@ -49,8 +49,6 @@ * split_count=2 *

    replica 0's output: {@code [[A], [C]]} * replica 1's output: {@code [[B], [D]]} - * - * @param data type for {@code output} output */ @OpMetadata( opType = AllToAll.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ComputeDedupDataSize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ComputeDedupDataSize.java index 4305affd43e..6ff27567e92 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ComputeDedupDataSize.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ComputeDedupDataSize.java @@ -29,7 +29,6 @@ import org.tensorflow.op.annotation.Endpoint; import org.tensorflow.op.annotation.OpInputsMetadata; import org.tensorflow.op.annotation.OpMetadata; -import org.tensorflow.op.annotation.Operator; import org.tensorflow.types.TInt32; /** @@ -42,14 +41,11 @@ opType = ComputeDedupDataSize.OP_NAME, inputsClass = ComputeDedupDataSize.Inputs.class ) -@Operator( - group = "tpu" -) public final class ComputeDedupDataSize extends RawOp implements Operand { /** * The name of this op, as known by TensorFlow core engine */ - public static final String OP_NAME = "ComputeDedupDataSize"; + public static final String OP_NAME = "ComputeDedupDataSizeV2"; private Output numElements; @@ -60,18 +56,25 @@ public ComputeDedupDataSize(Operation operation) { } /** - * Factory method to create a class wrapping a new ComputeDedupDataSize operation. + * Factory method to create a class wrapping a new ComputeDedupDataSizeV2 operation. * * @param scope current scope * @param config Serialized TPUEmbeddingConfiguration proto. + * @param embeddingPartitions Serialized EmbeddingPartitionsProto proto. + * @param hbmBuffersConfig Serialized HbmBuffersConfig proto. + * @param tpuTopology Serialized TpuTopologyArgsProto proto. * @return a new instance of ComputeDedupDataSize */ @Endpoint( describeByClass = true ) - public static ComputeDedupDataSize create(Scope scope, String config) { + public static ComputeDedupDataSize create(Scope scope, String config, String embeddingPartitions, + String hbmBuffersConfig, String tpuTopology) { OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "ComputeDedupDataSize"); opBuilder.setAttr("config", config); + opBuilder.setAttr("embedding_partitions", embeddingPartitions); + opBuilder.setAttr("hbm_buffers_config", hbmBuffersConfig); + opBuilder.setAttr("tpu_topology", tpuTopology); return new ComputeDedupDataSize(opBuilder.build()); } @@ -98,10 +101,28 @@ public static class Inputs extends RawOpInputs { */ public final String config; + /** + * Serialized EmbeddingPartitionsProto proto. + */ + public final String embeddingPartitions; + + /** + * Serialized HbmBuffersConfig proto. + */ + public final String hbmBuffersConfig; + + /** + * Serialized TpuTopologyArgsProto proto. + */ + public final String tpuTopology; + public Inputs(GraphOperation op) { - super(new ComputeDedupDataSize(op), op, Arrays.asList("config")); + super(new ComputeDedupDataSize(op), op, Arrays.asList("config", "embedding_partitions", "hbm_buffers_config", "tpu_topology")); int inputIndex = 0; config = op.attributes().getAttrString("config"); + embeddingPartitions = op.attributes().getAttrString("embedding_partitions"); + hbmBuffersConfig = op.attributes().getAttrString("hbm_buffers_config"); + tpuTopology = op.attributes().getAttrString("tpu_topology"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ComputeDedupDataTupleMask.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ComputeDedupDataTupleMask.java index 95078aebabc..1160a8536a2 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ComputeDedupDataTupleMask.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ComputeDedupDataTupleMask.java @@ -29,7 +29,6 @@ import org.tensorflow.op.annotation.Endpoint; import org.tensorflow.op.annotation.OpInputsMetadata; import org.tensorflow.op.annotation.OpMetadata; -import org.tensorflow.op.annotation.Operator; import org.tensorflow.types.TInt32; /** @@ -42,14 +41,11 @@ opType = ComputeDedupDataTupleMask.OP_NAME, inputsClass = ComputeDedupDataTupleMask.Inputs.class ) -@Operator( - group = "tpu" -) public final class ComputeDedupDataTupleMask extends RawOp implements Operand { /** * The name of this op, as known by TensorFlow core engine */ - public static final String OP_NAME = "ComputeDedupDataTupleMask"; + public static final String OP_NAME = "ComputeDedupDataTupleMaskV2"; private Output outputShape; @@ -60,18 +56,25 @@ public ComputeDedupDataTupleMask(Operation operation) { } /** - * Factory method to create a class wrapping a new ComputeDedupDataTupleMask operation. + * Factory method to create a class wrapping a new ComputeDedupDataTupleMaskV2 operation. * * @param scope current scope * @param config Serialized TPUEmbeddingConfiguration proto. + * @param embeddingPartitions Serialized EmbeddingPartitionsProto proto. + * @param hbmBuffersConfig Serialized HbmBuffersConfig proto. + * @param tpuTopology Serialized TpuTopologyArgsProto proto. * @return a new instance of ComputeDedupDataTupleMask */ @Endpoint( describeByClass = true ) - public static ComputeDedupDataTupleMask create(Scope scope, String config) { + public static ComputeDedupDataTupleMask create(Scope scope, String config, + String embeddingPartitions, String hbmBuffersConfig, String tpuTopology) { OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "ComputeDedupDataTupleMask"); opBuilder.setAttr("config", config); + opBuilder.setAttr("embedding_partitions", embeddingPartitions); + opBuilder.setAttr("hbm_buffers_config", hbmBuffersConfig); + opBuilder.setAttr("tpu_topology", tpuTopology); return new ComputeDedupDataTupleMask(opBuilder.build()); } @@ -103,10 +106,28 @@ public static class Inputs extends RawOpInputs { */ public final String config; + /** + * Serialized EmbeddingPartitionsProto proto. + */ + public final String embeddingPartitions; + + /** + * Serialized HbmBuffersConfig proto. + */ + public final String hbmBuffersConfig; + + /** + * Serialized TpuTopologyArgsProto proto. + */ + public final String tpuTopology; + public Inputs(GraphOperation op) { - super(new ComputeDedupDataTupleMask(op), op, Arrays.asList("config")); + super(new ComputeDedupDataTupleMask(op), op, Arrays.asList("config", "embedding_partitions", "hbm_buffers_config", "tpu_topology")); int inputIndex = 0; config = op.attributes().getAttrString("config"); + embeddingPartitions = op.attributes().getAttrString("embedding_partitions"); + hbmBuffersConfig = op.attributes().getAttrString("hbm_buffers_config"); + tpuTopology = op.attributes().getAttrString("tpu_topology"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/CrossReplicaSum.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/CrossReplicaSum.java index c56e985eafb..15e942cac31 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/CrossReplicaSum.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/CrossReplicaSum.java @@ -41,8 +41,6 @@ * Passing group_assignment={@code [[0,2,4,6],[1,3,5,7]]} sets {@code A, C, E, G} as group 0, * and {@code B, D, F, H} as group 1. Thus we get the outputs: * {@code [A+C+E+G, B+D+F+H, A+C+E+G, B+D+F+H, A+C+E+G, B+D+F+H, A+C+E+G, B+D+F+H]}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = CrossReplicaSum.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/FinalizeTPUEmbedding.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/FinalizeTPUEmbedding.java index 6ce405ea522..db44a52d05b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/FinalizeTPUEmbedding.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/FinalizeTPUEmbedding.java @@ -22,6 +22,7 @@ import org.tensorflow.Operand; import org.tensorflow.Operation; import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; import org.tensorflow.op.RawOp; import org.tensorflow.op.RawOpInputs; import org.tensorflow.op.Scope; @@ -45,14 +46,21 @@ public final class FinalizeTPUEmbedding extends RawOp { /** * The name of this op, as known by TensorFlow core engine */ - public static final String OP_NAME = "FinalizeTPUEmbedding"; + public static final String OP_NAME = "FinalizeTPUEmbeddingV2"; + + private Output embeddingPartitions; + + private Output hbmBuffersConfig; public FinalizeTPUEmbedding(Operation operation) { super(operation, OP_NAME); + int outputIdx = 0; + embeddingPartitions = operation.output(outputIdx++); + hbmBuffersConfig = operation.output(outputIdx++); } /** - * Factory method to create a class wrapping a new FinalizeTPUEmbedding operation. + * Factory method to create a class wrapping a new FinalizeTPUEmbeddingV2 operation. * * @param scope current scope * @param commonConfig A string-encoded common configuration proto containing metadata @@ -73,6 +81,26 @@ public static FinalizeTPUEmbedding create(Scope scope, Operand commonCo return new FinalizeTPUEmbedding(opBuilder.build()); } + /** + * Gets embeddingPartitions. + * A string-encoded embedding partitions proto describing how embedding tables are + * partitioned along their feature and ID. + * @return embeddingPartitions. + */ + public Output embeddingPartitions() { + return embeddingPartitions; + } + + /** + * Gets hbmBuffersConfig. + * A string-encoded HBM buffers config proto specifies where HBM buffers are + * located. + * @return hbmBuffersConfig. + */ + public Output hbmBuffersConfig() { + return hbmBuffersConfig; + } + @OpInputsMetadata( outputsClass = FinalizeTPUEmbedding.class ) diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/GetTpuTaskId.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/GetTpuTaskId.java new file mode 100644 index 00000000000..c4eb00be8dd --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/GetTpuTaskId.java @@ -0,0 +1,97 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.tpu; + +import java.util.Arrays; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.op.annotation.Operator; +import org.tensorflow.types.TInt32; + +/** + * An op returns the TPU task ID from TPU topology. + * This op is to return the TPU task ID from TPU topology. + */ +@OpMetadata( + opType = GetTpuTaskId.OP_NAME, + inputsClass = GetTpuTaskId.Inputs.class +) +@Operator( + group = "tpu" +) +public final class GetTpuTaskId extends RawOp implements Operand { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "GetTpuTaskId"; + + private Output tpuTaskId; + + public GetTpuTaskId(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + tpuTaskId = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new GetTpuTaskId operation. + * + * @param scope current scope + * @return a new instance of GetTpuTaskId + */ + @Endpoint( + describeByClass = true + ) + public static GetTpuTaskId create(Scope scope) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "GetTpuTaskId"); + return new GetTpuTaskId(opBuilder.build()); + } + + /** + * Gets tpuTaskId. + * The TPU task ID from TPU topology. + * @return tpuTaskId. + */ + public Output tpuTaskId() { + return tpuTaskId; + } + + @Override + public Output asOutput() { + return tpuTaskId; + } + + @OpInputsMetadata( + outputsClass = GetTpuTaskId.class + ) + public static class Inputs extends RawOpInputs { + public Inputs(GraphOperation op) { + super(new GetTpuTaskId(op), op, Arrays.asList()); + int inputIndex = 0; + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/InfeedDequeue.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/InfeedDequeue.java index 20e200e26af..2f2d689a23a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/InfeedDequeue.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/InfeedDequeue.java @@ -37,8 +37,6 @@ /** * A placeholder op for a value that will be fed into the computation. - * - * @param data type for {@code output} output */ @OpMetadata( opType = InfeedDequeue.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/OutfeedDequeue.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/OutfeedDequeue.java index 27a9edc8214..f2043c5047c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/OutfeedDequeue.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/OutfeedDequeue.java @@ -38,8 +38,6 @@ /** * Retrieves a single tensor from the computation outfeed. * This operation will block indefinitely until data is available. - * - * @param data type for {@code output} output */ @OpMetadata( opType = OutfeedDequeue.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/OutfeedDequeueV2.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/OutfeedDequeueV2.java index 481f916e86a..dc0d6a3649a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/OutfeedDequeueV2.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/OutfeedDequeueV2.java @@ -40,8 +40,6 @@ * Retrieves a single tensor from the computation outfeed. Device ordinal is a * tensor allowing dynamic outfeed. * This operation will block indefinitely until data is available. - * - * @param data type for {@code output} output */ @OpMetadata( opType = OutfeedDequeueV2.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/PartitionedInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/PartitionedInput.java index be69029e573..89d11541c1b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/PartitionedInput.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/PartitionedInput.java @@ -37,8 +37,6 @@ /** * An op that groups a list of partitioned inputs together. Supports ND sharding. - * - * @param data type for {@code output} output */ @OpMetadata( opType = PartitionedInput.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/PartitionedOutput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/PartitionedOutput.java index a49b96f066d..b69bdea9a7b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/PartitionedOutput.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/PartitionedOutput.java @@ -38,8 +38,6 @@ /** * An op that demultiplexes a tensor to be sharded by XLA to a list of partitioned * outputs outside the XLA computation. Supports ND sharding. - * - * @param data type for {@code output} output */ @OpMetadata( opType = PartitionedOutput.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ReplicateMetadata.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ReplicateMetadata.java index 67f49871a2c..3e9453b7789 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ReplicateMetadata.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ReplicateMetadata.java @@ -113,6 +113,9 @@ public static ReplicateMetadata create(Scope scope, Long numReplicas, Options... if (opts.useSpmdForXlaPartitioning != null) { opBuilder.setAttr("use_spmd_for_xla_partitioning", opts.useSpmdForXlaPartitioning); } + if (opts.useShardyPartitioner != null) { + opBuilder.setAttr("use_shardy_partitioner", opts.useShardyPartitioner); + } if (opts.tpuCompileOptionsProto != null) { opBuilder.setAttr("tpu_compile_options_proto", opts.tpuCompileOptionsProto); } @@ -261,6 +264,16 @@ public static Options useSpmdForXlaPartitioning(Boolean useSpmdForXlaPartitionin return new Options().useSpmdForXlaPartitioning(useSpmdForXlaPartitioning); } + /** + * Sets the useShardyPartitioner option. + * + * @param useShardyPartitioner the useShardyPartitioner option + * @return this Options instance. + */ + public static Options useShardyPartitioner(Boolean useShardyPartitioner) { + return new Options().useShardyPartitioner(useShardyPartitioner); + } + /** * Sets the tpuCompileOptionsProto option. * @@ -295,6 +308,8 @@ public static class Options { private Boolean useSpmdForXlaPartitioning; + private Boolean useShardyPartitioner; + private String tpuCompileOptionsProto; private Options() { @@ -454,6 +469,17 @@ public Options useSpmdForXlaPartitioning(Boolean useSpmdForXlaPartitioning) { return this; } + /** + * Sets the useShardyPartitioner option. + * + * @param useShardyPartitioner the useShardyPartitioner option + * @return this Options instance. + */ + public Options useShardyPartitioner(Boolean useShardyPartitioner) { + this.useShardyPartitioner = useShardyPartitioner; + return this; + } + /** * Sets the tpuCompileOptionsProto option. * @@ -525,13 +551,18 @@ public static class Inputs extends RawOpInputs { */ public final boolean useSpmdForXlaPartitioning; + /** + * The useShardyPartitioner attribute + */ + public final boolean useShardyPartitioner; + /** * The tpuCompileOptionsProto attribute */ public final String tpuCompileOptionsProto; public Inputs(GraphOperation op) { - super(new ReplicateMetadata(op), op, Arrays.asList("num_replicas", "num_cores_per_replica", "topology", "use_tpu", "device_assignment", "computation_shape", "host_compute_core", "padding_map", "step_marker_location", "allow_soft_placement", "use_spmd_for_xla_partitioning", "tpu_compile_options_proto")); + super(new ReplicateMetadata(op), op, Arrays.asList("num_replicas", "num_cores_per_replica", "topology", "use_tpu", "device_assignment", "computation_shape", "host_compute_core", "padding_map", "step_marker_location", "allow_soft_placement", "use_spmd_for_xla_partitioning", "use_shardy_partitioner", "tpu_compile_options_proto")); int inputIndex = 0; numReplicas = op.attributes().getAttrInt("num_replicas"); numCoresPerReplica = op.attributes().getAttrInt("num_cores_per_replica"); @@ -544,6 +575,7 @@ public Inputs(GraphOperation op) { stepMarkerLocation = op.attributes().getAttrString("step_marker_location"); allowSoftPlacement = op.attributes().getAttrBool("allow_soft_placement"); useSpmdForXlaPartitioning = op.attributes().getAttrBool("use_spmd_for_xla_partitioning"); + useShardyPartitioner = op.attributes().getAttrBool("use_shardy_partitioner"); tpuCompileOptionsProto = op.attributes().getAttrString("tpu_compile_options_proto"); } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ReplicatedInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ReplicatedInput.java index 37c057fc375..5f5ae14be0e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ReplicatedInput.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ReplicatedInput.java @@ -46,8 +46,6 @@ * %computation = "tf.Computation"(%replicated_input) * *

    The above computation has a replicated input of two replicas. - * - * @param data type for {@code output} output */ @OpMetadata( opType = ReplicatedInput.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ReplicatedOutput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ReplicatedOutput.java index fcc447fb932..6daab9ae1a2 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ReplicatedOutput.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/ReplicatedOutput.java @@ -45,8 +45,6 @@ * %replicated_output:2 = "tf.TPUReplicatedOutput"(%computation) * *

    The above computation has a replicated output of two replicas. - * - * @param data type for {@code outputs} output */ @OpMetadata( opType = ReplicatedOutput.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/SplitDedupData.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/SplitDedupData.java index ad72b480077..8e8d4537dff 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/SplitDedupData.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/SplitDedupData.java @@ -41,10 +41,6 @@ * Deduplication data is an XLA tuple, which consists of integer and floating point * values. This op is to split these values into two groups for two types, and * construct each group as one tensor to return. - * - * @param data type for {@code integer_tensor} output - * - * @param data type for {@code float_tensor} output */ @OpMetadata( opType = SplitDedupData.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/TPUDummyInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/TPUDummyInput.java new file mode 100644 index 00000000000..4b7fae6c11c --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/TPUDummyInput.java @@ -0,0 +1,114 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.tpu; + +import java.util.Arrays; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.ndarray.Shape; +import org.tensorflow.op.Operands; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.proto.DataType; +import org.tensorflow.types.family.TNumber; + +/** + * Generates a zero-valued tensor for use as a dummy input to a TPU. + * For the internal use of the TF2XLA bridge in the XLA Broadcast pass. This op + */ +@OpMetadata( + opType = TPUDummyInput.OP_NAME, + inputsClass = TPUDummyInput.Inputs.class +) +public final class TPUDummyInput extends RawOp implements Operand { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "TPUDummyInput"; + + private Output output; + + public TPUDummyInput(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + output = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new TPUDummyInput operation. + * + * @param scope current scope + * @param dtype The element type of the produced tensor. + * @param shape The shape of the produced tensor. + * @param data type for {@code TPUDummyInput} output and operands + * @return a new instance of TPUDummyInput + */ + @Endpoint( + describeByClass = true + ) + public static TPUDummyInput create(Scope scope, Class dtype, + Shape shape) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "TPUDummyInput"); + opBuilder.setAttr("dtype", Operands.toDataType(dtype)); + opBuilder.setAttr("shape", shape); + return new TPUDummyInput<>(opBuilder.build()); + } + + /** + * Gets output. + * + * @return output. + */ + public Output output() { + return output; + } + + @Override + public Output asOutput() { + return output; + } + + @OpInputsMetadata( + outputsClass = TPUDummyInput.class + ) + public static class Inputs extends RawOpInputs> { + /** + * The element type of the produced tensor. + */ + public final DataType dtype; + + /** + * The shape of the produced tensor. + */ + public final Shape shape; + + public Inputs(GraphOperation op) { + super(new TPUDummyInput<>(op), op, Arrays.asList("dtype", "shape")); + int inputIndex = 0; + dtype = op.attributes().getAttrType("dtype"); + shape = op.attributes().getAttrShape("shape"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/TPUReplicateMetadata.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/TPUReplicateMetadata.java index 1e5fab82839..968dde2b09a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/TPUReplicateMetadata.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/TPUReplicateMetadata.java @@ -116,6 +116,9 @@ public static TPUReplicateMetadata create(Scope scope, Long numReplicas, Options if (opts.useSpmdForXlaPartitioning != null) { opBuilder.setAttr("use_spmd_for_xla_partitioning", opts.useSpmdForXlaPartitioning); } + if (opts.useShardyPartitioner != null) { + opBuilder.setAttr("use_shardy_partitioner", opts.useShardyPartitioner); + } if (opts.tpuCompileOptionsProto != null) { opBuilder.setAttr("tpu_compile_options_proto", opts.tpuCompileOptionsProto); } @@ -264,6 +267,16 @@ public static Options useSpmdForXlaPartitioning(Boolean useSpmdForXlaPartitionin return new Options().useSpmdForXlaPartitioning(useSpmdForXlaPartitioning); } + /** + * Sets the useShardyPartitioner option. + * + * @param useShardyPartitioner the useShardyPartitioner option + * @return this Options instance. + */ + public static Options useShardyPartitioner(Boolean useShardyPartitioner) { + return new Options().useShardyPartitioner(useShardyPartitioner); + } + /** * Sets the tpuCompileOptionsProto option. * @@ -298,6 +311,8 @@ public static class Options { private Boolean useSpmdForXlaPartitioning; + private Boolean useShardyPartitioner; + private String tpuCompileOptionsProto; private Options() { @@ -457,6 +472,17 @@ public Options useSpmdForXlaPartitioning(Boolean useSpmdForXlaPartitioning) { return this; } + /** + * Sets the useShardyPartitioner option. + * + * @param useShardyPartitioner the useShardyPartitioner option + * @return this Options instance. + */ + public Options useShardyPartitioner(Boolean useShardyPartitioner) { + this.useShardyPartitioner = useShardyPartitioner; + return this; + } + /** * Sets the tpuCompileOptionsProto option. * @@ -528,13 +554,18 @@ public static class Inputs extends RawOpInputs { */ public final boolean useSpmdForXlaPartitioning; + /** + * The useShardyPartitioner attribute + */ + public final boolean useShardyPartitioner; + /** * The tpuCompileOptionsProto attribute */ public final String tpuCompileOptionsProto; public Inputs(GraphOperation op) { - super(new TPUReplicateMetadata(op), op, Arrays.asList("num_replicas", "num_cores_per_replica", "topology", "use_tpu", "device_assignment", "computation_shape", "host_compute_core", "padding_map", "step_marker_location", "allow_soft_placement", "use_spmd_for_xla_partitioning", "tpu_compile_options_proto")); + super(new TPUReplicateMetadata(op), op, Arrays.asList("num_replicas", "num_cores_per_replica", "topology", "use_tpu", "device_assignment", "computation_shape", "host_compute_core", "padding_map", "step_marker_location", "allow_soft_placement", "use_spmd_for_xla_partitioning", "use_shardy_partitioner", "tpu_compile_options_proto")); int inputIndex = 0; numReplicas = op.attributes().getAttrInt("num_replicas"); numCoresPerReplica = op.attributes().getAttrInt("num_cores_per_replica"); @@ -547,6 +578,7 @@ public Inputs(GraphOperation op) { stepMarkerLocation = op.attributes().getAttrString("step_marker_location"); allowSoftPlacement = op.attributes().getAttrBool("allow_soft_placement"); useSpmdForXlaPartitioning = op.attributes().getAttrBool("use_spmd_for_xla_partitioning"); + useShardyPartitioner = op.attributes().getAttrBool("use_shardy_partitioner"); tpuCompileOptionsProto = op.attributes().getAttrString("tpu_compile_options_proto"); } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/TPUReplicatedInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/TPUReplicatedInput.java index 1816bb842df..80ac7e3ea03 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/TPUReplicatedInput.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/TPUReplicatedInput.java @@ -47,8 +47,6 @@ * *

    The above computation has a replicated input of two replicas. * - * @param data type for {@code output} output - * * @deprecated use {@link org.tensorflow.op.tpu.ReplicatedInput} instead */ @OpMetadata( diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/TPUReplicatedOutput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/TPUReplicatedOutput.java index ea53c36f109..dcc1b12b2b8 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/TPUReplicatedOutput.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/TPUReplicatedOutput.java @@ -46,8 +46,6 @@ * *

    The above computation has a replicated output of two replicas. * - * @param data type for {@code outputs} output - * * @deprecated use {@link org.tensorflow.op.tpu.ReplicatedOutput} instead */ @OpMetadata( diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/UpdateTaskIdAndGlobalCoreArray.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/UpdateTaskIdAndGlobalCoreArray.java new file mode 100644 index 00000000000..1a0fb866178 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/tpu/UpdateTaskIdAndGlobalCoreArray.java @@ -0,0 +1,86 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.tpu; + +import java.util.Arrays; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.op.Operands; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.types.TInt32; + +/** + * An op to update the task ID and global core array. + * This op is to update the task ID and global core array. + */ +@OpMetadata( + opType = UpdateTaskIdAndGlobalCoreArray.OP_NAME, + inputsClass = UpdateTaskIdAndGlobalCoreArray.Inputs.class +) +public final class UpdateTaskIdAndGlobalCoreArray extends RawOp { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "UpdateTaskIdAndGlobalCoreArray"; + + public UpdateTaskIdAndGlobalCoreArray(Operation operation) { + super(operation, OP_NAME); + } + + /** + * Factory method to create a class wrapping a new UpdateTaskIdAndGlobalCoreArray operation. + * + * @param scope current scope + * @param tpuTaskIdToShardId An array of int32 that maps TPU task ID to shard ID. + * @return a new instance of UpdateTaskIdAndGlobalCoreArray + */ + @Endpoint( + describeByClass = true + ) + public static UpdateTaskIdAndGlobalCoreArray create(Scope scope, + Iterable> tpuTaskIdToShardId) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "UpdateTaskIdAndGlobalCoreArray"); + opBuilder.addInputList(Operands.asOutputs(tpuTaskIdToShardId)); + return new UpdateTaskIdAndGlobalCoreArray(opBuilder.build()); + } + + @OpInputsMetadata( + outputsClass = UpdateTaskIdAndGlobalCoreArray.class + ) + public static class Inputs extends RawOpInputs { + /** + * An array of int32 that maps TPU task ID to shard ID. + */ + public final Iterable> tpuTaskIdToShardId; + + public Inputs(GraphOperation op) { + super(new UpdateTaskIdAndGlobalCoreArray(op), op, Arrays.asList()); + int inputIndex = 0; + int tpuTaskIdToShardIdLength = op.inputListLength("tpu_task_id_to_shard_id"); + tpuTaskIdToShardId = Arrays.asList((Operand[]) op.inputList(inputIndex, tpuTaskIdToShardIdLength)); + inputIndex += tpuTaskIdToShardIdLength; + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/AccumulatorTakeGradient.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/AccumulatorTakeGradient.java index a2d152ab93e..e7c94866732 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/AccumulatorTakeGradient.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/AccumulatorTakeGradient.java @@ -43,8 +43,6 @@ * aggregated more than num_required gradients, it returns the average of * the accumulated gradients. Also automatically increments the recorded * global_step in the accumulator by 1, and resets the aggregate to 0. - * - * @param data type for {@code average} output */ @OpMetadata( opType = AccumulatorTakeGradient.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdaMax.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdaMax.java index 5a6b4fa2871..0bdb47444ad 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdaMax.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdaMax.java @@ -38,8 +38,6 @@ * m_t <- beta1 * m_{t-1} + (1 - beta1) * g * v_t <- max(beta2 * v_{t-1}, abs(g)) * variable <- variable - learning_rate / (1 - beta1^t) * m_t / (v_t + epsilon) - * - * @param data type for {@code out} output */ @OpMetadata( opType = ApplyAdaMax.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdadelta.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdadelta.java index be5bdc297ea..7d53245fe2a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdadelta.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdadelta.java @@ -39,8 +39,6 @@ * update = (update_accum + epsilon).sqrt() * (accum + epsilon()).rsqrt() * grad; * update_accum = rho() * update_accum + (1 - rho()) * update.square(); * var -= update; - * - * @param data type for {@code out} output */ @OpMetadata( opType = ApplyAdadelta.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdagrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdagrad.java index 9a717cb0daf..0d243bfce4b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdagrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdagrad.java @@ -37,8 +37,6 @@ * Update '*var' according to the adagrad scheme. * accum += grad * grad * var -= lr * grad * (1 / sqrt(accum)) - * - * @param data type for {@code out} output */ @OpMetadata( opType = ApplyAdagrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdagradDa.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdagradDa.java index b1577260bf8..a2769eae2e7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdagradDa.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdagradDa.java @@ -36,8 +36,6 @@ /** * Update '*var' according to the proximal adagrad scheme. - * - * @param data type for {@code out} output */ @OpMetadata( opType = ApplyAdagradDa.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdagradV2.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdagradV2.java index 6766d80538e..22d0edd340e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdagradV2.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdagradV2.java @@ -37,8 +37,6 @@ * Update '*var' according to the adagrad scheme. * accum += grad * grad * var -= lr * grad * (1 / sqrt(accum)) - * - * @param data type for {@code out} output */ @OpMetadata( opType = ApplyAdagradV2.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdam.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdam.java index 91dbb1d72f6..8dbd525dc98 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdam.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAdam.java @@ -39,8 +39,6 @@ * $$m_t := \beta_1 \cdot m{t-1} + (1 - \beta_1) \cdot g$$ * $$v_t := \beta_2 \cdot v_{t-1} + (1 - \beta_2) \cdot g^2$$ * $$\text{var} := \begin{cases} \text{var} - (m_t \beta_1 + g \cdot (1 - \beta_1))\cdot\text{lr}_t/(\sqrt{v_t} + \epsilon), &\text{if use_nesterov}\\ \text{var} - m_t \cdot \text{lr}_t /(\sqrt{v_t} + \epsilon), &\text{otherwise} \end{cases}$$ - * - * @param data type for {@code out} output */ @OpMetadata( opType = ApplyAdam.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAddSign.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAddSign.java index 434802b1590..69127231eb1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAddSign.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyAddSign.java @@ -38,8 +38,6 @@ * m_t <- beta1 * m_{t-1} + (1 - beta1) * g * update <- (alpha + sign_decay * sign(g) *sign(m)) * g * variable <- variable - lr_t * update - * - * @param data type for {@code out} output */ @OpMetadata( opType = ApplyAddSign.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyCenteredRmsProp.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyCenteredRmsProp.java index 46f9975e74a..f7801bf277e 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyCenteredRmsProp.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyCenteredRmsProp.java @@ -49,8 +49,6 @@ * ms <- rho * ms_{t-1} + (1-rho) * grad * grad * mom <- momentum * mom_{t-1} + lr * grad / sqrt(ms - mg * mg + epsilon) * var <- var - mom - * - * @param data type for {@code out} output */ @OpMetadata( opType = ApplyCenteredRmsProp.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyFtrl.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyFtrl.java index c14505600ef..cd010677d47 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyFtrl.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyFtrl.java @@ -42,8 +42,6 @@ * quadratic = 1.0 / (accum_new^(lr_power) * lr) + 2 * l2 * var = (sign(linear) * l1 - linear) / quadratic if |linear| > l1 else 0.0 * accum = accum_new - * - * @param data type for {@code out} output */ @OpMetadata( opType = ApplyFtrl.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyGradientDescent.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyGradientDescent.java index f7c93955d6b..5ebb7b31330 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyGradientDescent.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyGradientDescent.java @@ -35,8 +35,6 @@ /** * Update '*var' by subtracting 'alpha' * 'delta' from it. - * - * @param data type for {@code out} output */ @OpMetadata( opType = ApplyGradientDescent.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyMomentum.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyMomentum.java index fc82fa94853..1aa402b6783 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyMomentum.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyMomentum.java @@ -38,8 +38,6 @@ * Set use_nesterov = True if you want to use Nesterov momentum. *

    accum = accum * momentum + grad * var -= lr * accum - * - * @param data type for {@code out} output */ @OpMetadata( opType = ApplyMomentum.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyPowerSign.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyPowerSign.java index dad41ae5e50..f298f853be2 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyPowerSign.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyPowerSign.java @@ -38,8 +38,6 @@ * m_t <- beta1 * m_{t-1} + (1 - beta1) * g * update <- exp(logbase * sign_decay * sign(g) * sign(m_t)) * g * variable <- variable - lr_t * update - * - * @param data type for {@code out} output */ @OpMetadata( opType = ApplyPowerSign.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyProximalAdagrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyProximalAdagrad.java index 8f2c0b1d0b2..a095146963b 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyProximalAdagrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyProximalAdagrad.java @@ -38,8 +38,6 @@ * accum += grad * grad * prox_v = var - lr * grad * (1 / sqrt(accum)) * var = sign(prox_v)/(1+lrl2) * max{|prox_v|-lrl1,0} - * - * @param data type for {@code out} output */ @OpMetadata( opType = ApplyProximalAdagrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyProximalGradientDescent.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyProximalGradientDescent.java index 488faf4d559..ffd6ee70e68 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyProximalGradientDescent.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyProximalGradientDescent.java @@ -37,8 +37,6 @@ * Update '*var' as FOBOS algorithm with fixed learning rate. * prox_v = var - alpha * delta * var = sign(prox_v)/(1+alphal2) * max{|prox_v|-alphal1,0} - * - * @param data type for {@code out} output */ @OpMetadata( opType = ApplyProximalGradientDescent.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyRmsProp.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyRmsProp.java index 539fa33e176..fcfeb5b895a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyRmsProp.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ApplyRmsProp.java @@ -43,8 +43,6 @@ *

    ms <- rho * ms_{t-1} + (1-rho) * grad * grad * mom <- momentum * mom_{t-1} + lr * grad / sqrt(ms + epsilon) * var <- var - mom - * - * @param data type for {@code out} output */ @OpMetadata( opType = ApplyRmsProp.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/BatchMatMul.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/BatchMatMul.java index 14fdcd8d781..17560573705 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/BatchMatMul.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/BatchMatMul.java @@ -56,8 +56,6 @@ *

    NOTE: {@code train.BatchMatMul} supports broadcasting in the batch dimensions. More * about broadcasting * here . - * - * @param data type for {@code output} output */ @OpMetadata( opType = BatchMatMul.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/PreventGradient.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/PreventGradient.java index a7181e6cb0b..c98b11d0050 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/PreventGradient.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/PreventGradient.java @@ -41,8 +41,6 @@ * because no gradient must ever be registered for this function. This * op exists to prevent subtle bugs from silently returning unimplemented * gradients in some corner cases. - * - * @param data type for {@code output} output */ @OpMetadata( opType = PreventGradient.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ResourceAccumulatorTakeGradient.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ResourceAccumulatorTakeGradient.java index 4b7a918f597..843ecae89f1 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ResourceAccumulatorTakeGradient.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/ResourceAccumulatorTakeGradient.java @@ -42,8 +42,6 @@ * aggregated more than num_required gradients, it returns the average of * the accumulated gradients. Also automatically increments the recorded * global_step in the accumulator by 1, and resets the aggregate to 0. - * - * @param data type for {@code average} output */ @OpMetadata( opType = ResourceAccumulatorTakeGradient.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/RestoreSlice.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/RestoreSlice.java index b0faba2454c..a33a34b3179 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/RestoreSlice.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/RestoreSlice.java @@ -42,8 +42,6 @@ * larger tensor and the slice that the restored tensor covers. *

    The {@code shape_and_slice} input has the same format as the * elements of the {@code shapes_and_slices} input of the {@code SaveSlices} op. - * - * @param data type for {@code tensor} output */ @OpMetadata( opType = RestoreSlice.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyAdadelta.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyAdadelta.java index c68618fecc1..8b12e83f51f 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyAdadelta.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyAdadelta.java @@ -36,8 +36,6 @@ /** * var: Should be from a Variable(). - * - * @param data type for {@code out} output */ @OpMetadata( opType = SparseApplyAdadelta.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyAdagrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyAdagrad.java index a75507dde54..fbda4c582a0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyAdagrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyAdagrad.java @@ -39,8 +39,6 @@ * That is for rows we have grad for, we update var and accum as follows: * $$accum += grad * grad$$ * $$var -= lr * grad * (1 / sqrt(accum))$$ - * - * @param data type for {@code out} output */ @OpMetadata( opType = SparseApplyAdagrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyAdagradDa.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyAdagradDa.java index cdd24328bb6..33cdae176f0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyAdagradDa.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyAdagradDa.java @@ -37,8 +37,6 @@ /** * Update entries in '*var' and '*accum' according to the proximal adagrad scheme. - * - * @param data type for {@code out} output */ @OpMetadata( opType = SparseApplyAdagradDa.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyCenteredRmsProp.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyCenteredRmsProp.java index 731ecdd88a7..cfbf01b8044 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyCenteredRmsProp.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyCenteredRmsProp.java @@ -49,8 +49,6 @@ *

    $$ms <- rho * ms_{t-1} + (1-rho) * grad * grad$$ * $$mom <- momentum * mom_{t-1} + lr * grad / sqrt(ms + epsilon)$$ * $$var <- var - mom$$ - * - * @param data type for {@code out} output */ @OpMetadata( opType = SparseApplyCenteredRmsProp.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyFtrl.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyFtrl.java index 8c609b198bd..72cce364480 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyFtrl.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyFtrl.java @@ -44,8 +44,6 @@ * quadratic = 1.0 / (accum_new^(lr_power) * lr) + 2 * l2 * var = (sign(linear) * l1 - linear) / quadratic if |linear| > l1 else 0.0 * accum = accum_new - * - * @param data type for {@code out} output */ @OpMetadata( opType = SparseApplyFtrl.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyMomentum.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyMomentum.java index 2e22789fd23..d2ae83d8c17 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyMomentum.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyMomentum.java @@ -40,8 +40,6 @@ *

    That is for rows we have grad for, we update var and accum as follows: *

    $$accum = accum * momentum + grad$$ * $$var -= lr * accum$$ - * - * @param data type for {@code out} output */ @OpMetadata( opType = SparseApplyMomentum.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyProximalAdagrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyProximalAdagrad.java index 68ca59089e1..70b28897f24 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyProximalAdagrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyProximalAdagrad.java @@ -41,8 +41,6 @@ * $$prox_v = var$$ * $$prox_v -= lr * grad * (1 / sqrt(accum))$$ * $$var = sign(prox_v)/(1+lrl2) * max{|prox_v|-lrl1,0}$$ - * - * @param data type for {@code out} output */ @OpMetadata( opType = SparseApplyProximalAdagrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyProximalGradientDescent.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyProximalGradientDescent.java index 08b098f80ca..3da972089e7 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyProximalGradientDescent.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyProximalGradientDescent.java @@ -39,8 +39,6 @@ * That is for rows we have grad for, we update var as follows: * $$prox_v = var - alpha * grad$$ * $$var = sign(prox_v)/(1+alphal2) * max{|prox_v|-alphal1,0}$$ - * - * @param data type for {@code out} output */ @OpMetadata( opType = SparseApplyProximalGradientDescent.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyRmsProp.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyRmsProp.java index a648dc04b08..3c642ebcf81 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyRmsProp.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/SparseApplyRmsProp.java @@ -44,8 +44,6 @@ *

    $$ms <- rho * ms_{t-1} + (1-rho) * grad * grad$$ * $$mom <- momentum * mom_{t-1} + lr * grad / sqrt(ms + epsilon)$$ * $$var <- var - mom$$ - * - * @param data type for {@code out} output */ @OpMetadata( opType = SparseApplyRmsProp.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/TileGrad.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/TileGrad.java index bdc5c23fc46..9e1b7e0fbb4 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/TileGrad.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/train/TileGrad.java @@ -39,8 +39,6 @@ * Since {@code Tile} takes an input and repeats the input {@code multiples} times * along each dimension, {@code train.TileGrad} takes in {@code multiples} and aggregates * each repeated tile of {@code input} into {@code output}. - * - * @param data type for {@code output} output */ @OpMetadata( opType = TileGrad.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/AssignVariableConcatND.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/AssignVariableConcatND.java index 51f000b2687..c58943ff50d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/AssignVariableConcatND.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/AssignVariableConcatND.java @@ -88,18 +88,8 @@ public AssignVariableConcatND(Operation operation) { * * @param scope current scope * @param resource Resource variable for concatenated input tensors across all dimensions. - * } - * in_arg { - * name: "inputs" - * description: <<END - * Input tensor slices in row-major order to merge across all dimensions. All + * @param inputs Input tensor slices in row-major order to merge across all dimensions. All * inputs must have the same shape. - * } - * out_arg { - * name: "output" - * description: <<END - * Output tensor formed from merging input slices based on num_concats defined. - * @param inputs The inputs value * @param numConcats Number of ways to merge per dimension. * @param options carries optional attribute values * @return a new instance of AssignVariableConcatND @@ -197,22 +187,12 @@ public Options paddings(Long... paddings) { public static class Inputs extends RawOpInputs { /** * Resource variable for concatenated input tensors across all dimensions. - * } - * in_arg { - * name: "inputs" - * description: <<END - * Input tensor slices in row-major order to merge across all dimensions. All - * inputs must have the same shape. - * } - * out_arg { - * name: "output" - * description: <<END - * Output tensor formed from merging input slices based on num_concats defined. */ public final Operand resource; /** - * The inputs input + * Input tensor slices in row-major order to merge across all dimensions. All + * inputs must have the same shape. */ public final Iterable> inputs; diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/ConcatND.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/ConcatND.java index 7e55c95e679..5749305af89 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/ConcatND.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/ConcatND.java @@ -66,8 +66,6 @@ * [4, 5, 6], * [8, 9, 10]] * - * - * @param data type for {@code output} output */ @OpMetadata( opType = ConcatND.OP_NAME, @@ -96,11 +94,6 @@ public ConcatND(Operation operation) { * @param scope current scope * @param inputs Input tensor slices in row-major order to merge across all dimensions. All * inputs must have the same shape. - * } - * out_arg { - * name: "output" - * description: <<END - * Output tensor formed from merging input slices based on num_concats defined. * @param numConcats Number of ways to merge per dimension. * @param options carries optional attribute values * @param data type for {@code XlaConcatND} output and operands @@ -158,7 +151,7 @@ public static Options paddings(Long... paddings) { /** * Gets output. - * + * Output tensor formed from merging input slices based on num_concats defined. * @return output. */ public Output output() { @@ -213,11 +206,6 @@ public static class Inputs extends RawOpInputs> { /** * Input tensor slices in row-major order to merge across all dimensions. All * inputs must have the same shape. - * } - * out_arg { - * name: "output" - * description: <<END - * Output tensor formed from merging input slices based on num_concats defined. */ public final Iterable> inputs; diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/ReadVariableSplitND.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/ReadVariableSplitND.java index 666103dd273..9788f2927f0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/ReadVariableSplitND.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/ReadVariableSplitND.java @@ -67,8 +67,6 @@ * [[8, 0], * [0, 0]] * - * - * @param data type for {@code outputs} output */ @OpMetadata( opType = ReadVariableSplitND.OP_NAME, @@ -99,11 +97,6 @@ public ReadVariableSplitND(Operation operation) { * * @param scope current scope * @param resource Resource variable of input tensor to split across all dimensions. - * } - * out_arg { - * name: "outputs" - * description: <<END - * Output slices based on input and num_splits defined, in row-major order. * @param T The value of the T attribute * @param N The value of the N attribute * @param numSplits Number of ways to split per dimension. Shape dimensions must be evenly @@ -165,7 +158,7 @@ public static Options paddings(Long... paddings) { /** * Gets outputs. - * + * Output slices based on input and num_splits defined, in row-major order. * @return outputs. */ public List> outputs() { @@ -218,11 +211,6 @@ public Options paddings(Long... paddings) { public static class Inputs extends RawOpInputs> { /** * Resource variable of input tensor to split across all dimensions. - * } - * out_arg { - * name: "outputs" - * description: <<END - * Output slices based on input and num_splits defined, in row-major order. */ public final Operand resource; diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/SplitND.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/SplitND.java index 6bf5656f68c..299b2f95437 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/SplitND.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/SplitND.java @@ -66,8 +66,6 @@ * [[8, 0], * [0, 0]] * - * - * @param data type for {@code outputs} output */ @OpMetadata( opType = SplitND.OP_NAME, @@ -98,11 +96,6 @@ public SplitND(Operation operation) { * * @param scope current scope * @param input Input tensor to split across all dimensions. - * } - * out_arg { - * name: "outputs" - * description: <<END - * Output slices based on input and num_splits defined, in row-major order. * @param N The value of the N attribute * @param numSplits Number of ways to split per dimension. Shape dimensions must be evenly * divisible. @@ -161,7 +154,7 @@ public static Options paddings(Long... paddings) { /** * Gets outputs. - * + * Output slices based on input and num_splits defined, in row-major order. * @return outputs. */ public List> outputs() { @@ -214,11 +207,6 @@ public Options paddings(Long... paddings) { public static class Inputs extends RawOpInputs> { /** * Input tensor to split across all dimensions. - * } - * out_arg { - * name: "outputs" - * description: <<END - * Output slices based on input and num_splits defined, in row-major order. */ public final Operand input; diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaRecvFromHost.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaRecvFromHost.java index c8d5507a673..b05f7199f7a 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaRecvFromHost.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaRecvFromHost.java @@ -41,8 +41,6 @@ * Toutput: element type for output. * shape: shape for output. * key: A unique identifier for this region used to match up host transfers. - * - * @param data type for {@code output} output */ @OpMetadata( opType = XlaRecvFromHost.OP_NAME, diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaRecvTPUEmbeddingActivations.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaRecvTPUEmbeddingActivations.java index 1af06a9de56..b3499a237f0 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaRecvTPUEmbeddingActivations.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaRecvTPUEmbeddingActivations.java @@ -31,7 +31,6 @@ import org.tensorflow.op.annotation.Endpoint; import org.tensorflow.op.annotation.OpInputsMetadata; import org.tensorflow.op.annotation.OpMetadata; -import org.tensorflow.op.annotation.Operator; import org.tensorflow.types.TFloat32; import org.tensorflow.types.family.TType; @@ -46,14 +45,11 @@ opType = XlaRecvTPUEmbeddingActivations.OP_NAME, inputsClass = XlaRecvTPUEmbeddingActivations.Inputs.class ) -@Operator( - group = "xla" -) public final class XlaRecvTPUEmbeddingActivations extends RawOp implements Iterable> { /** * The name of this op, as known by TensorFlow core engine */ - public static final String OP_NAME = "XlaRecvTPUEmbeddingActivations"; + public static final String OP_NAME = "XlaRecvTPUEmbeddingActivationsV2"; private List> outputs; @@ -67,7 +63,7 @@ public XlaRecvTPUEmbeddingActivations(Operation operation) { } /** - * Factory method to create a class wrapping a new XlaRecvTPUEmbeddingActivations operation. + * Factory method to create a class wrapping a new XlaRecvTPUEmbeddingActivationsV2 operation. * * @param scope current scope * @param deduplicationData A Tensor with type=DT_VARIANT containing the deduplication @@ -80,17 +76,24 @@ public XlaRecvTPUEmbeddingActivations(Operation operation) { * present in the tpu embedding config, it is equal to the number of features * otherwise equal to number of embedding tables in the model. * @param config Serialized TPUEmbeddingConfiguration proto. + * @param embeddingPartitions Serialized EmbeddingPartitionsProto proto. + * @param hbmBuffersConfig Serialized HbmBuffersConfig proto. + * @param tpuTopology Serialized TpuTopologyArgsProto proto. * @return a new instance of XlaRecvTPUEmbeddingActivations */ @Endpoint( describeByClass = true ) public static XlaRecvTPUEmbeddingActivations create(Scope scope, - Operand deduplicationData, Long numTables, String config) { + Operand deduplicationData, Long numTables, String config, + String embeddingPartitions, String hbmBuffersConfig, String tpuTopology) { OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaRecvTPUEmbeddingActivations"); opBuilder.addInput(deduplicationData.asOutput()); opBuilder.setAttr("num_tables", numTables); opBuilder.setAttr("config", config); + opBuilder.setAttr("embedding_partitions", embeddingPartitions); + opBuilder.setAttr("hbm_buffers_config", hbmBuffersConfig); + opBuilder.setAttr("tpu_topology", tpuTopology); return new XlaRecvTPUEmbeddingActivations(opBuilder.build()); } @@ -129,11 +132,29 @@ public static class Inputs extends RawOpInputs { */ public final String config; + /** + * Serialized EmbeddingPartitionsProto proto. + */ + public final String embeddingPartitions; + + /** + * Serialized HbmBuffersConfig proto. + */ + public final String hbmBuffersConfig; + + /** + * Serialized TpuTopologyArgsProto proto. + */ + public final String tpuTopology; + public Inputs(GraphOperation op) { - super(new XlaRecvTPUEmbeddingActivations(op), op, Arrays.asList("config")); + super(new XlaRecvTPUEmbeddingActivations(op), op, Arrays.asList("config", "embedding_partitions", "hbm_buffers_config", "tpu_topology")); int inputIndex = 0; deduplicationData = (Operand) op.input(inputIndex++); config = op.attributes().getAttrString("config"); + embeddingPartitions = op.attributes().getAttrString("embedding_partitions"); + hbmBuffersConfig = op.attributes().getAttrString("hbm_buffers_config"); + tpuTopology = op.attributes().getAttrString("tpu_topology"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaRecvTPUEmbeddingDeduplicationData.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaRecvTPUEmbeddingDeduplicationData.java index abf76b9a0ad..a0c18fb338c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaRecvTPUEmbeddingDeduplicationData.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaRecvTPUEmbeddingDeduplicationData.java @@ -29,7 +29,6 @@ import org.tensorflow.op.annotation.Endpoint; import org.tensorflow.op.annotation.OpInputsMetadata; import org.tensorflow.op.annotation.OpMetadata; -import org.tensorflow.op.annotation.Operator; import org.tensorflow.types.family.TType; /** @@ -45,14 +44,11 @@ opType = XlaRecvTPUEmbeddingDeduplicationData.OP_NAME, inputsClass = XlaRecvTPUEmbeddingDeduplicationData.Inputs.class ) -@Operator( - group = "xla" -) public final class XlaRecvTPUEmbeddingDeduplicationData extends RawOp implements Operand { /** * The name of this op, as known by TensorFlow core engine */ - public static final String OP_NAME = "XlaRecvTPUEmbeddingDeduplicationData"; + public static final String OP_NAME = "XlaRecvTPUEmbeddingDeduplicationDataV2"; private Output output; @@ -64,18 +60,25 @@ public XlaRecvTPUEmbeddingDeduplicationData(Operation operation) { } /** - * Factory method to create a class wrapping a new XlaRecvTPUEmbeddingDeduplicationData operation. + * Factory method to create a class wrapping a new XlaRecvTPUEmbeddingDeduplicationDataV2 operation. * * @param scope current scope * @param config Serialized TPUEmbeddingConfiguration proto. + * @param embeddingPartitions Serialized EmbeddingPartitionsProto proto. + * @param hbmBuffersConfig Serialized HbmBuffersConfig proto. + * @param tpuTopology Serialized TpuTopologyArgsProto proto. * @return a new instance of XlaRecvTPUEmbeddingDeduplicationData */ @Endpoint( describeByClass = true ) - public static XlaRecvTPUEmbeddingDeduplicationData create(Scope scope, String config) { + public static XlaRecvTPUEmbeddingDeduplicationData create(Scope scope, String config, + String embeddingPartitions, String hbmBuffersConfig, String tpuTopology) { OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaRecvTPUEmbeddingDeduplicationData"); opBuilder.setAttr("config", config); + opBuilder.setAttr("embedding_partitions", embeddingPartitions); + opBuilder.setAttr("hbm_buffers_config", hbmBuffersConfig); + opBuilder.setAttr("tpu_topology", tpuTopology); return new XlaRecvTPUEmbeddingDeduplicationData(opBuilder.build()); } @@ -103,10 +106,28 @@ public static class Inputs extends RawOpInputs> gradients, Iterable> learningRates, - Operand deduplicationData, String config, Options... options) { + Operand deduplicationData, String config, String embeddingPartitions, + String hbmBuffersConfig, String tpuTopology, Options... options) { OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaSendTPUEmbeddingGradients"); opBuilder.addInputList(Operands.asOutputs(gradients)); opBuilder.addInputList(Operands.asOutputs(learningRates)); opBuilder.addInput(deduplicationData.asOutput()); opBuilder.setAttr("config", config); + opBuilder.setAttr("embedding_partitions", embeddingPartitions); + opBuilder.setAttr("hbm_buffers_config", hbmBuffersConfig); + opBuilder.setAttr("tpu_topology", tpuTopology); if (options != null) { for (Options opts : options) { if (opts.NumLearningRateTags != null) { @@ -161,8 +164,23 @@ public static class Inputs extends RawOpInputs { */ public final String config; + /** + * Serialized EmbeddingPartitionsProto proto. + */ + public final String embeddingPartitions; + + /** + * Serialized HbmBuffersConfig proto. + */ + public final String hbmBuffersConfig; + + /** + * Serialized TpuTopologyArgsProto proto. + */ + public final String tpuTopology; + public Inputs(GraphOperation op) { - super(new XlaSendTPUEmbeddingGradients(op), op, Arrays.asList("config")); + super(new XlaSendTPUEmbeddingGradients(op), op, Arrays.asList("config", "embedding_partitions", "hbm_buffers_config", "tpu_topology")); int inputIndex = 0; int gradientsLength = op.inputListLength("gradients"); gradients = Arrays.asList((Operand[]) op.inputList(inputIndex, gradientsLength)); @@ -172,6 +190,9 @@ public Inputs(GraphOperation op) { inputIndex += learningRatesLength; deduplicationData = (Operand) op.input(inputIndex++); config = op.attributes().getAttrString("config"); + embeddingPartitions = op.attributes().getAttrString("embedding_partitions"); + hbmBuffersConfig = op.attributes().getAttrString("hbm_buffers_config"); + tpuTopology = op.attributes().getAttrString("tpu_topology"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseActivationsUnstack.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseActivationsUnstack.java new file mode 100644 index 00000000000..6dc42362b87 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseActivationsUnstack.java @@ -0,0 +1,163 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.xla; + +import java.util.Arrays; +import java.util.Iterator; +import java.util.List; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.Operands; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.op.annotation.Operator; +import org.tensorflow.proto.DataType; +import org.tensorflow.types.family.TType; + +/** + * The XlaSparseActivationsUnstack operation + */ +@OpMetadata( + opType = XlaSparseActivationsUnstack.OP_NAME, + inputsClass = XlaSparseActivationsUnstack.Inputs.class +) +@Operator( + group = "xla" +) +public final class XlaSparseActivationsUnstack extends RawOp implements Iterable> { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "XlaSparseActivationsUnstack"; + + private List> unstackedActivations; + + @SuppressWarnings("unchecked") + public XlaSparseActivationsUnstack(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + int unstackedActivationsLength = operation.outputListLength("unstacked_activations"); + unstackedActivations = Arrays.asList((Output[]) operation.outputList(outputIdx, unstackedActivationsLength)); + outputIdx += unstackedActivationsLength; + } + + /** + * Factory method to create a class wrapping a new XlaSparseActivationsUnstack operation. + * + * @param scope current scope + * @param stackedActivations The stackedActivations value + * @param numTables The value of the numTables attribute + * @param sampleCounts The value of the sampleCounts attribute + * @param features The value of the features attribute + * @param interleaved The value of the interleaved attribute + * @param dtype The value of the dtype attribute + * @param data type for {@code XlaSparseActivationsUnstack} output and operands + * @return a new instance of XlaSparseActivationsUnstack + */ + @Endpoint( + describeByClass = true + ) + public static XlaSparseActivationsUnstack create(Scope scope, + Operand stackedActivations, Long numTables, List sampleCounts, + List features, Boolean interleaved, Class dtype) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaSparseActivationsUnstack"); + opBuilder.addInput(stackedActivations.asOutput()); + opBuilder.setAttr("num_tables", numTables); + long[] sampleCountsArray = new long[sampleCounts.size()]; + for (int i = 0 ; i < sampleCountsArray.length ; i++) { + sampleCountsArray[i] = sampleCounts.get(i); + } + opBuilder.setAttr("sample_counts", sampleCountsArray); + long[] featuresArray = new long[features.size()]; + for (int i = 0 ; i < featuresArray.length ; i++) { + featuresArray[i] = features.get(i); + } + opBuilder.setAttr("features", featuresArray); + opBuilder.setAttr("interleaved", interleaved); + opBuilder.setAttr("dtype", Operands.toDataType(dtype)); + return new XlaSparseActivationsUnstack<>(opBuilder.build()); + } + + /** + * Gets unstackedActivations. + * + * @return unstackedActivations. + */ + public List> unstackedActivations() { + return unstackedActivations; + } + + @Override + @SuppressWarnings({"rawtypes", "unchecked"}) + public Iterator> iterator() { + return (Iterator) unstackedActivations.iterator(); + } + + @OpInputsMetadata( + outputsClass = XlaSparseActivationsUnstack.class + ) + public static class Inputs extends RawOpInputs> { + /** + * The stackedActivations input + */ + public final Operand stackedActivations; + + /** + * The sampleCounts attribute + */ + public final long[] sampleCounts; + + /** + * The features attribute + */ + public final long[] features; + + /** + * The interleaved attribute + */ + public final boolean interleaved; + + /** + * The inputDtype attribute + */ + public final DataType inputDtype; + + /** + * The dtype attribute + */ + public final DataType dtype; + + public Inputs(GraphOperation op) { + super(new XlaSparseActivationsUnstack<>(op), op, Arrays.asList("sample_counts", "features", "interleaved", "input_dtype", "dtype")); + int inputIndex = 0; + stackedActivations = (Operand) op.input(inputIndex++); + sampleCounts = op.attributes().getAttrIntList("sample_counts"); + features = op.attributes().getAttrIntList("features"); + interleaved = op.attributes().getAttrBool("interleaved"); + inputDtype = op.attributes().getAttrType("input_dtype"); + dtype = op.attributes().getAttrType("dtype"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput.java new file mode 100644 index 00000000000..0fd2a1347bc --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput.java @@ -0,0 +1,374 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.xla; + +import java.util.Arrays; +import org.tensorflow.ConcreteFunction; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.op.annotation.Operator; +import org.tensorflow.types.TFloat32; +import org.tensorflow.types.TInt32; + +/** + * The XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput operation + */ +@OpMetadata( + opType = XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput.OP_NAME, + inputsClass = XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput.Inputs.class +) +@Operator( + group = "xla" +) +public final class XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput extends RawOp { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput"; + + private Output updatedEmbeddingTable; + + private Output updatedAccumulator; + + private Output updatedWeights; + + public XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + updatedEmbeddingTable = operation.output(outputIdx++); + updatedAccumulator = operation.output(outputIdx++); + updatedWeights = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput operation. + * + * @param scope current scope + * @param rowPointers The rowPointers value + * @param sortedSampleIds The sortedSampleIds value + * @param sortedTokenIds The sortedTokenIds value + * @param sortedPosIds The sortedPosIds value + * @param sortedGains The sortedGains value + * @param weights The weights value + * @param preservedValencies The preservedValencies value + * @param preservedVectors The preservedVectors value + * @param preservedWeights The preservedWeights value + * @param activationGradients The activationGradients value + * @param learningRate The learningRate value + * @param combinerWeightsLearningRate The combinerWeightsLearningRate value + * @param embeddingTable The embeddingTable value + * @param accumulator The accumulator value + * @param maxValency The value of the maxValency attribute + * @param numWeights The value of the numWeights attribute + * @param combinerTableVjpComputation The value of the combinerTableVjpComputation attribute + * @param combinerWeightsVjpComputation The value of the combinerWeightsVjpComputation attribute + * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @return a new instance of XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput + */ + @Endpoint( + describeByClass = true + ) + public static XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput create(Scope scope, + Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, + Operand sortedPosIds, Operand sortedGains, Operand weights, + Operand preservedValencies, Operand preservedVectors, + Operand preservedWeights, Operand activationGradients, + Operand learningRate, Operand combinerWeightsLearningRate, + Operand embeddingTable, Operand accumulator, Long maxValency, + Long numWeights, ConcreteFunction combinerTableVjpComputation, + ConcreteFunction combinerWeightsVjpComputation, String tableName, Options... options) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput"); + opBuilder.addInput(rowPointers.asOutput()); + opBuilder.addInput(sortedSampleIds.asOutput()); + opBuilder.addInput(sortedTokenIds.asOutput()); + opBuilder.addInput(sortedPosIds.asOutput()); + opBuilder.addInput(sortedGains.asOutput()); + opBuilder.addInput(weights.asOutput()); + opBuilder.addInput(preservedValencies.asOutput()); + opBuilder.addInput(preservedVectors.asOutput()); + opBuilder.addInput(preservedWeights.asOutput()); + opBuilder.addInput(activationGradients.asOutput()); + opBuilder.addInput(learningRate.asOutput()); + opBuilder.addInput(combinerWeightsLearningRate.asOutput()); + opBuilder.addInput(embeddingTable.asOutput()); + opBuilder.addInput(accumulator.asOutput()); + opBuilder.setAttr("max_valency", maxValency); + opBuilder.setAttr("num_weights", numWeights); + opBuilder.setAttr("combiner_table_vjp_computation", combinerTableVjpComputation); + opBuilder.setAttr("combiner_weights_vjp_computation", combinerWeightsVjpComputation); + opBuilder.setAttr("table_name", tableName); + if (options != null) { + for (Options opts : options) { + if (opts.clipWeightMin != null) { + opBuilder.setAttr("clip_weight_min", opts.clipWeightMin); + } + if (opts.clipWeightMax != null) { + opBuilder.setAttr("clip_weight_max", opts.clipWeightMax); + } + if (opts.numSparsecoresPerDevice != null) { + opBuilder.setAttr("num_sparsecores_per_device", opts.numSparsecoresPerDevice); + } + } + } + return new XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput(opBuilder.build()); + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public static Options clipWeightMin(Float clipWeightMin) { + return new Options().clipWeightMin(clipWeightMin); + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public static Options clipWeightMax(Float clipWeightMax) { + return new Options().clipWeightMax(clipWeightMax); + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); + } + + /** + * Gets updatedEmbeddingTable. + * + * @return updatedEmbeddingTable. + */ + public Output updatedEmbeddingTable() { + return updatedEmbeddingTable; + } + + /** + * Gets updatedAccumulator. + * + * @return updatedAccumulator. + */ + public Output updatedAccumulator() { + return updatedAccumulator; + } + + /** + * Gets updatedWeights. + * + * @return updatedWeights. + */ + public Output updatedWeights() { + return updatedWeights; + } + + /** + * Optional attributes for {@link org.tensorflow.op.xla.XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput} + */ + public static class Options { + private Float clipWeightMin; + + private Float clipWeightMax; + + private Long numSparsecoresPerDevice; + + private Options() { + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public Options clipWeightMin(Float clipWeightMin) { + this.clipWeightMin = clipWeightMin; + return this; + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public Options clipWeightMax(Float clipWeightMax) { + this.clipWeightMax = clipWeightMax; + return this; + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } + } + + @OpInputsMetadata( + outputsClass = XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput.class + ) + public static class Inputs extends RawOpInputs { + /** + * The rowPointers input + */ + public final Operand rowPointers; + + /** + * The sortedSampleIds input + */ + public final Operand sortedSampleIds; + + /** + * The sortedTokenIds input + */ + public final Operand sortedTokenIds; + + /** + * The sortedPosIds input + */ + public final Operand sortedPosIds; + + /** + * The sortedGains input + */ + public final Operand sortedGains; + + /** + * The weights input + */ + public final Operand weights; + + /** + * The preservedValencies input + */ + public final Operand preservedValencies; + + /** + * The preservedVectors input + */ + public final Operand preservedVectors; + + /** + * The preservedWeights input + */ + public final Operand preservedWeights; + + /** + * The activationGradients input + */ + public final Operand activationGradients; + + /** + * The learningRate input + */ + public final Operand learningRate; + + /** + * The combinerWeightsLearningRate input + */ + public final Operand combinerWeightsLearningRate; + + /** + * The embeddingTable input + */ + public final Operand embeddingTable; + + /** + * The accumulator input + */ + public final Operand accumulator; + + /** + * The clipWeightMin attribute + */ + public final float clipWeightMin; + + /** + * The clipWeightMax attribute + */ + public final float clipWeightMax; + + /** + * The maxValency attribute + */ + public final long maxValency; + + /** + * The numWeights attribute + */ + public final long numWeights; + + /** + * The tableName attribute + */ + public final String tableName; + + /** + * The numSparsecoresPerDevice attribute + */ + public final long numSparsecoresPerDevice; + + public Inputs(GraphOperation op) { + super(new XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradAndCsrInput(op), op, Arrays.asList("clip_weight_min", "clip_weight_max", "max_valency", "num_weights", "table_name", "num_sparsecores_per_device")); + int inputIndex = 0; + rowPointers = (Operand) op.input(inputIndex++); + sortedSampleIds = (Operand) op.input(inputIndex++); + sortedTokenIds = (Operand) op.input(inputIndex++); + sortedPosIds = (Operand) op.input(inputIndex++); + sortedGains = (Operand) op.input(inputIndex++); + weights = (Operand) op.input(inputIndex++); + preservedValencies = (Operand) op.input(inputIndex++); + preservedVectors = (Operand) op.input(inputIndex++); + preservedWeights = (Operand) op.input(inputIndex++); + activationGradients = (Operand) op.input(inputIndex++); + learningRate = (Operand) op.input(inputIndex++); + combinerWeightsLearningRate = (Operand) op.input(inputIndex++); + embeddingTable = (Operand) op.input(inputIndex++); + accumulator = (Operand) op.input(inputIndex++); + clipWeightMin = op.attributes().getAttrFloat("clip_weight_min"); + clipWeightMax = op.attributes().getAttrFloat("clip_weight_max"); + maxValency = op.attributes().getAttrInt("max_valency"); + numWeights = op.attributes().getAttrInt("num_weights"); + tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput.java new file mode 100644 index 00000000000..fd9039450b6 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput.java @@ -0,0 +1,437 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.xla; + +import java.util.Arrays; +import org.tensorflow.ConcreteFunction; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.op.annotation.Operator; +import org.tensorflow.types.TFloat32; +import org.tensorflow.types.TInt32; + +/** + * The XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput operation + */ +@OpMetadata( + opType = XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput.OP_NAME, + inputsClass = XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput.Inputs.class +) +@Operator( + group = "xla" +) +public final class XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput extends RawOp { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput"; + + private Output updatedEmbeddingTable; + + private Output updatedAccumulator; + + private Output updatedMomenta; + + private Output updatedWeights; + + public XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput( + Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + updatedEmbeddingTable = operation.output(outputIdx++); + updatedAccumulator = operation.output(outputIdx++); + updatedMomenta = operation.output(outputIdx++); + updatedWeights = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput operation. + * + * @param scope current scope + * @param rowPointers The rowPointers value + * @param sortedSampleIds The sortedSampleIds value + * @param sortedTokenIds The sortedTokenIds value + * @param sortedPosIds The sortedPosIds value + * @param sortedGains The sortedGains value + * @param weights The weights value + * @param preservedValencies The preservedValencies value + * @param preservedVectors The preservedVectors value + * @param preservedWeights The preservedWeights value + * @param activationGradients The activationGradients value + * @param learningRate The learningRate value + * @param combinerWeightsLearningRate The combinerWeightsLearningRate value + * @param embeddingTable The embeddingTable value + * @param accumulator The accumulator value + * @param momenta The momenta value + * @param useNesterov The value of the useNesterov attribute + * @param exponent The value of the exponent attribute + * @param beta1 The value of the beta1 attribute + * @param beta2 The value of the beta2 attribute + * @param epsilon The value of the epsilon attribute + * @param maxValency The value of the maxValency attribute + * @param numWeights The value of the numWeights attribute + * @param combinerTableVjpComputation The value of the combinerTableVjpComputation attribute + * @param combinerWeightsVjpComputation The value of the combinerWeightsVjpComputation attribute + * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @return a new instance of XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput + */ + @Endpoint( + describeByClass = true + ) + public static XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput create( + Scope scope, Operand rowPointers, Operand sortedSampleIds, + Operand sortedTokenIds, Operand sortedPosIds, Operand sortedGains, + Operand weights, Operand preservedValencies, + Operand preservedVectors, Operand preservedWeights, + Operand activationGradients, Operand learningRate, + Operand combinerWeightsLearningRate, Operand embeddingTable, + Operand accumulator, Operand momenta, Boolean useNesterov, Float exponent, + Float beta1, Float beta2, Float epsilon, Long maxValency, Long numWeights, + ConcreteFunction combinerTableVjpComputation, ConcreteFunction combinerWeightsVjpComputation, + String tableName, Options... options) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput"); + opBuilder.addInput(rowPointers.asOutput()); + opBuilder.addInput(sortedSampleIds.asOutput()); + opBuilder.addInput(sortedTokenIds.asOutput()); + opBuilder.addInput(sortedPosIds.asOutput()); + opBuilder.addInput(sortedGains.asOutput()); + opBuilder.addInput(weights.asOutput()); + opBuilder.addInput(preservedValencies.asOutput()); + opBuilder.addInput(preservedVectors.asOutput()); + opBuilder.addInput(preservedWeights.asOutput()); + opBuilder.addInput(activationGradients.asOutput()); + opBuilder.addInput(learningRate.asOutput()); + opBuilder.addInput(combinerWeightsLearningRate.asOutput()); + opBuilder.addInput(embeddingTable.asOutput()); + opBuilder.addInput(accumulator.asOutput()); + opBuilder.addInput(momenta.asOutput()); + opBuilder.setAttr("use_nesterov", useNesterov); + opBuilder.setAttr("exponent", exponent); + opBuilder.setAttr("beta1", beta1); + opBuilder.setAttr("beta2", beta2); + opBuilder.setAttr("epsilon", epsilon); + opBuilder.setAttr("max_valency", maxValency); + opBuilder.setAttr("num_weights", numWeights); + opBuilder.setAttr("combiner_table_vjp_computation", combinerTableVjpComputation); + opBuilder.setAttr("combiner_weights_vjp_computation", combinerWeightsVjpComputation); + opBuilder.setAttr("table_name", tableName); + if (options != null) { + for (Options opts : options) { + if (opts.clipWeightMin != null) { + opBuilder.setAttr("clip_weight_min", opts.clipWeightMin); + } + if (opts.clipWeightMax != null) { + opBuilder.setAttr("clip_weight_max", opts.clipWeightMax); + } + if (opts.numSparsecoresPerDevice != null) { + opBuilder.setAttr("num_sparsecores_per_device", opts.numSparsecoresPerDevice); + } + } + } + return new XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput(opBuilder.build()); + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public static Options clipWeightMin(Float clipWeightMin) { + return new Options().clipWeightMin(clipWeightMin); + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public static Options clipWeightMax(Float clipWeightMax) { + return new Options().clipWeightMax(clipWeightMax); + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); + } + + /** + * Gets updatedEmbeddingTable. + * + * @return updatedEmbeddingTable. + */ + public Output updatedEmbeddingTable() { + return updatedEmbeddingTable; + } + + /** + * Gets updatedAccumulator. + * + * @return updatedAccumulator. + */ + public Output updatedAccumulator() { + return updatedAccumulator; + } + + /** + * Gets updatedMomenta. + * + * @return updatedMomenta. + */ + public Output updatedMomenta() { + return updatedMomenta; + } + + /** + * Gets updatedWeights. + * + * @return updatedWeights. + */ + public Output updatedWeights() { + return updatedWeights; + } + + /** + * Optional attributes for {@link org.tensorflow.op.xla.XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput} + */ + public static class Options { + private Float clipWeightMin; + + private Float clipWeightMax; + + private Long numSparsecoresPerDevice; + + private Options() { + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public Options clipWeightMin(Float clipWeightMin) { + this.clipWeightMin = clipWeightMin; + return this; + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public Options clipWeightMax(Float clipWeightMax) { + this.clipWeightMax = clipWeightMax; + return this; + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } + } + + @OpInputsMetadata( + outputsClass = XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput.class + ) + public static class Inputs extends RawOpInputs { + /** + * The rowPointers input + */ + public final Operand rowPointers; + + /** + * The sortedSampleIds input + */ + public final Operand sortedSampleIds; + + /** + * The sortedTokenIds input + */ + public final Operand sortedTokenIds; + + /** + * The sortedPosIds input + */ + public final Operand sortedPosIds; + + /** + * The sortedGains input + */ + public final Operand sortedGains; + + /** + * The weights input + */ + public final Operand weights; + + /** + * The preservedValencies input + */ + public final Operand preservedValencies; + + /** + * The preservedVectors input + */ + public final Operand preservedVectors; + + /** + * The preservedWeights input + */ + public final Operand preservedWeights; + + /** + * The activationGradients input + */ + public final Operand activationGradients; + + /** + * The learningRate input + */ + public final Operand learningRate; + + /** + * The combinerWeightsLearningRate input + */ + public final Operand combinerWeightsLearningRate; + + /** + * The embeddingTable input + */ + public final Operand embeddingTable; + + /** + * The accumulator input + */ + public final Operand accumulator; + + /** + * The momenta input + */ + public final Operand momenta; + + /** + * The useNesterov attribute + */ + public final boolean useNesterov; + + /** + * The exponent attribute + */ + public final float exponent; + + /** + * The beta1 attribute + */ + public final float beta1; + + /** + * The beta2 attribute + */ + public final float beta2; + + /** + * The epsilon attribute + */ + public final float epsilon; + + /** + * The clipWeightMin attribute + */ + public final float clipWeightMin; + + /** + * The clipWeightMax attribute + */ + public final float clipWeightMax; + + /** + * The maxValency attribute + */ + public final long maxValency; + + /** + * The numWeights attribute + */ + public final long numWeights; + + /** + * The tableName attribute + */ + public final String tableName; + + /** + * The numSparsecoresPerDevice attribute + */ + public final long numSparsecoresPerDevice; + + public Inputs(GraphOperation op) { + super(new XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdagradMomentumAndCsrInput(op), op, Arrays.asList("use_nesterov", "exponent", "beta1", "beta2", "epsilon", "clip_weight_min", "clip_weight_max", "max_valency", "num_weights", "table_name", "num_sparsecores_per_device")); + int inputIndex = 0; + rowPointers = (Operand) op.input(inputIndex++); + sortedSampleIds = (Operand) op.input(inputIndex++); + sortedTokenIds = (Operand) op.input(inputIndex++); + sortedPosIds = (Operand) op.input(inputIndex++); + sortedGains = (Operand) op.input(inputIndex++); + weights = (Operand) op.input(inputIndex++); + preservedValencies = (Operand) op.input(inputIndex++); + preservedVectors = (Operand) op.input(inputIndex++); + preservedWeights = (Operand) op.input(inputIndex++); + activationGradients = (Operand) op.input(inputIndex++); + learningRate = (Operand) op.input(inputIndex++); + combinerWeightsLearningRate = (Operand) op.input(inputIndex++); + embeddingTable = (Operand) op.input(inputIndex++); + accumulator = (Operand) op.input(inputIndex++); + momenta = (Operand) op.input(inputIndex++); + useNesterov = op.attributes().getAttrBool("use_nesterov"); + exponent = op.attributes().getAttrFloat("exponent"); + beta1 = op.attributes().getAttrFloat("beta1"); + beta2 = op.attributes().getAttrFloat("beta2"); + epsilon = op.attributes().getAttrFloat("epsilon"); + clipWeightMin = op.attributes().getAttrFloat("clip_weight_min"); + clipWeightMax = op.attributes().getAttrFloat("clip_weight_max"); + maxValency = op.attributes().getAttrInt("max_valency"); + numWeights = op.attributes().getAttrInt("num_weights"); + tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput.java new file mode 100644 index 00000000000..2f8c1a3a7df --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput.java @@ -0,0 +1,427 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.xla; + +import java.util.Arrays; +import org.tensorflow.ConcreteFunction; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.op.annotation.Operator; +import org.tensorflow.types.TFloat32; +import org.tensorflow.types.TInt32; + +/** + * The XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput operation + */ +@OpMetadata( + opType = XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput.OP_NAME, + inputsClass = XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput.Inputs.class +) +@Operator( + group = "xla" +) +public final class XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput extends RawOp { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput"; + + private Output updatedEmbeddingTable; + + private Output updatedMomenta; + + private Output updatedVelocity; + + private Output updatedWeights; + + public XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + updatedEmbeddingTable = operation.output(outputIdx++); + updatedMomenta = operation.output(outputIdx++); + updatedVelocity = operation.output(outputIdx++); + updatedWeights = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput operation. + * + * @param scope current scope + * @param rowPointers The rowPointers value + * @param sortedSampleIds The sortedSampleIds value + * @param sortedTokenIds The sortedTokenIds value + * @param sortedPosIds The sortedPosIds value + * @param sortedGains The sortedGains value + * @param weights The weights value + * @param preservedValencies The preservedValencies value + * @param preservedVectors The preservedVectors value + * @param preservedWeights The preservedWeights value + * @param activationGradients The activationGradients value + * @param learningRate The learningRate value + * @param combinerWeightsLearningRate The combinerWeightsLearningRate value + * @param embeddingTable The embeddingTable value + * @param momenta The momenta value + * @param velocity The velocity value + * @param useSumInsideSqrt The value of the useSumInsideSqrt attribute + * @param beta1 The value of the beta1 attribute + * @param beta2 The value of the beta2 attribute + * @param epsilon The value of the epsilon attribute + * @param maxValency The value of the maxValency attribute + * @param numWeights The value of the numWeights attribute + * @param combinerTableVjpComputation The value of the combinerTableVjpComputation attribute + * @param combinerWeightsVjpComputation The value of the combinerWeightsVjpComputation attribute + * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @return a new instance of XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput + */ + @Endpoint( + describeByClass = true + ) + public static XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput create(Scope scope, + Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, + Operand sortedPosIds, Operand sortedGains, Operand weights, + Operand preservedValencies, Operand preservedVectors, + Operand preservedWeights, Operand activationGradients, + Operand learningRate, Operand combinerWeightsLearningRate, + Operand embeddingTable, Operand momenta, Operand velocity, + Boolean useSumInsideSqrt, Float beta1, Float beta2, Float epsilon, Long maxValency, + Long numWeights, ConcreteFunction combinerTableVjpComputation, + ConcreteFunction combinerWeightsVjpComputation, String tableName, Options... options) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput"); + opBuilder.addInput(rowPointers.asOutput()); + opBuilder.addInput(sortedSampleIds.asOutput()); + opBuilder.addInput(sortedTokenIds.asOutput()); + opBuilder.addInput(sortedPosIds.asOutput()); + opBuilder.addInput(sortedGains.asOutput()); + opBuilder.addInput(weights.asOutput()); + opBuilder.addInput(preservedValencies.asOutput()); + opBuilder.addInput(preservedVectors.asOutput()); + opBuilder.addInput(preservedWeights.asOutput()); + opBuilder.addInput(activationGradients.asOutput()); + opBuilder.addInput(learningRate.asOutput()); + opBuilder.addInput(combinerWeightsLearningRate.asOutput()); + opBuilder.addInput(embeddingTable.asOutput()); + opBuilder.addInput(momenta.asOutput()); + opBuilder.addInput(velocity.asOutput()); + opBuilder.setAttr("use_sum_inside_sqrt", useSumInsideSqrt); + opBuilder.setAttr("beta1", beta1); + opBuilder.setAttr("beta2", beta2); + opBuilder.setAttr("epsilon", epsilon); + opBuilder.setAttr("max_valency", maxValency); + opBuilder.setAttr("num_weights", numWeights); + opBuilder.setAttr("combiner_table_vjp_computation", combinerTableVjpComputation); + opBuilder.setAttr("combiner_weights_vjp_computation", combinerWeightsVjpComputation); + opBuilder.setAttr("table_name", tableName); + if (options != null) { + for (Options opts : options) { + if (opts.clipWeightMin != null) { + opBuilder.setAttr("clip_weight_min", opts.clipWeightMin); + } + if (opts.clipWeightMax != null) { + opBuilder.setAttr("clip_weight_max", opts.clipWeightMax); + } + if (opts.numSparsecoresPerDevice != null) { + opBuilder.setAttr("num_sparsecores_per_device", opts.numSparsecoresPerDevice); + } + } + } + return new XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput(opBuilder.build()); + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public static Options clipWeightMin(Float clipWeightMin) { + return new Options().clipWeightMin(clipWeightMin); + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public static Options clipWeightMax(Float clipWeightMax) { + return new Options().clipWeightMax(clipWeightMax); + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); + } + + /** + * Gets updatedEmbeddingTable. + * + * @return updatedEmbeddingTable. + */ + public Output updatedEmbeddingTable() { + return updatedEmbeddingTable; + } + + /** + * Gets updatedMomenta. + * + * @return updatedMomenta. + */ + public Output updatedMomenta() { + return updatedMomenta; + } + + /** + * Gets updatedVelocity. + * + * @return updatedVelocity. + */ + public Output updatedVelocity() { + return updatedVelocity; + } + + /** + * Gets updatedWeights. + * + * @return updatedWeights. + */ + public Output updatedWeights() { + return updatedWeights; + } + + /** + * Optional attributes for {@link org.tensorflow.op.xla.XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput} + */ + public static class Options { + private Float clipWeightMin; + + private Float clipWeightMax; + + private Long numSparsecoresPerDevice; + + private Options() { + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public Options clipWeightMin(Float clipWeightMin) { + this.clipWeightMin = clipWeightMin; + return this; + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public Options clipWeightMax(Float clipWeightMax) { + this.clipWeightMax = clipWeightMax; + return this; + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } + } + + @OpInputsMetadata( + outputsClass = XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput.class + ) + public static class Inputs extends RawOpInputs { + /** + * The rowPointers input + */ + public final Operand rowPointers; + + /** + * The sortedSampleIds input + */ + public final Operand sortedSampleIds; + + /** + * The sortedTokenIds input + */ + public final Operand sortedTokenIds; + + /** + * The sortedPosIds input + */ + public final Operand sortedPosIds; + + /** + * The sortedGains input + */ + public final Operand sortedGains; + + /** + * The weights input + */ + public final Operand weights; + + /** + * The preservedValencies input + */ + public final Operand preservedValencies; + + /** + * The preservedVectors input + */ + public final Operand preservedVectors; + + /** + * The preservedWeights input + */ + public final Operand preservedWeights; + + /** + * The activationGradients input + */ + public final Operand activationGradients; + + /** + * The learningRate input + */ + public final Operand learningRate; + + /** + * The combinerWeightsLearningRate input + */ + public final Operand combinerWeightsLearningRate; + + /** + * The embeddingTable input + */ + public final Operand embeddingTable; + + /** + * The momenta input + */ + public final Operand momenta; + + /** + * The velocity input + */ + public final Operand velocity; + + /** + * The useSumInsideSqrt attribute + */ + public final boolean useSumInsideSqrt; + + /** + * The beta1 attribute + */ + public final float beta1; + + /** + * The beta2 attribute + */ + public final float beta2; + + /** + * The epsilon attribute + */ + public final float epsilon; + + /** + * The clipWeightMin attribute + */ + public final float clipWeightMin; + + /** + * The clipWeightMax attribute + */ + public final float clipWeightMax; + + /** + * The maxValency attribute + */ + public final long maxValency; + + /** + * The numWeights attribute + */ + public final long numWeights; + + /** + * The tableName attribute + */ + public final String tableName; + + /** + * The numSparsecoresPerDevice attribute + */ + public final long numSparsecoresPerDevice; + + public Inputs(GraphOperation op) { + super(new XlaSparseDenseMatmulCustomCombinerOnTcGradWithAdamAndCsrInput(op), op, Arrays.asList("use_sum_inside_sqrt", "beta1", "beta2", "epsilon", "clip_weight_min", "clip_weight_max", "max_valency", "num_weights", "table_name", "num_sparsecores_per_device")); + int inputIndex = 0; + rowPointers = (Operand) op.input(inputIndex++); + sortedSampleIds = (Operand) op.input(inputIndex++); + sortedTokenIds = (Operand) op.input(inputIndex++); + sortedPosIds = (Operand) op.input(inputIndex++); + sortedGains = (Operand) op.input(inputIndex++); + weights = (Operand) op.input(inputIndex++); + preservedValencies = (Operand) op.input(inputIndex++); + preservedVectors = (Operand) op.input(inputIndex++); + preservedWeights = (Operand) op.input(inputIndex++); + activationGradients = (Operand) op.input(inputIndex++); + learningRate = (Operand) op.input(inputIndex++); + combinerWeightsLearningRate = (Operand) op.input(inputIndex++); + embeddingTable = (Operand) op.input(inputIndex++); + momenta = (Operand) op.input(inputIndex++); + velocity = (Operand) op.input(inputIndex++); + useSumInsideSqrt = op.attributes().getAttrBool("use_sum_inside_sqrt"); + beta1 = op.attributes().getAttrFloat("beta1"); + beta2 = op.attributes().getAttrFloat("beta2"); + epsilon = op.attributes().getAttrFloat("epsilon"); + clipWeightMin = op.attributes().getAttrFloat("clip_weight_min"); + clipWeightMax = op.attributes().getAttrFloat("clip_weight_max"); + maxValency = op.attributes().getAttrInt("max_valency"); + numWeights = op.attributes().getAttrInt("num_weights"); + tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput.java new file mode 100644 index 00000000000..b4bb94eb671 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput.java @@ -0,0 +1,301 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.xla; + +import java.util.Arrays; +import java.util.List; +import org.tensorflow.ConcreteFunction; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.Operands; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.op.annotation.Operator; +import org.tensorflow.types.TFloat32; +import org.tensorflow.types.TInt32; + +/** + * The XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput operation + */ +@OpMetadata( + opType = XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput.OP_NAME, + inputsClass = XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput.Inputs.class +) +@Operator( + group = "xla" +) +public final class XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput extends RawOp { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput"; + + private List> updatedTables; + + private Output updatedWeights; + + @SuppressWarnings("unchecked") + public XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + int updatedTablesLength = operation.outputListLength("updated_tables"); + updatedTables = Arrays.asList((Output[]) operation.outputList(outputIdx, updatedTablesLength)); + outputIdx += updatedTablesLength; + updatedWeights = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput operation. + * + * @param scope current scope + * @param rowPointers The rowPointers value + * @param sortedSampleIds The sortedSampleIds value + * @param sortedTokenIds The sortedTokenIds value + * @param sortedPosIds The sortedPosIds value + * @param sortedGains The sortedGains value + * @param weights The weights value + * @param preservedValencies The preservedValencies value + * @param preservedVectors The preservedVectors value + * @param preservedWeights The preservedWeights value + * @param activationGradients The activationGradients value + * @param tables The tables value + * @param hyperparameters The hyperparameters value + * @param combinerWeightsLearningRate The combinerWeightsLearningRate value + * @param maxValency The value of the maxValency attribute + * @param numWeights The value of the numWeights attribute + * @param combinerTableVjpComputation The value of the combinerTableVjpComputation attribute + * @param combinerWeightsVjpComputation The value of the combinerWeightsVjpComputation attribute + * @param optimizerCustomComputation The value of the optimizerCustomComputation attribute + * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @return a new instance of XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput + */ + @Endpoint( + describeByClass = true + ) + public static XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput create(Scope scope, + Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, + Operand sortedPosIds, Operand sortedGains, Operand weights, + Operand preservedValencies, Operand preservedVectors, + Operand preservedWeights, Operand activationGradients, + Iterable> tables, Iterable> hyperparameters, + Operand combinerWeightsLearningRate, Long maxValency, Long numWeights, + ConcreteFunction combinerTableVjpComputation, ConcreteFunction combinerWeightsVjpComputation, + ConcreteFunction optimizerCustomComputation, String tableName, Options... options) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput"); + opBuilder.addInput(rowPointers.asOutput()); + opBuilder.addInput(sortedSampleIds.asOutput()); + opBuilder.addInput(sortedTokenIds.asOutput()); + opBuilder.addInput(sortedPosIds.asOutput()); + opBuilder.addInput(sortedGains.asOutput()); + opBuilder.addInput(weights.asOutput()); + opBuilder.addInput(preservedValencies.asOutput()); + opBuilder.addInput(preservedVectors.asOutput()); + opBuilder.addInput(preservedWeights.asOutput()); + opBuilder.addInput(activationGradients.asOutput()); + opBuilder.addInputList(Operands.asOutputs(tables)); + opBuilder.addInputList(Operands.asOutputs(hyperparameters)); + opBuilder.addInput(combinerWeightsLearningRate.asOutput()); + opBuilder.setAttr("max_valency", maxValency); + opBuilder.setAttr("num_weights", numWeights); + opBuilder.setAttr("combiner_table_vjp_computation", combinerTableVjpComputation); + opBuilder.setAttr("combiner_weights_vjp_computation", combinerWeightsVjpComputation); + opBuilder.setAttr("optimizer_custom_computation", optimizerCustomComputation); + opBuilder.setAttr("table_name", tableName); + if (options != null) { + for (Options opts : options) { + if (opts.numSparsecoresPerDevice != null) { + opBuilder.setAttr("num_sparsecores_per_device", opts.numSparsecoresPerDevice); + } + } + } + return new XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput(opBuilder.build()); + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); + } + + /** + * Gets updatedTables. + * + * @return updatedTables. + */ + public List> updatedTables() { + return updatedTables; + } + + /** + * Gets updatedWeights. + * + * @return updatedWeights. + */ + public Output updatedWeights() { + return updatedWeights; + } + + /** + * Optional attributes for {@link org.tensorflow.op.xla.XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput} + */ + public static class Options { + private Long numSparsecoresPerDevice; + + private Options() { + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } + } + + @OpInputsMetadata( + outputsClass = XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput.class + ) + public static class Inputs extends RawOpInputs { + /** + * The rowPointers input + */ + public final Operand rowPointers; + + /** + * The sortedSampleIds input + */ + public final Operand sortedSampleIds; + + /** + * The sortedTokenIds input + */ + public final Operand sortedTokenIds; + + /** + * The sortedPosIds input + */ + public final Operand sortedPosIds; + + /** + * The sortedGains input + */ + public final Operand sortedGains; + + /** + * The weights input + */ + public final Operand weights; + + /** + * The preservedValencies input + */ + public final Operand preservedValencies; + + /** + * The preservedVectors input + */ + public final Operand preservedVectors; + + /** + * The preservedWeights input + */ + public final Operand preservedWeights; + + /** + * The activationGradients input + */ + public final Operand activationGradients; + + /** + * The tables input + */ + public final Iterable> tables; + + /** + * The hyperparameters input + */ + public final Iterable> hyperparameters; + + /** + * The combinerWeightsLearningRate input + */ + public final Operand combinerWeightsLearningRate; + + /** + * The maxValency attribute + */ + public final long maxValency; + + /** + * The numWeights attribute + */ + public final long numWeights; + + /** + * The tableName attribute + */ + public final String tableName; + + /** + * The numSparsecoresPerDevice attribute + */ + public final long numSparsecoresPerDevice; + + public Inputs(GraphOperation op) { + super(new XlaSparseDenseMatmulCustomCombinerOnTcGradWithCsrInput(op), op, Arrays.asList("max_valency", "num_weights", "table_name", "num_sparsecores_per_device")); + int inputIndex = 0; + rowPointers = (Operand) op.input(inputIndex++); + sortedSampleIds = (Operand) op.input(inputIndex++); + sortedTokenIds = (Operand) op.input(inputIndex++); + sortedPosIds = (Operand) op.input(inputIndex++); + sortedGains = (Operand) op.input(inputIndex++); + weights = (Operand) op.input(inputIndex++); + preservedValencies = (Operand) op.input(inputIndex++); + preservedVectors = (Operand) op.input(inputIndex++); + preservedWeights = (Operand) op.input(inputIndex++); + activationGradients = (Operand) op.input(inputIndex++); + int tablesLength = op.inputListLength("tables"); + tables = Arrays.asList((Operand[]) op.inputList(inputIndex, tablesLength)); + inputIndex += tablesLength; + int hyperparametersLength = op.inputListLength("hyperparameters"); + hyperparameters = Arrays.asList((Operand[]) op.inputList(inputIndex, hyperparametersLength)); + inputIndex += hyperparametersLength; + combinerWeightsLearningRate = (Operand) op.input(inputIndex++); + maxValency = op.attributes().getAttrInt("max_valency"); + numWeights = op.attributes().getAttrInt("num_weights"); + tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput.java new file mode 100644 index 00000000000..f4230f5a56d --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput.java @@ -0,0 +1,436 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.xla; + +import java.util.Arrays; +import org.tensorflow.ConcreteFunction; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.op.annotation.Operator; +import org.tensorflow.types.TFloat32; +import org.tensorflow.types.TInt32; + +/** + * The XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput operation + */ +@OpMetadata( + opType = XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput.OP_NAME, + inputsClass = XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput.Inputs.class +) +@Operator( + group = "xla" +) +public final class XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput extends RawOp { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput"; + + private Output updatedEmbeddingTable; + + private Output updatedAccumulator; + + private Output updatedLinear; + + private Output updatedWeights; + + public XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + updatedEmbeddingTable = operation.output(outputIdx++); + updatedAccumulator = operation.output(outputIdx++); + updatedLinear = operation.output(outputIdx++); + updatedWeights = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput operation. + * + * @param scope current scope + * @param rowPointers The rowPointers value + * @param sortedSampleIds The sortedSampleIds value + * @param sortedTokenIds The sortedTokenIds value + * @param sortedPosIds The sortedPosIds value + * @param sortedGains The sortedGains value + * @param weights The weights value + * @param preservedValencies The preservedValencies value + * @param preservedVectors The preservedVectors value + * @param preservedWeights The preservedWeights value + * @param activationGradients The activationGradients value + * @param learningRate The learningRate value + * @param combinerWeightsLearningRate The combinerWeightsLearningRate value + * @param embeddingTable The embeddingTable value + * @param accumulator The accumulator value + * @param linear The linear value + * @param multiplyLinearByLearningRate The value of the multiplyLinearByLearningRate attribute + * @param beta The value of the beta attribute + * @param learningRatePower The value of the learningRatePower attribute + * @param l1RegularizationStrength The value of the l1RegularizationStrength attribute + * @param l2RegularizationStrength The value of the l2RegularizationStrength attribute + * @param maxValency The value of the maxValency attribute + * @param numWeights The value of the numWeights attribute + * @param combinerTableVjpComputation The value of the combinerTableVjpComputation attribute + * @param combinerWeightsVjpComputation The value of the combinerWeightsVjpComputation attribute + * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @return a new instance of XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput + */ + @Endpoint( + describeByClass = true + ) + public static XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput create(Scope scope, + Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, + Operand sortedPosIds, Operand sortedGains, Operand weights, + Operand preservedValencies, Operand preservedVectors, + Operand preservedWeights, Operand activationGradients, + Operand learningRate, Operand combinerWeightsLearningRate, + Operand embeddingTable, Operand accumulator, Operand linear, + Boolean multiplyLinearByLearningRate, Float beta, Float learningRatePower, + Float l1RegularizationStrength, Float l2RegularizationStrength, Long maxValency, + Long numWeights, ConcreteFunction combinerTableVjpComputation, + ConcreteFunction combinerWeightsVjpComputation, String tableName, Options... options) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput"); + opBuilder.addInput(rowPointers.asOutput()); + opBuilder.addInput(sortedSampleIds.asOutput()); + opBuilder.addInput(sortedTokenIds.asOutput()); + opBuilder.addInput(sortedPosIds.asOutput()); + opBuilder.addInput(sortedGains.asOutput()); + opBuilder.addInput(weights.asOutput()); + opBuilder.addInput(preservedValencies.asOutput()); + opBuilder.addInput(preservedVectors.asOutput()); + opBuilder.addInput(preservedWeights.asOutput()); + opBuilder.addInput(activationGradients.asOutput()); + opBuilder.addInput(learningRate.asOutput()); + opBuilder.addInput(combinerWeightsLearningRate.asOutput()); + opBuilder.addInput(embeddingTable.asOutput()); + opBuilder.addInput(accumulator.asOutput()); + opBuilder.addInput(linear.asOutput()); + opBuilder.setAttr("multiply_linear_by_learning_rate", multiplyLinearByLearningRate); + opBuilder.setAttr("beta", beta); + opBuilder.setAttr("learning_rate_power", learningRatePower); + opBuilder.setAttr("l1_regularization_strength", l1RegularizationStrength); + opBuilder.setAttr("l2_regularization_strength", l2RegularizationStrength); + opBuilder.setAttr("max_valency", maxValency); + opBuilder.setAttr("num_weights", numWeights); + opBuilder.setAttr("combiner_table_vjp_computation", combinerTableVjpComputation); + opBuilder.setAttr("combiner_weights_vjp_computation", combinerWeightsVjpComputation); + opBuilder.setAttr("table_name", tableName); + if (options != null) { + for (Options opts : options) { + if (opts.clipWeightMin != null) { + opBuilder.setAttr("clip_weight_min", opts.clipWeightMin); + } + if (opts.clipWeightMax != null) { + opBuilder.setAttr("clip_weight_max", opts.clipWeightMax); + } + if (opts.numSparsecoresPerDevice != null) { + opBuilder.setAttr("num_sparsecores_per_device", opts.numSparsecoresPerDevice); + } + } + } + return new XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput(opBuilder.build()); + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public static Options clipWeightMin(Float clipWeightMin) { + return new Options().clipWeightMin(clipWeightMin); + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public static Options clipWeightMax(Float clipWeightMax) { + return new Options().clipWeightMax(clipWeightMax); + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); + } + + /** + * Gets updatedEmbeddingTable. + * + * @return updatedEmbeddingTable. + */ + public Output updatedEmbeddingTable() { + return updatedEmbeddingTable; + } + + /** + * Gets updatedAccumulator. + * + * @return updatedAccumulator. + */ + public Output updatedAccumulator() { + return updatedAccumulator; + } + + /** + * Gets updatedLinear. + * + * @return updatedLinear. + */ + public Output updatedLinear() { + return updatedLinear; + } + + /** + * Gets updatedWeights. + * + * @return updatedWeights. + */ + public Output updatedWeights() { + return updatedWeights; + } + + /** + * Optional attributes for {@link org.tensorflow.op.xla.XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput} + */ + public static class Options { + private Float clipWeightMin; + + private Float clipWeightMax; + + private Long numSparsecoresPerDevice; + + private Options() { + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public Options clipWeightMin(Float clipWeightMin) { + this.clipWeightMin = clipWeightMin; + return this; + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public Options clipWeightMax(Float clipWeightMax) { + this.clipWeightMax = clipWeightMax; + return this; + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } + } + + @OpInputsMetadata( + outputsClass = XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput.class + ) + public static class Inputs extends RawOpInputs { + /** + * The rowPointers input + */ + public final Operand rowPointers; + + /** + * The sortedSampleIds input + */ + public final Operand sortedSampleIds; + + /** + * The sortedTokenIds input + */ + public final Operand sortedTokenIds; + + /** + * The sortedPosIds input + */ + public final Operand sortedPosIds; + + /** + * The sortedGains input + */ + public final Operand sortedGains; + + /** + * The weights input + */ + public final Operand weights; + + /** + * The preservedValencies input + */ + public final Operand preservedValencies; + + /** + * The preservedVectors input + */ + public final Operand preservedVectors; + + /** + * The preservedWeights input + */ + public final Operand preservedWeights; + + /** + * The activationGradients input + */ + public final Operand activationGradients; + + /** + * The learningRate input + */ + public final Operand learningRate; + + /** + * The combinerWeightsLearningRate input + */ + public final Operand combinerWeightsLearningRate; + + /** + * The embeddingTable input + */ + public final Operand embeddingTable; + + /** + * The accumulator input + */ + public final Operand accumulator; + + /** + * The linear input + */ + public final Operand linear; + + /** + * The multiplyLinearByLearningRate attribute + */ + public final boolean multiplyLinearByLearningRate; + + /** + * The beta attribute + */ + public final float beta; + + /** + * The learningRatePower attribute + */ + public final float learningRatePower; + + /** + * The l1RegularizationStrength attribute + */ + public final float l1RegularizationStrength; + + /** + * The l2RegularizationStrength attribute + */ + public final float l2RegularizationStrength; + + /** + * The clipWeightMin attribute + */ + public final float clipWeightMin; + + /** + * The clipWeightMax attribute + */ + public final float clipWeightMax; + + /** + * The maxValency attribute + */ + public final long maxValency; + + /** + * The numWeights attribute + */ + public final long numWeights; + + /** + * The tableName attribute + */ + public final String tableName; + + /** + * The numSparsecoresPerDevice attribute + */ + public final long numSparsecoresPerDevice; + + public Inputs(GraphOperation op) { + super(new XlaSparseDenseMatmulCustomCombinerOnTcGradWithFtrlAndCsrInput(op), op, Arrays.asList("multiply_linear_by_learning_rate", "beta", "learning_rate_power", "l1_regularization_strength", "l2_regularization_strength", "clip_weight_min", "clip_weight_max", "max_valency", "num_weights", "table_name", "num_sparsecores_per_device")); + int inputIndex = 0; + rowPointers = (Operand) op.input(inputIndex++); + sortedSampleIds = (Operand) op.input(inputIndex++); + sortedTokenIds = (Operand) op.input(inputIndex++); + sortedPosIds = (Operand) op.input(inputIndex++); + sortedGains = (Operand) op.input(inputIndex++); + weights = (Operand) op.input(inputIndex++); + preservedValencies = (Operand) op.input(inputIndex++); + preservedVectors = (Operand) op.input(inputIndex++); + preservedWeights = (Operand) op.input(inputIndex++); + activationGradients = (Operand) op.input(inputIndex++); + learningRate = (Operand) op.input(inputIndex++); + combinerWeightsLearningRate = (Operand) op.input(inputIndex++); + embeddingTable = (Operand) op.input(inputIndex++); + accumulator = (Operand) op.input(inputIndex++); + linear = (Operand) op.input(inputIndex++); + multiplyLinearByLearningRate = op.attributes().getAttrBool("multiply_linear_by_learning_rate"); + beta = op.attributes().getAttrFloat("beta"); + learningRatePower = op.attributes().getAttrFloat("learning_rate_power"); + l1RegularizationStrength = op.attributes().getAttrFloat("l1_regularization_strength"); + l2RegularizationStrength = op.attributes().getAttrFloat("l2_regularization_strength"); + clipWeightMin = op.attributes().getAttrFloat("clip_weight_min"); + clipWeightMax = op.attributes().getAttrFloat("clip_weight_max"); + maxValency = op.attributes().getAttrInt("max_valency"); + numWeights = op.attributes().getAttrInt("num_weights"); + tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput.java new file mode 100644 index 00000000000..1dfa617f3c9 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput.java @@ -0,0 +1,350 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.xla; + +import java.util.Arrays; +import org.tensorflow.ConcreteFunction; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.types.TFloat32; +import org.tensorflow.types.TInt32; + +/** + * The XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput operation + */ +@OpMetadata( + opType = XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput.OP_NAME, + inputsClass = XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput.Inputs.class +) +public final class XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput extends RawOp { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput"; + + private Output updatedEmbeddingTable; + + private Output updatedWeights; + + public XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + updatedEmbeddingTable = operation.output(outputIdx++); + updatedWeights = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput operation. + * + * @param scope current scope + * @param rowPointers The rowPointers value + * @param sortedSampleIds The sortedSampleIds value + * @param sortedTokenIds The sortedTokenIds value + * @param sortedPosIds The sortedPosIds value + * @param sortedGains The sortedGains value + * @param weights The weights value + * @param preservedValencies The preservedValencies value + * @param preservedVectors The preservedVectors value + * @param preservedWeights The preservedWeights value + * @param activationGradients The activationGradients value + * @param learningRate The learningRate value + * @param combinerWeightsLearningRate The combinerWeightsLearningRate value + * @param embeddingTable The embeddingTable value + * @param maxValency The value of the maxValency attribute + * @param numWeights The value of the numWeights attribute + * @param combinerTableVjpComputation The value of the combinerTableVjpComputation attribute + * @param combinerWeightsVjpComputation The value of the combinerWeightsVjpComputation attribute + * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @return a new instance of XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput + */ + @Endpoint( + describeByClass = true + ) + public static XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput create(Scope scope, + Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, + Operand sortedPosIds, Operand sortedGains, Operand weights, + Operand preservedValencies, Operand preservedVectors, + Operand preservedWeights, Operand activationGradients, + Operand learningRate, Operand combinerWeightsLearningRate, + Operand embeddingTable, Long maxValency, Long numWeights, + ConcreteFunction combinerTableVjpComputation, ConcreteFunction combinerWeightsVjpComputation, + String tableName, Options... options) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput"); + opBuilder.addInput(rowPointers.asOutput()); + opBuilder.addInput(sortedSampleIds.asOutput()); + opBuilder.addInput(sortedTokenIds.asOutput()); + opBuilder.addInput(sortedPosIds.asOutput()); + opBuilder.addInput(sortedGains.asOutput()); + opBuilder.addInput(weights.asOutput()); + opBuilder.addInput(preservedValencies.asOutput()); + opBuilder.addInput(preservedVectors.asOutput()); + opBuilder.addInput(preservedWeights.asOutput()); + opBuilder.addInput(activationGradients.asOutput()); + opBuilder.addInput(learningRate.asOutput()); + opBuilder.addInput(combinerWeightsLearningRate.asOutput()); + opBuilder.addInput(embeddingTable.asOutput()); + opBuilder.setAttr("max_valency", maxValency); + opBuilder.setAttr("num_weights", numWeights); + opBuilder.setAttr("combiner_table_vjp_computation", combinerTableVjpComputation); + opBuilder.setAttr("combiner_weights_vjp_computation", combinerWeightsVjpComputation); + opBuilder.setAttr("table_name", tableName); + if (options != null) { + for (Options opts : options) { + if (opts.clipWeightMin != null) { + opBuilder.setAttr("clip_weight_min", opts.clipWeightMin); + } + if (opts.clipWeightMax != null) { + opBuilder.setAttr("clip_weight_max", opts.clipWeightMax); + } + if (opts.numSparsecoresPerDevice != null) { + opBuilder.setAttr("num_sparsecores_per_device", opts.numSparsecoresPerDevice); + } + } + } + return new XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput(opBuilder.build()); + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public static Options clipWeightMin(Float clipWeightMin) { + return new Options().clipWeightMin(clipWeightMin); + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public static Options clipWeightMax(Float clipWeightMax) { + return new Options().clipWeightMax(clipWeightMax); + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); + } + + /** + * Gets updatedEmbeddingTable. + * + * @return updatedEmbeddingTable. + */ + public Output updatedEmbeddingTable() { + return updatedEmbeddingTable; + } + + /** + * Gets updatedWeights. + * + * @return updatedWeights. + */ + public Output updatedWeights() { + return updatedWeights; + } + + /** + * Optional attributes for {@link org.tensorflow.op.xla.XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput} + */ + public static class Options { + private Float clipWeightMin; + + private Float clipWeightMax; + + private Long numSparsecoresPerDevice; + + private Options() { + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public Options clipWeightMin(Float clipWeightMin) { + this.clipWeightMin = clipWeightMin; + return this; + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public Options clipWeightMax(Float clipWeightMax) { + this.clipWeightMax = clipWeightMax; + return this; + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } + } + + @OpInputsMetadata( + outputsClass = XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput.class + ) + public static class Inputs extends RawOpInputs { + /** + * The rowPointers input + */ + public final Operand rowPointers; + + /** + * The sortedSampleIds input + */ + public final Operand sortedSampleIds; + + /** + * The sortedTokenIds input + */ + public final Operand sortedTokenIds; + + /** + * The sortedPosIds input + */ + public final Operand sortedPosIds; + + /** + * The sortedGains input + */ + public final Operand sortedGains; + + /** + * The weights input + */ + public final Operand weights; + + /** + * The preservedValencies input + */ + public final Operand preservedValencies; + + /** + * The preservedVectors input + */ + public final Operand preservedVectors; + + /** + * The preservedWeights input + */ + public final Operand preservedWeights; + + /** + * The activationGradients input + */ + public final Operand activationGradients; + + /** + * The learningRate input + */ + public final Operand learningRate; + + /** + * The combinerWeightsLearningRate input + */ + public final Operand combinerWeightsLearningRate; + + /** + * The embeddingTable input + */ + public final Operand embeddingTable; + + /** + * The clipWeightMin attribute + */ + public final float clipWeightMin; + + /** + * The clipWeightMax attribute + */ + public final float clipWeightMax; + + /** + * The maxValency attribute + */ + public final long maxValency; + + /** + * The numWeights attribute + */ + public final long numWeights; + + /** + * The tableName attribute + */ + public final String tableName; + + /** + * The numSparsecoresPerDevice attribute + */ + public final long numSparsecoresPerDevice; + + public Inputs(GraphOperation op) { + super(new XlaSparseDenseMatmulCustomCombinerOnTcGradWithSgdAndCsrInput(op), op, Arrays.asList("clip_weight_min", "clip_weight_max", "max_valency", "num_weights", "table_name", "num_sparsecores_per_device")); + int inputIndex = 0; + rowPointers = (Operand) op.input(inputIndex++); + sortedSampleIds = (Operand) op.input(inputIndex++); + sortedTokenIds = (Operand) op.input(inputIndex++); + sortedPosIds = (Operand) op.input(inputIndex++); + sortedGains = (Operand) op.input(inputIndex++); + weights = (Operand) op.input(inputIndex++); + preservedValencies = (Operand) op.input(inputIndex++); + preservedVectors = (Operand) op.input(inputIndex++); + preservedWeights = (Operand) op.input(inputIndex++); + activationGradients = (Operand) op.input(inputIndex++); + learningRate = (Operand) op.input(inputIndex++); + combinerWeightsLearningRate = (Operand) op.input(inputIndex++); + embeddingTable = (Operand) op.input(inputIndex++); + clipWeightMin = op.attributes().getAttrFloat("clip_weight_min"); + clipWeightMax = op.attributes().getAttrFloat("clip_weight_max"); + maxValency = op.attributes().getAttrInt("max_valency"); + numWeights = op.attributes().getAttrInt("num_weights"); + tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput.java new file mode 100644 index 00000000000..37e9bbd0380 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput.java @@ -0,0 +1,278 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.xla; + +import java.util.Arrays; +import org.tensorflow.ConcreteFunction; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.types.TFloat32; +import org.tensorflow.types.TInt32; + +/** + * The XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput operation + */ +@OpMetadata( + opType = XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput.OP_NAME, + inputsClass = XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput.Inputs.class +) +public final class XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput extends RawOp { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput"; + + private Output activations; + + private Output preservedValencies; + + private Output preservedVectors; + + public XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + activations = operation.output(outputIdx++); + preservedValencies = operation.output(outputIdx++); + preservedVectors = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput operation. + * + * @param scope current scope + * @param rowPointers The rowPointers value + * @param sortedSampleIds The sortedSampleIds value + * @param sortedTokenIds The sortedTokenIds value + * @param sortedPosIds The sortedPosIds value + * @param sortedGains The sortedGains value + * @param embeddingTable The embeddingTable value + * @param weights The weights value + * @param inputSize The value of the inputSize attribute + * @param maxValency The value of the maxValency attribute + * @param numWeights The value of the numWeights attribute + * @param combinerComputation The value of the combinerComputation attribute + * @param quantizationConfigLow The value of the quantizationConfigLow attribute + * @param quantizationConfigHigh The value of the quantizationConfigHigh attribute + * @param quantizationConfigNumBuckets The value of the quantizationConfigNumBuckets attribute + * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @return a new instance of XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput + */ + @Endpoint( + describeByClass = true + ) + public static XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput create(Scope scope, + Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, + Operand sortedPosIds, Operand sortedGains, Operand embeddingTable, + Operand weights, Long inputSize, Long maxValency, Long numWeights, + ConcreteFunction combinerComputation, Float quantizationConfigLow, + Float quantizationConfigHigh, Long quantizationConfigNumBuckets, String tableName, + Options... options) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput"); + opBuilder.addInput(rowPointers.asOutput()); + opBuilder.addInput(sortedSampleIds.asOutput()); + opBuilder.addInput(sortedTokenIds.asOutput()); + opBuilder.addInput(sortedPosIds.asOutput()); + opBuilder.addInput(sortedGains.asOutput()); + opBuilder.addInput(embeddingTable.asOutput()); + opBuilder.addInput(weights.asOutput()); + opBuilder.setAttr("input_size", inputSize); + opBuilder.setAttr("max_valency", maxValency); + opBuilder.setAttr("num_weights", numWeights); + opBuilder.setAttr("combiner_computation", combinerComputation); + opBuilder.setAttr("quantization_config_low", quantizationConfigLow); + opBuilder.setAttr("quantization_config_high", quantizationConfigHigh); + opBuilder.setAttr("quantization_config_num_buckets", quantizationConfigNumBuckets); + opBuilder.setAttr("table_name", tableName); + if (options != null) { + for (Options opts : options) { + if (opts.numSparsecoresPerDevice != null) { + opBuilder.setAttr("num_sparsecores_per_device", opts.numSparsecoresPerDevice); + } + } + } + return new XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput(opBuilder.build()); + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); + } + + /** + * Gets activations. + * + * @return activations. + */ + public Output activations() { + return activations; + } + + /** + * Gets preservedValencies. + * + * @return preservedValencies. + */ + public Output preservedValencies() { + return preservedValencies; + } + + /** + * Gets preservedVectors. + * + * @return preservedVectors. + */ + public Output preservedVectors() { + return preservedVectors; + } + + /** + * Optional attributes for {@link org.tensorflow.op.xla.XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput} + */ + public static class Options { + private Long numSparsecoresPerDevice; + + private Options() { + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } + } + + @OpInputsMetadata( + outputsClass = XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput.class + ) + public static class Inputs extends RawOpInputs { + /** + * The rowPointers input + */ + public final Operand rowPointers; + + /** + * The sortedSampleIds input + */ + public final Operand sortedSampleIds; + + /** + * The sortedTokenIds input + */ + public final Operand sortedTokenIds; + + /** + * The sortedPosIds input + */ + public final Operand sortedPosIds; + + /** + * The sortedGains input + */ + public final Operand sortedGains; + + /** + * The embeddingTable input + */ + public final Operand embeddingTable; + + /** + * The weights input + */ + public final Operand weights; + + /** + * The inputSize attribute + */ + public final long inputSize; + + /** + * The maxValency attribute + */ + public final long maxValency; + + /** + * The numWeights attribute + */ + public final long numWeights; + + /** + * The quantizationConfigLow attribute + */ + public final float quantizationConfigLow; + + /** + * The quantizationConfigHigh attribute + */ + public final float quantizationConfigHigh; + + /** + * The quantizationConfigNumBuckets attribute + */ + public final long quantizationConfigNumBuckets; + + /** + * The tableName attribute + */ + public final String tableName; + + /** + * The numSparsecoresPerDevice attribute + */ + public final long numSparsecoresPerDevice; + + public Inputs(GraphOperation op) { + super(new XlaSparseDenseMatmulCustomCombinerOnTcWithCsrInput(op), op, Arrays.asList("input_size", "max_valency", "num_weights", "quantization_config_low", "quantization_config_high", "quantization_config_num_buckets", "table_name", "num_sparsecores_per_device")); + int inputIndex = 0; + rowPointers = (Operand) op.input(inputIndex++); + sortedSampleIds = (Operand) op.input(inputIndex++); + sortedTokenIds = (Operand) op.input(inputIndex++); + sortedPosIds = (Operand) op.input(inputIndex++); + sortedGains = (Operand) op.input(inputIndex++); + embeddingTable = (Operand) op.input(inputIndex++); + weights = (Operand) op.input(inputIndex++); + inputSize = op.attributes().getAttrInt("input_size"); + maxValency = op.attributes().getAttrInt("max_valency"); + numWeights = op.attributes().getAttrInt("num_weights"); + quantizationConfigLow = op.attributes().getAttrFloat("quantization_config_low"); + quantizationConfigHigh = op.attributes().getAttrFloat("quantization_config_high"); + quantizationConfigNumBuckets = op.attributes().getAttrInt("quantization_config_num_buckets"); + tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdagradAndCsrInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdagradAndCsrInput.java index b63cba97719..0f71b62bc15 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdagradAndCsrInput.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdagradAndCsrInput.java @@ -105,6 +105,9 @@ public static XlaSparseDenseMatmulGradWithAdagradAndCsrInput create(Scope scope, if (opts.clipWeightMax != null) { opBuilder.setAttr("clip_weight_max", opts.clipWeightMax); } + if (opts.numSparsecoresPerDevice != null) { + opBuilder.setAttr("num_sparsecores_per_device", opts.numSparsecoresPerDevice); + } } } return new XlaSparseDenseMatmulGradWithAdagradAndCsrInput(opBuilder.build()); @@ -130,6 +133,16 @@ public static Options clipWeightMax(Float clipWeightMax) { return new Options().clipWeightMax(clipWeightMax); } + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); + } + /** * Gets updatedEmbeddingTable. * @@ -156,6 +169,8 @@ public static class Options { private Float clipWeightMax; + private Long numSparsecoresPerDevice; + private Options() { } @@ -180,6 +195,17 @@ public Options clipWeightMax(Float clipWeightMax) { this.clipWeightMax = clipWeightMax; return this; } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } } @OpInputsMetadata( @@ -246,8 +272,13 @@ public static class Inputs extends RawOpInputs) op.input(inputIndex++); sortedSampleIds = (Operand) op.input(inputIndex++); @@ -261,6 +292,7 @@ public Inputs(GraphOperation op) { clipWeightMin = op.attributes().getAttrFloat("clip_weight_min"); clipWeightMax = op.attributes().getAttrFloat("clip_weight_max"); tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize.java new file mode 100644 index 00000000000..6a04212720a --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize.java @@ -0,0 +1,311 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.xla; + +import java.util.Arrays; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.types.TFloat32; +import org.tensorflow.types.TInt32; + +/** + * The XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize operation + */ +@OpMetadata( + opType = XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize.OP_NAME, + inputsClass = XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize.Inputs.class +) +public final class XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize extends RawOp { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize"; + + private Output updatedEmbeddingTable; + + private Output updatedAccumulator; + + public XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + updatedEmbeddingTable = operation.output(outputIdx++); + updatedAccumulator = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize operation. + * + * @param scope current scope + * @param rowPointers The rowPointers value + * @param sortedSampleIds The sortedSampleIds value + * @param sortedTokenIds The sortedTokenIds value + * @param sortedGains The sortedGains value + * @param activationGradients The activationGradients value + * @param learningRate The learningRate value + * @param embeddingTable The embeddingTable value + * @param accumulator The accumulator value + * @param numMinibatchesPerPhysicalSparseCore The numMinibatchesPerPhysicalSparseCore value + * @param maxIdsPerSparseCore The value of the maxIdsPerSparseCore attribute + * @param maxUniqueIdsPerSparseCore The value of the maxUniqueIdsPerSparseCore attribute + * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @return a new instance of XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize + */ + @Endpoint( + describeByClass = true + ) + public static XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize create(Scope scope, + Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, + Operand sortedGains, Operand activationGradients, + Operand learningRate, Operand embeddingTable, + Operand accumulator, Operand numMinibatchesPerPhysicalSparseCore, + Long maxIdsPerSparseCore, Long maxUniqueIdsPerSparseCore, String tableName, + Options... options) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize"); + opBuilder.addInput(rowPointers.asOutput()); + opBuilder.addInput(sortedSampleIds.asOutput()); + opBuilder.addInput(sortedTokenIds.asOutput()); + opBuilder.addInput(sortedGains.asOutput()); + opBuilder.addInput(activationGradients.asOutput()); + opBuilder.addInput(learningRate.asOutput()); + opBuilder.addInput(embeddingTable.asOutput()); + opBuilder.addInput(accumulator.asOutput()); + opBuilder.addInput(numMinibatchesPerPhysicalSparseCore.asOutput()); + opBuilder.setAttr("max_ids_per_sparse_core", maxIdsPerSparseCore); + opBuilder.setAttr("max_unique_ids_per_sparse_core", maxUniqueIdsPerSparseCore); + opBuilder.setAttr("table_name", tableName); + if (options != null) { + for (Options opts : options) { + if (opts.clipWeightMin != null) { + opBuilder.setAttr("clip_weight_min", opts.clipWeightMin); + } + if (opts.clipWeightMax != null) { + opBuilder.setAttr("clip_weight_max", opts.clipWeightMax); + } + if (opts.numSparsecoresPerDevice != null) { + opBuilder.setAttr("num_sparsecores_per_device", opts.numSparsecoresPerDevice); + } + } + } + return new XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize(opBuilder.build()); + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public static Options clipWeightMin(Float clipWeightMin) { + return new Options().clipWeightMin(clipWeightMin); + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public static Options clipWeightMax(Float clipWeightMax) { + return new Options().clipWeightMax(clipWeightMax); + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); + } + + /** + * Gets updatedEmbeddingTable. + * + * @return updatedEmbeddingTable. + */ + public Output updatedEmbeddingTable() { + return updatedEmbeddingTable; + } + + /** + * Gets updatedAccumulator. + * + * @return updatedAccumulator. + */ + public Output updatedAccumulator() { + return updatedAccumulator; + } + + /** + * Optional attributes for {@link org.tensorflow.op.xla.XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize} + */ + public static class Options { + private Float clipWeightMin; + + private Float clipWeightMax; + + private Long numSparsecoresPerDevice; + + private Options() { + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public Options clipWeightMin(Float clipWeightMin) { + this.clipWeightMin = clipWeightMin; + return this; + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public Options clipWeightMax(Float clipWeightMax) { + this.clipWeightMax = clipWeightMax; + return this; + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } + } + + @OpInputsMetadata( + outputsClass = XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize.class + ) + public static class Inputs extends RawOpInputs { + /** + * The rowPointers input + */ + public final Operand rowPointers; + + /** + * The sortedSampleIds input + */ + public final Operand sortedSampleIds; + + /** + * The sortedTokenIds input + */ + public final Operand sortedTokenIds; + + /** + * The sortedGains input + */ + public final Operand sortedGains; + + /** + * The activationGradients input + */ + public final Operand activationGradients; + + /** + * The learningRate input + */ + public final Operand learningRate; + + /** + * The embeddingTable input + */ + public final Operand embeddingTable; + + /** + * The accumulator input + */ + public final Operand accumulator; + + /** + * The numMinibatchesPerPhysicalSparseCore input + */ + public final Operand numMinibatchesPerPhysicalSparseCore; + + /** + * The clipWeightMin attribute + */ + public final float clipWeightMin; + + /** + * The clipWeightMax attribute + */ + public final float clipWeightMax; + + /** + * The maxIdsPerSparseCore attribute + */ + public final long maxIdsPerSparseCore; + + /** + * The maxUniqueIdsPerSparseCore attribute + */ + public final long maxUniqueIdsPerSparseCore; + + /** + * The tableName attribute + */ + public final String tableName; + + /** + * The numSparsecoresPerDevice attribute + */ + public final long numSparsecoresPerDevice; + + public Inputs(GraphOperation op) { + super(new XlaSparseDenseMatmulGradWithAdagradAndStaticBufferSize(op), op, Arrays.asList("clip_weight_min", "clip_weight_max", "max_ids_per_sparse_core", "max_unique_ids_per_sparse_core", "table_name", "num_sparsecores_per_device")); + int inputIndex = 0; + rowPointers = (Operand) op.input(inputIndex++); + sortedSampleIds = (Operand) op.input(inputIndex++); + sortedTokenIds = (Operand) op.input(inputIndex++); + sortedGains = (Operand) op.input(inputIndex++); + activationGradients = (Operand) op.input(inputIndex++); + learningRate = (Operand) op.input(inputIndex++); + embeddingTable = (Operand) op.input(inputIndex++); + accumulator = (Operand) op.input(inputIndex++); + numMinibatchesPerPhysicalSparseCore = (Operand) op.input(inputIndex++); + clipWeightMin = op.attributes().getAttrFloat("clip_weight_min"); + clipWeightMax = op.attributes().getAttrFloat("clip_weight_max"); + maxIdsPerSparseCore = op.attributes().getAttrInt("max_ids_per_sparse_core"); + maxUniqueIdsPerSparseCore = op.attributes().getAttrInt("max_unique_ids_per_sparse_core"); + tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdagradMomentumAndCsrInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdagradMomentumAndCsrInput.java index faa117af196..d9edff0a5ee 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdagradMomentumAndCsrInput.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdagradMomentumAndCsrInput.java @@ -121,6 +121,9 @@ public static XlaSparseDenseMatmulGradWithAdagradMomentumAndCsrInput create(Scop if (opts.clipWeightMax != null) { opBuilder.setAttr("clip_weight_max", opts.clipWeightMax); } + if (opts.numSparsecoresPerDevice != null) { + opBuilder.setAttr("num_sparsecores_per_device", opts.numSparsecoresPerDevice); + } } } return new XlaSparseDenseMatmulGradWithAdagradMomentumAndCsrInput(opBuilder.build()); @@ -146,6 +149,16 @@ public static Options clipWeightMax(Float clipWeightMax) { return new Options().clipWeightMax(clipWeightMax); } + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); + } + /** * Gets updatedEmbeddingTable. * @@ -181,6 +194,8 @@ public static class Options { private Float clipWeightMax; + private Long numSparsecoresPerDevice; + private Options() { } @@ -205,6 +220,17 @@ public Options clipWeightMax(Float clipWeightMax) { this.clipWeightMax = clipWeightMax; return this; } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } } @OpInputsMetadata( @@ -301,8 +327,13 @@ public static class Inputs extends RawOpInputs) op.input(inputIndex++); sortedSampleIds = (Operand) op.input(inputIndex++); @@ -322,6 +353,7 @@ public Inputs(GraphOperation op) { clipWeightMin = op.attributes().getAttrFloat("clip_weight_min"); clipWeightMax = op.attributes().getAttrFloat("clip_weight_max"); tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize.java new file mode 100644 index 00000000000..285b2c84a1f --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize.java @@ -0,0 +1,372 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.xla; + +import java.util.Arrays; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.types.TFloat32; +import org.tensorflow.types.TInt32; + +/** + * The XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize operation + */ +@OpMetadata( + opType = XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize.OP_NAME, + inputsClass = XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize.Inputs.class +) +public final class XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize extends RawOp { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize"; + + private Output updatedEmbeddingTable; + + private Output updatedAccumulator; + + private Output updatedMomenta; + + public XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + updatedEmbeddingTable = operation.output(outputIdx++); + updatedAccumulator = operation.output(outputIdx++); + updatedMomenta = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize operation. + * + * @param scope current scope + * @param rowPointers The rowPointers value + * @param sortedSampleIds The sortedSampleIds value + * @param sortedTokenIds The sortedTokenIds value + * @param sortedGains The sortedGains value + * @param activationGradients The activationGradients value + * @param learningRate The learningRate value + * @param embeddingTable The embeddingTable value + * @param accumulator The accumulator value + * @param momenta The momenta value + * @param numMinibatchesPerPhysicalSparseCore The numMinibatchesPerPhysicalSparseCore value + * @param useNesterov The value of the useNesterov attribute + * @param exponent The value of the exponent attribute + * @param beta1 The value of the beta1 attribute + * @param beta2 The value of the beta2 attribute + * @param epsilon The value of the epsilon attribute + * @param maxIdsPerSparseCore The value of the maxIdsPerSparseCore attribute + * @param maxUniqueIdsPerSparseCore The value of the maxUniqueIdsPerSparseCore attribute + * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @return a new instance of XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize + */ + @Endpoint( + describeByClass = true + ) + public static XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize create(Scope scope, + Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, + Operand sortedGains, Operand activationGradients, + Operand learningRate, Operand embeddingTable, + Operand accumulator, Operand momenta, + Operand numMinibatchesPerPhysicalSparseCore, Boolean useNesterov, Float exponent, + Float beta1, Float beta2, Float epsilon, Long maxIdsPerSparseCore, + Long maxUniqueIdsPerSparseCore, String tableName, Options... options) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize"); + opBuilder.addInput(rowPointers.asOutput()); + opBuilder.addInput(sortedSampleIds.asOutput()); + opBuilder.addInput(sortedTokenIds.asOutput()); + opBuilder.addInput(sortedGains.asOutput()); + opBuilder.addInput(activationGradients.asOutput()); + opBuilder.addInput(learningRate.asOutput()); + opBuilder.addInput(embeddingTable.asOutput()); + opBuilder.addInput(accumulator.asOutput()); + opBuilder.addInput(momenta.asOutput()); + opBuilder.addInput(numMinibatchesPerPhysicalSparseCore.asOutput()); + opBuilder.setAttr("use_nesterov", useNesterov); + opBuilder.setAttr("exponent", exponent); + opBuilder.setAttr("beta1", beta1); + opBuilder.setAttr("beta2", beta2); + opBuilder.setAttr("epsilon", epsilon); + opBuilder.setAttr("max_ids_per_sparse_core", maxIdsPerSparseCore); + opBuilder.setAttr("max_unique_ids_per_sparse_core", maxUniqueIdsPerSparseCore); + opBuilder.setAttr("table_name", tableName); + if (options != null) { + for (Options opts : options) { + if (opts.clipWeightMin != null) { + opBuilder.setAttr("clip_weight_min", opts.clipWeightMin); + } + if (opts.clipWeightMax != null) { + opBuilder.setAttr("clip_weight_max", opts.clipWeightMax); + } + if (opts.numSparsecoresPerDevice != null) { + opBuilder.setAttr("num_sparsecores_per_device", opts.numSparsecoresPerDevice); + } + } + } + return new XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize(opBuilder.build()); + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public static Options clipWeightMin(Float clipWeightMin) { + return new Options().clipWeightMin(clipWeightMin); + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public static Options clipWeightMax(Float clipWeightMax) { + return new Options().clipWeightMax(clipWeightMax); + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); + } + + /** + * Gets updatedEmbeddingTable. + * + * @return updatedEmbeddingTable. + */ + public Output updatedEmbeddingTable() { + return updatedEmbeddingTable; + } + + /** + * Gets updatedAccumulator. + * + * @return updatedAccumulator. + */ + public Output updatedAccumulator() { + return updatedAccumulator; + } + + /** + * Gets updatedMomenta. + * + * @return updatedMomenta. + */ + public Output updatedMomenta() { + return updatedMomenta; + } + + /** + * Optional attributes for {@link org.tensorflow.op.xla.XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize} + */ + public static class Options { + private Float clipWeightMin; + + private Float clipWeightMax; + + private Long numSparsecoresPerDevice; + + private Options() { + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public Options clipWeightMin(Float clipWeightMin) { + this.clipWeightMin = clipWeightMin; + return this; + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public Options clipWeightMax(Float clipWeightMax) { + this.clipWeightMax = clipWeightMax; + return this; + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } + } + + @OpInputsMetadata( + outputsClass = XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize.class + ) + public static class Inputs extends RawOpInputs { + /** + * The rowPointers input + */ + public final Operand rowPointers; + + /** + * The sortedSampleIds input + */ + public final Operand sortedSampleIds; + + /** + * The sortedTokenIds input + */ + public final Operand sortedTokenIds; + + /** + * The sortedGains input + */ + public final Operand sortedGains; + + /** + * The activationGradients input + */ + public final Operand activationGradients; + + /** + * The learningRate input + */ + public final Operand learningRate; + + /** + * The embeddingTable input + */ + public final Operand embeddingTable; + + /** + * The accumulator input + */ + public final Operand accumulator; + + /** + * The momenta input + */ + public final Operand momenta; + + /** + * The numMinibatchesPerPhysicalSparseCore input + */ + public final Operand numMinibatchesPerPhysicalSparseCore; + + /** + * The useNesterov attribute + */ + public final boolean useNesterov; + + /** + * The exponent attribute + */ + public final float exponent; + + /** + * The beta1 attribute + */ + public final float beta1; + + /** + * The beta2 attribute + */ + public final float beta2; + + /** + * The epsilon attribute + */ + public final float epsilon; + + /** + * The clipWeightMin attribute + */ + public final float clipWeightMin; + + /** + * The clipWeightMax attribute + */ + public final float clipWeightMax; + + /** + * The maxIdsPerSparseCore attribute + */ + public final long maxIdsPerSparseCore; + + /** + * The maxUniqueIdsPerSparseCore attribute + */ + public final long maxUniqueIdsPerSparseCore; + + /** + * The tableName attribute + */ + public final String tableName; + + /** + * The numSparsecoresPerDevice attribute + */ + public final long numSparsecoresPerDevice; + + public Inputs(GraphOperation op) { + super(new XlaSparseDenseMatmulGradWithAdagradMomentumAndStaticBufferSize(op), op, Arrays.asList("use_nesterov", "exponent", "beta1", "beta2", "epsilon", "clip_weight_min", "clip_weight_max", "max_ids_per_sparse_core", "max_unique_ids_per_sparse_core", "table_name", "num_sparsecores_per_device")); + int inputIndex = 0; + rowPointers = (Operand) op.input(inputIndex++); + sortedSampleIds = (Operand) op.input(inputIndex++); + sortedTokenIds = (Operand) op.input(inputIndex++); + sortedGains = (Operand) op.input(inputIndex++); + activationGradients = (Operand) op.input(inputIndex++); + learningRate = (Operand) op.input(inputIndex++); + embeddingTable = (Operand) op.input(inputIndex++); + accumulator = (Operand) op.input(inputIndex++); + momenta = (Operand) op.input(inputIndex++); + numMinibatchesPerPhysicalSparseCore = (Operand) op.input(inputIndex++); + useNesterov = op.attributes().getAttrBool("use_nesterov"); + exponent = op.attributes().getAttrFloat("exponent"); + beta1 = op.attributes().getAttrFloat("beta1"); + beta2 = op.attributes().getAttrFloat("beta2"); + epsilon = op.attributes().getAttrFloat("epsilon"); + clipWeightMin = op.attributes().getAttrFloat("clip_weight_min"); + clipWeightMax = op.attributes().getAttrFloat("clip_weight_max"); + maxIdsPerSparseCore = op.attributes().getAttrInt("max_ids_per_sparse_core"); + maxUniqueIdsPerSparseCore = op.attributes().getAttrInt("max_unique_ids_per_sparse_core"); + tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdamAndCsrInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdamAndCsrInput.java index a39190054b3..d7a5b8e6765 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdamAndCsrInput.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdamAndCsrInput.java @@ -119,6 +119,9 @@ public static XlaSparseDenseMatmulGradWithAdamAndCsrInput create(Scope scope, if (opts.clipWeightMax != null) { opBuilder.setAttr("clip_weight_max", opts.clipWeightMax); } + if (opts.numSparsecoresPerDevice != null) { + opBuilder.setAttr("num_sparsecores_per_device", opts.numSparsecoresPerDevice); + } } } return new XlaSparseDenseMatmulGradWithAdamAndCsrInput(opBuilder.build()); @@ -144,6 +147,16 @@ public static Options clipWeightMax(Float clipWeightMax) { return new Options().clipWeightMax(clipWeightMax); } + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); + } + /** * Gets updatedEmbeddingTable. * @@ -179,6 +192,8 @@ public static class Options { private Float clipWeightMax; + private Long numSparsecoresPerDevice; + private Options() { } @@ -203,6 +218,17 @@ public Options clipWeightMax(Float clipWeightMax) { this.clipWeightMax = clipWeightMax; return this; } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } } @OpInputsMetadata( @@ -294,8 +320,13 @@ public static class Inputs extends RawOpInputs) op.input(inputIndex++); sortedSampleIds = (Operand) op.input(inputIndex++); @@ -314,6 +345,7 @@ public Inputs(GraphOperation op) { clipWeightMin = op.attributes().getAttrFloat("clip_weight_min"); clipWeightMax = op.attributes().getAttrFloat("clip_weight_max"); tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize.java new file mode 100644 index 00000000000..8f4ada3dd4a --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize.java @@ -0,0 +1,363 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.xla; + +import java.util.Arrays; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.types.TFloat32; +import org.tensorflow.types.TInt32; + +/** + * The XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize operation + */ +@OpMetadata( + opType = XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize.OP_NAME, + inputsClass = XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize.Inputs.class +) +public final class XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize extends RawOp { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize"; + + private Output updatedEmbeddingTable; + + private Output updatedMomenta; + + private Output updatedVelocity; + + public XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + updatedEmbeddingTable = operation.output(outputIdx++); + updatedMomenta = operation.output(outputIdx++); + updatedVelocity = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize operation. + * + * @param scope current scope + * @param rowPointers The rowPointers value + * @param sortedSampleIds The sortedSampleIds value + * @param sortedTokenIds The sortedTokenIds value + * @param sortedGains The sortedGains value + * @param activationGradients The activationGradients value + * @param learningRate The learningRate value + * @param embeddingTable The embeddingTable value + * @param momenta The momenta value + * @param velocity The velocity value + * @param numMinibatchesPerPhysicalSparseCore The numMinibatchesPerPhysicalSparseCore value + * @param useSumInsideSqrt The value of the useSumInsideSqrt attribute + * @param beta1 The value of the beta1 attribute + * @param beta2 The value of the beta2 attribute + * @param epsilon The value of the epsilon attribute + * @param maxIdsPerSparseCore The value of the maxIdsPerSparseCore attribute + * @param maxUniqueIdsPerSparseCore The value of the maxUniqueIdsPerSparseCore attribute + * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @return a new instance of XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize + */ + @Endpoint( + describeByClass = true + ) + public static XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize create(Scope scope, + Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, + Operand sortedGains, Operand activationGradients, + Operand learningRate, Operand embeddingTable, Operand momenta, + Operand velocity, Operand numMinibatchesPerPhysicalSparseCore, + Boolean useSumInsideSqrt, Float beta1, Float beta2, Float epsilon, Long maxIdsPerSparseCore, + Long maxUniqueIdsPerSparseCore, String tableName, Options... options) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize"); + opBuilder.addInput(rowPointers.asOutput()); + opBuilder.addInput(sortedSampleIds.asOutput()); + opBuilder.addInput(sortedTokenIds.asOutput()); + opBuilder.addInput(sortedGains.asOutput()); + opBuilder.addInput(activationGradients.asOutput()); + opBuilder.addInput(learningRate.asOutput()); + opBuilder.addInput(embeddingTable.asOutput()); + opBuilder.addInput(momenta.asOutput()); + opBuilder.addInput(velocity.asOutput()); + opBuilder.addInput(numMinibatchesPerPhysicalSparseCore.asOutput()); + opBuilder.setAttr("use_sum_inside_sqrt", useSumInsideSqrt); + opBuilder.setAttr("beta1", beta1); + opBuilder.setAttr("beta2", beta2); + opBuilder.setAttr("epsilon", epsilon); + opBuilder.setAttr("max_ids_per_sparse_core", maxIdsPerSparseCore); + opBuilder.setAttr("max_unique_ids_per_sparse_core", maxUniqueIdsPerSparseCore); + opBuilder.setAttr("table_name", tableName); + if (options != null) { + for (Options opts : options) { + if (opts.clipWeightMin != null) { + opBuilder.setAttr("clip_weight_min", opts.clipWeightMin); + } + if (opts.clipWeightMax != null) { + opBuilder.setAttr("clip_weight_max", opts.clipWeightMax); + } + if (opts.numSparsecoresPerDevice != null) { + opBuilder.setAttr("num_sparsecores_per_device", opts.numSparsecoresPerDevice); + } + } + } + return new XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize(opBuilder.build()); + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public static Options clipWeightMin(Float clipWeightMin) { + return new Options().clipWeightMin(clipWeightMin); + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public static Options clipWeightMax(Float clipWeightMax) { + return new Options().clipWeightMax(clipWeightMax); + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); + } + + /** + * Gets updatedEmbeddingTable. + * + * @return updatedEmbeddingTable. + */ + public Output updatedEmbeddingTable() { + return updatedEmbeddingTable; + } + + /** + * Gets updatedMomenta. + * + * @return updatedMomenta. + */ + public Output updatedMomenta() { + return updatedMomenta; + } + + /** + * Gets updatedVelocity. + * + * @return updatedVelocity. + */ + public Output updatedVelocity() { + return updatedVelocity; + } + + /** + * Optional attributes for {@link org.tensorflow.op.xla.XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize} + */ + public static class Options { + private Float clipWeightMin; + + private Float clipWeightMax; + + private Long numSparsecoresPerDevice; + + private Options() { + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public Options clipWeightMin(Float clipWeightMin) { + this.clipWeightMin = clipWeightMin; + return this; + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public Options clipWeightMax(Float clipWeightMax) { + this.clipWeightMax = clipWeightMax; + return this; + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } + } + + @OpInputsMetadata( + outputsClass = XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize.class + ) + public static class Inputs extends RawOpInputs { + /** + * The rowPointers input + */ + public final Operand rowPointers; + + /** + * The sortedSampleIds input + */ + public final Operand sortedSampleIds; + + /** + * The sortedTokenIds input + */ + public final Operand sortedTokenIds; + + /** + * The sortedGains input + */ + public final Operand sortedGains; + + /** + * The activationGradients input + */ + public final Operand activationGradients; + + /** + * The learningRate input + */ + public final Operand learningRate; + + /** + * The embeddingTable input + */ + public final Operand embeddingTable; + + /** + * The momenta input + */ + public final Operand momenta; + + /** + * The velocity input + */ + public final Operand velocity; + + /** + * The numMinibatchesPerPhysicalSparseCore input + */ + public final Operand numMinibatchesPerPhysicalSparseCore; + + /** + * The useSumInsideSqrt attribute + */ + public final boolean useSumInsideSqrt; + + /** + * The beta1 attribute + */ + public final float beta1; + + /** + * The beta2 attribute + */ + public final float beta2; + + /** + * The epsilon attribute + */ + public final float epsilon; + + /** + * The clipWeightMin attribute + */ + public final float clipWeightMin; + + /** + * The clipWeightMax attribute + */ + public final float clipWeightMax; + + /** + * The maxIdsPerSparseCore attribute + */ + public final long maxIdsPerSparseCore; + + /** + * The maxUniqueIdsPerSparseCore attribute + */ + public final long maxUniqueIdsPerSparseCore; + + /** + * The tableName attribute + */ + public final String tableName; + + /** + * The numSparsecoresPerDevice attribute + */ + public final long numSparsecoresPerDevice; + + public Inputs(GraphOperation op) { + super(new XlaSparseDenseMatmulGradWithAdamAndStaticBufferSize(op), op, Arrays.asList("use_sum_inside_sqrt", "beta1", "beta2", "epsilon", "clip_weight_min", "clip_weight_max", "max_ids_per_sparse_core", "max_unique_ids_per_sparse_core", "table_name", "num_sparsecores_per_device")); + int inputIndex = 0; + rowPointers = (Operand) op.input(inputIndex++); + sortedSampleIds = (Operand) op.input(inputIndex++); + sortedTokenIds = (Operand) op.input(inputIndex++); + sortedGains = (Operand) op.input(inputIndex++); + activationGradients = (Operand) op.input(inputIndex++); + learningRate = (Operand) op.input(inputIndex++); + embeddingTable = (Operand) op.input(inputIndex++); + momenta = (Operand) op.input(inputIndex++); + velocity = (Operand) op.input(inputIndex++); + numMinibatchesPerPhysicalSparseCore = (Operand) op.input(inputIndex++); + useSumInsideSqrt = op.attributes().getAttrBool("use_sum_inside_sqrt"); + beta1 = op.attributes().getAttrFloat("beta1"); + beta2 = op.attributes().getAttrFloat("beta2"); + epsilon = op.attributes().getAttrFloat("epsilon"); + clipWeightMin = op.attributes().getAttrFloat("clip_weight_min"); + clipWeightMax = op.attributes().getAttrFloat("clip_weight_max"); + maxIdsPerSparseCore = op.attributes().getAttrInt("max_ids_per_sparse_core"); + maxUniqueIdsPerSparseCore = op.attributes().getAttrInt("max_unique_ids_per_sparse_core"); + tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithCsrInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithCsrInput.java new file mode 100644 index 00000000000..0af99ae8dbf --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithCsrInput.java @@ -0,0 +1,238 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.xla; + +import java.util.Arrays; +import java.util.Iterator; +import java.util.List; +import org.tensorflow.ConcreteFunction; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.Operands; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.proto.DataType; +import org.tensorflow.types.TFloat32; +import org.tensorflow.types.TInt32; +import org.tensorflow.types.family.TNumber; + +/** + * The XlaSparseDenseMatmulGradWithCsrInput operation + */ +@OpMetadata( + opType = XlaSparseDenseMatmulGradWithCsrInput.OP_NAME, + inputsClass = XlaSparseDenseMatmulGradWithCsrInput.Inputs.class +) +public final class XlaSparseDenseMatmulGradWithCsrInput extends RawOp implements Iterable> { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "XlaSparseDenseMatmulGradWithCsrInput"; + + private List> updatedTables; + + @SuppressWarnings("unchecked") + public XlaSparseDenseMatmulGradWithCsrInput(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + int updatedTablesLength = operation.outputListLength("updated_tables"); + updatedTables = Arrays.asList((Output[]) operation.outputList(outputIdx, updatedTablesLength)); + outputIdx += updatedTablesLength; + } + + /** + * Factory method to create a class wrapping a new XlaSparseDenseMatmulGradWithCsrInput operation. + * + * @param scope current scope + * @param rowPointers The rowPointers value + * @param sortedSampleIds The sortedSampleIds value + * @param sortedTokenIds The sortedTokenIds value + * @param sortedGains The sortedGains value + * @param activationGradients The activationGradients value + * @param tables The tables value + * @param hyperparameters The hyperparameters value + * @param numMinibatchesPerPhysicalSparseCore The numMinibatchesPerPhysicalSparseCore value + * @param customComputation The value of the customComputation attribute + * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @param data type for {@code XlaSparseDenseMatmulGradWithCsrInput} output and operands + * @return a new instance of XlaSparseDenseMatmulGradWithCsrInput + */ + @Endpoint( + describeByClass = true + ) + public static XlaSparseDenseMatmulGradWithCsrInput create(Scope scope, + Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, + Operand sortedGains, Operand activationGradients, + Iterable> tables, Iterable> hyperparameters, + Operand numMinibatchesPerPhysicalSparseCore, ConcreteFunction customComputation, + String tableName, Options... options) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaSparseDenseMatmulGradWithCsrInput"); + opBuilder.addInput(rowPointers.asOutput()); + opBuilder.addInput(sortedSampleIds.asOutput()); + opBuilder.addInput(sortedTokenIds.asOutput()); + opBuilder.addInput(sortedGains.asOutput()); + opBuilder.addInput(activationGradients.asOutput()); + opBuilder.addInputList(Operands.asOutputs(tables)); + opBuilder.addInputList(Operands.asOutputs(hyperparameters)); + opBuilder.addInput(numMinibatchesPerPhysicalSparseCore.asOutput()); + opBuilder.setAttr("custom_computation", customComputation); + opBuilder.setAttr("table_name", tableName); + if (options != null) { + for (Options opts : options) { + if (opts.numSparsecoresPerDevice != null) { + opBuilder.setAttr("num_sparsecores_per_device", opts.numSparsecoresPerDevice); + } + } + } + return new XlaSparseDenseMatmulGradWithCsrInput<>(opBuilder.build()); + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); + } + + /** + * Gets updatedTables. + * + * @return updatedTables. + */ + public List> updatedTables() { + return updatedTables; + } + + @Override + @SuppressWarnings({"rawtypes", "unchecked"}) + public Iterator> iterator() { + return (Iterator) updatedTables.iterator(); + } + + /** + * Optional attributes for {@link org.tensorflow.op.xla.XlaSparseDenseMatmulGradWithCsrInput} + */ + public static class Options { + private Long numSparsecoresPerDevice; + + private Options() { + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } + } + + @OpInputsMetadata( + outputsClass = XlaSparseDenseMatmulGradWithCsrInput.class + ) + public static class Inputs extends RawOpInputs> { + /** + * The rowPointers input + */ + public final Operand rowPointers; + + /** + * The sortedSampleIds input + */ + public final Operand sortedSampleIds; + + /** + * The sortedTokenIds input + */ + public final Operand sortedTokenIds; + + /** + * The sortedGains input + */ + public final Operand sortedGains; + + /** + * The activationGradients input + */ + public final Operand activationGradients; + + /** + * The tables input + */ + public final Iterable> tables; + + /** + * The hyperparameters input + */ + public final Iterable> hyperparameters; + + /** + * The numMinibatchesPerPhysicalSparseCore input + */ + public final Operand numMinibatchesPerPhysicalSparseCore; + + /** + * The tableName attribute + */ + public final String tableName; + + /** + * The numSparsecoresPerDevice attribute + */ + public final long numSparsecoresPerDevice; + + /** + * The T attribute + */ + public final DataType T; + + public Inputs(GraphOperation op) { + super(new XlaSparseDenseMatmulGradWithCsrInput<>(op), op, Arrays.asList("table_name", "num_sparsecores_per_device", "T")); + int inputIndex = 0; + rowPointers = (Operand) op.input(inputIndex++); + sortedSampleIds = (Operand) op.input(inputIndex++); + sortedTokenIds = (Operand) op.input(inputIndex++); + sortedGains = (Operand) op.input(inputIndex++); + activationGradients = (Operand) op.input(inputIndex++); + int tablesLength = op.inputListLength("tables"); + tables = Arrays.asList((Operand[]) op.inputList(inputIndex, tablesLength)); + inputIndex += tablesLength; + int hyperparametersLength = op.inputListLength("hyperparameters"); + hyperparameters = Arrays.asList((Operand[]) op.inputList(inputIndex, hyperparametersLength)); + inputIndex += hyperparametersLength; + numMinibatchesPerPhysicalSparseCore = (Operand) op.input(inputIndex++); + tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); + T = op.attributes().getAttrType("T"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithFtrlAndCsrInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithFtrlAndCsrInput.java index b8d005b7059..6dabad2682d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithFtrlAndCsrInput.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithFtrlAndCsrInput.java @@ -122,6 +122,9 @@ public static XlaSparseDenseMatmulGradWithFtrlAndCsrInput create(Scope scope, if (opts.clipWeightMax != null) { opBuilder.setAttr("clip_weight_max", opts.clipWeightMax); } + if (opts.numSparsecoresPerDevice != null) { + opBuilder.setAttr("num_sparsecores_per_device", opts.numSparsecoresPerDevice); + } } } return new XlaSparseDenseMatmulGradWithFtrlAndCsrInput(opBuilder.build()); @@ -147,6 +150,16 @@ public static Options clipWeightMax(Float clipWeightMax) { return new Options().clipWeightMax(clipWeightMax); } + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); + } + /** * Gets updatedEmbeddingTable. * @@ -182,6 +195,8 @@ public static class Options { private Float clipWeightMax; + private Long numSparsecoresPerDevice; + private Options() { } @@ -206,6 +221,17 @@ public Options clipWeightMax(Float clipWeightMax) { this.clipWeightMax = clipWeightMax; return this; } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } } @OpInputsMetadata( @@ -302,8 +328,13 @@ public static class Inputs extends RawOpInputs) op.input(inputIndex++); sortedSampleIds = (Operand) op.input(inputIndex++); @@ -323,6 +354,7 @@ public Inputs(GraphOperation op) { clipWeightMin = op.attributes().getAttrFloat("clip_weight_min"); clipWeightMax = op.attributes().getAttrFloat("clip_weight_max"); tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize.java new file mode 100644 index 00000000000..604416fd7d3 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize.java @@ -0,0 +1,373 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.xla; + +import java.util.Arrays; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.types.TFloat32; +import org.tensorflow.types.TInt32; + +/** + * The XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize operation + */ +@OpMetadata( + opType = XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize.OP_NAME, + inputsClass = XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize.Inputs.class +) +public final class XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize extends RawOp { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize"; + + private Output updatedEmbeddingTable; + + private Output updatedAccumulator; + + private Output updatedLinear; + + public XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + updatedEmbeddingTable = operation.output(outputIdx++); + updatedAccumulator = operation.output(outputIdx++); + updatedLinear = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize operation. + * + * @param scope current scope + * @param rowPointers The rowPointers value + * @param sortedSampleIds The sortedSampleIds value + * @param sortedTokenIds The sortedTokenIds value + * @param sortedGains The sortedGains value + * @param activationGradients The activationGradients value + * @param learningRate The learningRate value + * @param embeddingTable The embeddingTable value + * @param accumulator The accumulator value + * @param linear The linear value + * @param numMinibatchesPerPhysicalSparseCore The numMinibatchesPerPhysicalSparseCore value + * @param multiplyLinearByLearningRate The value of the multiplyLinearByLearningRate attribute + * @param beta The value of the beta attribute + * @param learningRatePower The value of the learningRatePower attribute + * @param l1RegularizationStrength The value of the l1RegularizationStrength attribute + * @param l2RegularizationStrength The value of the l2RegularizationStrength attribute + * @param maxIdsPerSparseCore The value of the maxIdsPerSparseCore attribute + * @param maxUniqueIdsPerSparseCore The value of the maxUniqueIdsPerSparseCore attribute + * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @return a new instance of XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize + */ + @Endpoint( + describeByClass = true + ) + public static XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize create(Scope scope, + Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, + Operand sortedGains, Operand activationGradients, + Operand learningRate, Operand embeddingTable, + Operand accumulator, Operand linear, + Operand numMinibatchesPerPhysicalSparseCore, Boolean multiplyLinearByLearningRate, + Float beta, Float learningRatePower, Float l1RegularizationStrength, + Float l2RegularizationStrength, Long maxIdsPerSparseCore, Long maxUniqueIdsPerSparseCore, + String tableName, Options... options) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize"); + opBuilder.addInput(rowPointers.asOutput()); + opBuilder.addInput(sortedSampleIds.asOutput()); + opBuilder.addInput(sortedTokenIds.asOutput()); + opBuilder.addInput(sortedGains.asOutput()); + opBuilder.addInput(activationGradients.asOutput()); + opBuilder.addInput(learningRate.asOutput()); + opBuilder.addInput(embeddingTable.asOutput()); + opBuilder.addInput(accumulator.asOutput()); + opBuilder.addInput(linear.asOutput()); + opBuilder.addInput(numMinibatchesPerPhysicalSparseCore.asOutput()); + opBuilder.setAttr("multiply_linear_by_learning_rate", multiplyLinearByLearningRate); + opBuilder.setAttr("beta", beta); + opBuilder.setAttr("learning_rate_power", learningRatePower); + opBuilder.setAttr("l1_regularization_strength", l1RegularizationStrength); + opBuilder.setAttr("l2_regularization_strength", l2RegularizationStrength); + opBuilder.setAttr("max_ids_per_sparse_core", maxIdsPerSparseCore); + opBuilder.setAttr("max_unique_ids_per_sparse_core", maxUniqueIdsPerSparseCore); + opBuilder.setAttr("table_name", tableName); + if (options != null) { + for (Options opts : options) { + if (opts.clipWeightMin != null) { + opBuilder.setAttr("clip_weight_min", opts.clipWeightMin); + } + if (opts.clipWeightMax != null) { + opBuilder.setAttr("clip_weight_max", opts.clipWeightMax); + } + if (opts.numSparsecoresPerDevice != null) { + opBuilder.setAttr("num_sparsecores_per_device", opts.numSparsecoresPerDevice); + } + } + } + return new XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize(opBuilder.build()); + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public static Options clipWeightMin(Float clipWeightMin) { + return new Options().clipWeightMin(clipWeightMin); + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public static Options clipWeightMax(Float clipWeightMax) { + return new Options().clipWeightMax(clipWeightMax); + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); + } + + /** + * Gets updatedEmbeddingTable. + * + * @return updatedEmbeddingTable. + */ + public Output updatedEmbeddingTable() { + return updatedEmbeddingTable; + } + + /** + * Gets updatedAccumulator. + * + * @return updatedAccumulator. + */ + public Output updatedAccumulator() { + return updatedAccumulator; + } + + /** + * Gets updatedLinear. + * + * @return updatedLinear. + */ + public Output updatedLinear() { + return updatedLinear; + } + + /** + * Optional attributes for {@link org.tensorflow.op.xla.XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize} + */ + public static class Options { + private Float clipWeightMin; + + private Float clipWeightMax; + + private Long numSparsecoresPerDevice; + + private Options() { + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public Options clipWeightMin(Float clipWeightMin) { + this.clipWeightMin = clipWeightMin; + return this; + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public Options clipWeightMax(Float clipWeightMax) { + this.clipWeightMax = clipWeightMax; + return this; + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } + } + + @OpInputsMetadata( + outputsClass = XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize.class + ) + public static class Inputs extends RawOpInputs { + /** + * The rowPointers input + */ + public final Operand rowPointers; + + /** + * The sortedSampleIds input + */ + public final Operand sortedSampleIds; + + /** + * The sortedTokenIds input + */ + public final Operand sortedTokenIds; + + /** + * The sortedGains input + */ + public final Operand sortedGains; + + /** + * The activationGradients input + */ + public final Operand activationGradients; + + /** + * The learningRate input + */ + public final Operand learningRate; + + /** + * The embeddingTable input + */ + public final Operand embeddingTable; + + /** + * The accumulator input + */ + public final Operand accumulator; + + /** + * The linear input + */ + public final Operand linear; + + /** + * The numMinibatchesPerPhysicalSparseCore input + */ + public final Operand numMinibatchesPerPhysicalSparseCore; + + /** + * The multiplyLinearByLearningRate attribute + */ + public final boolean multiplyLinearByLearningRate; + + /** + * The beta attribute + */ + public final float beta; + + /** + * The learningRatePower attribute + */ + public final float learningRatePower; + + /** + * The l1RegularizationStrength attribute + */ + public final float l1RegularizationStrength; + + /** + * The l2RegularizationStrength attribute + */ + public final float l2RegularizationStrength; + + /** + * The clipWeightMin attribute + */ + public final float clipWeightMin; + + /** + * The clipWeightMax attribute + */ + public final float clipWeightMax; + + /** + * The maxIdsPerSparseCore attribute + */ + public final long maxIdsPerSparseCore; + + /** + * The maxUniqueIdsPerSparseCore attribute + */ + public final long maxUniqueIdsPerSparseCore; + + /** + * The tableName attribute + */ + public final String tableName; + + /** + * The numSparsecoresPerDevice attribute + */ + public final long numSparsecoresPerDevice; + + public Inputs(GraphOperation op) { + super(new XlaSparseDenseMatmulGradWithFtrlAndStaticBufferSize(op), op, Arrays.asList("multiply_linear_by_learning_rate", "beta", "learning_rate_power", "l1_regularization_strength", "l2_regularization_strength", "clip_weight_min", "clip_weight_max", "max_ids_per_sparse_core", "max_unique_ids_per_sparse_core", "table_name", "num_sparsecores_per_device")); + int inputIndex = 0; + rowPointers = (Operand) op.input(inputIndex++); + sortedSampleIds = (Operand) op.input(inputIndex++); + sortedTokenIds = (Operand) op.input(inputIndex++); + sortedGains = (Operand) op.input(inputIndex++); + activationGradients = (Operand) op.input(inputIndex++); + learningRate = (Operand) op.input(inputIndex++); + embeddingTable = (Operand) op.input(inputIndex++); + accumulator = (Operand) op.input(inputIndex++); + linear = (Operand) op.input(inputIndex++); + numMinibatchesPerPhysicalSparseCore = (Operand) op.input(inputIndex++); + multiplyLinearByLearningRate = op.attributes().getAttrBool("multiply_linear_by_learning_rate"); + beta = op.attributes().getAttrFloat("beta"); + learningRatePower = op.attributes().getAttrFloat("learning_rate_power"); + l1RegularizationStrength = op.attributes().getAttrFloat("l1_regularization_strength"); + l2RegularizationStrength = op.attributes().getAttrFloat("l2_regularization_strength"); + clipWeightMin = op.attributes().getAttrFloat("clip_weight_min"); + clipWeightMax = op.attributes().getAttrFloat("clip_weight_max"); + maxIdsPerSparseCore = op.attributes().getAttrInt("max_ids_per_sparse_core"); + maxUniqueIdsPerSparseCore = op.attributes().getAttrInt("max_unique_ids_per_sparse_core"); + tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithSgdAndCsrInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithSgdAndCsrInput.java index bfb8a3a127f..5fdfa0a487d 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithSgdAndCsrInput.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithSgdAndCsrInput.java @@ -99,6 +99,9 @@ public static XlaSparseDenseMatmulGradWithSgdAndCsrInput create(Scope scope, if (opts.clipWeightMax != null) { opBuilder.setAttr("clip_weight_max", opts.clipWeightMax); } + if (opts.numSparsecoresPerDevice != null) { + opBuilder.setAttr("num_sparsecores_per_device", opts.numSparsecoresPerDevice); + } } } return new XlaSparseDenseMatmulGradWithSgdAndCsrInput(opBuilder.build()); @@ -124,6 +127,16 @@ public static Options clipWeightMax(Float clipWeightMax) { return new Options().clipWeightMax(clipWeightMax); } + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); + } + /** * Gets updatedEmbeddingTable. * @@ -146,6 +159,8 @@ public static class Options { private Float clipWeightMax; + private Long numSparsecoresPerDevice; + private Options() { } @@ -170,6 +185,17 @@ public Options clipWeightMax(Float clipWeightMax) { this.clipWeightMax = clipWeightMax; return this; } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } } @OpInputsMetadata( @@ -231,8 +257,13 @@ public static class Inputs extends RawOpInputs) op.input(inputIndex++); sortedSampleIds = (Operand) op.input(inputIndex++); @@ -245,6 +276,7 @@ public Inputs(GraphOperation op) { clipWeightMin = op.attributes().getAttrFloat("clip_weight_min"); clipWeightMax = op.attributes().getAttrFloat("clip_weight_max"); tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize.java new file mode 100644 index 00000000000..5dadd3fdca1 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize.java @@ -0,0 +1,295 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.xla; + +import java.util.Arrays; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.types.TFloat32; +import org.tensorflow.types.TInt32; + +/** + * The XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize operation + */ +@OpMetadata( + opType = XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize.OP_NAME, + inputsClass = XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize.Inputs.class +) +public final class XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize extends RawOp implements Operand { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize"; + + private Output updatedEmbeddingTable; + + public XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + updatedEmbeddingTable = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize operation. + * + * @param scope current scope + * @param rowPointers The rowPointers value + * @param sortedSampleIds The sortedSampleIds value + * @param sortedTokenIds The sortedTokenIds value + * @param sortedGains The sortedGains value + * @param activationGradients The activationGradients value + * @param learningRate The learningRate value + * @param embeddingTable The embeddingTable value + * @param numMinibatchesPerPhysicalSparseCore The numMinibatchesPerPhysicalSparseCore value + * @param maxIdsPerSparseCore The value of the maxIdsPerSparseCore attribute + * @param maxUniqueIdsPerSparseCore The value of the maxUniqueIdsPerSparseCore attribute + * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @return a new instance of XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize + */ + @Endpoint( + describeByClass = true + ) + public static XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize create(Scope scope, + Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, + Operand sortedGains, Operand activationGradients, + Operand learningRate, Operand embeddingTable, + Operand numMinibatchesPerPhysicalSparseCore, Long maxIdsPerSparseCore, + Long maxUniqueIdsPerSparseCore, String tableName, Options... options) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize"); + opBuilder.addInput(rowPointers.asOutput()); + opBuilder.addInput(sortedSampleIds.asOutput()); + opBuilder.addInput(sortedTokenIds.asOutput()); + opBuilder.addInput(sortedGains.asOutput()); + opBuilder.addInput(activationGradients.asOutput()); + opBuilder.addInput(learningRate.asOutput()); + opBuilder.addInput(embeddingTable.asOutput()); + opBuilder.addInput(numMinibatchesPerPhysicalSparseCore.asOutput()); + opBuilder.setAttr("max_ids_per_sparse_core", maxIdsPerSparseCore); + opBuilder.setAttr("max_unique_ids_per_sparse_core", maxUniqueIdsPerSparseCore); + opBuilder.setAttr("table_name", tableName); + if (options != null) { + for (Options opts : options) { + if (opts.clipWeightMin != null) { + opBuilder.setAttr("clip_weight_min", opts.clipWeightMin); + } + if (opts.clipWeightMax != null) { + opBuilder.setAttr("clip_weight_max", opts.clipWeightMax); + } + if (opts.numSparsecoresPerDevice != null) { + opBuilder.setAttr("num_sparsecores_per_device", opts.numSparsecoresPerDevice); + } + } + } + return new XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize(opBuilder.build()); + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public static Options clipWeightMin(Float clipWeightMin) { + return new Options().clipWeightMin(clipWeightMin); + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public static Options clipWeightMax(Float clipWeightMax) { + return new Options().clipWeightMax(clipWeightMax); + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); + } + + /** + * Gets updatedEmbeddingTable. + * + * @return updatedEmbeddingTable. + */ + public Output updatedEmbeddingTable() { + return updatedEmbeddingTable; + } + + @Override + public Output asOutput() { + return updatedEmbeddingTable; + } + + /** + * Optional attributes for {@link org.tensorflow.op.xla.XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize} + */ + public static class Options { + private Float clipWeightMin; + + private Float clipWeightMax; + + private Long numSparsecoresPerDevice; + + private Options() { + } + + /** + * Sets the clipWeightMin option. + * + * @param clipWeightMin the clipWeightMin option + * @return this Options instance. + */ + public Options clipWeightMin(Float clipWeightMin) { + this.clipWeightMin = clipWeightMin; + return this; + } + + /** + * Sets the clipWeightMax option. + * + * @param clipWeightMax the clipWeightMax option + * @return this Options instance. + */ + public Options clipWeightMax(Float clipWeightMax) { + this.clipWeightMax = clipWeightMax; + return this; + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } + } + + @OpInputsMetadata( + outputsClass = XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize.class + ) + public static class Inputs extends RawOpInputs { + /** + * The rowPointers input + */ + public final Operand rowPointers; + + /** + * The sortedSampleIds input + */ + public final Operand sortedSampleIds; + + /** + * The sortedTokenIds input + */ + public final Operand sortedTokenIds; + + /** + * The sortedGains input + */ + public final Operand sortedGains; + + /** + * The activationGradients input + */ + public final Operand activationGradients; + + /** + * The learningRate input + */ + public final Operand learningRate; + + /** + * The embeddingTable input + */ + public final Operand embeddingTable; + + /** + * The numMinibatchesPerPhysicalSparseCore input + */ + public final Operand numMinibatchesPerPhysicalSparseCore; + + /** + * The clipWeightMin attribute + */ + public final float clipWeightMin; + + /** + * The clipWeightMax attribute + */ + public final float clipWeightMax; + + /** + * The maxIdsPerSparseCore attribute + */ + public final long maxIdsPerSparseCore; + + /** + * The maxUniqueIdsPerSparseCore attribute + */ + public final long maxUniqueIdsPerSparseCore; + + /** + * The tableName attribute + */ + public final String tableName; + + /** + * The numSparsecoresPerDevice attribute + */ + public final long numSparsecoresPerDevice; + + public Inputs(GraphOperation op) { + super(new XlaSparseDenseMatmulGradWithSgdAndStaticBufferSize(op), op, Arrays.asList("clip_weight_min", "clip_weight_max", "max_ids_per_sparse_core", "max_unique_ids_per_sparse_core", "table_name", "num_sparsecores_per_device")); + int inputIndex = 0; + rowPointers = (Operand) op.input(inputIndex++); + sortedSampleIds = (Operand) op.input(inputIndex++); + sortedTokenIds = (Operand) op.input(inputIndex++); + sortedGains = (Operand) op.input(inputIndex++); + activationGradients = (Operand) op.input(inputIndex++); + learningRate = (Operand) op.input(inputIndex++); + embeddingTable = (Operand) op.input(inputIndex++); + numMinibatchesPerPhysicalSparseCore = (Operand) op.input(inputIndex++); + clipWeightMin = op.attributes().getAttrFloat("clip_weight_min"); + clipWeightMax = op.attributes().getAttrFloat("clip_weight_max"); + maxIdsPerSparseCore = op.attributes().getAttrInt("max_ids_per_sparse_core"); + maxUniqueIdsPerSparseCore = op.attributes().getAttrInt("max_unique_ids_per_sparse_core"); + tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulWithCsrInput.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulWithCsrInput.java index 793c460676f..a4893b0196c 100644 --- a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulWithCsrInput.java +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulWithCsrInput.java @@ -30,8 +30,10 @@ import org.tensorflow.op.annotation.OpInputsMetadata; import org.tensorflow.op.annotation.OpMetadata; import org.tensorflow.op.annotation.Operator; +import org.tensorflow.proto.DataType; import org.tensorflow.types.TFloat32; import org.tensorflow.types.TInt32; +import org.tensorflow.types.family.TNumber; /** * The XlaSparseDenseMatmulWithCsrInput operation @@ -43,13 +45,13 @@ @Operator( group = "xla" ) -public final class XlaSparseDenseMatmulWithCsrInput extends RawOp implements Operand { +public final class XlaSparseDenseMatmulWithCsrInput extends RawOp implements Operand { /** * The name of this op, as known by TensorFlow core engine */ public static final String OP_NAME = "XlaSparseDenseMatmulWithCsrInput"; - private Output activations; + private Output activations; public XlaSparseDenseMatmulWithCsrInput(Operation operation) { super(operation, OP_NAME); @@ -72,17 +74,19 @@ public XlaSparseDenseMatmulWithCsrInput(Operation operation) { * @param quantizationConfigHigh The value of the quantizationConfigHigh attribute * @param quantizationConfigNumBuckets The value of the quantizationConfigNumBuckets attribute * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @param data type for {@code XlaSparseDenseMatmulWithCsrInput} output and operands * @return a new instance of XlaSparseDenseMatmulWithCsrInput */ @Endpoint( describeByClass = true ) - public static XlaSparseDenseMatmulWithCsrInput create(Scope scope, Operand rowPointers, - Operand sortedSampleIds, Operand sortedTokenIds, - Operand sortedGains, Operand embeddingTable, + public static XlaSparseDenseMatmulWithCsrInput create(Scope scope, + Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, + Operand sortedGains, Operand embeddingTable, Operand numMinibatchesPerPhysicalSparseCore, Long inputSize, Float quantizationConfigLow, Float quantizationConfigHigh, Long quantizationConfigNumBuckets, - String tableName) { + String tableName, Options... options) { OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaSparseDenseMatmulWithCsrInput"); opBuilder.addInput(rowPointers.asOutput()); opBuilder.addInput(sortedSampleIds.asOutput()); @@ -95,7 +99,24 @@ public static XlaSparseDenseMatmulWithCsrInput create(Scope scope, Operand(opBuilder.build()); + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); } /** @@ -103,19 +124,40 @@ public static XlaSparseDenseMatmulWithCsrInput create(Scope scope, Operand activations() { + public Output activations() { return activations; } @Override - public Output asOutput() { + public Output asOutput() { return activations; } + /** + * Optional attributes for {@link org.tensorflow.op.xla.XlaSparseDenseMatmulWithCsrInput} + */ + public static class Options { + private Long numSparsecoresPerDevice; + + private Options() { + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } + } + @OpInputsMetadata( outputsClass = XlaSparseDenseMatmulWithCsrInput.class ) - public static class Inputs extends RawOpInputs { + public static class Inputs extends RawOpInputs> { /** * The rowPointers input */ @@ -139,7 +181,7 @@ public static class Inputs extends RawOpInputs /** * The embeddingTable input */ - public final Operand embeddingTable; + public final Operand embeddingTable; /** * The numMinibatchesPerPhysicalSparseCore input @@ -171,20 +213,32 @@ public static class Inputs extends RawOpInputs */ public final String tableName; + /** + * The numSparsecoresPerDevice attribute + */ + public final long numSparsecoresPerDevice; + + /** + * The T attribute + */ + public final DataType T; + public Inputs(GraphOperation op) { - super(new XlaSparseDenseMatmulWithCsrInput(op), op, Arrays.asList("input_size", "quantization_config_low", "quantization_config_high", "quantization_config_num_buckets", "table_name")); + super(new XlaSparseDenseMatmulWithCsrInput<>(op), op, Arrays.asList("input_size", "quantization_config_low", "quantization_config_high", "quantization_config_num_buckets", "table_name", "num_sparsecores_per_device", "T")); int inputIndex = 0; rowPointers = (Operand) op.input(inputIndex++); sortedSampleIds = (Operand) op.input(inputIndex++); sortedTokenIds = (Operand) op.input(inputIndex++); sortedGains = (Operand) op.input(inputIndex++); - embeddingTable = (Operand) op.input(inputIndex++); + embeddingTable = (Operand) op.input(inputIndex++); numMinibatchesPerPhysicalSparseCore = (Operand) op.input(inputIndex++); inputSize = op.attributes().getAttrInt("input_size"); quantizationConfigLow = op.attributes().getAttrFloat("quantization_config_low"); quantizationConfigHigh = op.attributes().getAttrFloat("quantization_config_high"); quantizationConfigNumBuckets = op.attributes().getAttrInt("quantization_config_num_buckets"); tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); + T = op.attributes().getAttrType("T"); } } } diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulWithStaticBufferSize.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulWithStaticBufferSize.java new file mode 100644 index 00000000000..d164df81749 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseDenseMatmulWithStaticBufferSize.java @@ -0,0 +1,248 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.xla; + +import java.util.Arrays; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.types.TFloat32; +import org.tensorflow.types.TInt32; + +/** + * The XlaSparseDenseMatmulWithStaticBufferSize operation + */ +@OpMetadata( + opType = XlaSparseDenseMatmulWithStaticBufferSize.OP_NAME, + inputsClass = XlaSparseDenseMatmulWithStaticBufferSize.Inputs.class +) +public final class XlaSparseDenseMatmulWithStaticBufferSize extends RawOp implements Operand { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "XlaSparseDenseMatmulWithStaticBufferSize"; + + private Output activations; + + public XlaSparseDenseMatmulWithStaticBufferSize(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + activations = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new XlaSparseDenseMatmulWithStaticBufferSize operation. + * + * @param scope current scope + * @param rowPointers The rowPointers value + * @param sortedSampleIds The sortedSampleIds value + * @param sortedTokenIds The sortedTokenIds value + * @param sortedGains The sortedGains value + * @param embeddingTable The embeddingTable value + * @param numMinibatchesPerPhysicalSparseCore The numMinibatchesPerPhysicalSparseCore value + * @param inputSize The value of the inputSize attribute + * @param quantizationConfigLow The value of the quantizationConfigLow attribute + * @param quantizationConfigHigh The value of the quantizationConfigHigh attribute + * @param quantizationConfigNumBuckets The value of the quantizationConfigNumBuckets attribute + * @param maxIdsPerSparseCore The value of the maxIdsPerSparseCore attribute + * @param maxUniqueIdsPerSparseCore The value of the maxUniqueIdsPerSparseCore attribute + * @param tableName The value of the tableName attribute + * @param options carries optional attribute values + * @return a new instance of XlaSparseDenseMatmulWithStaticBufferSize + */ + @Endpoint( + describeByClass = true + ) + public static XlaSparseDenseMatmulWithStaticBufferSize create(Scope scope, + Operand rowPointers, Operand sortedSampleIds, Operand sortedTokenIds, + Operand sortedGains, Operand embeddingTable, + Operand numMinibatchesPerPhysicalSparseCore, Long inputSize, + Float quantizationConfigLow, Float quantizationConfigHigh, Long quantizationConfigNumBuckets, + Long maxIdsPerSparseCore, Long maxUniqueIdsPerSparseCore, String tableName, + Options... options) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaSparseDenseMatmulWithStaticBufferSize"); + opBuilder.addInput(rowPointers.asOutput()); + opBuilder.addInput(sortedSampleIds.asOutput()); + opBuilder.addInput(sortedTokenIds.asOutput()); + opBuilder.addInput(sortedGains.asOutput()); + opBuilder.addInput(embeddingTable.asOutput()); + opBuilder.addInput(numMinibatchesPerPhysicalSparseCore.asOutput()); + opBuilder.setAttr("input_size", inputSize); + opBuilder.setAttr("quantization_config_low", quantizationConfigLow); + opBuilder.setAttr("quantization_config_high", quantizationConfigHigh); + opBuilder.setAttr("quantization_config_num_buckets", quantizationConfigNumBuckets); + opBuilder.setAttr("max_ids_per_sparse_core", maxIdsPerSparseCore); + opBuilder.setAttr("max_unique_ids_per_sparse_core", maxUniqueIdsPerSparseCore); + opBuilder.setAttr("table_name", tableName); + if (options != null) { + for (Options opts : options) { + if (opts.numSparsecoresPerDevice != null) { + opBuilder.setAttr("num_sparsecores_per_device", opts.numSparsecoresPerDevice); + } + } + } + return new XlaSparseDenseMatmulWithStaticBufferSize(opBuilder.build()); + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public static Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + return new Options().numSparsecoresPerDevice(numSparsecoresPerDevice); + } + + /** + * Gets activations. + * + * @return activations. + */ + public Output activations() { + return activations; + } + + @Override + public Output asOutput() { + return activations; + } + + /** + * Optional attributes for {@link org.tensorflow.op.xla.XlaSparseDenseMatmulWithStaticBufferSize} + */ + public static class Options { + private Long numSparsecoresPerDevice; + + private Options() { + } + + /** + * Sets the numSparsecoresPerDevice option. + * + * @param numSparsecoresPerDevice the numSparsecoresPerDevice option + * @return this Options instance. + */ + public Options numSparsecoresPerDevice(Long numSparsecoresPerDevice) { + this.numSparsecoresPerDevice = numSparsecoresPerDevice; + return this; + } + } + + @OpInputsMetadata( + outputsClass = XlaSparseDenseMatmulWithStaticBufferSize.class + ) + public static class Inputs extends RawOpInputs { + /** + * The rowPointers input + */ + public final Operand rowPointers; + + /** + * The sortedSampleIds input + */ + public final Operand sortedSampleIds; + + /** + * The sortedTokenIds input + */ + public final Operand sortedTokenIds; + + /** + * The sortedGains input + */ + public final Operand sortedGains; + + /** + * The embeddingTable input + */ + public final Operand embeddingTable; + + /** + * The numMinibatchesPerPhysicalSparseCore input + */ + public final Operand numMinibatchesPerPhysicalSparseCore; + + /** + * The inputSize attribute + */ + public final long inputSize; + + /** + * The quantizationConfigLow attribute + */ + public final float quantizationConfigLow; + + /** + * The quantizationConfigHigh attribute + */ + public final float quantizationConfigHigh; + + /** + * The quantizationConfigNumBuckets attribute + */ + public final long quantizationConfigNumBuckets; + + /** + * The maxIdsPerSparseCore attribute + */ + public final long maxIdsPerSparseCore; + + /** + * The maxUniqueIdsPerSparseCore attribute + */ + public final long maxUniqueIdsPerSparseCore; + + /** + * The tableName attribute + */ + public final String tableName; + + /** + * The numSparsecoresPerDevice attribute + */ + public final long numSparsecoresPerDevice; + + public Inputs(GraphOperation op) { + super(new XlaSparseDenseMatmulWithStaticBufferSize(op), op, Arrays.asList("input_size", "quantization_config_low", "quantization_config_high", "quantization_config_num_buckets", "max_ids_per_sparse_core", "max_unique_ids_per_sparse_core", "table_name", "num_sparsecores_per_device")); + int inputIndex = 0; + rowPointers = (Operand) op.input(inputIndex++); + sortedSampleIds = (Operand) op.input(inputIndex++); + sortedTokenIds = (Operand) op.input(inputIndex++); + sortedGains = (Operand) op.input(inputIndex++); + embeddingTable = (Operand) op.input(inputIndex++); + numMinibatchesPerPhysicalSparseCore = (Operand) op.input(inputIndex++); + inputSize = op.attributes().getAttrInt("input_size"); + quantizationConfigLow = op.attributes().getAttrFloat("quantization_config_low"); + quantizationConfigHigh = op.attributes().getAttrFloat("quantization_config_high"); + quantizationConfigNumBuckets = op.attributes().getAttrInt("quantization_config_num_buckets"); + maxIdsPerSparseCore = op.attributes().getAttrInt("max_ids_per_sparse_core"); + maxUniqueIdsPerSparseCore = op.attributes().getAttrInt("max_unique_ids_per_sparse_core"); + tableName = op.attributes().getAttrString("table_name"); + numSparsecoresPerDevice = op.attributes().getAttrInt("num_sparsecores_per_device"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseGradientsStack.java b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseGradientsStack.java new file mode 100644 index 00000000000..5042befbc66 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/gen/java/org/tensorflow/op/xla/XlaSparseGradientsStack.java @@ -0,0 +1,128 @@ +/* Copyright 2018-2023 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +=======================================================================*/ + +// This class has been generated, DO NOT EDIT! + +package org.tensorflow.op.xla; + +import java.util.Arrays; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Operation; +import org.tensorflow.OperationBuilder; +import org.tensorflow.Output; +import org.tensorflow.op.Operands; +import org.tensorflow.op.RawOp; +import org.tensorflow.op.RawOpInputs; +import org.tensorflow.op.Scope; +import org.tensorflow.op.annotation.Endpoint; +import org.tensorflow.op.annotation.OpInputsMetadata; +import org.tensorflow.op.annotation.OpMetadata; +import org.tensorflow.proto.DataType; +import org.tensorflow.types.family.TType; + +/** + * The XlaSparseGradientsStack operation + */ +@OpMetadata( + opType = XlaSparseGradientsStack.OP_NAME, + inputsClass = XlaSparseGradientsStack.Inputs.class +) +public final class XlaSparseGradientsStack extends RawOp implements Operand { + /** + * The name of this op, as known by TensorFlow core engine + */ + public static final String OP_NAME = "XlaSparseGradientsStack"; + + private Output stackedGradients; + + public XlaSparseGradientsStack(Operation operation) { + super(operation, OP_NAME); + int outputIdx = 0; + stackedGradients = operation.output(outputIdx++); + } + + /** + * Factory method to create a class wrapping a new XlaSparseGradientsStack operation. + * + * @param scope current scope + * @param unstackedGradients The unstackedGradients value + * @param interleaved The value of the interleaved attribute + * @param dtype The value of the dtype attribute + * @param data type for {@code XlaSparseGradientsStack} output and operands + * @return a new instance of XlaSparseGradientsStack + */ + @Endpoint( + describeByClass = true + ) + public static XlaSparseGradientsStack create(Scope scope, + Iterable> unstackedGradients, Boolean interleaved, Class dtype) { + OperationBuilder opBuilder = scope.opBuilder(OP_NAME, "XlaSparseGradientsStack"); + opBuilder.addInputList(Operands.asOutputs(unstackedGradients)); + opBuilder.setAttr("interleaved", interleaved); + opBuilder.setAttr("dtype", Operands.toDataType(dtype)); + return new XlaSparseGradientsStack<>(opBuilder.build()); + } + + /** + * Gets stackedGradients. + * + * @return stackedGradients. + */ + public Output stackedGradients() { + return stackedGradients; + } + + @Override + public Output asOutput() { + return stackedGradients; + } + + @OpInputsMetadata( + outputsClass = XlaSparseGradientsStack.class + ) + public static class Inputs extends RawOpInputs> { + /** + * The unstackedGradients input + */ + public final Iterable> unstackedGradients; + + /** + * The interleaved attribute + */ + public final boolean interleaved; + + /** + * The inputDtype attribute + */ + public final DataType inputDtype; + + /** + * The dtype attribute + */ + public final DataType dtype; + + public Inputs(GraphOperation op) { + super(new XlaSparseGradientsStack<>(op), op, Arrays.asList("interleaved", "input_dtype", "dtype")); + int inputIndex = 0; + int unstackedGradientsLength = op.inputListLength("unstacked_gradients"); + unstackedGradients = Arrays.asList((Operand[]) op.inputList(inputIndex, unstackedGradientsLength)); + inputIndex += unstackedGradientsLength; + interleaved = op.attributes().getAttrBool("interleaved"); + inputDtype = op.attributes().getAttrType("input_dtype"); + dtype = op.attributes().getAttrType("dtype"); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/main/java/module-info.java b/tensorflow-core/tensorflow-core-api/src/main/java/module-info.java index f3e4875193d..b12e7042b48 100644 --- a/tensorflow-core/tensorflow-core-api/src/main/java/module-info.java +++ b/tensorflow-core/tensorflow-core-api/src/main/java/module-info.java @@ -14,6 +14,8 @@ limitations under the License. ======================================================================= */ + +/** Core module implementing the TensorFlow Java API and operator definitions. */ module tensorflow { requires transitive org.tensorflow.ndarray; requires transitive tensorflow.nativelib; diff --git a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/AbstractGradientAdapter.java b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/AbstractGradientAdapter.java index 2119cddaa67..94f82786ed3 100644 --- a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/AbstractGradientAdapter.java +++ b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/AbstractGradientAdapter.java @@ -92,8 +92,17 @@ private static TF_Output toNativeOutputs(List> outputs) { new TF_Output(Pointer.malloc((long) outputs.size() * Pointer.sizeof(TF_Output.class))); for (int i = 0; i < outputs.size(); ++i) { - var output = outputs.get(i).asOutput(); + Operand operand = outputs.get(i); var nativeOutput = nativeOutputs.getPointer(i); + + // Convention: null Operand => NoGradient + if (operand == null) { + nativeOutput.oper((TF_Operation) null); + nativeOutput.index(0); + continue; + } + + var output = operand.asOutput(); nativeOutput.oper(((GraphOperation) output.op()).getUnsafeNativeHandle()); nativeOutput.index(output.index()); } diff --git a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/NativeFunction.java b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/NativeFunction.java index 245fff70d1a..4dbde8f2473 100644 --- a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/NativeFunction.java +++ b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/NativeFunction.java @@ -20,9 +20,7 @@ import com.google.protobuf.InvalidProtocolBufferException; import java.util.ArrayDeque; -import java.util.ArrayList; import java.util.Collection; -import java.util.Collections; import java.util.LinkedHashSet; import java.util.List; import java.util.Map; @@ -92,7 +90,7 @@ public synchronized List getDependencies() { } }); } - dependencies = Collections.unmodifiableList(new ArrayList<>(deps)); + dependencies = List.copyOf(deps); } return dependencies; diff --git a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/SavedModelBundle.java b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/SavedModelBundle.java index 0228519e42c..dbbb1ab759d 100644 --- a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/SavedModelBundle.java +++ b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/SavedModelBundle.java @@ -312,6 +312,25 @@ public void export() throws IOException { private final Map functions = new LinkedHashMap<>(); } + /** + * Load a saved model from an export directory. The model that is being loaded should be created + * using the Saved Model + * API. + * + *

    This method is a shorthand for: + * + *

    {@code
    +   * SavedModelBundle.loader().load();
    +   * }
    + * + * @param exportDir the directory path containing a saved model. + * @return a bundle containing the graph and associated session. + */ + public static SavedModelBundle load(String exportDir) { + Loader loader = loader(exportDir); + return loader.load(); + } + /** * Load a saved model from an export directory. The model that is being loaded should be created * using the Saved Model @@ -329,9 +348,7 @@ public void export() throws IOException { */ public static SavedModelBundle load(String exportDir, String... tags) { Loader loader = loader(exportDir); - if (tags != null && tags.length > 0) { - loader.withTags(tags); - } + loader.withTags(tags); return loader.load(); } diff --git a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/TensorFlow.java b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/TensorFlow.java index 7eba6d7ce30..a6b9e86dd9e 100644 --- a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/TensorFlow.java +++ b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/TensorFlow.java @@ -39,6 +39,7 @@ import org.tensorflow.internal.c_api.TF_Library; import org.tensorflow.internal.c_api.TF_Status; import org.tensorflow.op.CustomGradient; +import org.tensorflow.op.GradientDispatch; import org.tensorflow.op.RawCustomGradient; import org.tensorflow.op.RawOpInputs; import org.tensorflow.op.annotation.OpInputsMetadata; @@ -207,7 +208,10 @@ public static synchronized boolean registerCustomGradient( if (hasGradient(opType)) { return false; } - TFJ_GradFuncAdapter g = RawCustomGradient.adapter(gradient); + + GradientDispatch.putRaw(opType, gradient); + TFJ_GradFuncAdapter g = GradientDispatch.adapter(); + if (!TFJ_RegisterCustomGradient(opType, g)) { return false; } @@ -255,7 +259,10 @@ public static synchronized > boolean registerCustomGrad if (hasGradient(opType)) { return false; } - TFJ_GradFuncAdapter g = CustomGradient.adapter(gradient, inputClass); + + GradientDispatch.putTyped(opType, gradient, inputClass); + TFJ_GradFuncAdapter g = GradientDispatch.adapter(); + if (!TFJ_RegisterCustomGradient(opType, g)) { return false; } diff --git a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/internal/buffer/ByteSequenceTensorBuffer.java b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/internal/buffer/ByteSequenceTensorBuffer.java index bd886d776b7..3bf262bec14 100644 --- a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/internal/buffer/ByteSequenceTensorBuffer.java +++ b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/internal/buffer/ByteSequenceTensorBuffer.java @@ -23,13 +23,11 @@ import static org.tensorflow.internal.c_api.global.tensorflow.TF_TString_GetSize; import java.nio.ReadOnlyBufferException; -import java.util.function.Function; import org.bytedeco.javacpp.BytePointer; import org.bytedeco.javacpp.Loader; import org.bytedeco.javacpp.Pointer; import org.bytedeco.javacpp.PointerScope; import org.tensorflow.internal.c_api.TF_TString; -import org.tensorflow.ndarray.NdArray; import org.tensorflow.ndarray.buffer.DataBuffer; import org.tensorflow.ndarray.impl.buffer.AbstractDataBuffer; import org.tensorflow.ndarray.impl.buffer.Validator; @@ -40,10 +38,9 @@ *

    The values are stored as an array of {@link TF_TString}, internally wrapped with {@code * tensorflow::tstring}, which is essentially a portable version of {@code std::string}. * - *

    The data of the buffer must be initialized only once, by calling {@link #init(NdArray, - * Function)}, and the buffer must have been allocated with enough space (use {@link - * #computeSize(NdArray, Function)} priory to know exactly how many bytes are required to store the - * data). + *

    The data of the buffer must be initialized only once, by calling {@link #init}, and the buffer + * must have been allocated with enough space (use {@link #computeSize} priory to know exactly how + * many bytes are required to store the data). * *

    After its data has been initialized, the buffer is read-only as it is not possible to change * safely a value without reinitializing the whole data. @@ -66,8 +63,8 @@ public static long computeSize(ByteSequenceProvider byteSequenceProvider) * *

    While it is not enforced programmatically, it is mandatory that this method is called only * once after the creation of the buffer. The buffer must have been allocated according to the - * same set of data, calling {@link #computeSize(NdArray, Function)} priory to make sure there is - * enough space to store it. + * same set of data, calling {@link #computeSize} priory to make sure there is enough space to + * store it. * * @param byteSequenceProvider produces sequences of bytes to use as the tensor data */ diff --git a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/internal/types/TUint16Mapper.java b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/internal/types/TUint16Mapper.java index d563302319a..43faa1199ed 100644 --- a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/internal/types/TUint16Mapper.java +++ b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/internal/types/TUint16Mapper.java @@ -29,7 +29,7 @@ import org.tensorflow.types.TUint16; /** - * Maps memory of {@link org.tensorflow.proto.DataType#DT_Uint16} tensors to a n-dimensional data + * Maps memory of {@link org.tensorflow.proto.DataType#DT_UINT16} tensors to a n-dimensional data * space. */ public final class TUint16Mapper extends TensorMapper { diff --git a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/CustomGradient.java b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/CustomGradient.java index 02acce1cb37..5af78959b39 100644 --- a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/CustomGradient.java +++ b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/CustomGradient.java @@ -20,7 +20,6 @@ import org.tensorflow.Operand; import org.tensorflow.Output; import org.tensorflow.TensorFlow; -import org.tensorflow.internal.c_api.TFJ_GradFuncAdapter; /** * A custom gradient for ops of type {@link T}. Should be registered using {@link @@ -48,15 +47,4 @@ public interface CustomGradient { * @return the gradients of the op's inputs. */ List> call(Ops tf, T op, List> gradInputs); - - /** - * Create an adapter for the custom gradient so that it can be used by native code. - * - *

    You should not be calling this yourself, use {@link TensorFlow#registerCustomGradient(Class, - * CustomGradient)}. - */ - static > TFJ_GradFuncAdapter adapter( - CustomGradient gradient, Class opClass) { - return new TypedGradientAdapter(gradient, opClass); - } } diff --git a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/DispatchingGradientAdapter.java b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/DispatchingGradientAdapter.java new file mode 100644 index 00000000000..d82aa5df8a2 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/DispatchingGradientAdapter.java @@ -0,0 +1,145 @@ +/* Copyright 2026 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +======================================================================= +*/ +package org.tensorflow.op; + +import java.lang.reflect.Constructor; +import java.util.List; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.ConcurrentMap; +import org.tensorflow.AbstractGradientAdapter; +import org.tensorflow.Graph; +import org.tensorflow.GraphOperation; +import org.tensorflow.Operand; +import org.tensorflow.Output; +import org.tensorflow.internal.c_api.TFJ_Scope; + +/** + * Dispatching adapter for Java-side custom gradient registration. + * + *

    This class mirrors the behavior of TensorFlow Python's {@code tf.RegisterGradient} mechanism + * by providing a centralized dispatch layer for custom gradients in the Java API. + * + *

    Gradients may be registered in one of two forms for a given op type: + * + *

      + *
    • A raw gradient ({@link RawCustomGradient}) operating directly on {@link GraphOperation} and + * {@link Output} objects. + *
    • A typed gradient ({@link CustomGradient}) operating on generated {@link RawOpInputs} + * subclasses. + *
    + * + *

    For any given op type, exactly one gradient definition is permitted: either raw or typed. + * Duplicate registrations, or attempts to mix raw and typed gradients for the same op type, are + * rejected to prevent ambiguous dispatch behavior. + * + *

    At runtime, {@link #apply(Graph, TFJ_Scope, GraphOperation, List)} determines the operation + * type and dispatches to the corresponding registered gradient implementation. + */ +final class DispatchingGradientAdapter extends AbstractGradientAdapter { + + private final ConcurrentMap raw = new ConcurrentHashMap<>(); + private final ConcurrentMap> typed = new ConcurrentHashMap<>(); + + private static String dupMsg(String opType, String existingKind, String newKind) { + return "A " + + existingKind + + " gradient is already registered for op type '" + + opType + + "'. Raw and typed registrations are mutually exclusive; cannot register " + + newKind + + "."; + } + + static final class TypedEntry> { + final CustomGradient grad; + final Class inputClass; + final Constructor ctor; + + TypedEntry(CustomGradient grad, Class inputClass) { + this.grad = grad; + this.inputClass = inputClass; + try { + this.ctor = inputClass.getConstructor(org.tensorflow.GraphOperation.class); + } catch (NoSuchMethodException e) { + throw new IllegalArgumentException( + "Inputs class " + inputClass.getName() + " must have a public ctor(GraphOperation).", + e); + } + } + } + + void putRaw(String opType, RawCustomGradient g) { + if (typed.containsKey(opType)) { + throw new IllegalStateException(dupMsg(opType, "typed", "raw")); + } + RawCustomGradient prev = raw.putIfAbsent(opType, g); + if (prev != null) { + throw new IllegalStateException( + "A raw gradient is already registered for op type '" + opType + "'."); + } + } + + > void putTyped( + String opType, CustomGradient g, Class inputClass) { + if (raw.containsKey(opType)) { + throw new IllegalStateException(dupMsg(opType, "raw", "typed")); + } + TypedEntry prev = typed.putIfAbsent(opType, new TypedEntry<>(g, inputClass)); + if (prev != null) { + throw new IllegalStateException( + "A typed gradient is already registered for op type '" + opType + "'."); + } + } + + @Override + protected List> apply( + Graph graph, TFJ_Scope scope, GraphOperation operation, List> gradInputs) { + + final String opType = operation.type(); + + RawCustomGradient rg = raw.get(opType); + if (rg != null) { + // NativeScope & Ops constructors are package-private => must be in org.tensorflow.op + Scope nativeScope = + new NativeScope(scope, graph, operation.name()).withSubScope(operation.name()); + return rg.call(new Ops(nativeScope), operation, gradInputs); + } + + @SuppressWarnings("rawtypes") + TypedEntry te = typed.get(opType); + if (te != null) { + return applyTyped(graph, scope, operation, gradInputs, te); + } + + throw new IllegalStateException("No Java custom gradient registered for op type: " + opType); + } + + private > List> applyTyped( + Graph graph, + TFJ_Scope scope, + GraphOperation operation, + List> gradInputs, + TypedEntry te) { + try { + T inputs = te.ctor.newInstance(operation); + Scope nativeScope = + new NativeScope(scope, graph, operation.name()).withSubScope(operation.name()); + return te.grad.call(new Ops(nativeScope), inputs, gradInputs); + } catch (ReflectiveOperationException e) { + throw new RuntimeException("Failed to instantiate inputs for " + te.inputClass.getName(), e); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/GradientDispatch.java b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/GradientDispatch.java new file mode 100644 index 00000000000..441cff5a2fc --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/GradientDispatch.java @@ -0,0 +1,40 @@ +/* Copyright 2026 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +======================================================================= +*/ +package org.tensorflow.op; + +import org.tensorflow.internal.c_api.TFJ_GradFuncAdapter; + +/** Public bridge to a single native gradient adapter. */ +public final class GradientDispatch { + + // package-private adapter that can access NativeScope/Ops constructors + static final DispatchingGradientAdapter ADAPTER = new DispatchingGradientAdapter(); + + private GradientDispatch() {} + + public static TFJ_GradFuncAdapter adapter() { + return ADAPTER; + } + + public static void putRaw(String opType, RawCustomGradient gradient) { + ADAPTER.putRaw(opType, gradient); + } + + public static > void putTyped( + String opType, CustomGradient gradient, Class inputClass) { + ADAPTER.putTyped(opType, gradient, inputClass); + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/RawCustomGradient.java b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/RawCustomGradient.java index c2d5496de2a..ad348600e74 100644 --- a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/RawCustomGradient.java +++ b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/RawCustomGradient.java @@ -21,7 +21,6 @@ import org.tensorflow.Operand; import org.tensorflow.Output; import org.tensorflow.TensorFlow; -import org.tensorflow.internal.c_api.TFJ_GradFuncAdapter; /** * A custom gradient for an op of unspecified type. Should be registered using {@link @@ -46,14 +45,4 @@ public interface RawCustomGradient { * @return the gradients of the op's inputs. */ List> call(Ops tf, GraphOperation op, List> gradInputs); - - /** - * Create an adapter for the custom gradient so that it can be used by native code. - * - *

    You should not be calling this yourself, use {@link - * TensorFlow#registerCustomGradient(String, RawCustomGradient)}. - */ - static TFJ_GradFuncAdapter adapter(RawCustomGradient gradient) { - return new RawGradientAdapter(gradient); - } } diff --git a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/RawGradientAdapter.java b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/RawGradientAdapter.java deleted file mode 100644 index 2324fb75f32..00000000000 --- a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/RawGradientAdapter.java +++ /dev/null @@ -1,44 +0,0 @@ -/* - Copyright 2024 The TensorFlow Authors. All Rights Reserved. - -Licensed 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 - - http://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. -======================================================================= - -*/ -package org.tensorflow.op; - -import java.util.List; -import org.tensorflow.AbstractGradientAdapter; -import org.tensorflow.Graph; -import org.tensorflow.GraphOperation; -import org.tensorflow.Operand; -import org.tensorflow.Output; -import org.tensorflow.internal.c_api.TFJ_Scope; - -/** A native adapter for {@link RawCustomGradient}. */ -final class RawGradientAdapter extends AbstractGradientAdapter { - - private final RawCustomGradient gradient; - - RawGradientAdapter(RawCustomGradient gradient) { - super(); - this.gradient = gradient; - } - - @Override - protected List> apply( - Graph graph, TFJ_Scope scope, GraphOperation operation, List> gradInputs) { - Scope nativeScope = new NativeScope(scope, graph, null).withSubScope(operation.name()); - return gradient.call(new Ops(nativeScope), operation, gradInputs); - } -} diff --git a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/TypedGradientAdapter.java b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/TypedGradientAdapter.java deleted file mode 100644 index 33d71679fae..00000000000 --- a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/op/TypedGradientAdapter.java +++ /dev/null @@ -1,58 +0,0 @@ -/* - Copyright 2021 The TensorFlow Authors. All Rights Reserved. - -Licensed 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 - - http://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. -======================================================================= - -*/ -package org.tensorflow.op; - -import java.lang.reflect.Constructor; -import java.lang.reflect.InvocationTargetException; -import java.util.List; -import org.tensorflow.AbstractGradientAdapter; -import org.tensorflow.Graph; -import org.tensorflow.GraphOperation; -import org.tensorflow.Operand; -import org.tensorflow.Output; -import org.tensorflow.internal.c_api.TFJ_Scope; - -/** A native adapter for {@link CustomGradient}. */ -final class TypedGradientAdapter> extends AbstractGradientAdapter { - - private final CustomGradient gradient; - private final Class opInputClass; - private final Constructor ctor; - - @SuppressWarnings("unchecked") - TypedGradientAdapter(CustomGradient gradient, Class opInputClass) { - super(); - this.gradient = gradient; - this.opInputClass = opInputClass; - this.ctor = (Constructor) this.opInputClass.getDeclaredConstructors()[0]; - } - - @Override - protected List> apply( - Graph graph, TFJ_Scope scope, GraphOperation operation, List> gradInputs) { - try { - T rawOp = ctor.newInstance(operation); - Scope nativeScope = - new NativeScope(scope, graph, null).withSubScope(rawOp.getOutputs().op().name()); - return gradient.call(new Ops(nativeScope), rawOp, gradInputs); - - } catch (InvocationTargetException | InstantiationException | IllegalAccessException e) { - throw new RuntimeException("Could not instantiate Op class " + opInputClass, e); - } - } -} diff --git a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/package-info.java b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/package-info.java index 983cda5260c..49cdef2a624 100644 --- a/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/package-info.java +++ b/tensorflow-core/tensorflow-core-api/src/main/java/org/tensorflow/package-info.java @@ -16,10 +16,12 @@ /** * Defines classes to build, save, load and execute TensorFlow models. * - *

    WARNING: The API is currently experimental and is not covered by TensorFlow API stability guarantees. See README.md - * for installation instructions. + *

    API Stability: Since version 1.0.0, the TensorFlow Java API is covered by TensorFlow API stability guarantees. + * Please note that as this library is a wrapper for the TensorFlow C API, its stability is subject + * to the stability of the underlying upstream TensorFlow project. See the README.md for installation + * instructions. * *

    The LabelImage diff --git a/tensorflow-core/tensorflow-core-api/src/test/java/org/tensorflow/CustomGradientRegistryCapacityTest.java b/tensorflow-core/tensorflow-core-api/src/test/java/org/tensorflow/CustomGradientRegistryCapacityTest.java new file mode 100644 index 00000000000..3df4cba96d8 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/test/java/org/tensorflow/CustomGradientRegistryCapacityTest.java @@ -0,0 +1,102 @@ +/* + Copyright 2026 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +============================================================================== +*/ +package org.tensorflow; + +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import org.junit.jupiter.api.Test; +import org.tensorflow.internal.c_api.TF_Buffer; +import org.tensorflow.internal.c_api.global.tensorflow; +import org.tensorflow.proto.OpDef; +import org.tensorflow.proto.OpList; + +/** + * Regression test for PR #632: Registering >10 custom gradients must work; all registered opTypes + * must be present in the native gradient registry (TensorFlow.hasGradient(opType) becomes true). + */ +public class CustomGradientRegistryCapacityTest { + + private static List listAllOpTypes() { + TF_Buffer buf = tensorflow.TF_GetAllOpList(); + try { + OpList opList = OpList.parseFrom(buf.dataAsByteBuffer()); + List names = new ArrayList<>(opList.getOpCount()); + for (OpDef op : opList.getOpList()) { + names.add(op.getName()); + } + Collections.sort(names); + return names; + } catch (Exception e) { + throw new RuntimeException("Failed to parse TF_GetAllOpList()", e); + } + } + + @Test + public void registerMoreThanTenGradients_thenHasGradientIsTrue() { + + // 1) Discover op types that currently have NO gradient registered. + List ops = listAllOpTypes(); + + List noGrad = new ArrayList<>(); + for (String opType : ops) { + if (!TensorFlow.hasGradient(opType)) { + // Avoid internal/private ops to reduce risk of weirdness (optional) + if (!opType.startsWith("_")) { + noGrad.add(opType); + } + } + } + + // 2) Pick 11 opTypes (stable order: alphabetical). + // We intentionally pick from "noGrad" so the test is meaningful: + // before: hasGradient=false, after register: true. + assertTrue(noGrad.size() >= 11, "Need at least 11 ops with no gradient in this runtime."); + + List selected = noGrad.subList(0, 11); + + // 3) Before: ensure hasGradient is false + for (String opType : selected) { + assertFalse( + TensorFlow.hasGradient(opType), + "Precondition failed: expected no gradient for " + opType); + } + + // 4) Register 11 custom gradients (simple zerosLike per input) + for (String opType : selected) { + TensorFlow.registerCustomGradient( + opType, + (tf, op, gradInputs) -> { + int n = op.numInputs(); + ArrayList> grads = new ArrayList<>(n); + for (int i = 0; i < n; i++) { + grads.add(tf.zerosLike(op.input(i))); + } + return grads; + }); + } + + // 5) After: ensure hasGradient is true for all + for (String opType : selected) { + assertTrue( + TensorFlow.hasGradient(opType), "Expected gradient to be registered for " + opType); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/test/java/org/tensorflow/CustomGradientsTest.java b/tensorflow-core/tensorflow-core-api/src/test/java/org/tensorflow/CustomGradientsTest.java new file mode 100644 index 00000000000..c1d528c8a20 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/test/java/org/tensorflow/CustomGradientsTest.java @@ -0,0 +1,140 @@ +/* + Copyright 2026 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +============================================================================== +*/ +package org.tensorflow; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertTrue; + +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.condition.DisabledOnOs; +import org.junit.jupiter.api.condition.OS; +import org.tensorflow.op.CustomGradient; +import org.tensorflow.op.Ops; +import org.tensorflow.op.RawCustomGradient; +import org.tensorflow.op.nn.SparseSoftmaxCrossEntropyWithLogits; +import org.tensorflow.types.TFloat32; +import org.tensorflow.types.TInt32; + +@DisabledOnOs(OS.WINDOWS) +public class CustomGradientsTest { + + @Test + public void noGradientNullIsSupported() { + // Register a custom gradient for an op that has NO native gradient in TF core. + CustomGradient grad = + (tf, op, gradInputs) -> { + @SuppressWarnings("unchecked") + Operand gLoss = (Operand) gradInputs.get(0); // [B] + + @SuppressWarnings("unchecked") + Operand logits = op.features; + + SparseSoftmaxCrossEntropyWithLogits xent = + SparseSoftmaxCrossEntropyWithLogits.create(tf.scope(), logits, op.labels); + + Operand backprop = xent.backprop(); // [B,C] + Operand gLossE = tf.expandDims(gLoss, tf.constant(1)); // [B,1] + Operand dLogits = tf.math.mul(gLossE, backprop); // [B,C] + + // labels: NoGradient + return java.util.Arrays.asList(dLogits, null); + }; + + assertTrue( + TensorFlow.registerCustomGradient(SparseSoftmaxCrossEntropyWithLogits.Inputs.class, grad)); + + try (Graph g = new Graph()) { + Ops tf = Ops.create(g); + + // Small fixed shapes to be able to create an explicit seed (avoid OnesLike in addGradients). + Operand logits = tf.constant(new float[][] {{1f, 2f, 3f}, {3f, 2f, 1f}}); + Operand labels = tf.constant(new int[] {2, 0}); + + SparseSoftmaxCrossEntropyWithLogits xent = + SparseSoftmaxCrossEntropyWithLogits.create(tf.scope(), logits, labels); + + Output loss = xent.loss(); // [2] + Operand seed = tf.constant(new float[] {1f, 1f}); // same shape as loss + + Output[] grads = + g.addGradients( + "seed", + new Output[] {loss}, + new Output[] {logits.asOutput(), labels.asOutput()}, + new Output[] {seed.asOutput()}); + + // logits grad exists, labels grad must be "NoGradient" (represented as a CLOSED Output) + assertNotNull(grads); + assertEquals(2, grads.length); + assertNotNull(grads[0], "Expected gradient for logits"); + assertNotNull(grads[1], "Expected an Output placeholder for labels gradient"); + assertTrue(grads[1].isClosed(), "Expected closed gradient (NoGradient) for labels"); + } + } + + @Test + public void sigmoidGradHasCustomGradientWithoutOnesLikeSeed() { + // Register custom gradient for SigmoidGrad (if already registered, it will return false, + // but the test can still pass because the gradient exists in the current process). + TensorFlow.registerCustomGradient( + "SigmoidGrad", + (RawCustomGradient) + (tf, op, gradInputs) -> { + @SuppressWarnings("unchecked") + Operand y = (Operand) op.input(0); // sigmoid(x) + @SuppressWarnings("unchecked") + Operand dy = (Operand) op.input(1); // upstream into SigmoidGrad + @SuppressWarnings("unchecked") + Operand upstream = (Operand) gradInputs.get(0); + + Operand one = tf.constant(1.0f); + Operand yTimesOneMinusY = tf.math.mul(y, tf.math.sub(one, y)); + + // dL/d(dy) = upstream * y*(1-y) + Operand dDy = tf.math.mul(upstream, yTimesOneMinusY); + + // dL/d(y) not needed for this test; return zeros to keep it non-null. + Operand dY = tf.zerosLike(y); + + return java.util.Arrays.asList(dY, dDy); + }); + + try (Graph g = new Graph()) { + Ops tf = Ops.create(g); + + Operand x = tf.placeholder(TFloat32.class); + Operand y = tf.math.sigmoid(x); + + // Provide an explicit seed dy to avoid Graph.addGradients defaulting to OnesLike(y) + Operand seed = tf.fill(tf.shape(y), tf.constant(1.0f)); + + Output[] grads = + g.addGradients( + "seed", + new Output[] {y.asOutput()}, + new Output[] {x.asOutput()}, + new Output[] {seed.asOutput()}); + + assertNotNull(grads); + assertEquals(1, grads.length); + assertNotNull(grads[0], "Expected a non-null gradient for sigmoid(x) wrt x."); + assertFalse(grads[0].isClosed(), "Expected an active Output for d(sigmoid)/dx."); + } + } +} diff --git a/tensorflow-core/tensorflow-core-api/src/test/java/org/tensorflow/SavedModelBundleTest.java b/tensorflow-core/tensorflow-core-api/src/test/java/org/tensorflow/SavedModelBundleTest.java index 4b452984574..5eb3bf71660 100644 --- a/tensorflow-core/tensorflow-core-api/src/test/java/org/tensorflow/SavedModelBundleTest.java +++ b/tensorflow-core/tensorflow-core-api/src/test/java/org/tensorflow/SavedModelBundleTest.java @@ -68,6 +68,11 @@ public class SavedModelBundleTest { @Test public void load() { + try (SavedModelBundle bundle = SavedModelBundle.load(SAVED_MODEL_PATH)) { + assertNotNull(bundle.session()); + assertNotNull(bundle.graph()); + assertNotNull(bundle.metaGraphDef()); + } try (SavedModelBundle bundle = SavedModelBundle.load(SAVED_MODEL_PATH, "serve")) { assertNotNull(bundle.session()); assertNotNull(bundle.graph()); diff --git a/tensorflow-core/tensorflow-core-api/src/test/java/org/tensorflow/types/TBoolTest.java b/tensorflow-core/tensorflow-core-api/src/test/java/org/tensorflow/types/TBoolTest.java new file mode 100644 index 00000000000..df5e1333b00 --- /dev/null +++ b/tensorflow-core/tensorflow-core-api/src/test/java/org/tensorflow/types/TBoolTest.java @@ -0,0 +1,156 @@ +/* + * Copyright 2020 The TensorFlow Authors. All Rights Reserved. + * + * Licensed 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 + * + * http://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. + * ======================================================================= + */ + +package org.tensorflow.types; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; + +import org.junit.jupiter.api.Test; +import org.tensorflow.EagerSession; +import org.tensorflow.ndarray.NdArray; +import org.tensorflow.ndarray.NdArrays; +import org.tensorflow.ndarray.Shape; +import org.tensorflow.ndarray.index.Indices; +import org.tensorflow.op.Ops; +import org.tensorflow.op.core.Constant; +import org.tensorflow.op.math.LogicalAnd; +import org.tensorflow.op.math.LogicalNot; +import org.tensorflow.op.math.LogicalOr; + +public class TBoolTest { + + @Test + public void createScalar() { + TBool tensorT = TBool.scalarOf(true); + assertNotNull(tensorT); + assertEquals(Shape.scalar(), tensorT.shape()); + assertEquals(true, tensorT.getObject()); + + TBool tensorF = TBool.scalarOf(false); + assertNotNull(tensorF); + assertEquals(Shape.scalar(), tensorF.shape()); + assertEquals(false, tensorF.getObject()); + } + + @Test + public void createVector() { + TBool tensor = TBool.vectorOf(true, false); + assertNotNull(tensor); + assertEquals(Shape.of(2), tensor.shape()); + assertEquals(true, tensor.getObject(0)); + assertEquals(false, tensor.getObject(1)); + } + + @Test + public void createCopy() { + NdArray bools = + NdArrays.ofObjects(Boolean.class, Shape.of(2, 2)) + .setObject(true, 0, 0) + .setObject(false, 0, 1) + .setObject(false, 1, 0) + .setObject(true, 1, 1); + + TBool tensor = TBool.tensorOf(bools); + assertNotNull(tensor); + bools.scalars().forEachIndexed((idx, s) -> assertEquals(s.getObject(), tensor.getObject(idx))); + } + + @Test + public void initializeTensorsWithBools() { + // Allocate a tensor of booleans of the shape (2, 3, 2) + TBool tensor = TBool.tensorOf(Shape.of(2, 3, 2)); + + assertEquals(3, tensor.rank()); + assertEquals(12, tensor.size()); + NdArray data = (NdArray) tensor; + + try (EagerSession session = EagerSession.create()) { + Ops tf = Ops.create(session); + + // Initialize tensor memory with falses and take a snapshot + data.scalars().forEach(scalar -> ((NdArray) scalar).setObject(false)); + Constant x = tf.constantOf(tensor); + + // Initialize the same tensor memory with trues and take a snapshot + data.scalars().forEach(scalar -> ((NdArray) scalar).setObject(true)); + Constant y = tf.constantOf(tensor); + + // Calculate x AND y and validate the result + LogicalAnd xAndY = tf.math.logicalAnd(x, y); + ((NdArray) xAndY.asTensor()) + .scalars() + .forEach(scalar -> assertEquals(false, scalar.getObject())); + + // Calculate x OR y and validate the result + LogicalOr xOrY = tf.math.logicalOr(x, y); + ((NdArray) xOrY.asTensor()) + .scalars() + .forEach(scalar -> assertEquals(true, scalar.getObject())); + + // Calculate !x and validate the result against y + LogicalNot notX = tf.math.logicalNot(x); + assertEquals(y.asTensor(), notX.asTensor()); + } + } + + @Test + public void setAndCompute() { + NdArray heapData = + NdArrays.ofBooleans(Shape.of(4)) + .setObject(true, 0) + .setObject(false, 1) + .setObject(true, 2) + .setObject(false, 3); + + // Creates a 2x2 matrix + try (TBool tensor = TBool.tensorOf(Shape.of(2, 2))) { + NdArray data = (NdArray) tensor; + + // Copy first 2 values of the vector to the first row of the matrix + data.set(heapData.slice(Indices.range(0, 2)), 0); + + // Copy values at an odd position in the vector as the second row of the matrix + data.set(heapData.slice(Indices.odd()), 1); + + assertEquals(true, data.getObject(0, 0)); + assertEquals(false, data.getObject(0, 1)); + assertEquals(false, data.getObject(1, 0)); + assertEquals(false, data.getObject(1, 1)); + + // Read rows of the tensor in reverse order + NdArray flippedData = data.slice(Indices.flip(), Indices.flip()); + + assertEquals(false, flippedData.getObject(0, 0)); + assertEquals(false, flippedData.getObject(0, 1)); + assertEquals(false, flippedData.getObject(1, 0)); + assertEquals(true, flippedData.getObject(1, 1)); + + try (EagerSession session = EagerSession.create()) { + Ops tf = Ops.create(session); + + LogicalNot sub = tf.math.logicalNot(tf.constantOf(tensor)); + NdArray result = (NdArray) sub.asTensor(); + + assertEquals(false, result.getObject(0, 0)); + assertEquals(true, result.getObject(0, 1)); + assertEquals(true, result.getObject(1, 0)); + assertEquals(true, result.getObject(1, 1)); + } + } + } +} diff --git a/tensorflow-core/tensorflow-core-generator/pom.xml b/tensorflow-core/tensorflow-core-generator/pom.xml index a90d85a1d4b..bb532f5deab 100644 --- a/tensorflow-core/tensorflow-core-generator/pom.xml +++ b/tensorflow-core/tensorflow-core-generator/pom.xml @@ -5,7 +5,7 @@ org.tensorflow tensorflow-core - 1.0.0-SNAPSHOT + 1.2.0-SNAPSHOT tensorflow-core-generator jar diff --git a/tensorflow-core/tensorflow-core-generator/src/main/java/module-info.java b/tensorflow-core/tensorflow-core-generator/src/main/java/module-info.java index 1b155bc3af1..a6efd2561a3 100644 --- a/tensorflow-core/tensorflow-core-generator/src/main/java/module-info.java +++ b/tensorflow-core/tensorflow-core-generator/src/main/java/module-info.java @@ -14,13 +14,18 @@ limitations under the License. ======================================================================= */ + +/** + * Code to generate the Java side implementations of TensorFlow's ops based on the TensorFlow op + * definition files. + */ module tensorflow.generator { requires tensorflow.nativelib; - requires java.compiler; + requires transitive java.compiler; requires com.github.javaparser.core; requires com.google.protobuf; requires com.google.common; - requires com.squareup.javapoet; + requires transitive com.squareup.javapoet; requires org.commonmark; requires spring.core; diff --git a/tensorflow-core/tensorflow-core-generator/src/main/java/org/tensorflow/generator/op/ClassGenerator.java b/tensorflow-core/tensorflow-core-generator/src/main/java/org/tensorflow/generator/op/ClassGenerator.java index 78b8ea04964..91d66134880 100644 --- a/tensorflow-core/tensorflow-core-generator/src/main/java/org/tensorflow/generator/op/ClassGenerator.java +++ b/tensorflow-core/tensorflow-core-generator/src/main/java/org/tensorflow/generator/op/ClassGenerator.java @@ -105,7 +105,7 @@ enum RenderMode { /** * The generated options class, or null if it doesn't have one or {@link #buildOptionsClass()} has - * not been ran. + * not been run. */ private TypeSpec optionsClass = null; @@ -748,6 +748,10 @@ private void buildSecondaryFactory( body.add("$T.class", defaultTypes.get(attr)); } else { factoryBuilder.addParameter(param); + // Checking if the parameter being added is the variadic options or not + if (param.name.equals("options")) { + factoryBuilder.varargs(); + } factoryBuilder.addJavadoc("\n@param $L $L", param.name, paramTags.get(param.name)); typeVars.addAll(new ResolvedType(param.type).findGenerics()); body.add("$L", param.name); diff --git a/tensorflow-core/tensorflow-core-native/.bazelversion b/tensorflow-core/tensorflow-core-native/.bazelversion index f3c238740e5..5c733d6c13a 100644 --- a/tensorflow-core/tensorflow-core-native/.bazelversion +++ b/tensorflow-core/tensorflow-core-native/.bazelversion @@ -1,2 +1,2 @@ -6.5.0 +7.4.1 # NOTE: Update Bazel version in tensorflow/tools/ci_build/release/common.sh.oss \ No newline at end of file diff --git a/tensorflow-core/tensorflow-core-native/BUILD b/tensorflow-core/tensorflow-core-native/BUILD index e8d01ef0a72..f480e638867 100644 --- a/tensorflow-core/tensorflow-core-native/BUILD +++ b/tensorflow-core/tensorflow-core-native/BUILD @@ -4,6 +4,6 @@ java_proto_library( name = "java_proto_gen_sources", deps = [ "@org_tensorflow//tensorflow/core:protos_all", - "@local_tsl//tsl/protobuf:protos_all" + "@local_xla//xla/tsl/protobuf:protos_all" ] ) diff --git a/tensorflow-core/tensorflow-core-native/WORKSPACE b/tensorflow-core/tensorflow-core-native/WORKSPACE index 1a745b13613..a0f6b30323e 100644 --- a/tensorflow-core/tensorflow-core-native/WORKSPACE +++ b/tensorflow-core/tensorflow-core-native/WORKSPACE @@ -14,105 +14,189 @@ http_archive( patch_tool = "patch", patch_args = ["-p1"], patch_cmds = [ - "find tensorflow third_party/xla/third_party/tsl -name \\*.proto | xargs sed -i.bak '/^option java_package/d'", - "find tensorflow third_party/xla/third_party/tsl -name \\*.proto | xargs sed -i.bak 's/^package tensorflow\\([^;]*\\).*$/package tensorflow\\1;\\noption java_package = \"org.tensorflow.proto\\1\";/'", + "find tensorflow third_party/xla/third_party/tsl third_party/xla/xla/tsl -name \\*.proto | xargs sed -i.bak '/^option java_package/d'", + "find tensorflow third_party/xla/third_party/tsl third_party/xla/xla/tsl -name \\*.proto | xargs sed -i.bak 's/^package tensorflow\\([^;]*\\).*$/package tensorflow\\1;\\noption java_package = \"org.tensorflow.proto\\1\";/'", ], urls = [ - "https://github.com/tensorflow/tensorflow/archive/refs/tags/v2.16.2.tar.gz", + "https://github.com/tensorflow/tensorflow/archive/refs/tags/v2.20.0.tar.gz", ], - sha256 = "023849bf253080cb1e4f09386f5eb900492da2288274086ed6cfecd6d99da9eb", - strip_prefix = "tensorflow-2.16.2" + sha256 = "a640d1f97be316a09301dfc9347e3d929ad4d9a2336e3ca23c32c93b0ff7e5d0", + strip_prefix = "tensorflow-2.20.0" ) ##### Copy content of tensorflow/WORKSPACE here (make sure to change references of default package "//" to "@org_tensorflow//") -# We must initialize hermetic python first. +# buildifier: disable=load-on-top + load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( - name = "bazel_skylib", - sha256 = "74d544d96f4a5bb630d465ca8bbcfe231e3594e5aae57e1edbf17a6eb3ca2506", - urls = [ - "https://storage.googleapis.com/mirror.tensorflow.org/github.com/bazelbuild/bazel-skylib/releases/download/1.3.0/bazel-skylib-1.3.0.tar.gz", - "https://github.com/bazelbuild/bazel-skylib/releases/download/1.3.0/bazel-skylib-1.3.0.tar.gz", + name = "rules_shell", + sha256 = "bc61ef94facc78e20a645726f64756e5e285a045037c7a61f65af2941f4c25e1", + strip_prefix = "rules_shell-0.4.1", + url = "https://github.com/bazelbuild/rules_shell/releases/download/v0.4.1/rules_shell-v0.4.1.tar.gz", +) + +# Initialize the TensorFlow repository and all dependencies. +# +# The cascade of load() statements and tf_workspace?() calls works around the +# restriction that load() statements need to be at the top of .bzl files. +# E.g. we can not retrieve a new repository with http_archive and then load() +# a macro from that repository in the same file. +load("@org_tensorflow//tensorflow:workspace3.bzl", "tf_workspace3") + +tf_workspace3() + +load("@rules_shell//shell:repositories.bzl", "rules_shell_dependencies", "rules_shell_toolchains") + +rules_shell_dependencies() + +rules_shell_toolchains() + +# Initialize hermetic Python +load("@local_xla//third_party/py:python_init_rules.bzl", "python_init_rules") + +python_init_rules() + +load("@local_xla//third_party/py:python_init_repositories.bzl", "python_init_repositories") + +python_init_repositories( + default_python_version = "system", + local_wheel_dist_folder = "dist", + local_wheel_inclusion_list = [ + "tensorflow*", + "tf_nightly*", ], + local_wheel_workspaces = ["@org_tensorflow//:WORKSPACE"], + requirements = { + "3.9": "@org_tensorflow//:requirements_lock_3_9.txt", + "3.10": "@org_tensorflow//:requirements_lock_3_10.txt", + "3.11": "@org_tensorflow//:requirements_lock_3_11.txt", + "3.12": "@org_tensorflow//:requirements_lock_3_12.txt", + "3.13": "@org_tensorflow//:requirements_lock_3_13.txt", + }, ) -http_archive( - name = "rules_python", - sha256 = "9d04041ac92a0985e344235f5d946f71ac543f1b1565f2cdbc9a2aaee8adf55b", - strip_prefix = "rules_python-0.26.0", - url = "https://github.com/bazelbuild/rules_python/releases/download/0.26.0/rules_python-0.26.0.tar.gz", +load("@local_xla//third_party/py:python_init_toolchains.bzl", "python_init_toolchains") + +python_init_toolchains() + +load("@local_xla//third_party/py:python_init_pip.bzl", "python_init_pip") + +python_init_pip() + +load("@pypi//:requirements.bzl", "install_deps") + +install_deps() +# End hermetic Python initialization + +load("@org_tensorflow//tensorflow:workspace2.bzl", "tf_workspace2") + +tf_workspace2() + +# Added to fix macOS compiler support on Tahoe? +#http_archive( +# name = "build_bazel_apple_support", +# sha256 = "1ae6fcf983cff3edab717636f91ad0efff2e5ba75607fdddddfd6ad0dbdfaf10", +# urls = ["https://github.com/bazelbuild/apple_support/releases/download/1.24.5/apple_support.1.24.5.tar.gz"] +#) + +load("@org_tensorflow//tensorflow:workspace1.bzl", "tf_workspace1") + +tf_workspace1() + +load("@org_tensorflow//tensorflow:workspace0.bzl", "tf_workspace0") + +tf_workspace0() + +load( + "@local_xla//third_party/py:python_wheel.bzl", + "python_wheel_version_suffix_repository", ) -load("@rules_python//python:repositories.bzl", "py_repositories") +python_wheel_version_suffix_repository(name = "tf_wheel_version_suffix") + +load( + "@rules_ml_toolchain//third_party/gpus/cuda/hermetic:cuda_json_init_repository.bzl", + "cuda_json_init_repository", +) -py_repositories() +cuda_json_init_repository() -load("@rules_python//python:repositories.bzl", "python_register_toolchains") load( - "@org_tensorflow//tensorflow/tools/toolchains/python:python_repo.bzl", - "python_repository", + "@cuda_redist_json//:distributions.bzl", + "CUDA_REDISTRIBUTIONS", + "CUDNN_REDISTRIBUTIONS", +) +load( + "@rules_ml_toolchain//third_party/gpus/cuda/hermetic:cuda_redist_init_repositories.bzl", + "cuda_redist_init_repositories", + "cudnn_redist_init_repository", ) -python_repository(name = "python_version_repo") +cuda_redist_init_repositories( + cuda_redistributions = CUDA_REDISTRIBUTIONS, +) -load("@python_version_repo//:py_version.bzl", "TF_PYTHON_VERSION") +cudnn_redist_init_repository( + cudnn_redistributions = CUDNN_REDISTRIBUTIONS, +) -python_register_toolchains( - name = "python", - ignore_root_user_error = True, - python_version = TF_PYTHON_VERSION, +load( + "@rules_ml_toolchain//third_party/gpus/cuda/hermetic:cuda_configure.bzl", + "cuda_configure", ) -load("@python//:defs.bzl", "interpreter") -load("@rules_python//python:pip.bzl", "package_annotation", "pip_parse") +cuda_configure(name = "local_config_cuda") -NUMPY_ANNOTATIONS = { - "numpy": package_annotation( - additive_build_content = """\ -filegroup( - name = "includes", - srcs = glob(["site-packages/numpy/core/include/**/*.h"]), +load( + "@rules_ml_toolchain//third_party/nccl/hermetic:nccl_redist_init_repository.bzl", + "nccl_redist_init_repository", ) -cc_library( - name = "numpy_headers", - hdrs = [":includes"], - strip_include_prefix="site-packages/numpy/core/include/", + +nccl_redist_init_repository() + +load( + "@rules_ml_toolchain//third_party/nccl/hermetic:nccl_configure.bzl", + "nccl_configure", ) -""", - ), -} -#pip_parse( -# name = "pypi", -# annotations = NUMPY_ANNOTATIONS, -# python_interpreter_target = interpreter, -# requirements = "//:requirements_lock_" + HERMETIC_PYTHON_VERSION.replace(".", "_") + ".txt", -#) +nccl_configure(name = "local_config_nccl") -#load("@pypi//:requirements.bzl", "install_deps") +load( + "@rules_ml_toolchain//third_party/nvshmem/hermetic:nvshmem_json_init_repository.bzl", + "nvshmem_json_init_repository", +) -#install_deps() +nvshmem_json_init_repository() -# Initialize the TensorFlow repository and all dependencies. -# -# The cascade of load() statements and tf_workspace?() calls works around the -# restriction that load() statements need to be at the top of .bzl files. -# E.g. we can not retrieve a new repository with http_archive and then load() -# a macro from that repository in the same file. -load("@org_tensorflow//tensorflow:workspace3.bzl", "tf_workspace3") +load( + "@nvshmem_redist_json//:distributions.bzl", + "NVSHMEM_REDISTRIBUTIONS", +) +load( + "@rules_ml_toolchain//third_party/nvshmem/hermetic:nvshmem_redist_init_repository.bzl", + "nvshmem_redist_init_repository", +) -tf_workspace3() +nvshmem_redist_init_repository( + nvshmem_redistributions = NVSHMEM_REDISTRIBUTIONS, +) -load("@org_tensorflow//tensorflow:workspace2.bzl", "tf_workspace2") +load( + "@rules_ml_toolchain//third_party/nvshmem/hermetic:nvshmem_configure.bzl", + "nvshmem_configure", +) -tf_workspace2() +nvshmem_configure(name = "local_config_nvshmem") -load("@org_tensorflow//tensorflow:workspace1.bzl", "tf_workspace1") +load( + "@rules_ml_toolchain//cc_toolchain/deps:cc_toolchain_deps.bzl", + "cc_toolchain_deps", +) -tf_workspace1() +cc_toolchain_deps() -load("@org_tensorflow//tensorflow:workspace0.bzl", "tf_workspace0") +register_toolchains("@rules_ml_toolchain//cc_toolchain:lx64_lx64") -tf_workspace0() \ No newline at end of file +register_toolchains("@rules_ml_toolchain//cc_toolchain:lx64_lx64_cuda") \ No newline at end of file diff --git a/tensorflow-core/tensorflow-core-native/pom.xml b/tensorflow-core/tensorflow-core-native/pom.xml index 23682984a4a..2e9102b450b 100644 --- a/tensorflow-core/tensorflow-core-native/pom.xml +++ b/tensorflow-core/tensorflow-core-native/pom.xml @@ -6,7 +6,7 @@ org.tensorflow tensorflow-core - 1.0.0-SNAPSHOT + 1.2.0-SNAPSHOT tensorflow-core-native jar @@ -113,24 +113,12 @@ ${project.version} ${javacpp.platform.linux-x86_64}-gpu - - ${project.groupId} - ${project.artifactId} - ${project.version} - ${javacpp.platform.macosx-x86_64} - ${project.groupId} ${project.artifactId} ${project.version} ${javacpp.platform.macosx-arm64} - - ${project.groupId} - ${project.artifactId} - ${project.version} - ${javacpp.platform.windows-x86_64} - ${project.groupId} ${project.artifactId} @@ -167,14 +155,6 @@ ${project.build.directory}/${project.artifactId}-${project.version}-${javacpp.platform.macosx-arm64}.jar ${javacpp.platform.macosx-arm64} - - ${project.build.directory}/${project.artifactId}-${project.version}-${javacpp.platform.macosx-x86_64}.jar - ${javacpp.platform.macosx-x86_64} - - - ${project.build.directory}/${project.artifactId}-${project.version}-${javacpp.platform.windows-x86_64}.jar - ${javacpp.platform.windows-x86_64} - ${project.build.directory}/${project.artifactId}-${project.version}-${javacpp.platform.linux-arm64}.jar ${javacpp.platform.linux-arm64} @@ -329,6 +309,7 @@ ${project.basedir}/bazel-${project.artifactId}/external/org_tensorflow/ ${project.basedir}/bazel-${project.artifactId}/external/local_tsl/ + ${project.basedir}/bazel-${project.artifactId}/external/local_xla/ ${project.basedir}/bazel-bin/external/org_tensorflow/ ${project.basedir}/bazel-${project.artifactId}/external/com_google_absl/ ${project.basedir}/bazel-${project.artifactId}/external/eigen_archive/ @@ -601,7 +582,7 @@ ${project.build.directory}/${project.artifactId}-${project.version}-${native.classifier}.jar - ossrh + central ${project.groupId} ${project.artifactId} ${native.classifier} @@ -648,34 +629,6 @@ - - - maven-javadoc-plugin - 3.7.0 - - - attach-javadocs - - jar - - - - -Xmaxerrs - 65536 - -Xmaxwarns - 65536 - - false - 256m - 2048m - - https://protobuf.dev/reference/java/api-docs - http://bytedeco.org/javacpp/apidocs - - - - - diff --git a/tensorflow-core/tensorflow-core-native/scripts/bazel_common.sh b/tensorflow-core/tensorflow-core-native/scripts/bazel_common.sh index 211b6653860..a46225129a6 100755 --- a/tensorflow-core/tensorflow-core-native/scripts/bazel_common.sh +++ b/tensorflow-core/tensorflow-core-native/scripts/bazel_common.sh @@ -2,7 +2,6 @@ set -eu # Set generic Bazel build options -export BAZEL_USE_CPP_ONLY_TOOLCHAIN=1 export BAZEL_VC="${VCINSTALLDIR:-}" if [[ -d $BAZEL_VC ]]; then export BUILD_FLAGS="--output_user_root=$(cygpath -w $TMP) build" @@ -16,7 +15,7 @@ fi if [[ "${PLATFORM:-}" == macosx-arm64 ]]; then BUILD_FLAGS="$BUILD_FLAGS --config=macos_arm64" fi -BUILD_FLAGS="$BUILD_FLAGS --experimental_repo_remote_exec --python_path="$PYTHON_BIN_PATH" --output_filter=DONT_MATCH_ANYTHING --verbose_failures --distinct_host_configuration=true" +BUILD_FLAGS="$BUILD_FLAGS --experimental_repo_remote_exec --python_path="$PYTHON_BIN_PATH" --output_filter=DONT_MATCH_ANYTHING --verbose_failures" export BAZEL_BIN=$(pwd -P)/bazel-bin export TENSORFLOW_BIN=$BAZEL_BIN/external/org_tensorflow/tensorflow diff --git a/tensorflow-core/tensorflow-core-native/scripts/bazel_generate.sh b/tensorflow-core/tensorflow-core-native/scripts/bazel_generate.sh index 9d9941d1cf8..ab0fd0ec6c1 100755 --- a/tensorflow-core/tensorflow-core-native/scripts/bazel_generate.sh +++ b/tensorflow-core/tensorflow-core-native/scripts/bazel_generate.sh @@ -24,7 +24,7 @@ cp -f $TENSORFLOW_SRCS/core/ops/ops.pbtxt $GEN_RESOURCE_DIR/org/tensorflow cp -rf $TENSORFLOW_SRCS/core/api_def/base_api $GEN_RESOURCE_DIR/org/tensorflow/ # Copy generated Java protos from source jars -echo "Extracting TF/TSL proto Java sources" +echo "Extracting TF/TSL/XLA proto Java sources" cd $GEN_SRCS_DIR -find $TENSORFLOW_BIN $BAZEL_BIN/external/local_tsl/tsl -name \*-speed-src.jar -exec jar xf {} \; +find $TENSORFLOW_BIN $BAZEL_BIN/external/local_tsl/tsl $BAZEL_BIN/external/local_xla/xla -name \*-speed-src.jar -exec jar xf {} \; rm -rf META-INF diff --git a/tensorflow-core/tensorflow-core-native/scripts/dist_download.sh b/tensorflow-core/tensorflow-core-native/scripts/dist_download.sh index 7727faefaed..54ffca74ac0 100755 --- a/tensorflow-core/tensorflow-core-native/scripts/dist_download.sh +++ b/tensorflow-core/tensorflow-core-native/scripts/dist_download.sh @@ -5,23 +5,16 @@ DOWNLOAD_FOLDER="$1" case ${PLATFORM:-} in 'linux-x86_64') - WHEEL_URL='https://files.pythonhosted.org/packages/c6/d9/f2ff325194b8e8acb6b69f303c838b0486f41b8028ec42261f2eb037a031/tensorflow_cpu-2.16.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl' + WHEEL_URL='https://files.pythonhosted.org/packages/1a/9e/594164db23e3e262da1a0e8983258811eff56e5af6b7b6da5eccccb8d4c7/tensorflow_cpu-2.20.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl' ;; 'linux-x86_64-gpu') - WHEEL_URL='https://files.pythonhosted.org/packages/43/dd/8f03331107b76e63313d2089ddfbd13f15e51fb8ed73517cdd0ab3341928/tensorflow-2.16.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl' + WHEEL_URL='https://files.pythonhosted.org/packages/43/fb/8be8547c128613d82a2b006004026d86ed0bd672e913029a98153af4ffab/tensorflow-2.20.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl' ;; - 'macosx-x86_64') - WHEEL_URL='https://files.pythonhosted.org/packages/6d/69/9999c2d9e8a3b08dfcfc7e9259a05fb1da5f700936091d2eb4a7985c2776/tensorflow-2.16.2-cp311-cp311-macosx_10_15_x86_64.whl' + 'linux-arm64') + WHEEL_URL='https://files.pythonhosted.org/packages/ea/4c/c1aa90c5cc92e9f7f9c78421e121ef25bae7d378f8d1d4cbad46c6308836/tensorflow-2.20.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl' ;; 'macosx-arm64') - WHEEL_URL='https://files.pythonhosted.org/packages/9d/72/6f09443493b9df2fd8a9585c9af4d9453762906a8e5735a8a5efa6e3d1e3/tensorflow-2.16.2-cp311-cp311-macosx_12_0_arm64.whl' - ;; - 'windows-x86_64') - WHEEL_URL='https://files.pythonhosted.org/packages/46/87/c3e4e9fe7c630f38a6984afdd1d4ed531ef9c74dc66b86f46f6bdd89d608/tensorflow_intel-2.16.2-cp311-cp311-win_amd64.whl' - CLIB_URL='https://storage.googleapis.com/tensorflow/versions/2.16.2/libtensorflow-cpu-windows-x86_64.zip' - ;; - 'linux-arm64') - WHEEL_URL='https://files.pythonhosted.org/packages/b5/01/c03e98c8e97d151d9ce075fae210f838832eb53d8aa55669d384cb72925b/tensorflow-2.16.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl' + WHEEL_URL='https://files.pythonhosted.org/packages/04/82/af283f402f8d1e9315644a331a5f0f326264c5d1de08262f3de5a5ade422/tensorflow-2.20.0-cp313-cp313-macosx_12_0_arm64.whl' ;; *) echo "TensorFlow distribution for ${PLATFORM} is not supported for download" @@ -55,14 +48,11 @@ if [[ "$PLATFORM" =~ "linux" ]]; then ln -fs libtensorflow_cc.so.2 libtensorflow_cc.so ln -fs libtensorflow_framework.so.2 libtensorflow_framework.so if [[ "$PLATFORM" == "linux-arm64" ]]; then - ln -fs libomp-e9212f90.so.5 libomp-e9212f90.so + cp ../tensorflow.libs/libomp-f1025659.so.5 libomp-f1025659.so.5 + ln -fs libomp-f1025659.so.5 libomp-f1025659.so fi elif [[ "$PLATFORM" =~ "macosx" ]]; then ln -fs libtensorflow_cc.2.dylib libtensorflow_cc.dylib ln -fs libtensorflow_framework.2.dylib libtensorflow_framework.dylib -elif [[ "$PLATFORM" =~ "windows" ]]; then - # FIXME Looks like tsl headers are only present under the tensorflow folder for the windows build - # (while it is also available at the root of the include folder for other platforms) - cd include && ln -fs tensorflow/tsl tsl && cd - fi ls -l . diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/Deallocator_Pointer_long_Pointer.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/Deallocator_Pointer_long_Pointer.java index cadc5930dc9..58873a30c53 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/Deallocator_Pointer_long_Pointer.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/Deallocator_Pointer_long_Pointer.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/Listener_BytePointer.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/Listener_BytePointer.java index 3f5ef587ab1..6ce5d643c9e 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/Listener_BytePointer.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/Listener_BytePointer.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/Listener_String.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/Listener_String.java index 3e62d7d0acb..03b4094e19e 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/Listener_String.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/Listener_String.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_CancelCallback.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_CancelCallback.java index 037bdbfaf2b..bcb0ffbdec9 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_CancelCallback.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_CancelCallback.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_CancellationManager.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_CancellationManager.java index be8d6ba91d5..85181d651a6 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_CancellationManager.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_CancellationManager.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_Context.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_Context.java index 88339d3a463..ee22b68f7ce 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_Context.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_Context.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_ContextOptions.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_ContextOptions.java index 4697c57a675..1e6b1dad072 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_ContextOptions.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_ContextOptions.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_CustomDevice.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_CustomDevice.java index 4b51f0e83ea..cda91d819b3 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_CustomDevice.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_CustomDevice.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_CustomDeviceTensorHandle.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_CustomDeviceTensorHandle.java index a4b0939adb7..fef6b028ee8 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_CustomDeviceTensorHandle.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_CustomDeviceTensorHandle.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_Executor.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_Executor.java index 29bdf274105..5edcd18e91e 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_Executor.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_Executor.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBoolGauge0.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBoolGauge0.java index 0d1a29dbe09..86b997f9c5f 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBoolGauge0.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBoolGauge0.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBoolGauge1.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBoolGauge1.java index 23ed2050658..e8d0be739c3 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBoolGauge1.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBoolGauge1.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBoolGauge2.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBoolGauge2.java index 50478f15ea9..be6f3a4157f 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBoolGauge2.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBoolGauge2.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBoolGaugeCell.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBoolGaugeCell.java index 3f3ba2f7abb..3f595391ea2 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBoolGaugeCell.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBoolGaugeCell.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBuckets.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBuckets.java index 53f0870fcb8..1e962207ae1 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBuckets.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringBuckets.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringCounter0.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringCounter0.java index d6a1741d04c..2e6c7e1bd47 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringCounter0.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringCounter0.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringCounter1.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringCounter1.java index 154ea614520..4fca4cbd77f 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringCounter1.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringCounter1.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringCounter2.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringCounter2.java index 12230296e90..deec4369dd0 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringCounter2.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringCounter2.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringCounterCell.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringCounterCell.java index 3ba3cffa6c5..41652a4ccf2 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringCounterCell.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringCounterCell.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringIntGauge0.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringIntGauge0.java index 8e397c42218..44a58a1b211 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringIntGauge0.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringIntGauge0.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringIntGauge1.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringIntGauge1.java index 17e85beebd9..b1d9654bec7 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringIntGauge1.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringIntGauge1.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringIntGauge2.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringIntGauge2.java index 952667a192a..a2a140e73b6 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringIntGauge2.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringIntGauge2.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringIntGaugeCell.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringIntGaugeCell.java index 0a5b4ffb2d0..102cd37b2a9 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringIntGaugeCell.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringIntGaugeCell.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringSampler0.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringSampler0.java index 52696ccd933..9c4194944e7 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringSampler0.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringSampler0.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringSampler1.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringSampler1.java index 7ee23fd6044..afd8b49e657 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringSampler1.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringSampler1.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringSampler2.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringSampler2.java index 03ceb795203..0dfaee7d782 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringSampler2.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringSampler2.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringSamplerCell.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringSamplerCell.java index 7450bc22100..e3547fb10ac 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringSamplerCell.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringSamplerCell.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge0.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge0.java index eee853733c2..213b72c2a4f 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge0.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge0.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge1.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge1.java index 9b6a251d2fb..a19ae751637 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge1.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge1.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge2.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge2.java index ddbe1a5e0cb..a30f250a8ed 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge2.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge2.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge3.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge3.java index cc304e409ae..fb80143410e 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge3.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge3.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge4.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge4.java index c2a2d811c8d..d3d33cbb1e6 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge4.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGauge4.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGaugeCell.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGaugeCell.java index 62ac9ab0f33..cf839004e4b 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGaugeCell.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_MonitoringStringGaugeCell.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_Op.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_Op.java index a7566da0df2..4a1b8e2e899 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_Op.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_Op.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_OpAttrs.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_OpAttrs.java index be1e0e5fc9d..cc7923eecbf 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_OpAttrs.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_OpAttrs.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_TensorDebugInfo.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_TensorDebugInfo.java index 157630bc750..23f1399b60e 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_TensorDebugInfo.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_TensorDebugInfo.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_TensorHandle.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_TensorHandle.java index e984edc1329..4bca36afa91 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_TensorHandle.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFE_TensorHandle.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFJ_GradFuncAdapter.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFJ_GradFuncAdapter.java index da652c6b068..b948e0bb83b 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFJ_GradFuncAdapter.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFJ_GradFuncAdapter.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFJ_GraphId.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFJ_GraphId.java index 5f3ec15585c..46273ff116a 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFJ_GraphId.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFJ_GraphId.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFJ_Scope.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFJ_Scope.java index 048f1a23706..2b1f059ea34 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFJ_Scope.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TFJ_Scope.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_AllocatorAttributes.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_AllocatorAttributes.java index abe89fdca60..a107a5fca3c 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_AllocatorAttributes.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_AllocatorAttributes.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_ApiDefMap.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_ApiDefMap.java index 2274e428250..010e72afc58 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_ApiDefMap.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_ApiDefMap.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_AttrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_AttrBuilder.java new file mode 100644 index 00000000000..5e90a864542 --- /dev/null +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_AttrBuilder.java @@ -0,0 +1,21 @@ +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE + +package org.tensorflow.internal.c_api; + +import java.nio.*; +import org.bytedeco.javacpp.*; +import org.bytedeco.javacpp.annotation.*; + +import static org.tensorflow.internal.c_api.global.tensorflow.*; + + +// TF_NewAttrBuilder() returns an object that you can set attributes on as +// though it were an op. This allows querying properties of that op for +// type-checking purposes like if the op will run on a particular device type. +@Opaque @Properties(inherit = org.tensorflow.internal.c_api.presets.tensorflow.class) +public class TF_AttrBuilder extends Pointer { + /** Empty constructor. Calls {@code super((Pointer)null)}. */ + public TF_AttrBuilder() { super((Pointer)null); } + /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */ + public TF_AttrBuilder(Pointer p) { super(p); } +} diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_AttrMetadata.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_AttrMetadata.java index 14d7e44817d..5bfdc300bfa 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_AttrMetadata.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_AttrMetadata.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Buffer.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Buffer.java index 676dd7417f2..a3c175e743d 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Buffer.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Buffer.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_CheckpointReader.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_CheckpointReader.java new file mode 100644 index 00000000000..139e8890b73 --- /dev/null +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_CheckpointReader.java @@ -0,0 +1,20 @@ +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE + +package org.tensorflow.internal.c_api; + +import java.nio.*; +import org.bytedeco.javacpp.*; +import org.bytedeco.javacpp.annotation.*; + +import static org.tensorflow.internal.c_api.global.tensorflow.*; + + +// TF_NewCheckpointReader() return the CheckpointReader that can be use to +// investigate or load the variable from the checkpoint file +@Opaque @Properties(inherit = org.tensorflow.internal.c_api.presets.tensorflow.class) +public class TF_CheckpointReader extends Pointer { + /** Empty constructor. Calls {@code super((Pointer)null)}. */ + public TF_CheckpointReader() { super((Pointer)null); } + /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */ + public TF_CheckpointReader(Pointer p) { super(p); } +} diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_DeprecatedSession.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_DeprecatedSession.java index d2382eaca52..9e43f800123 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_DeprecatedSession.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_DeprecatedSession.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_DeviceList.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_DeviceList.java index a24fc795c92..4e592d8f5c3 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_DeviceList.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_DeviceList.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Function.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Function.java index 017a9e653bd..23b78cd1e1b 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Function.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Function.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_FunctionOptions.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_FunctionOptions.java index beeda28ce31..71baf2504f2 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_FunctionOptions.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_FunctionOptions.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Graph.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Graph.java index 1d81f725050..f94f4151612 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Graph.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Graph.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_ImportGraphDefOptions.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_ImportGraphDefOptions.java index 755b4aeaa42..a8d717dbcc5 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_ImportGraphDefOptions.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_ImportGraphDefOptions.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_ImportGraphDefResults.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_ImportGraphDefResults.java index a202d65ea5f..90ccbbc4f7d 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_ImportGraphDefResults.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_ImportGraphDefResults.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Input.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Input.java index eb169346beb..ae27224db9a 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Input.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Input.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Library.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Library.java index 9ba55f9db0b..0c4e471a82b 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Library.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Library.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Operation.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Operation.java index 715f0f67ca4..823bba704f1 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Operation.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Operation.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_OperationDescription.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_OperationDescription.java index bf17e0d1f5f..f2787037d42 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_OperationDescription.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_OperationDescription.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Output.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Output.java index f8b7103c57a..34229d26d81 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Output.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Output.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Server.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Server.java index a2495132444..40f4755522f 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Server.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Server.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Session.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Session.java index dd5b1259279..f70734dc616 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Session.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Session.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_SessionOptions.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_SessionOptions.java index 72d9ea3911f..000fbc6bf60 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_SessionOptions.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_SessionOptions.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_ShapeAndType.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_ShapeAndType.java new file mode 100644 index 00000000000..0022ee15d23 --- /dev/null +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_ShapeAndType.java @@ -0,0 +1,37 @@ +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE + +package org.tensorflow.internal.c_api; + +import java.nio.*; +import org.bytedeco.javacpp.*; +import org.bytedeco.javacpp.annotation.*; + +import static org.tensorflow.internal.c_api.global.tensorflow.*; + + +// Information about the shape of a Tensor and its type. +@Properties(inherit = org.tensorflow.internal.c_api.presets.tensorflow.class) +public class TF_ShapeAndType extends Pointer { + static { Loader.load(); } + /** Default native constructor. */ + public TF_ShapeAndType() { super((Pointer)null); allocate(); } + /** Native array allocator. Access with {@link Pointer#position(long)}. */ + public TF_ShapeAndType(long size) { super((Pointer)null); allocateArray(size); } + /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */ + public TF_ShapeAndType(Pointer p) { super(p); } + private native void allocate(); + private native void allocateArray(long size); + @Override public TF_ShapeAndType position(long position) { + return (TF_ShapeAndType)super.position(position); + } + @Override public TF_ShapeAndType getPointer(long i) { + return new TF_ShapeAndType((Pointer)this).offsetAddress(i); + } + + // Number of dimensions. -1 indicates unknown rank. + public native int num_dims(); public native TF_ShapeAndType num_dims(int setter); + // Array of dimensions. -1 indicates unknown dim. + public native @Cast("int64_t*") LongPointer dims(); public native TF_ShapeAndType dims(LongPointer setter); + // The data type. May be 0 to denote unknown type. + public native @Cast("TF_DataType") int dtype(); public native TF_ShapeAndType dtype(int setter); +} diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_ShapeAndTypeList.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_ShapeAndTypeList.java new file mode 100644 index 00000000000..acb68133e42 --- /dev/null +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_ShapeAndTypeList.java @@ -0,0 +1,33 @@ +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE + +package org.tensorflow.internal.c_api; + +import java.nio.*; +import org.bytedeco.javacpp.*; +import org.bytedeco.javacpp.annotation.*; + +import static org.tensorflow.internal.c_api.global.tensorflow.*; + + +// A list of TF_ShapeAndType elements.. +@Properties(inherit = org.tensorflow.internal.c_api.presets.tensorflow.class) +public class TF_ShapeAndTypeList extends Pointer { + static { Loader.load(); } + /** Default native constructor. */ + public TF_ShapeAndTypeList() { super((Pointer)null); allocate(); } + /** Native array allocator. Access with {@link Pointer#position(long)}. */ + public TF_ShapeAndTypeList(long size) { super((Pointer)null); allocateArray(size); } + /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */ + public TF_ShapeAndTypeList(Pointer p) { super(p); } + private native void allocate(); + private native void allocateArray(long size); + @Override public TF_ShapeAndTypeList position(long position) { + return (TF_ShapeAndTypeList)super.position(position); + } + @Override public TF_ShapeAndTypeList getPointer(long i) { + return new TF_ShapeAndTypeList((Pointer)this).offsetAddress(i); + } + + public native int num_items(); public native TF_ShapeAndTypeList num_items(int setter); + public native TF_ShapeAndType items(); public native TF_ShapeAndTypeList items(TF_ShapeAndType setter); +} diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Status.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Status.java index c2d2c329aa8..b31ed7f4646 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Status.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Status.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_StringView.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_StringView.java index af639c7647c..64ae5dfd3e5 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_StringView.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_StringView.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString.java index 6ecc8d18dd5..89455bbfe30 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Large.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Large.java index 240b0d83e36..352d77d2bd3 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Large.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Large.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Offset.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Offset.java index 280e4e403a8..7b11bc70ffc 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Offset.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Offset.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Raw.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Raw.java index 22712b73a55..b36ff8c9706 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Raw.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Raw.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Small.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Small.java index 6440c91e627..70edc44605c 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Small.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Small.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Union.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Union.java index 51b009cf79a..bb050ab5b27 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Union.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_Union.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_View.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_View.java index 907bf5d0389..e3cac3b45a2 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_View.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_TString_View.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Tensor.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Tensor.java index 4b35bbf637e..8fac15d737b 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Tensor.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_Tensor.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_WhileParams.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_WhileParams.java index e4ca40d66a3..41bf07ffa9c 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_WhileParams.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/TF_WhileParams.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/Tensor.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/Tensor.java index fbbeaec6bea..224cc05b58e 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/Tensor.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/Tensor.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/global/tensorflow.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/global/tensorflow.java index 2a80e6bb86d..48a6a3ded36 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/global/tensorflow.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/internal/c_api/global/tensorflow.java @@ -1,4 +1,4 @@ -// Targeted by JavaCPP version 1.5.10: DO NOT EDIT THIS FILE +// Targeted by JavaCPP version 1.5.12: DO NOT EDIT THIS FILE package org.tensorflow.internal.c_api.global; @@ -274,7 +274,7 @@ public static native void TF_TString_Copy(TF_TString dst, String src, // #endif // TENSORFLOW_TSL_PLATFORM_CTSTRING_H_ -// Parsed from tsl/c/tsl_status.h +// Parsed from xla/tsl/c/tsl_status.h /* Copyright 2019 The TensorFlow Authors. All Rights Reserved. @@ -291,8 +291,8 @@ public static native void TF_TString_Copy(TF_TString dst, String src, limitations under the License. ==============================================================================*/ -// #ifndef TENSORFLOW_TSL_C_TSL_STATUS_H_ -// #define TENSORFLOW_TSL_C_TSL_STATUS_H_ +// #ifndef XLA_TSL_C_TSL_STATUS_H_ +// #define XLA_TSL_C_TSL_STATUS_H_ // #ifdef __cplusplus // #endif @@ -351,7 +351,7 @@ public static native void TF_TString_Copy(TF_TString dst, String src, // #ifdef __cplusplus /* end extern "C" */ // #endif -// #endif // TENSORFLOW_TSL_C_TSL_STATUS_H_ +// #endif // XLA_TSL_C_TSL_STATUS_H_ // Parsed from tensorflow/c/c_api_macros.h @@ -468,12 +468,16 @@ public static native void TF_TString_Copy(TF_TString dst, String src, TF_FLOAT8_E5M2 = 24, // 5 exponent bits, 2 mantissa bits. TF_FLOAT8_E4M3FN = 25, // 4 exponent bits, 3 mantissa bits, finite-only, with // 2 NaNs (0bS1111111). - // TODO - b/299182407: Leaving room for remaining float8 types. - // TF_FLOAT8_E4M3FNUZ = 26, - // TF_FLOAT8_E4M3B11FNUZ = 27, - // TF_FLOAT8_E5M2FNUZ = 28, + TF_FLOAT8_E4M3FNUZ = 26, // 4 exponent bits, 3 mantissa bits, + // finite-only,with NaN. + TF_FLOAT8_E4M3B11FNUZ = 27, // 4 exponent bits, 3 mantissa bits, 11 bits + // bias, finite-only, with NaNs. + TF_FLOAT8_E5M2FNUZ = 28, // 5 exponent bits, 2 mantissa bits, + // finite-only,with NaN. TF_INT4 = 29, - TF_UINT4 = 30; + TF_UINT4 = 30, + TF_INT2 = 31, + TF_UINT2 = 32; // TF_DataTypeSize returns the sizeof() for the underlying type corresponding // to the given TF_DataType enum value. Returns 0 for variable length types @@ -507,7 +511,7 @@ public static native void TF_TString_Copy(TF_TString dst, String src, // #define TENSORFLOW_C_TF_STATUS_H_ // #include "tensorflow/c/c_api_macros.h" -// #include "tsl/c/tsl_status.h" +// #include "xla/tsl/c/tsl_status.h" // #ifdef __cplusplus // Targeting ../TF_Status.java @@ -689,6 +693,13 @@ public static native TF_Tensor TF_NewTensor( Deallocator_Pointer_long_Pointer deallocator, Pointer deallocator_arg); +// Returns the alignment, in bytes, required for allocating aligned tensors. +// +// This can be used in combination with TF_NewTensor to manually manage +// memory while ensuring the resulting tensors satisfy TensorFlow's +// memory alignment preferences. +public static native @Cast("size_t") long TF_TensorDefaultAlignment(); + // Allocate and return a new Tensor. // // This function is an alternative to TF_NewTensor and should be used when @@ -4367,7 +4378,8 @@ public static native void TFE_ContextUpdateServerDefWithTimeout( // This API is for experimental usage and may be subject to change. public static native void TFE_ContextSetServerDefWithTimeout( TFE_Context ctx, int keep_alive_secs, @Const Pointer proto, @Cast("size_t") long proto_len, - @Cast("int64_t") long init_timeout_in_ms, TF_Status status); + @Cast("int64_t") long init_timeout_in_ms, TF_Status status, + @Cast("bool") boolean clear_existing_contexts); // Set server def with retries and timeout. This is helpful for fault-tolerant // initial connection in high-preemption environments, such as @@ -4375,7 +4387,8 @@ public static native void TFE_ContextSetServerDefWithTimeout( // This API is for experimental usage and may be subject to change. public static native void TFE_ContextSetServerDefWithTimeoutAndRetries( TFE_Context ctx, int keep_alive_secs, @Const Pointer proto, @Cast("size_t") long proto_len, - @Cast("int64_t") long init_timeout_in_ms, int retries, TF_Status status); + @Cast("int64_t") long init_timeout_in_ms, int retries, TF_Status status, + @Cast("bool") boolean clear_existing_contexts); // Checks whether a remote worker is alive or not. This will return true even if // the context doesn't exist on the remote worker. @@ -4759,6 +4772,434 @@ public static native void TFE_InitializeLocalOnlyContext(TFE_Context ctx, // #endif // TENSORFLOW_C_EAGER_C_API_EXPERIMENTAL_H_ +// Parsed from tensorflow/c/c_api_experimental.h + +/* Copyright 2018 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://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. +==============================================================================*/ + +// #ifndef TENSORFLOW_C_C_API_EXPERIMENTAL_H_ +// #define TENSORFLOW_C_C_API_EXPERIMENTAL_H_ + +// #include +// #include + +// #include "tensorflow/c/c_api.h" +// #include "tensorflow/c/c_api_macros.h" +// #include "tensorflow/c/eager/c_api.h" + +// -------------------------------------------------------------------------- +// Experimental C API for TensorFlow. +// +// The API here is subject to changes in the future. +// -------------------------------------------------------------------------- + +// #ifdef __cplusplus +// #endif + +// When `enable` is true, set +// tensorflow.ConfigProto.OptimizerOptions.global_jit_level to ON_1, and also +// set XLA flag values to prepare for XLA compilation. Otherwise set +// global_jit_level to OFF. +// +// This and the next API are syntax sugar over TF_SetConfig(), and is used by +// clients that cannot read/write the tensorflow.ConfigProto proto. +// TODO: Migrate to TF_CreateConfig() below. +public static native void TF_EnableXLACompilation(TF_SessionOptions options, + @Cast("unsigned char") byte enable); + +// Set XLA's internal BuildXlaOpsPassFlags.tf_xla_enable_lazy_compilation to the +// value of 'enabled'. Also returns the original value of that flag. +// +// Use in tests to allow XLA to fallback to TF classic. This has global effect. +public static native @Cast("unsigned char") byte TF_SetXlaEnableLazyCompilation( + @Cast("unsigned char") byte enable); +public static native @Cast("unsigned char") byte TF_SetTfXlaCpuGlobalJit(@Cast("unsigned char") byte enable); + +// Sets XLA's auto jit mode according to the specified string, which is parsed +// as if passed in XLA_FLAGS. This has global effect. +public static native void TF_SetXlaAutoJitMode(@Cast("const char*") BytePointer mode); +public static native void TF_SetXlaAutoJitMode(String mode); + +// Returns whether the single GPU or general XLA auto jit optimizations are +// enabled through MarkForCompilationPassFlags. +public static native @Cast("unsigned char") byte TF_GetXlaAutoJitEnabled(); + +// Sets XLA's minimum cluster size. This has global effect. +public static native void TF_SetXlaMinClusterSize(int size); + +// Gets/Sets TF/XLA flag for whether(true) or not(false) to disable constant +// folding. This is for testing to ensure that XLA is being tested rather than +// Tensorflow's CPU implementation through constant folding. +public static native @Cast("unsigned char") byte TF_GetXlaConstantFoldingDisabled(); +public static native void TF_SetXlaConstantFoldingDisabled( + @Cast("unsigned char") byte should_enable); + +// Create a serialized tensorflow.ConfigProto proto, where: +// +// a) ConfigProto.optimizer_options.global_jit_level is set to ON_1 if +// `enable_xla_compilation` is non-zero, and OFF otherwise. +// b) ConfigProto.gpu_options.allow_growth is set to `gpu_memory_allow_growth`. +// c) ConfigProto.device_count is set to `num_cpu_devices`. +public static native TF_Buffer TF_CreateConfig( + @Cast("unsigned char") byte enable_xla_compilation, @Cast("unsigned char") byte gpu_memory_allow_growth, + @Cast("unsigned int") int num_cpu_devices); + +// Create a serialized tensorflow.RunOptions proto, where RunOptions.trace_level +// is set to FULL_TRACE if `enable_full_trace` is non-zero, and NO_TRACE +// otherwise. +public static native TF_Buffer TF_CreateRunOptions( + @Cast("unsigned char") byte enable_full_trace); + +// Returns the graph content in a human-readable format, with length set in +// `len`. The format is subject to change in the future. +// The returned string is heap-allocated, and caller should call free() on it. +public static native @Cast("const char*") BytePointer TF_GraphDebugString(TF_Graph graph, + @Cast("size_t*") SizeTPointer len); + +// Returns the function content in a human-readable format, with length set in +// `len`. The format is subject to change in the future. +// The returned string is heap-allocated, and caller should call free() on it. +// +// Do not return const char*, because some foreign language binding +// (e.g. swift) cannot then call free() on the returned pointer. +public static native @Cast("char*") BytePointer TF_FunctionDebugString(TF_Function func, + @Cast("size_t*") SizeTPointer len); + +// On success, dequeues a tensor from a TF-managed FifoQueue given by +// `tensor_id`, associated with `session`. There must be a graph node named +// "fifo_queue_dequeue_", to be executed by this API call. + +// Caller must call TF_DeleteTensor() over the returned tensor. If the queue is +// empty, this call is blocked. +// +// Tensors are enqueued via the corresponding TF enqueue op. +// TODO(hongm): Add support for `timeout_ms`. +public static native TF_Tensor TF_DequeueNamedTensor(TF_Session session, + int tensor_id, + TF_Status status); + +// On success, enqueues `tensor` into a TF-managed FifoQueue given by +// `tensor_id`, associated with `session`. There must be a graph node named +// "fifo_queue_enqueue_", to be executed by this API call. It reads +// from a placeholder node "arg_tensor_enqueue_". +// +// `tensor` is still owned by the caller. This call will be blocked if the queue +// has reached its capacity, and will be unblocked when the queued tensors again +// drop below the capacity due to dequeuing. +// +// Tensors are dequeued via the corresponding TF dequeue op. +// TODO(hongm): Add support for `timeout_ms`. +public static native void TF_EnqueueNamedTensor(TF_Session session, + int tensor_id, + TF_Tensor tensor, + TF_Status status); +// Create a serialized tensorflow.ServerDef proto. +public static native TF_Buffer TFE_GetServerDef(@Cast("const char*") BytePointer text_proto, TF_Status status); +public static native TF_Buffer TFE_GetServerDef(String text_proto, TF_Status status); + +public static native void TF_MakeInternalErrorStatus(TF_Status status, + @Cast("const char*") BytePointer errMsg); +public static native void TF_MakeInternalErrorStatus(TF_Status status, + String errMsg); +// Targeting ../TF_CheckpointReader.java + + +public static native TF_CheckpointReader TF_NewCheckpointReader( + @Cast("const char*") BytePointer filename, TF_Status status); +public static native TF_CheckpointReader TF_NewCheckpointReader( + String filename, TF_Status status); +public static native void TF_DeleteCheckpointReader( + TF_CheckpointReader reader); +public static native int TF_CheckpointReaderHasTensor( + TF_CheckpointReader reader, @Cast("const char*") BytePointer name); +public static native int TF_CheckpointReaderHasTensor( + TF_CheckpointReader reader, String name); +// Get the variable name at the given index +public static native @Cast("const char*") BytePointer TF_CheckpointReaderGetVariable( + TF_CheckpointReader reader, int index); +// Get the number of variable in the checkpoint +public static native int TF_CheckpointReaderSize(TF_CheckpointReader reader); +// Get the DataType of a variable +public static native @Cast("TF_DataType") int TF_CheckpointReaderGetVariableDataType( + TF_CheckpointReader reader, @Cast("const char*") BytePointer name); +public static native @Cast("TF_DataType") int TF_CheckpointReaderGetVariableDataType( + TF_CheckpointReader reader, String name); +// Read the shape of a variable and write to `dims` +public static native void TF_CheckpointReaderGetVariableShape( + TF_CheckpointReader reader, @Cast("const char*") BytePointer name, @Cast("int64_t*") LongPointer dims, int num_dims, + TF_Status status); +public static native void TF_CheckpointReaderGetVariableShape( + TF_CheckpointReader reader, String name, @Cast("int64_t*") LongBuffer dims, int num_dims, + TF_Status status); +public static native void TF_CheckpointReaderGetVariableShape( + TF_CheckpointReader reader, @Cast("const char*") BytePointer name, @Cast("int64_t*") long[] dims, int num_dims, + TF_Status status); +public static native void TF_CheckpointReaderGetVariableShape( + TF_CheckpointReader reader, String name, @Cast("int64_t*") LongPointer dims, int num_dims, + TF_Status status); +public static native void TF_CheckpointReaderGetVariableShape( + TF_CheckpointReader reader, @Cast("const char*") BytePointer name, @Cast("int64_t*") LongBuffer dims, int num_dims, + TF_Status status); +public static native void TF_CheckpointReaderGetVariableShape( + TF_CheckpointReader reader, String name, @Cast("int64_t*") long[] dims, int num_dims, + TF_Status status); +// Get the number of dimension of a variable +public static native int TF_CheckpointReaderGetVariableNumDims( + TF_CheckpointReader reader, @Cast("const char*") BytePointer name); +public static native int TF_CheckpointReaderGetVariableNumDims( + TF_CheckpointReader reader, String name); +// Load the weight of a variable +public static native TF_Tensor TF_CheckpointReaderGetTensor( + TF_CheckpointReader reader, @Cast("const char*") BytePointer name, TF_Status status); +public static native TF_Tensor TF_CheckpointReaderGetTensor( + TF_CheckpointReader reader, String name, TF_Status status); +// Targeting ../TF_AttrBuilder.java + + +public static native TF_AttrBuilder TF_NewAttrBuilder(@Cast("const char*") BytePointer op_name); +public static native TF_AttrBuilder TF_NewAttrBuilder(String op_name); +public static native void TF_DeleteAttrBuilder(TF_AttrBuilder builder); +public static native void TF_AttrBuilderSetType(TF_AttrBuilder builder, + @Cast("const char*") BytePointer attr_name, + @Cast("TF_DataType") int value); +public static native void TF_AttrBuilderSetType(TF_AttrBuilder builder, + String attr_name, + @Cast("TF_DataType") int value); +public static native void TF_AttrBuilderSetTypeList(TF_AttrBuilder builder, + @Cast("const char*") BytePointer attr_name, + @Cast("const TF_DataType*") IntPointer values, + int num_values); +public static native void TF_AttrBuilderSetTypeList(TF_AttrBuilder builder, + String attr_name, + @Cast("const TF_DataType*") IntBuffer values, + int num_values); +public static native void TF_AttrBuilderSetTypeList(TF_AttrBuilder builder, + @Cast("const char*") BytePointer attr_name, + @Cast("const TF_DataType*") int[] values, + int num_values); +public static native void TF_AttrBuilderSetTypeList(TF_AttrBuilder builder, + String attr_name, + @Cast("const TF_DataType*") IntPointer values, + int num_values); +public static native void TF_AttrBuilderSetTypeList(TF_AttrBuilder builder, + @Cast("const char*") BytePointer attr_name, + @Cast("const TF_DataType*") IntBuffer values, + int num_values); +public static native void TF_AttrBuilderSetTypeList(TF_AttrBuilder builder, + String attr_name, + @Cast("const TF_DataType*") int[] values, + int num_values); + +// Checks the tensorflow::NodeDef built via the methods above to see if it can +// run on device_type. +public static native void TF_AttrBuilderCheckCanRunOnDevice( + TF_AttrBuilder builder, @Cast("const char*") BytePointer device_type, TF_Status status); +public static native void TF_AttrBuilderCheckCanRunOnDevice( + TF_AttrBuilder builder, String device_type, TF_Status status); + +// For argument number input_index, fetch the corresponding number_attr that +// needs to be updated with the argument length of the input list. +// Returns nullptr if there is any problem like op_name is not found, or the +// argument does not support this attribute type. +public static native @Cast("const char*") BytePointer TF_GetNumberAttrForOpListInput( + @Cast("const char*") BytePointer op_name, int input_index, TF_Status status); +public static native String TF_GetNumberAttrForOpListInput( + String op_name, int input_index, TF_Status status); + +// Returns 1 if the op is stateful, 0 otherwise. The return value is undefined +// if the status is not ok. +public static native int TF_OpIsStateful(@Cast("const char*") BytePointer op_type, + TF_Status status); +public static native int TF_OpIsStateful(String op_type, + TF_Status status); + +// Platform specific initialization routine. Very few platforms actually require +// this to be called. +public static native void TF_InitMain(@Cast("const char*") BytePointer usage, IntPointer argc, @Cast("char***") @ByPtrPtr PointerPointer argv); +public static native void TF_InitMain(String usage, IntBuffer argc, @Cast("char***") @ByPtrPtr PointerPointer argv); +public static native void TF_InitMain(@Cast("const char*") BytePointer usage, int[] argc, @Cast("char***") @ByPtrPtr PointerPointer argv); +public static native void TF_InitMain(String usage, IntPointer argc, @Cast("char***") @ByPtrPtr PointerPointer argv); +public static native void TF_InitMain(@Cast("const char*") BytePointer usage, IntBuffer argc, @Cast("char***") @ByPtrPtr PointerPointer argv); +public static native void TF_InitMain(String usage, int[] argc, @Cast("char***") @ByPtrPtr PointerPointer argv); + +// Platform-specific implementation to return an unused port. (This should used +// in tests only.) +public static native int TF_PickUnusedPortOrDie(); + +// Fast path method that makes constructing a single scalar tensor require less +// overhead and copies. +public static native TFE_TensorHandle TFE_NewTensorHandleFromScalar( + @Cast("TF_DataType") int data_type, Pointer data, @Cast("size_t") long len, TF_Status status); + +// Specify the server_def that enables collective ops. +// This is different to the above function in that it doesn't create remote +// contexts, and remotely executing ops is not possible. It just enables +// communication for collective ops. +public static native void TFE_EnableCollectiveOps(TFE_Context ctx, + @Const Pointer proto, + @Cast("size_t") long proto_len, + TF_Status status); + +// Aborts all ongoing collectives with the specified status. After abortion, +// subsequent collectives will error with this status immediately. To reset the +// collectives, create a new EagerContext. +// +// This is intended to be used when a peer failure is detected. +public static native void TFE_AbortCollectiveOps(TFE_Context ctx, + TF_Status status); + +// Checks the health of collective ops peers. Explicit health check is needed in +// multi worker collective ops to detect failures in the cluster. If a peer is +// down, collective ops may hang. +public static native void TFE_CollectiveOpsCheckPeerHealth( + TFE_Context ctx, @Cast("const char*") BytePointer task, @Cast("int64_t") long timeout_in_ms, + TF_Status status); +public static native void TFE_CollectiveOpsCheckPeerHealth( + TFE_Context ctx, String task, @Cast("int64_t") long timeout_in_ms, + TF_Status status); +// Targeting ../TF_ShapeAndType.java + + +// Targeting ../TF_ShapeAndTypeList.java + + + +// API for manipulating TF_ShapeAndTypeList objects. +// +public static native TF_ShapeAndTypeList TF_NewShapeAndTypeList( + int num_shapes); +public static native void TF_ShapeAndTypeListSetShape( + TF_ShapeAndTypeList shape_list, int index, @Cast("const int64_t*") LongPointer dims, + int num_dims); +public static native void TF_ShapeAndTypeListSetShape( + TF_ShapeAndTypeList shape_list, int index, @Cast("const int64_t*") LongBuffer dims, + int num_dims); +public static native void TF_ShapeAndTypeListSetShape( + TF_ShapeAndTypeList shape_list, int index, @Cast("const int64_t*") long[] dims, + int num_dims); +public static native void TF_ShapeAndTypeListSetUnknownShape( + TF_ShapeAndTypeList shape_list, int index); +public static native void TF_ShapeAndTypeListSetDtype( + TF_ShapeAndTypeList shape_list, int index, @Cast("TF_DataType") int dtype); +public static native void TF_DeleteShapeAndTypeList( + TF_ShapeAndTypeList shape_list); +public static native void TF_DeleteShapeAndTypeListArray( + @Cast("TF_ShapeAndTypeList**") PointerPointer shape_list_array, int num_items); +public static native void TF_DeleteShapeAndTypeListArray( + @ByPtrPtr TF_ShapeAndTypeList shape_list_array, int num_items); + +// Infer shapes for the given `op`. The arguments mimic the arguments of the +// `shape_inference::InferenceContext` constructor. Note the following: +// - The inputs of the `op` are not used for shape inference. So, it is +// OK to not have the inputs properly set in `op`. See `input_tensors` +// if you want shape inference to consider the input tensors of the +// op for shape inference. +// - The types need not be set in `input_shapes` as it is not used. +// - The number of `input_tensors` should be the same as the number of items +// in `input_shapes`. +// +// The results are returned in `output_shapes` and +// `output_resource_shapes_and_types`. The caller is responsible for freeing the +// memory in these buffers by calling `TF_DeleteShapeAndTypeList`. +public static native void TFE_InferShapes( + TFE_Op op, TF_ShapeAndTypeList input_shapes, @Cast("TF_Tensor**") PointerPointer input_tensors, + TF_ShapeAndTypeList input_tensor_as_shapes, + @Cast("TF_ShapeAndTypeList**") PointerPointer input_resource_shapes_and_types, + @Cast("TF_ShapeAndTypeList**") PointerPointer output_shapes, + @Cast("TF_ShapeAndTypeList***") @ByPtrPtr PointerPointer output_resource_shapes_and_types, TF_Status status); +public static native void TFE_InferShapes( + TFE_Op op, TF_ShapeAndTypeList input_shapes, @ByPtrPtr TF_Tensor input_tensors, + TF_ShapeAndTypeList input_tensor_as_shapes, + @ByPtrPtr TF_ShapeAndTypeList input_resource_shapes_and_types, + @ByPtrPtr TF_ShapeAndTypeList output_shapes, + @Cast("TF_ShapeAndTypeList***") @ByPtrPtr PointerPointer output_resource_shapes_and_types, TF_Status status); + +public static native void TF_ImportGraphDefOptionsSetValidateColocationConstraints( + TF_ImportGraphDefOptions opts, @Cast("unsigned char") byte enable); + +// Load the library specified by library_filename and register the pluggable +// device and related kernels present in that library. This function is not +// supported on embedded on mobile and embedded platforms and will fail if +// called. +// +// Pass "library_filename" to a platform-specific mechanism for dynamically +// loading a library. The rules for determining the exact location of the +// library are platform-specific and are not documented here. +// +// On success, returns the newly created library handle and places OK in status. +// The caller owns the library handle. +// +// On failure, returns nullptr and places an error status in status. +public static native TF_Library TF_LoadPluggableDeviceLibrary( + @Cast("const char*") BytePointer library_filename, TF_Status status); +public static native TF_Library TF_LoadPluggableDeviceLibrary( + String library_filename, TF_Status status); + +// Frees the memory associated with the library handle. +// Does NOT unload the library. +public static native void TF_DeletePluggableDeviceLibraryHandle( + TF_Library lib_handle); + +// Removes `func_name` from `g`. If `func_name` is not in `g`, an error will be +// returned. +public static native void TF_GraphRemoveFunction(TF_Graph g, + @Cast("const char*") BytePointer func_name, + TF_Status status); +public static native void TF_GraphRemoveFunction(TF_Graph g, + String func_name, + TF_Status status); + +// #ifdef __cplusplus /* end extern "C" */ +// #endif + +// #endif // TENSORFLOW_C_C_API_EXPERIMENTAL_H_ + + +// Parsed from tfe_serverdef_stub.h + +/* Copyright 2025 The TensorFlow Authors. All Rights Reserved. + +Licensed 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 + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +provided 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. +==============================================================================*/ + +// #ifndef TENSORFLOW_JAVA_TFE_SERVERDEF_STUB_H_ +// #define TENSORFLOW_JAVA_TFE_SERVERDEF_STUB_H_ + +// #ifdef _WIN32 + +// #include "tensorflow/c/c_api.h" +// #include "tensorflow/c/c_api_experimental.h" + +// Include the implementation so that a local definition is always available +// on Windows. +// #include "tfe_serverdef_stub.cc" + +// #endif // _WIN32 + +// #endif // TENSORFLOW_JAVA_TFE_SERVERDEF_STUB_H_ + // Parsed from tfj_graph.h /* Copyright 2024 The TensorFlow Authors. All Rights Reserved. diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationDescription.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationDescription.java index 99f454ad116..967073358af 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationDescription.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationDescription.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/allocation_description.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,37 +9,34 @@ * Protobuf type {@code tensorflow.AllocationDescription} */ public final class AllocationDescription extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.AllocationDescription) AllocationDescriptionOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + AllocationDescription.class.getName()); + } // Use AllocationDescription.newBuilder() to construct. - private AllocationDescription(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private AllocationDescription(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private AllocationDescription() { allocatorName_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new AllocationDescription(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.AllocationDescriptionProtos.internal_static_tensorflow_AllocationDescription_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.AllocationDescriptionProtos.internal_static_tensorflow_AllocationDescription_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -45,7 +44,7 @@ protected java.lang.Object newInstance( } public static final int REQUESTED_BYTES_FIELD_NUMBER = 1; - private long requestedBytes_; + private long requestedBytes_ = 0L; /** *

        * Total number of bytes requested
    @@ -60,7 +59,7 @@ public long getRequestedBytes() {
       }
     
       public static final int ALLOCATED_BYTES_FIELD_NUMBER = 2;
    -  private long allocatedBytes_;
    +  private long allocatedBytes_ = 0L;
       /**
        * 
        * Total number of bytes allocated if known
    @@ -75,7 +74,8 @@ public long getAllocatedBytes() {
       }
     
       public static final int ALLOCATOR_NAME_FIELD_NUMBER = 3;
    -  private volatile java.lang.Object allocatorName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object allocatorName_ = "";
       /**
        * 
        * Name of the allocator used
    @@ -121,7 +121,7 @@ public java.lang.String getAllocatorName() {
       }
     
       public static final int ALLOCATION_ID_FIELD_NUMBER = 4;
    -  private long allocationId_;
    +  private long allocationId_ = 0L;
       /**
        * 
        * Identifier of the allocated buffer if known
    @@ -136,7 +136,7 @@ public long getAllocationId() {
       }
     
       public static final int HAS_SINGLE_REFERENCE_FIELD_NUMBER = 5;
    -  private boolean hasSingleReference_;
    +  private boolean hasSingleReference_ = false;
       /**
        * 
        * Set if this tensor only has one remaining reference
    @@ -151,7 +151,7 @@ public boolean getHasSingleReference() {
       }
     
       public static final int PTR_FIELD_NUMBER = 6;
    -  private long ptr_;
    +  private long ptr_ = 0L;
       /**
        * 
        * Address of the allocation.
    @@ -185,8 +185,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (allocatedBytes_ != 0L) {
           output.writeInt64(2, allocatedBytes_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(allocatorName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, allocatorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(allocatorName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, allocatorName_);
         }
         if (allocationId_ != 0L) {
           output.writeInt64(4, allocationId_);
    @@ -214,8 +214,8 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeInt64Size(2, allocatedBytes_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(allocatorName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, allocatorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(allocatorName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, allocatorName_);
         }
         if (allocationId_ != 0L) {
           size += com.google.protobuf.CodedOutputStream
    @@ -323,39 +323,41 @@ public static org.tensorflow.proto.AllocationDescription parseFrom(
       }
       public static org.tensorflow.proto.AllocationDescription parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.AllocationDescription parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.AllocationDescription parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.AllocationDescription parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.AllocationDescription parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.AllocationDescription parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -375,7 +377,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -383,7 +385,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.AllocationDescription}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.AllocationDescription)
           org.tensorflow.proto.AllocationDescriptionOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -392,7 +394,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.AllocationDescriptionProtos.internal_static_tensorflow_AllocationDescription_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -405,25 +407,20 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           requestedBytes_ = 0L;
    -
           allocatedBytes_ = 0L;
    -
           allocatorName_ = "";
    -
           allocationId_ = 0L;
    -
           hasSingleReference_ = false;
    -
           ptr_ = 0L;
    -
           return this;
         }
     
    @@ -450,48 +447,33 @@ public org.tensorflow.proto.AllocationDescription build() {
         @java.lang.Override
         public org.tensorflow.proto.AllocationDescription buildPartial() {
           org.tensorflow.proto.AllocationDescription result = new org.tensorflow.proto.AllocationDescription(this);
    -      result.requestedBytes_ = requestedBytes_;
    -      result.allocatedBytes_ = allocatedBytes_;
    -      result.allocatorName_ = allocatorName_;
    -      result.allocationId_ = allocationId_;
    -      result.hasSingleReference_ = hasSingleReference_;
    -      result.ptr_ = ptr_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.AllocationDescription result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.requestedBytes_ = requestedBytes_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.allocatedBytes_ = allocatedBytes_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.allocatorName_ = allocatorName_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.allocationId_ = allocationId_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.hasSingleReference_ = hasSingleReference_;
    +      }
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.ptr_ = ptr_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.AllocationDescription) {
    @@ -512,6 +494,7 @@ public Builder mergeFrom(org.tensorflow.proto.AllocationDescription other) {
           }
           if (!other.getAllocatorName().isEmpty()) {
             allocatorName_ = other.allocatorName_;
    +        bitField0_ |= 0x00000004;
             onChanged();
           }
           if (other.getAllocationId() != 0L) {
    @@ -551,32 +534,32 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   requestedBytes_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 16: {
                   allocatedBytes_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 case 26: {
                   allocatorName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 case 32: {
                   allocationId_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 32
                 case 40: {
                   hasSingleReference_ = input.readBool();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 40
                 case 48: {
                   ptr_ = input.readUInt64();
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 48
                 default: {
    @@ -594,6 +577,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private long requestedBytes_ ;
         /**
    @@ -618,8 +602,9 @@ public long getRequestedBytes() {
          * @return This builder for chaining.
          */
         public Builder setRequestedBytes(long value) {
    -      
    +
           requestedBytes_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -632,7 +617,7 @@ public Builder setRequestedBytes(long value) {
          * @return This builder for chaining.
          */
         public Builder clearRequestedBytes() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           requestedBytes_ = 0L;
           onChanged();
           return this;
    @@ -661,8 +646,9 @@ public long getAllocatedBytes() {
          * @return This builder for chaining.
          */
         public Builder setAllocatedBytes(long value) {
    -      
    +
           allocatedBytes_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -675,7 +661,7 @@ public Builder setAllocatedBytes(long value) {
          * @return This builder for chaining.
          */
         public Builder clearAllocatedBytes() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           allocatedBytes_ = 0L;
           onChanged();
           return this;
    @@ -734,11 +720,9 @@ public java.lang.String getAllocatorName() {
          */
         public Builder setAllocatorName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           allocatorName_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -751,8 +735,8 @@ public Builder setAllocatorName(
          * @return This builder for chaining.
          */
         public Builder clearAllocatorName() {
    -      
           allocatorName_ = getDefaultInstance().getAllocatorName();
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -767,12 +751,10 @@ public Builder clearAllocatorName() {
          */
         public Builder setAllocatorNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           allocatorName_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -800,8 +782,9 @@ public long getAllocationId() {
          * @return This builder for chaining.
          */
         public Builder setAllocationId(long value) {
    -      
    +
           allocationId_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -814,7 +797,7 @@ public Builder setAllocationId(long value) {
          * @return This builder for chaining.
          */
         public Builder clearAllocationId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           allocationId_ = 0L;
           onChanged();
           return this;
    @@ -843,8 +826,9 @@ public boolean getHasSingleReference() {
          * @return This builder for chaining.
          */
         public Builder setHasSingleReference(boolean value) {
    -      
    +
           hasSingleReference_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -857,7 +841,7 @@ public Builder setHasSingleReference(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearHasSingleReference() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000010);
           hasSingleReference_ = false;
           onChanged();
           return this;
    @@ -886,8 +870,9 @@ public long getPtr() {
          * @return This builder for chaining.
          */
         public Builder setPtr(long value) {
    -      
    +
           ptr_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -900,23 +885,11 @@ public Builder setPtr(long value) {
          * @return This builder for chaining.
          */
         public Builder clearPtr() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000020);
           ptr_ = 0L;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.AllocationDescription)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationDescriptionOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationDescriptionOrBuilder.java
    index 3c6d26ceb58..bb64ef9e0c4 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationDescriptionOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationDescriptionOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/allocation_description.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationDescriptionProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationDescriptionProtos.java
    index bf746192c95..80ca6baa735 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationDescriptionProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationDescriptionProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/allocation_description.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class AllocationDescriptionProtos {
       private AllocationDescriptionProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      AllocationDescriptionProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,7 +28,7 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_AllocationDescription_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_AllocationDescription_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -46,9 +57,10 @@ public static void registerAllExtensions(
         internal_static_tensorflow_AllocationDescription_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_AllocationDescription_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_AllocationDescription_descriptor,
             new java.lang.String[] { "RequestedBytes", "AllocatedBytes", "AllocatorName", "AllocationId", "HasSingleReference", "Ptr", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationRecord.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationRecord.java
    index 0da9249630b..64ef50b0cce 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationRecord.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationRecord.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/step_stats.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,36 +13,33 @@
      * Protobuf type {@code tensorflow.AllocationRecord}
      */
     public final class AllocationRecord extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.AllocationRecord)
         AllocationRecordOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      AllocationRecord.class.getName());
    +  }
       // Use AllocationRecord.newBuilder() to construct.
    -  private AllocationRecord(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private AllocationRecord(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private AllocationRecord() {
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new AllocationRecord();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_AllocationRecord_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_AllocationRecord_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -48,7 +47,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int ALLOC_MICROS_FIELD_NUMBER = 1;
    -  private long allocMicros_;
    +  private long allocMicros_ = 0L;
       /**
        * 
        * The timestamp of the operation.
    @@ -63,7 +62,7 @@ public long getAllocMicros() {
       }
     
       public static final int ALLOC_BYTES_FIELD_NUMBER = 2;
    -  private long allocBytes_;
    +  private long allocBytes_ = 0L;
       /**
        * 
        * Number of bytes allocated, or de-allocated if negative.
    @@ -189,39 +188,41 @@ public static org.tensorflow.proto.AllocationRecord parseFrom(
       }
       public static org.tensorflow.proto.AllocationRecord parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.AllocationRecord parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.AllocationRecord parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.AllocationRecord parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.AllocationRecord parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.AllocationRecord parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -241,7 +242,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -253,7 +254,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.AllocationRecord}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.AllocationRecord)
           org.tensorflow.proto.AllocationRecordOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -262,7 +263,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_AllocationRecord_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -275,17 +276,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           allocMicros_ = 0L;
    -
           allocBytes_ = 0L;
    -
           return this;
         }
     
    @@ -312,44 +312,21 @@ public org.tensorflow.proto.AllocationRecord build() {
         @java.lang.Override
         public org.tensorflow.proto.AllocationRecord buildPartial() {
           org.tensorflow.proto.AllocationRecord result = new org.tensorflow.proto.AllocationRecord(this);
    -      result.allocMicros_ = allocMicros_;
    -      result.allocBytes_ = allocBytes_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.AllocationRecord result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.allocMicros_ = allocMicros_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.allocBytes_ = allocBytes_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.AllocationRecord) {
    @@ -396,12 +373,12 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   allocMicros_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 16: {
                   allocBytes_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 default: {
    @@ -419,6 +396,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private long allocMicros_ ;
         /**
    @@ -443,8 +421,9 @@ public long getAllocMicros() {
          * @return This builder for chaining.
          */
         public Builder setAllocMicros(long value) {
    -      
    +
           allocMicros_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -457,7 +436,7 @@ public Builder setAllocMicros(long value) {
          * @return This builder for chaining.
          */
         public Builder clearAllocMicros() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           allocMicros_ = 0L;
           onChanged();
           return this;
    @@ -486,8 +465,9 @@ public long getAllocBytes() {
          * @return This builder for chaining.
          */
         public Builder setAllocBytes(long value) {
    -      
    +
           allocBytes_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -500,23 +480,11 @@ public Builder setAllocBytes(long value) {
          * @return This builder for chaining.
          */
         public Builder clearAllocBytes() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           allocBytes_ = 0L;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.AllocationRecord)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationRecordOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationRecordOrBuilder.java
    index 08fdb9d2c7a..4825baf1aaf 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationRecordOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocationRecordOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/step_stats.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocatorMemoryUsed.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocatorMemoryUsed.java
    index 4439abfc23d..49e5a0df53f 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocatorMemoryUsed.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocatorMemoryUsed.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/step_stats.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,12 +9,21 @@
      * Protobuf type {@code tensorflow.AllocatorMemoryUsed}
      */
     public final class AllocatorMemoryUsed extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.AllocatorMemoryUsed)
         AllocatorMemoryUsedOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      AllocatorMemoryUsed.class.getName());
    +  }
       // Use AllocatorMemoryUsed.newBuilder() to construct.
    -  private AllocatorMemoryUsed(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private AllocatorMemoryUsed(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private AllocatorMemoryUsed() {
    @@ -20,25 +31,13 @@ private AllocatorMemoryUsed() {
         allocationRecords_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new AllocatorMemoryUsed();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_AllocatorMemoryUsed_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_AllocatorMemoryUsed_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -46,7 +45,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int ALLOCATOR_NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object allocatorName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object allocatorName_ = "";
       /**
        * string allocator_name = 1;
        * @return The allocatorName.
    @@ -84,7 +84,7 @@ public java.lang.String getAllocatorName() {
       }
     
       public static final int TOTAL_BYTES_FIELD_NUMBER = 2;
    -  private long totalBytes_;
    +  private long totalBytes_ = 0L;
       /**
        * 
        * These are per-node allocator memory stats.
    @@ -99,7 +99,7 @@ public long getTotalBytes() {
       }
     
       public static final int PEAK_BYTES_FIELD_NUMBER = 3;
    -  private long peakBytes_;
    +  private long peakBytes_ = 0L;
       /**
        * int64 peak_bytes = 3;
        * @return The peakBytes.
    @@ -110,7 +110,7 @@ public long getPeakBytes() {
       }
     
       public static final int LIVE_BYTES_FIELD_NUMBER = 4;
    -  private long liveBytes_;
    +  private long liveBytes_ = 0L;
       /**
        * 
        * The bytes that are not deallocated.
    @@ -125,6 +125,7 @@ public long getLiveBytes() {
       }
     
       public static final int ALLOCATION_RECORDS_FIELD_NUMBER = 6;
    +  @SuppressWarnings("serial")
       private java.util.List allocationRecords_;
       /**
        * 
    @@ -185,7 +186,7 @@ public org.tensorflow.proto.AllocationRecordOrBuilder getAllocationRecordsOrBuil
       }
     
       public static final int ALLOCATOR_BYTES_IN_USE_FIELD_NUMBER = 5;
    -  private long allocatorBytesInUse_;
    +  private long allocatorBytesInUse_ = 0L;
       /**
        * 
        * These are snapshots of the overall allocator memory stats.
    @@ -214,8 +215,8 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(allocatorName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, allocatorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(allocatorName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, allocatorName_);
         }
         if (totalBytes_ != 0L) {
           output.writeInt64(2, totalBytes_);
    @@ -241,8 +242,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(allocatorName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, allocatorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(allocatorName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, allocatorName_);
         }
         if (totalBytes_ != 0L) {
           size += com.google.protobuf.CodedOutputStream
    @@ -359,39 +360,41 @@ public static org.tensorflow.proto.AllocatorMemoryUsed parseFrom(
       }
       public static org.tensorflow.proto.AllocatorMemoryUsed parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.AllocatorMemoryUsed parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.AllocatorMemoryUsed parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.AllocatorMemoryUsed parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.AllocatorMemoryUsed parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.AllocatorMemoryUsed parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -411,7 +414,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -419,7 +422,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.AllocatorMemoryUsed}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.AllocatorMemoryUsed)
           org.tensorflow.proto.AllocatorMemoryUsedOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -428,7 +431,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_AllocatorMemoryUsed_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -441,30 +444,26 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           allocatorName_ = "";
    -
           totalBytes_ = 0L;
    -
           peakBytes_ = 0L;
    -
           liveBytes_ = 0L;
    -
           if (allocationRecordsBuilder_ == null) {
             allocationRecords_ = java.util.Collections.emptyList();
           } else {
             allocationRecords_ = null;
             allocationRecordsBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000010);
           allocatorBytesInUse_ = 0L;
    -
           return this;
         }
     
    @@ -491,57 +490,43 @@ public org.tensorflow.proto.AllocatorMemoryUsed build() {
         @java.lang.Override
         public org.tensorflow.proto.AllocatorMemoryUsed buildPartial() {
           org.tensorflow.proto.AllocatorMemoryUsed result = new org.tensorflow.proto.AllocatorMemoryUsed(this);
    -      int from_bitField0_ = bitField0_;
    -      result.allocatorName_ = allocatorName_;
    -      result.totalBytes_ = totalBytes_;
    -      result.peakBytes_ = peakBytes_;
    -      result.liveBytes_ = liveBytes_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.AllocatorMemoryUsed result) {
           if (allocationRecordsBuilder_ == null) {
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((bitField0_ & 0x00000010) != 0)) {
               allocationRecords_ = java.util.Collections.unmodifiableList(allocationRecords_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000010);
             }
             result.allocationRecords_ = allocationRecords_;
           } else {
             result.allocationRecords_ = allocationRecordsBuilder_.build();
           }
    -      result.allocatorBytesInUse_ = allocatorBytesInUse_;
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.AllocatorMemoryUsed result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.allocatorName_ = allocatorName_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.totalBytes_ = totalBytes_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.peakBytes_ = peakBytes_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.liveBytes_ = liveBytes_;
    +      }
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.allocatorBytesInUse_ = allocatorBytesInUse_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.AllocatorMemoryUsed) {
    @@ -556,6 +541,7 @@ public Builder mergeFrom(org.tensorflow.proto.AllocatorMemoryUsed other) {
           if (other == org.tensorflow.proto.AllocatorMemoryUsed.getDefaultInstance()) return this;
           if (!other.getAllocatorName().isEmpty()) {
             allocatorName_ = other.allocatorName_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (other.getTotalBytes() != 0L) {
    @@ -571,7 +557,7 @@ public Builder mergeFrom(org.tensorflow.proto.AllocatorMemoryUsed other) {
             if (!other.allocationRecords_.isEmpty()) {
               if (allocationRecords_.isEmpty()) {
                 allocationRecords_ = other.allocationRecords_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000010);
               } else {
                 ensureAllocationRecordsIsMutable();
                 allocationRecords_.addAll(other.allocationRecords_);
    @@ -584,9 +570,9 @@ public Builder mergeFrom(org.tensorflow.proto.AllocatorMemoryUsed other) {
                 allocationRecordsBuilder_.dispose();
                 allocationRecordsBuilder_ = null;
                 allocationRecords_ = other.allocationRecords_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000010);
                 allocationRecordsBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getAllocationRecordsFieldBuilder() : null;
               } else {
                 allocationRecordsBuilder_.addAllMessages(other.allocationRecords_);
    @@ -624,27 +610,27 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   allocatorName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 16: {
                   totalBytes_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 case 24: {
                   peakBytes_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 24
                 case 32: {
                   liveBytes_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 32
                 case 40: {
                   allocatorBytesInUse_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 40
                 case 50: {
    @@ -718,11 +704,9 @@ public java.lang.String getAllocatorName() {
          */
         public Builder setAllocatorName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           allocatorName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -731,8 +715,8 @@ public Builder setAllocatorName(
          * @return This builder for chaining.
          */
         public Builder clearAllocatorName() {
    -      
           allocatorName_ = getDefaultInstance().getAllocatorName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -743,12 +727,10 @@ public Builder clearAllocatorName() {
          */
         public Builder setAllocatorNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           allocatorName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -776,8 +758,9 @@ public long getTotalBytes() {
          * @return This builder for chaining.
          */
         public Builder setTotalBytes(long value) {
    -      
    +
           totalBytes_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -790,7 +773,7 @@ public Builder setTotalBytes(long value) {
          * @return This builder for chaining.
          */
         public Builder clearTotalBytes() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           totalBytes_ = 0L;
           onChanged();
           return this;
    @@ -811,8 +794,9 @@ public long getPeakBytes() {
          * @return This builder for chaining.
          */
         public Builder setPeakBytes(long value) {
    -      
    +
           peakBytes_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -821,7 +805,7 @@ public Builder setPeakBytes(long value) {
          * @return This builder for chaining.
          */
         public Builder clearPeakBytes() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           peakBytes_ = 0L;
           onChanged();
           return this;
    @@ -850,8 +834,9 @@ public long getLiveBytes() {
          * @return This builder for chaining.
          */
         public Builder setLiveBytes(long value) {
    -      
    +
           liveBytes_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -864,7 +849,7 @@ public Builder setLiveBytes(long value) {
          * @return This builder for chaining.
          */
         public Builder clearLiveBytes() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           liveBytes_ = 0L;
           onChanged();
           return this;
    @@ -873,13 +858,13 @@ public Builder clearLiveBytes() {
         private java.util.List allocationRecords_ =
           java.util.Collections.emptyList();
         private void ensureAllocationRecordsIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!((bitField0_ & 0x00000010) != 0)) {
             allocationRecords_ = new java.util.ArrayList(allocationRecords_);
    -        bitField0_ |= 0x00000001;
    +        bitField0_ |= 0x00000010;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.AllocationRecord, org.tensorflow.proto.AllocationRecord.Builder, org.tensorflow.proto.AllocationRecordOrBuilder> allocationRecordsBuilder_;
     
         /**
    @@ -1069,7 +1054,7 @@ public Builder addAllAllocationRecords(
         public Builder clearAllocationRecords() {
           if (allocationRecordsBuilder_ == null) {
             allocationRecords_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000010);
             onChanged();
           } else {
             allocationRecordsBuilder_.clear();
    @@ -1167,14 +1152,14 @@ public org.tensorflow.proto.AllocationRecord.Builder addAllocationRecordsBuilder
              getAllocationRecordsBuilderList() {
           return getAllocationRecordsFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.AllocationRecord, org.tensorflow.proto.AllocationRecord.Builder, org.tensorflow.proto.AllocationRecordOrBuilder> 
             getAllocationRecordsFieldBuilder() {
           if (allocationRecordsBuilder_ == null) {
    -        allocationRecordsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        allocationRecordsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.AllocationRecord, org.tensorflow.proto.AllocationRecord.Builder, org.tensorflow.proto.AllocationRecordOrBuilder>(
                     allocationRecords_,
    -                ((bitField0_ & 0x00000001) != 0),
    +                ((bitField0_ & 0x00000010) != 0),
                     getParentForChildren(),
                     isClean());
             allocationRecords_ = null;
    @@ -1207,8 +1192,9 @@ public long getAllocatorBytesInUse() {
          * @return This builder for chaining.
          */
         public Builder setAllocatorBytesInUse(long value) {
    -      
    +
           allocatorBytesInUse_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -1222,23 +1208,11 @@ public Builder setAllocatorBytesInUse(long value) {
          * @return This builder for chaining.
          */
         public Builder clearAllocatorBytesInUse() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000020);
           allocatorBytesInUse_ = 0L;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.AllocatorMemoryUsed)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocatorMemoryUsedOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocatorMemoryUsedOrBuilder.java
    index 3b2bf3ec5f5..64564b22ffa 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocatorMemoryUsedOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AllocatorMemoryUsedOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/step_stats.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDef.java
    index 441f276d544..eba5e89cca2 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDef.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDef.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/api_def.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,10 +13,12 @@
      * to all client languages, and another set per client language.
      * The per-client-language ApiDefs will inherit values from the
      * common ApiDefs which it can either replace or modify.
    + *
      * We separate the API definition from the OpDef so we can evolve the
      * API while remaining backwards compatible when interpreting old
      * graphs.  Overrides go in an "api_def.pbtxt" file with a text-format
      * ApiDefs message.
    + *
      * WARNING: Be *very* careful changing the API for any existing op --
      * you can change the semantics of existing code.  These changes may
      * need to wait until a major release of TensorFlow to avoid breaking
    @@ -24,12 +28,21 @@
      * Protobuf type {@code tensorflow.ApiDef}
      */
     public final class ApiDef extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.ApiDef)
         ApiDefOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ApiDef.class.getName());
    +  }
       // Use ApiDef.newBuilder() to construct.
    -  private ApiDef(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private ApiDef(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private ApiDef() {
    @@ -39,7 +52,8 @@ private ApiDef() {
         endpoint_ = java.util.Collections.emptyList();
         inArg_ = java.util.Collections.emptyList();
         outArg_ = java.util.Collections.emptyList();
    -    argOrder_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    argOrder_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         attr_ = java.util.Collections.emptyList();
         summary_ = "";
         description_ = "";
    @@ -47,25 +61,13 @@ private ApiDef() {
         descriptionSuffix_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new ApiDef();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ApiDefProtos.internal_static_tensorflow_ApiDef_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ApiDefProtos.internal_static_tensorflow_ApiDef_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -115,6 +117,15 @@ public enum Visibility
         UNRECOGNIZED(-1),
         ;
     
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        Visibility.class.getName());
    +    }
         /**
          * 
          * Normally this is "VISIBLE" unless you are inheriting a
    @@ -299,37 +310,34 @@ public interface EndpointOrBuilder extends
        * Protobuf type {@code tensorflow.ApiDef.Endpoint}
        */
       public static final class Endpoint extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.ApiDef.Endpoint)
           EndpointOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        Endpoint.class.getName());
    +    }
         // Use Endpoint.newBuilder() to construct.
    -    private Endpoint(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private Endpoint(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private Endpoint() {
           name_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new Endpoint();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.ApiDefProtos.internal_static_tensorflow_ApiDef_Endpoint_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ApiDefProtos.internal_static_tensorflow_ApiDef_Endpoint_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -337,7 +345,8 @@ protected java.lang.Object newInstance(
         }
     
         public static final int NAME_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object name_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object name_ = "";
         /**
          * 
          * Name should be either like "CamelCaseName" or
    @@ -387,7 +396,7 @@ public java.lang.String getName() {
         }
     
         public static final int DEPRECATED_FIELD_NUMBER = 3;
    -    private boolean deprecated_;
    +    private boolean deprecated_ = false;
         /**
          * 
          * Set if this endpoint is deprecated. If set to true, a message suggesting
    @@ -404,7 +413,7 @@ public boolean getDeprecated() {
         }
     
         public static final int DEPRECATION_VERSION_FIELD_NUMBER = 4;
    -    private int deprecationVersion_;
    +    private int deprecationVersion_ = 0;
         /**
          * 
          * Major version when an endpoint will be deleted. For e.g. set this
    @@ -434,8 +443,8 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
           }
           if (deprecated_ != false) {
             output.writeBool(3, deprecated_);
    @@ -452,8 +461,8 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
           }
           if (deprecated_ != false) {
             size += com.google.protobuf.CodedOutputStream
    @@ -541,39 +550,41 @@ public static org.tensorflow.proto.ApiDef.Endpoint parseFrom(
         }
         public static org.tensorflow.proto.ApiDef.Endpoint parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.ApiDef.Endpoint parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.ApiDef.Endpoint parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.ApiDef.Endpoint parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.ApiDef.Endpoint parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.ApiDef.Endpoint parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -593,7 +604,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -608,7 +619,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.ApiDef.Endpoint}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.ApiDef.Endpoint)
             org.tensorflow.proto.ApiDef.EndpointOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -617,7 +628,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.ApiDefProtos.internal_static_tensorflow_ApiDef_Endpoint_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -630,19 +641,17 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             name_ = "";
    -
             deprecated_ = false;
    -
             deprecationVersion_ = 0;
    -
             return this;
           }
     
    @@ -669,45 +678,24 @@ public org.tensorflow.proto.ApiDef.Endpoint build() {
           @java.lang.Override
           public org.tensorflow.proto.ApiDef.Endpoint buildPartial() {
             org.tensorflow.proto.ApiDef.Endpoint result = new org.tensorflow.proto.ApiDef.Endpoint(this);
    -        result.name_ = name_;
    -        result.deprecated_ = deprecated_;
    -        result.deprecationVersion_ = deprecationVersion_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.ApiDef.Endpoint result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.name_ = name_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.deprecated_ = deprecated_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.deprecationVersion_ = deprecationVersion_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.ApiDef.Endpoint) {
    @@ -722,6 +710,7 @@ public Builder mergeFrom(org.tensorflow.proto.ApiDef.Endpoint other) {
             if (other == org.tensorflow.proto.ApiDef.Endpoint.getDefaultInstance()) return this;
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (other.getDeprecated() != false) {
    @@ -758,17 +747,17 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 24: {
                     deprecated_ = input.readBool();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 24
                   case 32: {
                     deprecationVersion_ = input.readInt32();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 32
                   default: {
    @@ -786,6 +775,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private java.lang.Object name_ = "";
           /**
    @@ -846,11 +836,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -865,8 +853,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -883,12 +871,10 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -920,8 +906,9 @@ public boolean getDeprecated() {
            * @return This builder for chaining.
            */
           public Builder setDeprecated(boolean value) {
    -        
    +
             deprecated_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -936,7 +923,7 @@ public Builder setDeprecated(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearDeprecated() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000002);
             deprecated_ = false;
             onChanged();
             return this;
    @@ -969,8 +956,9 @@ public int getDeprecationVersion() {
            * @return This builder for chaining.
            */
           public Builder setDeprecationVersion(int value) {
    -        
    +
             deprecationVersion_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -985,23 +973,11 @@ public Builder setDeprecationVersion(int value) {
            * @return This builder for chaining.
            */
           public Builder clearDeprecationVersion() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000004);
             deprecationVersion_ = 0;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.ApiDef.Endpoint)
         }
    @@ -1122,12 +1098,21 @@ public interface ArgOrBuilder extends
        * Protobuf type {@code tensorflow.ApiDef.Arg}
        */
       public static final class Arg extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.ApiDef.Arg)
           ArgOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        Arg.class.getName());
    +    }
         // Use Arg.newBuilder() to construct.
    -    private Arg(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private Arg(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private Arg() {
    @@ -1136,25 +1121,13 @@ private Arg() {
           description_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new Arg();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.ApiDefProtos.internal_static_tensorflow_ApiDef_Arg_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ApiDefProtos.internal_static_tensorflow_ApiDef_Arg_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -1162,7 +1135,8 @@ protected java.lang.Object newInstance(
         }
     
         public static final int NAME_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object name_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object name_ = "";
         /**
          * string name = 1;
          * @return The name.
    @@ -1200,7 +1174,8 @@ public java.lang.String getName() {
         }
     
         public static final int RENAME_TO_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object renameTo_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object renameTo_ = "";
         /**
          * 
          * Change the name used to access this arg in the API from what
    @@ -1250,7 +1225,8 @@ public java.lang.String getRenameTo() {
         }
     
         public static final int DESCRIPTION_FIELD_NUMBER = 3;
    -    private volatile java.lang.Object description_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object description_ = "";
         /**
          * 
          * Note: this will replace any inherited arg doc. There is no
    @@ -1313,14 +1289,14 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(renameTo_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, renameTo_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(renameTo_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, renameTo_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, description_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 3, description_);
           }
           getUnknownFields().writeTo(output);
         }
    @@ -1331,14 +1307,14 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(renameTo_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, renameTo_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(renameTo_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, renameTo_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, description_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(3, description_);
           }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
    @@ -1417,39 +1393,41 @@ public static org.tensorflow.proto.ApiDef.Arg parseFrom(
         }
         public static org.tensorflow.proto.ApiDef.Arg parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.ApiDef.Arg parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.ApiDef.Arg parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.ApiDef.Arg parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.ApiDef.Arg parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.ApiDef.Arg parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -1469,7 +1447,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -1477,7 +1455,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.ApiDef.Arg}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.ApiDef.Arg)
             org.tensorflow.proto.ApiDef.ArgOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1486,7 +1464,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.ApiDefProtos.internal_static_tensorflow_ApiDef_Arg_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -1499,19 +1477,17 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             name_ = "";
    -
             renameTo_ = "";
    -
             description_ = "";
    -
             return this;
           }
     
    @@ -1538,45 +1514,24 @@ public org.tensorflow.proto.ApiDef.Arg build() {
           @java.lang.Override
           public org.tensorflow.proto.ApiDef.Arg buildPartial() {
             org.tensorflow.proto.ApiDef.Arg result = new org.tensorflow.proto.ApiDef.Arg(this);
    -        result.name_ = name_;
    -        result.renameTo_ = renameTo_;
    -        result.description_ = description_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.ApiDef.Arg result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.name_ = name_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.renameTo_ = renameTo_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.description_ = description_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.ApiDef.Arg) {
    @@ -1591,14 +1546,17 @@ public Builder mergeFrom(org.tensorflow.proto.ApiDef.Arg other) {
             if (other == org.tensorflow.proto.ApiDef.Arg.getDefaultInstance()) return this;
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (!other.getRenameTo().isEmpty()) {
               renameTo_ = other.renameTo_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             if (!other.getDescription().isEmpty()) {
               description_ = other.description_;
    +          bitField0_ |= 0x00000004;
               onChanged();
             }
             this.mergeUnknownFields(other.getUnknownFields());
    @@ -1629,17 +1587,17 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     renameTo_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 26: {
                     description_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 26
                   default: {
    @@ -1657,6 +1615,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private java.lang.Object name_ = "";
           /**
    @@ -1699,11 +1658,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -1712,8 +1669,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -1724,12 +1681,10 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -1793,11 +1748,9 @@ public java.lang.String getRenameTo() {
            */
           public Builder setRenameTo(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             renameTo_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1812,8 +1765,8 @@ public Builder setRenameTo(
            * @return This builder for chaining.
            */
           public Builder clearRenameTo() {
    -        
             renameTo_ = getDefaultInstance().getRenameTo();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -1830,12 +1783,10 @@ public Builder clearRenameTo() {
            */
           public Builder setRenameToBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             renameTo_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1899,11 +1850,9 @@ public java.lang.String getDescription() {
            */
           public Builder setDescription(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             description_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1918,8 +1867,8 @@ public Builder setDescription(
            * @return This builder for chaining.
            */
           public Builder clearDescription() {
    -        
             description_ = getDefaultInstance().getDescription();
    +        bitField0_ = (bitField0_ & ~0x00000004);
             onChanged();
             return this;
           }
    @@ -1936,27 +1885,13 @@ public Builder clearDescription() {
            */
           public Builder setDescriptionBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             description_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.ApiDef.Arg)
         }
    @@ -2117,12 +2052,21 @@ public interface AttrOrBuilder extends
        * Protobuf type {@code tensorflow.ApiDef.Attr}
        */
       public static final class Attr extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.ApiDef.Attr)
           AttrOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        Attr.class.getName());
    +    }
         // Use Attr.newBuilder() to construct.
    -    private Attr(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private Attr(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private Attr() {
    @@ -2131,33 +2075,23 @@ private Attr() {
           description_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new Attr();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.ApiDefProtos.internal_static_tensorflow_ApiDef_Attr_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ApiDefProtos.internal_static_tensorflow_ApiDef_Attr_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
                   org.tensorflow.proto.ApiDef.Attr.class, org.tensorflow.proto.ApiDef.Attr.Builder.class);
         }
     
    +    private int bitField0_;
         public static final int NAME_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object name_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object name_ = "";
         /**
          * string name = 1;
          * @return The name.
    @@ -2195,7 +2129,8 @@ public java.lang.String getName() {
         }
     
         public static final int RENAME_TO_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object renameTo_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object renameTo_ = "";
         /**
          * 
          * Change the name used to access this attr in the API from what
    @@ -2259,7 +2194,7 @@ public java.lang.String getRenameTo() {
          */
         @java.lang.Override
         public boolean hasDefaultValue() {
    -      return defaultValue_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -2288,11 +2223,12 @@ public org.tensorflow.proto.AttrValue getDefaultValue() {
          */
         @java.lang.Override
         public org.tensorflow.proto.AttrValueOrBuilder getDefaultValueOrBuilder() {
    -      return getDefaultValue();
    +      return defaultValue_ == null ? org.tensorflow.proto.AttrValue.getDefaultInstance() : defaultValue_;
         }
     
         public static final int DESCRIPTION_FIELD_NUMBER = 4;
    -    private volatile java.lang.Object description_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object description_ = "";
         /**
          * 
          * Note: this will replace any inherited attr doc, there is no current
    @@ -2353,17 +2289,17 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(renameTo_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, renameTo_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(renameTo_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, renameTo_);
           }
    -      if (defaultValue_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(3, getDefaultValue());
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, description_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 4, description_);
           }
           getUnknownFields().writeTo(output);
         }
    @@ -2374,18 +2310,18 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(renameTo_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, renameTo_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(renameTo_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, renameTo_);
           }
    -      if (defaultValue_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(3, getDefaultValue());
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, description_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(4, description_);
           }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
    @@ -2473,39 +2409,41 @@ public static org.tensorflow.proto.ApiDef.Attr parseFrom(
         }
         public static org.tensorflow.proto.ApiDef.Attr parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.ApiDef.Attr parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.ApiDef.Attr parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.ApiDef.Attr parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.ApiDef.Attr parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.ApiDef.Attr parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -2525,7 +2463,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -2539,7 +2477,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.ApiDef.Attr}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.ApiDef.Attr)
             org.tensorflow.proto.ApiDef.AttrOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -2548,7 +2486,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.ApiDefProtos.internal_static_tensorflow_ApiDef_Attr_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -2557,29 +2495,32 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.ApiDef.Attr.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getDefaultValueFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             name_ = "";
    -
             renameTo_ = "";
    -
    -        if (defaultValueBuilder_ == null) {
    -          defaultValue_ = null;
    -        } else {
    -          defaultValue_ = null;
    +        defaultValue_ = null;
    +        if (defaultValueBuilder_ != null) {
    +          defaultValueBuilder_.dispose();
               defaultValueBuilder_ = null;
             }
             description_ = "";
    -
             return this;
           }
     
    @@ -2606,50 +2547,32 @@ public org.tensorflow.proto.ApiDef.Attr build() {
           @java.lang.Override
           public org.tensorflow.proto.ApiDef.Attr buildPartial() {
             org.tensorflow.proto.ApiDef.Attr result = new org.tensorflow.proto.ApiDef.Attr(this);
    -        result.name_ = name_;
    -        result.renameTo_ = renameTo_;
    -        if (defaultValueBuilder_ == null) {
    -          result.defaultValue_ = defaultValue_;
    -        } else {
    -          result.defaultValue_ = defaultValueBuilder_.build();
    -        }
    -        result.description_ = description_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.ApiDef.Attr result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.name_ = name_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.renameTo_ = renameTo_;
    +        }
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.defaultValue_ = defaultValueBuilder_ == null
    +              ? defaultValue_
    +              : defaultValueBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.description_ = description_;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.ApiDef.Attr) {
    @@ -2664,10 +2587,12 @@ public Builder mergeFrom(org.tensorflow.proto.ApiDef.Attr other) {
             if (other == org.tensorflow.proto.ApiDef.Attr.getDefaultInstance()) return this;
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (!other.getRenameTo().isEmpty()) {
               renameTo_ = other.renameTo_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             if (other.hasDefaultValue()) {
    @@ -2675,6 +2600,7 @@ public Builder mergeFrom(org.tensorflow.proto.ApiDef.Attr other) {
             }
             if (!other.getDescription().isEmpty()) {
               description_ = other.description_;
    +          bitField0_ |= 0x00000008;
               onChanged();
             }
             this.mergeUnknownFields(other.getUnknownFields());
    @@ -2705,24 +2631,24 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     renameTo_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 26: {
                     input.readMessage(
                         getDefaultValueFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 26
                   case 34: {
                     description_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 34
                   default: {
    @@ -2740,6 +2666,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private java.lang.Object name_ = "";
           /**
    @@ -2782,11 +2709,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -2795,8 +2720,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -2807,12 +2732,10 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -2876,11 +2799,9 @@ public java.lang.String getRenameTo() {
            */
           public Builder setRenameTo(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             renameTo_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -2895,8 +2816,8 @@ public Builder setRenameTo(
            * @return This builder for chaining.
            */
           public Builder clearRenameTo() {
    -        
             renameTo_ = getDefaultInstance().getRenameTo();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -2913,18 +2834,16 @@ public Builder clearRenameTo() {
            */
           public Builder setRenameToBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             renameTo_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
     
           private org.tensorflow.proto.AttrValue defaultValue_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.AttrValue, org.tensorflow.proto.AttrValue.Builder, org.tensorflow.proto.AttrValueOrBuilder> defaultValueBuilder_;
           /**
            * 
    @@ -2938,7 +2857,7 @@ public Builder setRenameToBytes(
            * @return Whether the defaultValue field is set.
            */
           public boolean hasDefaultValue() {
    -        return defaultValueBuilder_ != null || defaultValue_ != null;
    +        return ((bitField0_ & 0x00000004) != 0);
           }
           /**
            * 
    @@ -2974,11 +2893,11 @@ public Builder setDefaultValue(org.tensorflow.proto.AttrValue value) {
                 throw new NullPointerException();
               }
               defaultValue_ = value;
    -          onChanged();
             } else {
               defaultValueBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000004;
    +        onChanged();
             return this;
           }
           /**
    @@ -2995,11 +2914,11 @@ public Builder setDefaultValue(
               org.tensorflow.proto.AttrValue.Builder builderForValue) {
             if (defaultValueBuilder_ == null) {
               defaultValue_ = builderForValue.build();
    -          onChanged();
             } else {
               defaultValueBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000004;
    +        onChanged();
             return this;
           }
           /**
    @@ -3014,17 +2933,20 @@ public Builder setDefaultValue(
            */
           public Builder mergeDefaultValue(org.tensorflow.proto.AttrValue value) {
             if (defaultValueBuilder_ == null) {
    -          if (defaultValue_ != null) {
    -            defaultValue_ =
    -              org.tensorflow.proto.AttrValue.newBuilder(defaultValue_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000004) != 0) &&
    +            defaultValue_ != null &&
    +            defaultValue_ != org.tensorflow.proto.AttrValue.getDefaultInstance()) {
    +            getDefaultValueBuilder().mergeFrom(value);
               } else {
                 defaultValue_ = value;
               }
    -          onChanged();
             } else {
               defaultValueBuilder_.mergeFrom(value);
             }
    -
    +        if (defaultValue_ != null) {
    +          bitField0_ |= 0x00000004;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -3038,14 +2960,13 @@ public Builder mergeDefaultValue(org.tensorflow.proto.AttrValue value) {
            * .tensorflow.AttrValue default_value = 3;
            */
           public Builder clearDefaultValue() {
    -        if (defaultValueBuilder_ == null) {
    -          defaultValue_ = null;
    -          onChanged();
    -        } else {
    -          defaultValue_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000004);
    +        defaultValue_ = null;
    +        if (defaultValueBuilder_ != null) {
    +          defaultValueBuilder_.dispose();
               defaultValueBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -3059,7 +2980,7 @@ public Builder clearDefaultValue() {
            * .tensorflow.AttrValue default_value = 3;
            */
           public org.tensorflow.proto.AttrValue.Builder getDefaultValueBuilder() {
    -        
    +        bitField0_ |= 0x00000004;
             onChanged();
             return getDefaultValueFieldBuilder().getBuilder();
           }
    @@ -3091,11 +3012,11 @@ public org.tensorflow.proto.AttrValueOrBuilder getDefaultValueOrBuilder() {
            *
            * .tensorflow.AttrValue default_value = 3;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.AttrValue, org.tensorflow.proto.AttrValue.Builder, org.tensorflow.proto.AttrValueOrBuilder> 
               getDefaultValueFieldBuilder() {
             if (defaultValueBuilder_ == null) {
    -          defaultValueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          defaultValueBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.AttrValue, org.tensorflow.proto.AttrValue.Builder, org.tensorflow.proto.AttrValueOrBuilder>(
                       getDefaultValue(),
                       getParentForChildren(),
    @@ -3161,11 +3082,9 @@ public java.lang.String getDescription() {
            */
           public Builder setDescription(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             description_ = value;
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -3179,8 +3098,8 @@ public Builder setDescription(
            * @return This builder for chaining.
            */
           public Builder clearDescription() {
    -        
             description_ = getDefaultInstance().getDescription();
    +        bitField0_ = (bitField0_ & ~0x00000008);
             onChanged();
             return this;
           }
    @@ -3196,27 +3115,13 @@ public Builder clearDescription() {
            */
           public Builder setDescriptionBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             description_ = value;
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.ApiDef.Attr)
         }
    @@ -3270,7 +3175,8 @@ public org.tensorflow.proto.ApiDef.Attr getDefaultInstanceForType() {
       }
     
       public static final int GRAPH_OP_NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object graphOpName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object graphOpName_ = "";
       /**
        * 
        * Name of the op (in the OpDef) to specify the API for.
    @@ -3316,7 +3222,8 @@ public java.lang.String getGraphOpName() {
       }
     
       public static final int DEPRECATION_MESSAGE_FIELD_NUMBER = 12;
    -  private volatile java.lang.Object deprecationMessage_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object deprecationMessage_ = "";
       /**
        * 
        * If this op is deprecated, set deprecation message to the message
    @@ -3366,7 +3273,7 @@ public java.lang.String getDeprecationMessage() {
       }
     
       public static final int DEPRECATION_VERSION_FIELD_NUMBER = 13;
    -  private int deprecationVersion_;
    +  private int deprecationVersion_ = 0;
       /**
        * 
        * Major version when the op will be deleted. For e.g. set this
    @@ -3383,7 +3290,7 @@ public int getDeprecationVersion() {
       }
     
       public static final int VISIBILITY_FIELD_NUMBER = 2;
    -  private int visibility_;
    +  private int visibility_ = 0;
       /**
        * .tensorflow.ApiDef.Visibility visibility = 2;
        * @return The enum numeric value on the wire for visibility.
    @@ -3396,12 +3303,12 @@ public int getDeprecationVersion() {
        * @return The visibility.
        */
       @java.lang.Override public org.tensorflow.proto.ApiDef.Visibility getVisibility() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.ApiDef.Visibility result = org.tensorflow.proto.ApiDef.Visibility.valueOf(visibility_);
    +    org.tensorflow.proto.ApiDef.Visibility result = org.tensorflow.proto.ApiDef.Visibility.forNumber(visibility_);
         return result == null ? org.tensorflow.proto.ApiDef.Visibility.UNRECOGNIZED : result;
       }
     
       public static final int ENDPOINT_FIELD_NUMBER = 3;
    +  @SuppressWarnings("serial")
       private java.util.List endpoint_;
       /**
        * repeated .tensorflow.ApiDef.Endpoint endpoint = 3;
    @@ -3442,6 +3349,7 @@ public org.tensorflow.proto.ApiDef.EndpointOrBuilder getEndpointOrBuilder(
       }
     
       public static final int IN_ARG_FIELD_NUMBER = 4;
    +  @SuppressWarnings("serial")
       private java.util.List inArg_;
       /**
        * repeated .tensorflow.ApiDef.Arg in_arg = 4;
    @@ -3482,6 +3390,7 @@ public org.tensorflow.proto.ApiDef.ArgOrBuilder getInArgOrBuilder(
       }
     
       public static final int OUT_ARG_FIELD_NUMBER = 5;
    +  @SuppressWarnings("serial")
       private java.util.List outArg_;
       /**
        * repeated .tensorflow.ApiDef.Arg out_arg = 5;
    @@ -3522,7 +3431,9 @@ public org.tensorflow.proto.ApiDef.ArgOrBuilder getOutArgOrBuilder(
       }
     
       public static final int ARG_ORDER_FIELD_NUMBER = 11;
    -  private com.google.protobuf.LazyStringList argOrder_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList argOrder_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * List of original in_arg names to specify new argument order.
    @@ -3581,6 +3492,7 @@ public java.lang.String getArgOrder(int index) {
       }
     
       public static final int ATTR_FIELD_NUMBER = 6;
    +  @SuppressWarnings("serial")
       private java.util.List attr_;
       /**
        * repeated .tensorflow.ApiDef.Attr attr = 6;
    @@ -3621,7 +3533,8 @@ public org.tensorflow.proto.ApiDef.AttrOrBuilder getAttrOrBuilder(
       }
     
       public static final int SUMMARY_FIELD_NUMBER = 7;
    -  private volatile java.lang.Object summary_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object summary_ = "";
       /**
        * 
        * One-line human-readable description of what the Op does.
    @@ -3667,7 +3580,8 @@ public java.lang.String getSummary() {
       }
     
       public static final int DESCRIPTION_FIELD_NUMBER = 8;
    -  private volatile java.lang.Object description_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object description_ = "";
       /**
        * 
        * Additional, longer human-readable description of what the Op does.
    @@ -3713,7 +3627,8 @@ public java.lang.String getDescription() {
       }
     
       public static final int DESCRIPTION_PREFIX_FIELD_NUMBER = 9;
    -  private volatile java.lang.Object descriptionPrefix_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object descriptionPrefix_ = "";
       /**
        * 
        * Modify an existing/inherited description by adding text to the beginning
    @@ -3761,7 +3676,8 @@ public java.lang.String getDescriptionPrefix() {
       }
     
       public static final int DESCRIPTION_SUFFIX_FIELD_NUMBER = 10;
    -  private volatile java.lang.Object descriptionSuffix_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object descriptionSuffix_ = "";
       /**
        * string description_suffix = 10;
        * @return The descriptionSuffix.
    @@ -3812,8 +3728,8 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(graphOpName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, graphOpName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(graphOpName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, graphOpName_);
         }
         if (visibility_ != org.tensorflow.proto.ApiDef.Visibility.DEFAULT_VISIBILITY.getNumber()) {
           output.writeEnum(2, visibility_);
    @@ -3830,23 +3746,23 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         for (int i = 0; i < attr_.size(); i++) {
           output.writeMessage(6, attr_.get(i));
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(summary_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 7, summary_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(summary_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 7, summary_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 8, description_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 8, description_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(descriptionPrefix_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 9, descriptionPrefix_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(descriptionPrefix_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 9, descriptionPrefix_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(descriptionSuffix_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 10, descriptionSuffix_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(descriptionSuffix_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 10, descriptionSuffix_);
         }
         for (int i = 0; i < argOrder_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 11, argOrder_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 11, argOrder_.getRaw(i));
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deprecationMessage_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 12, deprecationMessage_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deprecationMessage_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 12, deprecationMessage_);
         }
         if (deprecationVersion_ != 0) {
           output.writeInt32(13, deprecationVersion_);
    @@ -3860,8 +3776,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(graphOpName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, graphOpName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(graphOpName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, graphOpName_);
         }
         if (visibility_ != org.tensorflow.proto.ApiDef.Visibility.DEFAULT_VISIBILITY.getNumber()) {
           size += com.google.protobuf.CodedOutputStream
    @@ -3883,17 +3799,17 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(6, attr_.get(i));
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(summary_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, summary_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(summary_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(7, summary_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, description_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(8, description_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(descriptionPrefix_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(9, descriptionPrefix_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(descriptionPrefix_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(9, descriptionPrefix_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(descriptionSuffix_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, descriptionSuffix_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(descriptionSuffix_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(10, descriptionSuffix_);
         }
         {
           int dataSize = 0;
    @@ -3903,8 +3819,8 @@ public int getSerializedSize() {
           size += dataSize;
           size += 1 * getArgOrderList().size();
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deprecationMessage_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(12, deprecationMessage_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deprecationMessage_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(12, deprecationMessage_);
         }
         if (deprecationVersion_ != 0) {
           size += com.google.protobuf.CodedOutputStream
    @@ -4036,39 +3952,41 @@ public static org.tensorflow.proto.ApiDef parseFrom(
       }
       public static org.tensorflow.proto.ApiDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ApiDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.ApiDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.ApiDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.ApiDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ApiDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -4088,7 +4006,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -4100,10 +4018,12 @@ protected Builder newBuilderForType(
        * to all client languages, and another set per client language.
        * The per-client-language ApiDefs will inherit values from the
        * common ApiDefs which it can either replace or modify.
    +   *
        * We separate the API definition from the OpDef so we can evolve the
        * API while remaining backwards compatible when interpreting old
        * graphs.  Overrides go in an "api_def.pbtxt" file with a text-format
        * ApiDefs message.
    +   *
        * WARNING: Be *very* careful changing the API for any existing op --
        * you can change the semantics of existing code.  These changes may
        * need to wait until a major release of TensorFlow to avoid breaking
    @@ -4113,7 +4033,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.ApiDef}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.ApiDef)
           org.tensorflow.proto.ApiDefOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -4122,7 +4042,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ApiDefProtos.internal_static_tensorflow_ApiDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -4135,59 +4055,52 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           graphOpName_ = "";
    -
           deprecationMessage_ = "";
    -
           deprecationVersion_ = 0;
    -
           visibility_ = 0;
    -
           if (endpointBuilder_ == null) {
             endpoint_ = java.util.Collections.emptyList();
           } else {
             endpoint_ = null;
             endpointBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000010);
           if (inArgBuilder_ == null) {
             inArg_ = java.util.Collections.emptyList();
           } else {
             inArg_ = null;
             inArgBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000002);
    +      bitField0_ = (bitField0_ & ~0x00000020);
           if (outArgBuilder_ == null) {
             outArg_ = java.util.Collections.emptyList();
           } else {
             outArg_ = null;
             outArgBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000004);
    -      argOrder_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000008);
    +      bitField0_ = (bitField0_ & ~0x00000040);
    +      argOrder_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           if (attrBuilder_ == null) {
             attr_ = java.util.Collections.emptyList();
           } else {
             attr_ = null;
             attrBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000010);
    +      bitField0_ = (bitField0_ & ~0x00000100);
           summary_ = "";
    -
           description_ = "";
    -
           descriptionPrefix_ = "";
    -
           descriptionSuffix_ = "";
    -
           return this;
         }
     
    @@ -4214,92 +4127,83 @@ public org.tensorflow.proto.ApiDef build() {
         @java.lang.Override
         public org.tensorflow.proto.ApiDef buildPartial() {
           org.tensorflow.proto.ApiDef result = new org.tensorflow.proto.ApiDef(this);
    -      int from_bitField0_ = bitField0_;
    -      result.graphOpName_ = graphOpName_;
    -      result.deprecationMessage_ = deprecationMessage_;
    -      result.deprecationVersion_ = deprecationVersion_;
    -      result.visibility_ = visibility_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.ApiDef result) {
           if (endpointBuilder_ == null) {
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((bitField0_ & 0x00000010) != 0)) {
               endpoint_ = java.util.Collections.unmodifiableList(endpoint_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000010);
             }
             result.endpoint_ = endpoint_;
           } else {
             result.endpoint_ = endpointBuilder_.build();
           }
           if (inArgBuilder_ == null) {
    -        if (((bitField0_ & 0x00000002) != 0)) {
    +        if (((bitField0_ & 0x00000020) != 0)) {
               inArg_ = java.util.Collections.unmodifiableList(inArg_);
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          bitField0_ = (bitField0_ & ~0x00000020);
             }
             result.inArg_ = inArg_;
           } else {
             result.inArg_ = inArgBuilder_.build();
           }
           if (outArgBuilder_ == null) {
    -        if (((bitField0_ & 0x00000004) != 0)) {
    +        if (((bitField0_ & 0x00000040) != 0)) {
               outArg_ = java.util.Collections.unmodifiableList(outArg_);
    -          bitField0_ = (bitField0_ & ~0x00000004);
    +          bitField0_ = (bitField0_ & ~0x00000040);
             }
             result.outArg_ = outArg_;
           } else {
             result.outArg_ = outArgBuilder_.build();
           }
    -      if (((bitField0_ & 0x00000008) != 0)) {
    -        argOrder_ = argOrder_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000008);
    -      }
    -      result.argOrder_ = argOrder_;
           if (attrBuilder_ == null) {
    -        if (((bitField0_ & 0x00000010) != 0)) {
    +        if (((bitField0_ & 0x00000100) != 0)) {
               attr_ = java.util.Collections.unmodifiableList(attr_);
    -          bitField0_ = (bitField0_ & ~0x00000010);
    +          bitField0_ = (bitField0_ & ~0x00000100);
             }
             result.attr_ = attr_;
           } else {
             result.attr_ = attrBuilder_.build();
           }
    -      result.summary_ = summary_;
    -      result.description_ = description_;
    -      result.descriptionPrefix_ = descriptionPrefix_;
    -      result.descriptionSuffix_ = descriptionSuffix_;
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.ApiDef result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.graphOpName_ = graphOpName_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.deprecationMessage_ = deprecationMessage_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.deprecationVersion_ = deprecationVersion_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.visibility_ = visibility_;
    +      }
    +      if (((from_bitField0_ & 0x00000080) != 0)) {
    +        argOrder_.makeImmutable();
    +        result.argOrder_ = argOrder_;
    +      }
    +      if (((from_bitField0_ & 0x00000200) != 0)) {
    +        result.summary_ = summary_;
    +      }
    +      if (((from_bitField0_ & 0x00000400) != 0)) {
    +        result.description_ = description_;
    +      }
    +      if (((from_bitField0_ & 0x00000800) != 0)) {
    +        result.descriptionPrefix_ = descriptionPrefix_;
    +      }
    +      if (((from_bitField0_ & 0x00001000) != 0)) {
    +        result.descriptionSuffix_ = descriptionSuffix_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.ApiDef) {
    @@ -4314,10 +4218,12 @@ public Builder mergeFrom(org.tensorflow.proto.ApiDef other) {
           if (other == org.tensorflow.proto.ApiDef.getDefaultInstance()) return this;
           if (!other.getGraphOpName().isEmpty()) {
             graphOpName_ = other.graphOpName_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getDeprecationMessage().isEmpty()) {
             deprecationMessage_ = other.deprecationMessage_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (other.getDeprecationVersion() != 0) {
    @@ -4330,7 +4236,7 @@ public Builder mergeFrom(org.tensorflow.proto.ApiDef other) {
             if (!other.endpoint_.isEmpty()) {
               if (endpoint_.isEmpty()) {
                 endpoint_ = other.endpoint_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000010);
               } else {
                 ensureEndpointIsMutable();
                 endpoint_.addAll(other.endpoint_);
    @@ -4343,9 +4249,9 @@ public Builder mergeFrom(org.tensorflow.proto.ApiDef other) {
                 endpointBuilder_.dispose();
                 endpointBuilder_ = null;
                 endpoint_ = other.endpoint_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000010);
                 endpointBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getEndpointFieldBuilder() : null;
               } else {
                 endpointBuilder_.addAllMessages(other.endpoint_);
    @@ -4356,7 +4262,7 @@ public Builder mergeFrom(org.tensorflow.proto.ApiDef other) {
             if (!other.inArg_.isEmpty()) {
               if (inArg_.isEmpty()) {
                 inArg_ = other.inArg_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            bitField0_ = (bitField0_ & ~0x00000020);
               } else {
                 ensureInArgIsMutable();
                 inArg_.addAll(other.inArg_);
    @@ -4369,9 +4275,9 @@ public Builder mergeFrom(org.tensorflow.proto.ApiDef other) {
                 inArgBuilder_.dispose();
                 inArgBuilder_ = null;
                 inArg_ = other.inArg_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            bitField0_ = (bitField0_ & ~0x00000020);
                 inArgBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getInArgFieldBuilder() : null;
               } else {
                 inArgBuilder_.addAllMessages(other.inArg_);
    @@ -4382,7 +4288,7 @@ public Builder mergeFrom(org.tensorflow.proto.ApiDef other) {
             if (!other.outArg_.isEmpty()) {
               if (outArg_.isEmpty()) {
                 outArg_ = other.outArg_;
    -            bitField0_ = (bitField0_ & ~0x00000004);
    +            bitField0_ = (bitField0_ & ~0x00000040);
               } else {
                 ensureOutArgIsMutable();
                 outArg_.addAll(other.outArg_);
    @@ -4395,9 +4301,9 @@ public Builder mergeFrom(org.tensorflow.proto.ApiDef other) {
                 outArgBuilder_.dispose();
                 outArgBuilder_ = null;
                 outArg_ = other.outArg_;
    -            bitField0_ = (bitField0_ & ~0x00000004);
    +            bitField0_ = (bitField0_ & ~0x00000040);
                 outArgBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getOutArgFieldBuilder() : null;
               } else {
                 outArgBuilder_.addAllMessages(other.outArg_);
    @@ -4407,7 +4313,7 @@ public Builder mergeFrom(org.tensorflow.proto.ApiDef other) {
           if (!other.argOrder_.isEmpty()) {
             if (argOrder_.isEmpty()) {
               argOrder_ = other.argOrder_;
    -          bitField0_ = (bitField0_ & ~0x00000008);
    +          bitField0_ |= 0x00000080;
             } else {
               ensureArgOrderIsMutable();
               argOrder_.addAll(other.argOrder_);
    @@ -4418,7 +4324,7 @@ public Builder mergeFrom(org.tensorflow.proto.ApiDef other) {
             if (!other.attr_.isEmpty()) {
               if (attr_.isEmpty()) {
                 attr_ = other.attr_;
    -            bitField0_ = (bitField0_ & ~0x00000010);
    +            bitField0_ = (bitField0_ & ~0x00000100);
               } else {
                 ensureAttrIsMutable();
                 attr_.addAll(other.attr_);
    @@ -4431,9 +4337,9 @@ public Builder mergeFrom(org.tensorflow.proto.ApiDef other) {
                 attrBuilder_.dispose();
                 attrBuilder_ = null;
                 attr_ = other.attr_;
    -            bitField0_ = (bitField0_ & ~0x00000010);
    +            bitField0_ = (bitField0_ & ~0x00000100);
                 attrBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getAttrFieldBuilder() : null;
               } else {
                 attrBuilder_.addAllMessages(other.attr_);
    @@ -4442,18 +4348,22 @@ public Builder mergeFrom(org.tensorflow.proto.ApiDef other) {
           }
           if (!other.getSummary().isEmpty()) {
             summary_ = other.summary_;
    +        bitField0_ |= 0x00000200;
             onChanged();
           }
           if (!other.getDescription().isEmpty()) {
             description_ = other.description_;
    +        bitField0_ |= 0x00000400;
             onChanged();
           }
           if (!other.getDescriptionPrefix().isEmpty()) {
             descriptionPrefix_ = other.descriptionPrefix_;
    +        bitField0_ |= 0x00000800;
             onChanged();
           }
           if (!other.getDescriptionSuffix().isEmpty()) {
             descriptionSuffix_ = other.descriptionSuffix_;
    +        bitField0_ |= 0x00001000;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -4484,12 +4394,12 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   graphOpName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 16: {
                   visibility_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 16
                 case 26: {
    @@ -4546,22 +4456,22 @@ public Builder mergeFrom(
                 } // case 50
                 case 58: {
                   summary_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000200;
                   break;
                 } // case 58
                 case 66: {
                   description_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000400;
                   break;
                 } // case 66
                 case 74: {
                   descriptionPrefix_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000800;
                   break;
                 } // case 74
                 case 82: {
                   descriptionSuffix_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00001000;
                   break;
                 } // case 82
                 case 90: {
    @@ -4572,12 +4482,12 @@ public Builder mergeFrom(
                 } // case 90
                 case 98: {
                   deprecationMessage_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 98
                 case 104: {
                   deprecationVersion_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 104
                 default: {
    @@ -4650,11 +4560,9 @@ public java.lang.String getGraphOpName() {
          */
         public Builder setGraphOpName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           graphOpName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -4667,8 +4575,8 @@ public Builder setGraphOpName(
          * @return This builder for chaining.
          */
         public Builder clearGraphOpName() {
    -      
           graphOpName_ = getDefaultInstance().getGraphOpName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -4683,12 +4591,10 @@ public Builder clearGraphOpName() {
          */
         public Builder setGraphOpNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           graphOpName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -4752,11 +4658,9 @@ public java.lang.String getDeprecationMessage() {
          */
         public Builder setDeprecationMessage(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           deprecationMessage_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -4771,8 +4675,8 @@ public Builder setDeprecationMessage(
          * @return This builder for chaining.
          */
         public Builder clearDeprecationMessage() {
    -      
           deprecationMessage_ = getDefaultInstance().getDeprecationMessage();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -4789,12 +4693,10 @@ public Builder clearDeprecationMessage() {
          */
         public Builder setDeprecationMessageBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           deprecationMessage_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -4826,8 +4728,9 @@ public int getDeprecationVersion() {
          * @return This builder for chaining.
          */
         public Builder setDeprecationVersion(int value) {
    -      
    +
           deprecationVersion_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -4842,7 +4745,7 @@ public Builder setDeprecationVersion(int value) {
          * @return This builder for chaining.
          */
         public Builder clearDeprecationVersion() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           deprecationVersion_ = 0;
           onChanged();
           return this;
    @@ -4862,8 +4765,8 @@ public Builder clearDeprecationVersion() {
          * @return This builder for chaining.
          */
         public Builder setVisibilityValue(int value) {
    -      
           visibility_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -4873,8 +4776,7 @@ public Builder setVisibilityValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.ApiDef.Visibility getVisibility() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.ApiDef.Visibility result = org.tensorflow.proto.ApiDef.Visibility.valueOf(visibility_);
    +      org.tensorflow.proto.ApiDef.Visibility result = org.tensorflow.proto.ApiDef.Visibility.forNumber(visibility_);
           return result == null ? org.tensorflow.proto.ApiDef.Visibility.UNRECOGNIZED : result;
         }
         /**
    @@ -4886,7 +4788,7 @@ public Builder setVisibility(org.tensorflow.proto.ApiDef.Visibility value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000008;
           visibility_ = value.getNumber();
           onChanged();
           return this;
    @@ -4896,7 +4798,7 @@ public Builder setVisibility(org.tensorflow.proto.ApiDef.Visibility value) {
          * @return This builder for chaining.
          */
         public Builder clearVisibility() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           visibility_ = 0;
           onChanged();
           return this;
    @@ -4905,13 +4807,13 @@ public Builder clearVisibility() {
         private java.util.List endpoint_ =
           java.util.Collections.emptyList();
         private void ensureEndpointIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!((bitField0_ & 0x00000010) != 0)) {
             endpoint_ = new java.util.ArrayList(endpoint_);
    -        bitField0_ |= 0x00000001;
    +        bitField0_ |= 0x00000010;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ApiDef.Endpoint, org.tensorflow.proto.ApiDef.Endpoint.Builder, org.tensorflow.proto.ApiDef.EndpointOrBuilder> endpointBuilder_;
     
         /**
    @@ -5057,7 +4959,7 @@ public Builder addAllEndpoint(
         public Builder clearEndpoint() {
           if (endpointBuilder_ == null) {
             endpoint_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000010);
             onChanged();
           } else {
             endpointBuilder_.clear();
    @@ -5127,14 +5029,14 @@ public org.tensorflow.proto.ApiDef.Endpoint.Builder addEndpointBuilder(
              getEndpointBuilderList() {
           return getEndpointFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ApiDef.Endpoint, org.tensorflow.proto.ApiDef.Endpoint.Builder, org.tensorflow.proto.ApiDef.EndpointOrBuilder> 
             getEndpointFieldBuilder() {
           if (endpointBuilder_ == null) {
    -        endpointBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        endpointBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.ApiDef.Endpoint, org.tensorflow.proto.ApiDef.Endpoint.Builder, org.tensorflow.proto.ApiDef.EndpointOrBuilder>(
                     endpoint_,
    -                ((bitField0_ & 0x00000001) != 0),
    +                ((bitField0_ & 0x00000010) != 0),
                     getParentForChildren(),
                     isClean());
             endpoint_ = null;
    @@ -5145,13 +5047,13 @@ public org.tensorflow.proto.ApiDef.Endpoint.Builder addEndpointBuilder(
         private java.util.List inArg_ =
           java.util.Collections.emptyList();
         private void ensureInArgIsMutable() {
    -      if (!((bitField0_ & 0x00000002) != 0)) {
    +      if (!((bitField0_ & 0x00000020) != 0)) {
             inArg_ = new java.util.ArrayList(inArg_);
    -        bitField0_ |= 0x00000002;
    +        bitField0_ |= 0x00000020;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ApiDef.Arg, org.tensorflow.proto.ApiDef.Arg.Builder, org.tensorflow.proto.ApiDef.ArgOrBuilder> inArgBuilder_;
     
         /**
    @@ -5297,7 +5199,7 @@ public Builder addAllInArg(
         public Builder clearInArg() {
           if (inArgBuilder_ == null) {
             inArg_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        bitField0_ = (bitField0_ & ~0x00000020);
             onChanged();
           } else {
             inArgBuilder_.clear();
    @@ -5367,14 +5269,14 @@ public org.tensorflow.proto.ApiDef.Arg.Builder addInArgBuilder(
              getInArgBuilderList() {
           return getInArgFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ApiDef.Arg, org.tensorflow.proto.ApiDef.Arg.Builder, org.tensorflow.proto.ApiDef.ArgOrBuilder> 
             getInArgFieldBuilder() {
           if (inArgBuilder_ == null) {
    -        inArgBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        inArgBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.ApiDef.Arg, org.tensorflow.proto.ApiDef.Arg.Builder, org.tensorflow.proto.ApiDef.ArgOrBuilder>(
                     inArg_,
    -                ((bitField0_ & 0x00000002) != 0),
    +                ((bitField0_ & 0x00000020) != 0),
                     getParentForChildren(),
                     isClean());
             inArg_ = null;
    @@ -5385,13 +5287,13 @@ public org.tensorflow.proto.ApiDef.Arg.Builder addInArgBuilder(
         private java.util.List outArg_ =
           java.util.Collections.emptyList();
         private void ensureOutArgIsMutable() {
    -      if (!((bitField0_ & 0x00000004) != 0)) {
    +      if (!((bitField0_ & 0x00000040) != 0)) {
             outArg_ = new java.util.ArrayList(outArg_);
    -        bitField0_ |= 0x00000004;
    +        bitField0_ |= 0x00000040;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ApiDef.Arg, org.tensorflow.proto.ApiDef.Arg.Builder, org.tensorflow.proto.ApiDef.ArgOrBuilder> outArgBuilder_;
     
         /**
    @@ -5537,7 +5439,7 @@ public Builder addAllOutArg(
         public Builder clearOutArg() {
           if (outArgBuilder_ == null) {
             outArg_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000004);
    +        bitField0_ = (bitField0_ & ~0x00000040);
             onChanged();
           } else {
             outArgBuilder_.clear();
    @@ -5607,14 +5509,14 @@ public org.tensorflow.proto.ApiDef.Arg.Builder addOutArgBuilder(
              getOutArgBuilderList() {
           return getOutArgFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ApiDef.Arg, org.tensorflow.proto.ApiDef.Arg.Builder, org.tensorflow.proto.ApiDef.ArgOrBuilder> 
             getOutArgFieldBuilder() {
           if (outArgBuilder_ == null) {
    -        outArgBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        outArgBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.ApiDef.Arg, org.tensorflow.proto.ApiDef.Arg.Builder, org.tensorflow.proto.ApiDef.ArgOrBuilder>(
                     outArg_,
    -                ((bitField0_ & 0x00000004) != 0),
    +                ((bitField0_ & 0x00000040) != 0),
                     getParentForChildren(),
                     isClean());
             outArg_ = null;
    @@ -5622,12 +5524,13 @@ public org.tensorflow.proto.ApiDef.Arg.Builder addOutArgBuilder(
           return outArgBuilder_;
         }
     
    -    private com.google.protobuf.LazyStringList argOrder_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList argOrder_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureArgOrderIsMutable() {
    -      if (!((bitField0_ & 0x00000008) != 0)) {
    +      if (!argOrder_.isModifiable()) {
             argOrder_ = new com.google.protobuf.LazyStringArrayList(argOrder_);
    -        bitField0_ |= 0x00000008;
    -       }
    +      }
    +      bitField0_ |= 0x00000080;
         }
         /**
          * 
    @@ -5641,7 +5544,8 @@ private void ensureArgOrderIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getArgOrderList() {
    -      return argOrder_.getUnmodifiableView();
    +      argOrder_.makeImmutable();
    +      return argOrder_;
         }
         /**
          * 
    @@ -5699,11 +5603,10 @@ public java.lang.String getArgOrder(int index) {
          */
         public Builder setArgOrder(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureArgOrderIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureArgOrderIsMutable();
           argOrder_.set(index, value);
    +      bitField0_ |= 0x00000080;
           onChanged();
           return this;
         }
    @@ -5720,11 +5623,10 @@ public Builder setArgOrder(
          */
         public Builder addArgOrder(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureArgOrderIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureArgOrderIsMutable();
           argOrder_.add(value);
    +      bitField0_ |= 0x00000080;
           onChanged();
           return this;
         }
    @@ -5744,6 +5646,7 @@ public Builder addAllArgOrder(
           ensureArgOrderIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, argOrder_);
    +      bitField0_ |= 0x00000080;
           onChanged();
           return this;
         }
    @@ -5758,8 +5661,9 @@ public Builder addAllArgOrder(
          * @return This builder for chaining.
          */
         public Builder clearArgOrder() {
    -      argOrder_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000008);
    +      argOrder_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000080);;
           onChanged();
           return this;
         }
    @@ -5776,12 +5680,11 @@ public Builder clearArgOrder() {
          */
         public Builder addArgOrderBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureArgOrderIsMutable();
           argOrder_.add(value);
    +      bitField0_ |= 0x00000080;
           onChanged();
           return this;
         }
    @@ -5789,13 +5692,13 @@ public Builder addArgOrderBytes(
         private java.util.List attr_ =
           java.util.Collections.emptyList();
         private void ensureAttrIsMutable() {
    -      if (!((bitField0_ & 0x00000010) != 0)) {
    +      if (!((bitField0_ & 0x00000100) != 0)) {
             attr_ = new java.util.ArrayList(attr_);
    -        bitField0_ |= 0x00000010;
    +        bitField0_ |= 0x00000100;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ApiDef.Attr, org.tensorflow.proto.ApiDef.Attr.Builder, org.tensorflow.proto.ApiDef.AttrOrBuilder> attrBuilder_;
     
         /**
    @@ -5941,7 +5844,7 @@ public Builder addAllAttr(
         public Builder clearAttr() {
           if (attrBuilder_ == null) {
             attr_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000010);
    +        bitField0_ = (bitField0_ & ~0x00000100);
             onChanged();
           } else {
             attrBuilder_.clear();
    @@ -6011,14 +5914,14 @@ public org.tensorflow.proto.ApiDef.Attr.Builder addAttrBuilder(
              getAttrBuilderList() {
           return getAttrFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ApiDef.Attr, org.tensorflow.proto.ApiDef.Attr.Builder, org.tensorflow.proto.ApiDef.AttrOrBuilder> 
             getAttrFieldBuilder() {
           if (attrBuilder_ == null) {
    -        attrBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        attrBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.ApiDef.Attr, org.tensorflow.proto.ApiDef.Attr.Builder, org.tensorflow.proto.ApiDef.AttrOrBuilder>(
                     attr_,
    -                ((bitField0_ & 0x00000010) != 0),
    +                ((bitField0_ & 0x00000100) != 0),
                     getParentForChildren(),
                     isClean());
             attr_ = null;
    @@ -6079,11 +5982,9 @@ public java.lang.String getSummary() {
          */
         public Builder setSummary(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           summary_ = value;
    +      bitField0_ |= 0x00000200;
           onChanged();
           return this;
         }
    @@ -6096,8 +5997,8 @@ public Builder setSummary(
          * @return This builder for chaining.
          */
         public Builder clearSummary() {
    -      
           summary_ = getDefaultInstance().getSummary();
    +      bitField0_ = (bitField0_ & ~0x00000200);
           onChanged();
           return this;
         }
    @@ -6112,12 +6013,10 @@ public Builder clearSummary() {
          */
         public Builder setSummaryBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           summary_ = value;
    +      bitField0_ |= 0x00000200;
           onChanged();
           return this;
         }
    @@ -6175,11 +6074,9 @@ public java.lang.String getDescription() {
          */
         public Builder setDescription(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           description_ = value;
    +      bitField0_ |= 0x00000400;
           onChanged();
           return this;
         }
    @@ -6192,8 +6089,8 @@ public Builder setDescription(
          * @return This builder for chaining.
          */
         public Builder clearDescription() {
    -      
           description_ = getDefaultInstance().getDescription();
    +      bitField0_ = (bitField0_ & ~0x00000400);
           onChanged();
           return this;
         }
    @@ -6208,12 +6105,10 @@ public Builder clearDescription() {
          */
         public Builder setDescriptionBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           description_ = value;
    +      bitField0_ |= 0x00000400;
           onChanged();
           return this;
         }
    @@ -6274,11 +6169,9 @@ public java.lang.String getDescriptionPrefix() {
          */
         public Builder setDescriptionPrefix(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           descriptionPrefix_ = value;
    +      bitField0_ |= 0x00000800;
           onChanged();
           return this;
         }
    @@ -6292,8 +6185,8 @@ public Builder setDescriptionPrefix(
          * @return This builder for chaining.
          */
         public Builder clearDescriptionPrefix() {
    -      
           descriptionPrefix_ = getDefaultInstance().getDescriptionPrefix();
    +      bitField0_ = (bitField0_ & ~0x00000800);
           onChanged();
           return this;
         }
    @@ -6309,12 +6202,10 @@ public Builder clearDescriptionPrefix() {
          */
         public Builder setDescriptionPrefixBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           descriptionPrefix_ = value;
    +      bitField0_ |= 0x00000800;
           onChanged();
           return this;
         }
    @@ -6360,11 +6251,9 @@ public java.lang.String getDescriptionSuffix() {
          */
         public Builder setDescriptionSuffix(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           descriptionSuffix_ = value;
    +      bitField0_ |= 0x00001000;
           onChanged();
           return this;
         }
    @@ -6373,8 +6262,8 @@ public Builder setDescriptionSuffix(
          * @return This builder for chaining.
          */
         public Builder clearDescriptionSuffix() {
    -      
           descriptionSuffix_ = getDefaultInstance().getDescriptionSuffix();
    +      bitField0_ = (bitField0_ & ~0x00001000);
           onChanged();
           return this;
         }
    @@ -6385,27 +6274,13 @@ public Builder clearDescriptionSuffix() {
          */
         public Builder setDescriptionSuffixBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           descriptionSuffix_ = value;
    +      bitField0_ |= 0x00001000;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.ApiDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDefOrBuilder.java
    index 388d57e8cd5..14dadfc1643 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/api_def.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDefProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDefProtos.java
    index 6c02e1f3125..8c7940039f2 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDefProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDefProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/api_def.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class ApiDefProtos {
       private ApiDefProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ApiDefProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,27 +28,27 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_ApiDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_ApiDef_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_ApiDef_Endpoint_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_ApiDef_Endpoint_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_ApiDef_Arg_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_ApiDef_Arg_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_ApiDef_Attr_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_ApiDef_Attr_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_ApiDefs_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_ApiDefs_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -83,33 +94,34 @@ public static void registerAllExtensions(
         internal_static_tensorflow_ApiDef_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_ApiDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_ApiDef_descriptor,
             new java.lang.String[] { "GraphOpName", "DeprecationMessage", "DeprecationVersion", "Visibility", "Endpoint", "InArg", "OutArg", "ArgOrder", "Attr", "Summary", "Description", "DescriptionPrefix", "DescriptionSuffix", });
         internal_static_tensorflow_ApiDef_Endpoint_descriptor =
           internal_static_tensorflow_ApiDef_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_ApiDef_Endpoint_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_ApiDef_Endpoint_descriptor,
             new java.lang.String[] { "Name", "Deprecated", "DeprecationVersion", });
         internal_static_tensorflow_ApiDef_Arg_descriptor =
           internal_static_tensorflow_ApiDef_descriptor.getNestedTypes().get(1);
         internal_static_tensorflow_ApiDef_Arg_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_ApiDef_Arg_descriptor,
             new java.lang.String[] { "Name", "RenameTo", "Description", });
         internal_static_tensorflow_ApiDef_Attr_descriptor =
           internal_static_tensorflow_ApiDef_descriptor.getNestedTypes().get(2);
         internal_static_tensorflow_ApiDef_Attr_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_ApiDef_Attr_descriptor,
             new java.lang.String[] { "Name", "RenameTo", "DefaultValue", "Description", });
         internal_static_tensorflow_ApiDefs_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_ApiDefs_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_ApiDefs_descriptor,
             new java.lang.String[] { "Op", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.AttrValueProtos.getDescriptor();
       }
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDefs.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDefs.java
    index 5df4db339f7..a260fd1794e 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDefs.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDefs.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/api_def.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,37 +9,34 @@
      * Protobuf type {@code tensorflow.ApiDefs}
      */
     public final class ApiDefs extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.ApiDefs)
         ApiDefsOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ApiDefs.class.getName());
    +  }
       // Use ApiDefs.newBuilder() to construct.
    -  private ApiDefs(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private ApiDefs(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private ApiDefs() {
         op_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new ApiDefs();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ApiDefProtos.internal_static_tensorflow_ApiDefs_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ApiDefProtos.internal_static_tensorflow_ApiDefs_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -45,6 +44,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int OP_FIELD_NUMBER = 1;
    +  @SuppressWarnings("serial")
       private java.util.List op_;
       /**
        * repeated .tensorflow.ApiDef op = 1;
    @@ -185,39 +185,41 @@ public static org.tensorflow.proto.ApiDefs parseFrom(
       }
       public static org.tensorflow.proto.ApiDefs parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ApiDefs parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.ApiDefs parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.ApiDefs parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.ApiDefs parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ApiDefs parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -237,7 +239,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -245,7 +247,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.ApiDefs}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.ApiDefs)
           org.tensorflow.proto.ApiDefsOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -254,7 +256,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ApiDefProtos.internal_static_tensorflow_ApiDefs_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -267,13 +269,14 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           if (opBuilder_ == null) {
             op_ = java.util.Collections.emptyList();
           } else {
    @@ -307,7 +310,13 @@ public org.tensorflow.proto.ApiDefs build() {
         @java.lang.Override
         public org.tensorflow.proto.ApiDefs buildPartial() {
           org.tensorflow.proto.ApiDefs result = new org.tensorflow.proto.ApiDefs(this);
    -      int from_bitField0_ = bitField0_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.ApiDefs result) {
           if (opBuilder_ == null) {
             if (((bitField0_ & 0x00000001) != 0)) {
               op_ = java.util.Collections.unmodifiableList(op_);
    @@ -317,42 +326,12 @@ public org.tensorflow.proto.ApiDefs buildPartial() {
           } else {
             result.op_ = opBuilder_.build();
           }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.ApiDefs result) {
    +      int from_bitField0_ = bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.ApiDefs) {
    @@ -384,7 +363,7 @@ public Builder mergeFrom(org.tensorflow.proto.ApiDefs other) {
                 op_ = other.op_;
                 bitField0_ = (bitField0_ & ~0x00000001);
                 opBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getOpFieldBuilder() : null;
               } else {
                 opBuilder_.addAllMessages(other.op_);
    @@ -456,7 +435,7 @@ private void ensureOpIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ApiDef, org.tensorflow.proto.ApiDef.Builder, org.tensorflow.proto.ApiDefOrBuilder> opBuilder_;
     
         /**
    @@ -672,11 +651,11 @@ public org.tensorflow.proto.ApiDef.Builder addOpBuilder(
              getOpBuilderList() {
           return getOpFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ApiDef, org.tensorflow.proto.ApiDef.Builder, org.tensorflow.proto.ApiDefOrBuilder> 
             getOpFieldBuilder() {
           if (opBuilder_ == null) {
    -        opBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        opBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.ApiDef, org.tensorflow.proto.ApiDef.Builder, org.tensorflow.proto.ApiDefOrBuilder>(
                     op_,
                     ((bitField0_ & 0x00000001) != 0),
    @@ -686,18 +665,6 @@ public org.tensorflow.proto.ApiDef.Builder addOpBuilder(
           }
           return opBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.ApiDefs)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDefsOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDefsOrBuilder.java
    index 32127066fdd..b8ebc086863 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDefsOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ApiDefsOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/api_def.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AssetFileDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AssetFileDef.java
    index a2f10f0252a..db61fe4a55e 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AssetFileDef.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AssetFileDef.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/meta_graph.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -12,43 +14,41 @@
      * Protobuf type {@code tensorflow.AssetFileDef}
      */
     public final class AssetFileDef extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.AssetFileDef)
         AssetFileDefOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      AssetFileDef.class.getName());
    +  }
       // Use AssetFileDef.newBuilder() to construct.
    -  private AssetFileDef(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private AssetFileDef(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private AssetFileDef() {
         filename_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new AssetFileDef();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_AssetFileDef_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_AssetFileDef_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.AssetFileDef.class, org.tensorflow.proto.AssetFileDef.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int TENSOR_INFO_FIELD_NUMBER = 1;
       private org.tensorflow.proto.TensorInfo tensorInfo_;
       /**
    @@ -61,7 +61,7 @@ protected java.lang.Object newInstance(
        */
       @java.lang.Override
       public boolean hasTensorInfo() {
    -    return tensorInfo_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -84,11 +84,12 @@ public org.tensorflow.proto.TensorInfo getTensorInfo() {
        */
       @java.lang.Override
       public org.tensorflow.proto.TensorInfoOrBuilder getTensorInfoOrBuilder() {
    -    return getTensorInfo();
    +    return tensorInfo_ == null ? org.tensorflow.proto.TensorInfo.getDefaultInstance() : tensorInfo_;
       }
     
       public static final int FILENAME_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object filename_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object filename_ = "";
       /**
        * 
        * The filename within an assets directory. Note: does not include the path
    @@ -151,11 +152,11 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (tensorInfo_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(1, getTensorInfo());
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filename_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, filename_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filename_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, filename_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -166,12 +167,12 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (tensorInfo_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(1, getTensorInfo());
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filename_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, filename_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filename_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, filename_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -251,39 +252,41 @@ public static org.tensorflow.proto.AssetFileDef parseFrom(
       }
       public static org.tensorflow.proto.AssetFileDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.AssetFileDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.AssetFileDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.AssetFileDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.AssetFileDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.AssetFileDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -303,7 +306,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -316,7 +319,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.AssetFileDef}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.AssetFileDef)
           org.tensorflow.proto.AssetFileDefOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -325,7 +328,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_AssetFileDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -334,25 +337,30 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.AssetFileDef.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getTensorInfoFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    -      if (tensorInfoBuilder_ == null) {
    -        tensorInfo_ = null;
    -      } else {
    -        tensorInfo_ = null;
    +      bitField0_ = 0;
    +      tensorInfo_ = null;
    +      if (tensorInfoBuilder_ != null) {
    +        tensorInfoBuilder_.dispose();
             tensorInfoBuilder_ = null;
           }
           filename_ = "";
    -
           return this;
         }
     
    @@ -379,48 +387,26 @@ public org.tensorflow.proto.AssetFileDef build() {
         @java.lang.Override
         public org.tensorflow.proto.AssetFileDef buildPartial() {
           org.tensorflow.proto.AssetFileDef result = new org.tensorflow.proto.AssetFileDef(this);
    -      if (tensorInfoBuilder_ == null) {
    -        result.tensorInfo_ = tensorInfo_;
    -      } else {
    -        result.tensorInfo_ = tensorInfoBuilder_.build();
    -      }
    -      result.filename_ = filename_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.AssetFileDef result) {
    +      int from_bitField0_ = bitField0_;
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.tensorInfo_ = tensorInfoBuilder_ == null
    +            ? tensorInfo_
    +            : tensorInfoBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.filename_ = filename_;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.AssetFileDef) {
    @@ -438,6 +424,7 @@ public Builder mergeFrom(org.tensorflow.proto.AssetFileDef other) {
           }
           if (!other.getFilename().isEmpty()) {
             filename_ = other.filename_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -470,12 +457,12 @@ public Builder mergeFrom(
                   input.readMessage(
                       getTensorInfoFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   filename_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 default: {
    @@ -493,9 +480,10 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private org.tensorflow.proto.TensorInfo tensorInfo_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorInfo, org.tensorflow.proto.TensorInfo.Builder, org.tensorflow.proto.TensorInfoOrBuilder> tensorInfoBuilder_;
         /**
          * 
    @@ -506,7 +494,7 @@ public Builder mergeFrom(
          * @return Whether the tensorInfo field is set.
          */
         public boolean hasTensorInfo() {
    -      return tensorInfoBuilder_ != null || tensorInfo_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -536,11 +524,11 @@ public Builder setTensorInfo(org.tensorflow.proto.TensorInfo value) {
               throw new NullPointerException();
             }
             tensorInfo_ = value;
    -        onChanged();
           } else {
             tensorInfoBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000001;
    +      onChanged();
           return this;
         }
         /**
    @@ -554,11 +542,11 @@ public Builder setTensorInfo(
             org.tensorflow.proto.TensorInfo.Builder builderForValue) {
           if (tensorInfoBuilder_ == null) {
             tensorInfo_ = builderForValue.build();
    -        onChanged();
           } else {
             tensorInfoBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000001;
    +      onChanged();
           return this;
         }
         /**
    @@ -570,17 +558,20 @@ public Builder setTensorInfo(
          */
         public Builder mergeTensorInfo(org.tensorflow.proto.TensorInfo value) {
           if (tensorInfoBuilder_ == null) {
    -        if (tensorInfo_ != null) {
    -          tensorInfo_ =
    -            org.tensorflow.proto.TensorInfo.newBuilder(tensorInfo_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000001) != 0) &&
    +          tensorInfo_ != null &&
    +          tensorInfo_ != org.tensorflow.proto.TensorInfo.getDefaultInstance()) {
    +          getTensorInfoBuilder().mergeFrom(value);
             } else {
               tensorInfo_ = value;
             }
    -        onChanged();
           } else {
             tensorInfoBuilder_.mergeFrom(value);
           }
    -
    +      if (tensorInfo_ != null) {
    +        bitField0_ |= 0x00000001;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -591,14 +582,13 @@ public Builder mergeTensorInfo(org.tensorflow.proto.TensorInfo value) {
          * .tensorflow.TensorInfo tensor_info = 1;
          */
         public Builder clearTensorInfo() {
    -      if (tensorInfoBuilder_ == null) {
    -        tensorInfo_ = null;
    -        onChanged();
    -      } else {
    -        tensorInfo_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000001);
    +      tensorInfo_ = null;
    +      if (tensorInfoBuilder_ != null) {
    +        tensorInfoBuilder_.dispose();
             tensorInfoBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -609,7 +599,7 @@ public Builder clearTensorInfo() {
          * .tensorflow.TensorInfo tensor_info = 1;
          */
         public org.tensorflow.proto.TensorInfo.Builder getTensorInfoBuilder() {
    -      
    +      bitField0_ |= 0x00000001;
           onChanged();
           return getTensorInfoFieldBuilder().getBuilder();
         }
    @@ -635,11 +625,11 @@ public org.tensorflow.proto.TensorInfoOrBuilder getTensorInfoOrBuilder() {
          *
          * .tensorflow.TensorInfo tensor_info = 1;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorInfo, org.tensorflow.proto.TensorInfo.Builder, org.tensorflow.proto.TensorInfoOrBuilder> 
             getTensorInfoFieldBuilder() {
           if (tensorInfoBuilder_ == null) {
    -        tensorInfoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        tensorInfoBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorInfo, org.tensorflow.proto.TensorInfo.Builder, org.tensorflow.proto.TensorInfoOrBuilder>(
                     getTensorInfo(),
                     getParentForChildren(),
    @@ -708,11 +698,9 @@ public java.lang.String getFilename() {
          */
         public Builder setFilename(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           filename_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -727,8 +715,8 @@ public Builder setFilename(
          * @return This builder for chaining.
          */
         public Builder clearFilename() {
    -      
           filename_ = getDefaultInstance().getFilename();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -745,27 +733,13 @@ public Builder clearFilename() {
          */
         public Builder setFilenameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           filename_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.AssetFileDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AssetFileDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AssetFileDefOrBuilder.java
    index 48bf1b57107..52a03d57c0e 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AssetFileDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AssetFileDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/meta_graph.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AttrValue.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AttrValue.java
    index db04fce38a7..50282f98466 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AttrValue.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AttrValue.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/attr_value.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -13,36 +15,33 @@
      * Protobuf type {@code tensorflow.AttrValue}
      */
     public final class AttrValue extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.AttrValue)
         AttrValueOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      AttrValue.class.getName());
    +  }
       // Use AttrValue.newBuilder() to construct.
    -  private AttrValue(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private AttrValue(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private AttrValue() {
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new AttrValue();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.AttrValueProtos.internal_static_tensorflow_AttrValue_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.AttrValueProtos.internal_static_tensorflow_AttrValue_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -358,44 +357,41 @@ org.tensorflow.proto.NameAttrListOrBuilder getFuncOrBuilder(
        * Protobuf type {@code tensorflow.AttrValue.ListValue}
        */
       public static final class ListValue extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.AttrValue.ListValue)
           ListValueOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        ListValue.class.getName());
    +    }
         // Use ListValue.newBuilder() to construct.
    -    private ListValue(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private ListValue(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private ListValue() {
    -      s_ = java.util.Collections.emptyList();
    +      s_ = emptyList(com.google.protobuf.ByteString.class);
           i_ = emptyLongList();
           f_ = emptyFloatList();
           b_ = emptyBooleanList();
    -      type_ = java.util.Collections.emptyList();
    +      type_ = emptyIntList();
           shape_ = java.util.Collections.emptyList();
           tensor_ = java.util.Collections.emptyList();
           func_ = java.util.Collections.emptyList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new ListValue();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.AttrValueProtos.internal_static_tensorflow_AttrValue_ListValue_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.AttrValueProtos.internal_static_tensorflow_AttrValue_ListValue_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -403,7 +399,9 @@ protected java.lang.Object newInstance(
         }
     
         public static final int S_FIELD_NUMBER = 2;
    -    private java.util.List s_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.Internal.ProtobufList s_ =
    +        emptyList(com.google.protobuf.ByteString.class);
         /**
          * 
          * "list(string)"
    @@ -442,7 +440,9 @@ public com.google.protobuf.ByteString getS(int index) {
         }
     
         public static final int I_FIELD_NUMBER = 3;
    -    private com.google.protobuf.Internal.LongList i_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.Internal.LongList i_ =
    +        emptyLongList();
         /**
          * 
          * "list(int)"
    @@ -482,7 +482,9 @@ public long getI(int index) {
         private int iMemoizedSerializedSize = -1;
     
         public static final int F_FIELD_NUMBER = 4;
    -    private com.google.protobuf.Internal.FloatList f_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.Internal.FloatList f_ =
    +        emptyFloatList();
         /**
          * 
          * "list(float)"
    @@ -522,7 +524,9 @@ public float getF(int index) {
         private int fMemoizedSerializedSize = -1;
     
         public static final int B_FIELD_NUMBER = 5;
    -    private com.google.protobuf.Internal.BooleanList b_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.Internal.BooleanList b_ =
    +        emptyBooleanList();
         /**
          * 
          * "list(bool)"
    @@ -562,14 +566,14 @@ public boolean getB(int index) {
         private int bMemoizedSerializedSize = -1;
     
         public static final int TYPE_FIELD_NUMBER = 6;
    -    private java.util.List type_;
    -    private static final com.google.protobuf.Internal.ListAdapter.Converter<
    -        java.lang.Integer, org.tensorflow.proto.DataType> type_converter_ =
    -            new com.google.protobuf.Internal.ListAdapter.Converter<
    -                java.lang.Integer, org.tensorflow.proto.DataType>() {
    -              public org.tensorflow.proto.DataType convert(java.lang.Integer from) {
    -                @SuppressWarnings("deprecation")
    -                org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(from);
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.Internal.IntList type_;
    +    private static final com.google.protobuf.Internal.IntListAdapter.IntConverter<
    +        org.tensorflow.proto.DataType> type_converter_ =
    +            new com.google.protobuf.Internal.IntListAdapter.IntConverter<
    +                org.tensorflow.proto.DataType>() {
    +              public org.tensorflow.proto.DataType convert(int from) {
    +                org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(from);
                     return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
                   }
                 };
    @@ -583,8 +587,8 @@ public org.tensorflow.proto.DataType convert(java.lang.Integer from) {
          */
         @java.lang.Override
         public java.util.List getTypeList() {
    -      return new com.google.protobuf.Internal.ListAdapter<
    -          java.lang.Integer, org.tensorflow.proto.DataType>(type_, type_converter_);
    +      return new com.google.protobuf.Internal.IntListAdapter<
    +          org.tensorflow.proto.DataType>(type_, type_converter_);
         }
         /**
          * 
    @@ -609,7 +613,7 @@ public int getTypeCount() {
          */
         @java.lang.Override
         public org.tensorflow.proto.DataType getType(int index) {
    -      return type_converter_.convert(type_.get(index));
    +      return type_converter_.convert(type_.getInt(index));
         }
         /**
          * 
    @@ -635,11 +639,12 @@ public org.tensorflow.proto.DataType getType(int index) {
          */
         @java.lang.Override
         public int getTypeValue(int index) {
    -      return type_.get(index);
    +      return type_.getInt(index);
         }
         private int typeMemoizedSerializedSize;
     
         public static final int SHAPE_FIELD_NUMBER = 7;
    +    @SuppressWarnings("serial")
         private java.util.List shape_;
         /**
          * 
    @@ -700,6 +705,7 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder(
         }
     
         public static final int TENSOR_FIELD_NUMBER = 8;
    +    @SuppressWarnings("serial")
         private java.util.List tensor_;
         /**
          * 
    @@ -760,6 +766,7 @@ public org.tensorflow.proto.TensorProtoOrBuilder getTensorOrBuilder(
         }
     
         public static final int FUNC_FIELD_NUMBER = 9;
    +    @SuppressWarnings("serial")
         private java.util.List func_;
         /**
          * 
    @@ -863,7 +870,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
             output.writeUInt32NoTag(typeMemoizedSerializedSize);
           }
           for (int i = 0; i < type_.size(); i++) {
    -        output.writeEnumNoTag(type_.get(i));
    +        output.writeEnumNoTag(type_.getInt(i));
           }
           for (int i = 0; i < shape_.size(); i++) {
             output.writeMessage(7, shape_.get(i));
    @@ -932,7 +939,7 @@ public int getSerializedSize() {
             int dataSize = 0;
             for (int i = 0; i < type_.size(); i++) {
               dataSize += com.google.protobuf.CodedOutputStream
    -            .computeEnumSizeNoTag(type_.get(i));
    +            .computeEnumSizeNoTag(type_.getInt(i));
             }
             size += dataSize;
             if (!getTypeList().isEmpty()) {  size += 1;
    @@ -1064,39 +1071,41 @@ public static org.tensorflow.proto.AttrValue.ListValue parseFrom(
         }
         public static org.tensorflow.proto.AttrValue.ListValue parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.AttrValue.ListValue parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.AttrValue.ListValue parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.AttrValue.ListValue parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.AttrValue.ListValue parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.AttrValue.ListValue parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -1116,7 +1125,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -1128,7 +1137,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.AttrValue.ListValue}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.AttrValue.ListValue)
             org.tensorflow.proto.AttrValue.ListValueOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1137,7 +1146,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.AttrValueProtos.internal_static_tensorflow_AttrValue_ListValue_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -1150,22 +1159,19 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    -        s_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = 0;
    +        s_ = emptyList(com.google.protobuf.ByteString.class);
             i_ = emptyLongList();
    -        bitField0_ = (bitField0_ & ~0x00000002);
             f_ = emptyFloatList();
    -        bitField0_ = (bitField0_ & ~0x00000004);
             b_ = emptyBooleanList();
    -        bitField0_ = (bitField0_ & ~0x00000008);
    -        type_ = java.util.Collections.emptyList();
    +        type_ = emptyIntList();
             bitField0_ = (bitField0_ & ~0x00000010);
             if (shapeBuilder_ == null) {
               shape_ = java.util.Collections.emptyList();
    @@ -1214,29 +1220,15 @@ public org.tensorflow.proto.AttrValue.ListValue build() {
           @java.lang.Override
           public org.tensorflow.proto.AttrValue.ListValue buildPartial() {
             org.tensorflow.proto.AttrValue.ListValue result = new org.tensorflow.proto.AttrValue.ListValue(this);
    -        int from_bitField0_ = bitField0_;
    -        if (((bitField0_ & 0x00000001) != 0)) {
    -          s_ = java.util.Collections.unmodifiableList(s_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    -        }
    -        result.s_ = s_;
    -        if (((bitField0_ & 0x00000002) != 0)) {
    -          i_.makeImmutable();
    -          bitField0_ = (bitField0_ & ~0x00000002);
    -        }
    -        result.i_ = i_;
    -        if (((bitField0_ & 0x00000004) != 0)) {
    -          f_.makeImmutable();
    -          bitField0_ = (bitField0_ & ~0x00000004);
    -        }
    -        result.f_ = f_;
    -        if (((bitField0_ & 0x00000008) != 0)) {
    -          b_.makeImmutable();
    -          bitField0_ = (bitField0_ & ~0x00000008);
    -        }
    -        result.b_ = b_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.AttrValue.ListValue result) {
             if (((bitField0_ & 0x00000010) != 0)) {
    -          type_ = java.util.Collections.unmodifiableList(type_);
    +          type_.makeImmutable();
               bitField0_ = (bitField0_ & ~0x00000010);
             }
             result.type_ = type_;
    @@ -1267,42 +1259,28 @@ public org.tensorflow.proto.AttrValue.ListValue buildPartial() {
             } else {
               result.func_ = funcBuilder_.build();
             }
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.AttrValue.ListValue result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          s_.makeImmutable();
    +          result.s_ = s_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          i_.makeImmutable();
    +          result.i_ = i_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          f_.makeImmutable();
    +          result.f_ = f_;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          b_.makeImmutable();
    +          result.b_ = b_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.AttrValue.ListValue) {
    @@ -1318,7 +1296,8 @@ public Builder mergeFrom(org.tensorflow.proto.AttrValue.ListValue other) {
             if (!other.s_.isEmpty()) {
               if (s_.isEmpty()) {
                 s_ = other.s_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            s_.makeImmutable();
    +            bitField0_ |= 0x00000001;
               } else {
                 ensureSIsMutable();
                 s_.addAll(other.s_);
    @@ -1328,7 +1307,8 @@ public Builder mergeFrom(org.tensorflow.proto.AttrValue.ListValue other) {
             if (!other.i_.isEmpty()) {
               if (i_.isEmpty()) {
                 i_ = other.i_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            i_.makeImmutable();
    +            bitField0_ |= 0x00000002;
               } else {
                 ensureIIsMutable();
                 i_.addAll(other.i_);
    @@ -1338,7 +1318,8 @@ public Builder mergeFrom(org.tensorflow.proto.AttrValue.ListValue other) {
             if (!other.f_.isEmpty()) {
               if (f_.isEmpty()) {
                 f_ = other.f_;
    -            bitField0_ = (bitField0_ & ~0x00000004);
    +            f_.makeImmutable();
    +            bitField0_ |= 0x00000004;
               } else {
                 ensureFIsMutable();
                 f_.addAll(other.f_);
    @@ -1348,7 +1329,8 @@ public Builder mergeFrom(org.tensorflow.proto.AttrValue.ListValue other) {
             if (!other.b_.isEmpty()) {
               if (b_.isEmpty()) {
                 b_ = other.b_;
    -            bitField0_ = (bitField0_ & ~0x00000008);
    +            b_.makeImmutable();
    +            bitField0_ |= 0x00000008;
               } else {
                 ensureBIsMutable();
                 b_.addAll(other.b_);
    @@ -1384,7 +1366,7 @@ public Builder mergeFrom(org.tensorflow.proto.AttrValue.ListValue other) {
                   shape_ = other.shape_;
                   bitField0_ = (bitField0_ & ~0x00000020);
                   shapeBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getShapeFieldBuilder() : null;
                 } else {
                   shapeBuilder_.addAllMessages(other.shape_);
    @@ -1410,7 +1392,7 @@ public Builder mergeFrom(org.tensorflow.proto.AttrValue.ListValue other) {
                   tensor_ = other.tensor_;
                   bitField0_ = (bitField0_ & ~0x00000040);
                   tensorBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getTensorFieldBuilder() : null;
                 } else {
                   tensorBuilder_.addAllMessages(other.tensor_);
    @@ -1436,7 +1418,7 @@ public Builder mergeFrom(org.tensorflow.proto.AttrValue.ListValue other) {
                   func_ = other.func_;
                   bitField0_ = (bitField0_ & ~0x00000080);
                   funcBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getFuncFieldBuilder() : null;
                 } else {
                   funcBuilder_.addAllMessages(other.func_);
    @@ -1500,7 +1482,8 @@ public Builder mergeFrom(
                   case 34: {
                     int length = input.readRawVarint32();
                     int limit = input.pushLimit(length);
    -                ensureFIsMutable();
    +                int alloc = length > 4096 ? 4096 : length;
    +                ensureFIsMutable(alloc / 4);
                     while (input.getBytesUntilLimit() > 0) {
                       f_.addFloat(input.readFloat());
                     }
    @@ -1516,7 +1499,8 @@ public Builder mergeFrom(
                   case 42: {
                     int length = input.readRawVarint32();
                     int limit = input.pushLimit(length);
    -                ensureBIsMutable();
    +                int alloc = length > 4096 ? 4096 : length;
    +                ensureBIsMutable(alloc / 1);
                     while (input.getBytesUntilLimit() > 0) {
                       b_.addBoolean(input.readBool());
                     }
    @@ -1526,7 +1510,7 @@ public Builder mergeFrom(
                   case 48: {
                     int tmpRaw = input.readEnum();
                     ensureTypeIsMutable();
    -                type_.add(tmpRaw);
    +                type_.addInt(tmpRaw);
                     break;
                   } // case 48
                   case 50: {
    @@ -1535,7 +1519,7 @@ public Builder mergeFrom(
                     while(input.getBytesUntilLimit() > 0) {
                       int tmpRaw = input.readEnum();
                       ensureTypeIsMutable();
    -                  type_.add(tmpRaw);
    +                  type_.addInt(tmpRaw);
                     }
                     input.popLimit(oldLimit);
                     break;
    @@ -1596,12 +1580,12 @@ public Builder mergeFrom(
           }
           private int bitField0_;
     
    -      private java.util.List s_ = java.util.Collections.emptyList();
    +      private com.google.protobuf.Internal.ProtobufList s_ = emptyList(com.google.protobuf.ByteString.class);
           private void ensureSIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    -          s_ = new java.util.ArrayList(s_);
    -          bitField0_ |= 0x00000001;
    -         }
    +        if (!s_.isModifiable()) {
    +          s_ = makeMutableCopy(s_);
    +        }
    +        bitField0_ |= 0x00000001;
           }
           /**
            * 
    @@ -1613,8 +1597,8 @@ private void ensureSIsMutable() {
            */
           public java.util.List
               getSList() {
    -        return ((bitField0_ & 0x00000001) != 0) ?
    -                 java.util.Collections.unmodifiableList(s_) : s_;
    +        s_.makeImmutable();
    +        return s_;
           }
           /**
            * 
    @@ -1651,11 +1635,10 @@ public com.google.protobuf.ByteString getS(int index) {
            */
           public Builder setS(
               int index, com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureSIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureSIsMutable();
             s_.set(index, value);
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -1669,11 +1652,10 @@ public Builder setS(
            * @return This builder for chaining.
            */
           public Builder addS(com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureSIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureSIsMutable();
             s_.add(value);
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -1691,6 +1673,7 @@ public Builder addAllS(
             ensureSIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, s_);
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -1703,7 +1686,7 @@ public Builder addAllS(
            * @return This builder for chaining.
            */
           public Builder clearS() {
    -        s_ = java.util.Collections.emptyList();
    +        s_ = emptyList(com.google.protobuf.ByteString.class);
             bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
    @@ -1711,10 +1694,10 @@ public Builder clearS() {
     
           private com.google.protobuf.Internal.LongList i_ = emptyLongList();
           private void ensureIIsMutable() {
    -        if (!((bitField0_ & 0x00000002) != 0)) {
    -          i_ = mutableCopy(i_);
    -          bitField0_ |= 0x00000002;
    -         }
    +        if (!i_.isModifiable()) {
    +          i_ = makeMutableCopy(i_);
    +        }
    +        bitField0_ |= 0x00000002;
           }
           /**
            * 
    @@ -1726,8 +1709,8 @@ private void ensureIIsMutable() {
            */
           public java.util.List
               getIList() {
    -        return ((bitField0_ & 0x00000002) != 0) ?
    -                 java.util.Collections.unmodifiableList(i_) : i_;
    +        i_.makeImmutable();
    +        return i_;
           }
           /**
            * 
    @@ -1764,8 +1747,10 @@ public long getI(int index) {
            */
           public Builder setI(
               int index, long value) {
    +
             ensureIIsMutable();
             i_.setLong(index, value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1779,8 +1764,10 @@ public Builder setI(
            * @return This builder for chaining.
            */
           public Builder addI(long value) {
    +
             ensureIIsMutable();
             i_.addLong(value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1798,6 +1785,7 @@ public Builder addAllI(
             ensureIIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, i_);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1818,10 +1806,16 @@ public Builder clearI() {
     
           private com.google.protobuf.Internal.FloatList f_ = emptyFloatList();
           private void ensureFIsMutable() {
    -        if (!((bitField0_ & 0x00000004) != 0)) {
    -          f_ = mutableCopy(f_);
    -          bitField0_ |= 0x00000004;
    -         }
    +        if (!f_.isModifiable()) {
    +          f_ = makeMutableCopy(f_);
    +        }
    +        bitField0_ |= 0x00000004;
    +      }
    +      private void ensureFIsMutable(int capacity) {
    +        if (!f_.isModifiable()) {
    +          f_ = makeMutableCopy(f_, capacity);
    +        }
    +        bitField0_ |= 0x00000004;
           }
           /**
            * 
    @@ -1833,8 +1827,8 @@ private void ensureFIsMutable() {
            */
           public java.util.List
               getFList() {
    -        return ((bitField0_ & 0x00000004) != 0) ?
    -                 java.util.Collections.unmodifiableList(f_) : f_;
    +        f_.makeImmutable();
    +        return f_;
           }
           /**
            * 
    @@ -1871,8 +1865,10 @@ public float getF(int index) {
            */
           public Builder setF(
               int index, float value) {
    +
             ensureFIsMutable();
             f_.setFloat(index, value);
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1886,8 +1882,10 @@ public Builder setF(
            * @return This builder for chaining.
            */
           public Builder addF(float value) {
    +
             ensureFIsMutable();
             f_.addFloat(value);
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1905,6 +1903,7 @@ public Builder addAllF(
             ensureFIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, f_);
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1925,10 +1924,16 @@ public Builder clearF() {
     
           private com.google.protobuf.Internal.BooleanList b_ = emptyBooleanList();
           private void ensureBIsMutable() {
    -        if (!((bitField0_ & 0x00000008) != 0)) {
    -          b_ = mutableCopy(b_);
    -          bitField0_ |= 0x00000008;
    -         }
    +        if (!b_.isModifiable()) {
    +          b_ = makeMutableCopy(b_);
    +        }
    +        bitField0_ |= 0x00000008;
    +      }
    +      private void ensureBIsMutable(int capacity) {
    +        if (!b_.isModifiable()) {
    +          b_ = makeMutableCopy(b_, capacity);
    +        }
    +        bitField0_ |= 0x00000008;
           }
           /**
            * 
    @@ -1940,8 +1945,8 @@ private void ensureBIsMutable() {
            */
           public java.util.List
               getBList() {
    -        return ((bitField0_ & 0x00000008) != 0) ?
    -                 java.util.Collections.unmodifiableList(b_) : b_;
    +        b_.makeImmutable();
    +        return b_;
           }
           /**
            * 
    @@ -1978,8 +1983,10 @@ public boolean getB(int index) {
            */
           public Builder setB(
               int index, boolean value) {
    +
             ensureBIsMutable();
             b_.setBoolean(index, value);
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -1993,8 +2000,10 @@ public Builder setB(
            * @return This builder for chaining.
            */
           public Builder addB(boolean value) {
    +
             ensureBIsMutable();
             b_.addBoolean(value);
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -2012,6 +2021,7 @@ public Builder addAllB(
             ensureBIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, b_);
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -2030,11 +2040,11 @@ public Builder clearB() {
             return this;
           }
     
    -      private java.util.List type_ =
    -        java.util.Collections.emptyList();
    +      private com.google.protobuf.Internal.IntList type_ =
    +        emptyIntList();
           private void ensureTypeIsMutable() {
             if (!((bitField0_ & 0x00000010) != 0)) {
    -          type_ = new java.util.ArrayList(type_);
    +          type_ = makeMutableCopy(type_);
               bitField0_ |= 0x00000010;
             }
           }
    @@ -2047,8 +2057,8 @@ private void ensureTypeIsMutable() {
            * @return A list containing the type.
            */
           public java.util.List getTypeList() {
    -        return new com.google.protobuf.Internal.ListAdapter<
    -            java.lang.Integer, org.tensorflow.proto.DataType>(type_, type_converter_);
    +        return new com.google.protobuf.Internal.IntListAdapter<
    +            org.tensorflow.proto.DataType>(type_, type_converter_);
           }
           /**
            * 
    @@ -2071,7 +2081,7 @@ public int getTypeCount() {
            * @return The type at the given index.
            */
           public org.tensorflow.proto.DataType getType(int index) {
    -        return type_converter_.convert(type_.get(index));
    +        return type_converter_.convert(type_.getInt(index));
           }
           /**
            * 
    @@ -2089,7 +2099,7 @@ public Builder setType(
               throw new NullPointerException();
             }
             ensureTypeIsMutable();
    -        type_.set(index, value.getNumber());
    +        type_.setInt(index, value.getNumber());
             onChanged();
             return this;
           }
    @@ -2107,7 +2117,7 @@ public Builder addType(org.tensorflow.proto.DataType value) {
               throw new NullPointerException();
             }
             ensureTypeIsMutable();
    -        type_.add(value.getNumber());
    +        type_.addInt(value.getNumber());
             onChanged();
             return this;
           }
    @@ -2124,7 +2134,7 @@ public Builder addAllType(
               java.lang.Iterable values) {
             ensureTypeIsMutable();
             for (org.tensorflow.proto.DataType value : values) {
    -          type_.add(value.getNumber());
    +          type_.addInt(value.getNumber());
             }
             onChanged();
             return this;
    @@ -2138,7 +2148,7 @@ public Builder addAllType(
            * @return This builder for chaining.
            */
           public Builder clearType() {
    -        type_ = java.util.Collections.emptyList();
    +        type_ = emptyIntList();
             bitField0_ = (bitField0_ & ~0x00000010);
             onChanged();
             return this;
    @@ -2165,7 +2175,7 @@ public Builder clearType() {
            * @return The enum numeric value on the wire of type at the given index.
            */
           public int getTypeValue(int index) {
    -        return type_.get(index);
    +        return type_.getInt(index);
           }
           /**
            * 
    @@ -2180,7 +2190,7 @@ public int getTypeValue(int index) {
           public Builder setTypeValue(
               int index, int value) {
             ensureTypeIsMutable();
    -        type_.set(index, value);
    +        type_.setInt(index, value);
             onChanged();
             return this;
           }
    @@ -2195,7 +2205,7 @@ public Builder setTypeValue(
            */
           public Builder addTypeValue(int value) {
             ensureTypeIsMutable();
    -        type_.add(value);
    +        type_.addInt(value);
             onChanged();
             return this;
           }
    @@ -2212,7 +2222,7 @@ public Builder addAllTypeValue(
               java.lang.Iterable values) {
             ensureTypeIsMutable();
             for (int value : values) {
    -          type_.add(value);
    +          type_.addInt(value);
             }
             onChanged();
             return this;
    @@ -2227,7 +2237,7 @@ private void ensureShapeIsMutable() {
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> shapeBuilder_;
     
           /**
    @@ -2515,11 +2525,11 @@ public org.tensorflow.proto.TensorShapeProto.Builder addShapeBuilder(
                getShapeBuilderList() {
             return getShapeFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> 
               getShapeFieldBuilder() {
             if (shapeBuilder_ == null) {
    -          shapeBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          shapeBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>(
                       shape_,
                       ((bitField0_ & 0x00000020) != 0),
    @@ -2539,7 +2549,7 @@ private void ensureTensorIsMutable() {
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> tensorBuilder_;
     
           /**
    @@ -2827,11 +2837,11 @@ public org.tensorflow.proto.TensorProto.Builder addTensorBuilder(
                getTensorBuilderList() {
             return getTensorFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> 
               getTensorFieldBuilder() {
             if (tensorBuilder_ == null) {
    -          tensorBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          tensorBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder>(
                       tensor_,
                       ((bitField0_ & 0x00000040) != 0),
    @@ -2851,7 +2861,7 @@ private void ensureFuncIsMutable() {
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.NameAttrList, org.tensorflow.proto.NameAttrList.Builder, org.tensorflow.proto.NameAttrListOrBuilder> funcBuilder_;
     
           /**
    @@ -3139,11 +3149,11 @@ public org.tensorflow.proto.NameAttrList.Builder addFuncBuilder(
                getFuncBuilderList() {
             return getFuncFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.NameAttrList, org.tensorflow.proto.NameAttrList.Builder, org.tensorflow.proto.NameAttrListOrBuilder> 
               getFuncFieldBuilder() {
             if (funcBuilder_ == null) {
    -          funcBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          funcBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.NameAttrList, org.tensorflow.proto.NameAttrList.Builder, org.tensorflow.proto.NameAttrListOrBuilder>(
                       func_,
                       ((bitField0_ & 0x00000080) != 0),
    @@ -3153,18 +3163,6 @@ public org.tensorflow.proto.NameAttrList.Builder addFuncBuilder(
             }
             return funcBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.AttrValue.ListValue)
         }
    @@ -3218,6 +3216,7 @@ public org.tensorflow.proto.AttrValue.ListValue getDefaultInstanceForType() {
       }
     
       private int valueCase_ = 0;
    +  @SuppressWarnings("serial")
       private java.lang.Object value_;
       public enum ValueCase
           implements com.google.protobuf.Internal.EnumLite,
    @@ -3426,8 +3425,7 @@ public int getTypeValue() {
        */
       public org.tensorflow.proto.DataType getType() {
         if (valueCase_ == 6) {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(
    +      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(
               (java.lang.Integer) value_);
           return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
         }
    @@ -3740,7 +3738,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           output.writeMessage(8, (org.tensorflow.proto.TensorProto) value_);
         }
         if (valueCase_ == 9) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 9, value_);
    +      com.google.protobuf.GeneratedMessage.writeString(output, 9, value_);
         }
         if (valueCase_ == 10) {
           output.writeMessage(10, (org.tensorflow.proto.NameAttrList) value_);
    @@ -3791,7 +3789,7 @@ public int getSerializedSize() {
             .computeMessageSize(8, (org.tensorflow.proto.TensorProto) value_);
         }
         if (valueCase_ == 9) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(9, value_);
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(9, value_);
         }
         if (valueCase_ == 10) {
           size += com.google.protobuf.CodedOutputStream
    @@ -3955,39 +3953,41 @@ public static org.tensorflow.proto.AttrValue parseFrom(
       }
       public static org.tensorflow.proto.AttrValue parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.AttrValue parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.AttrValue parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.AttrValue parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.AttrValue parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.AttrValue parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -4007,7 +4007,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -4021,7 +4021,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.AttrValue}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.AttrValue)
           org.tensorflow.proto.AttrValueOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -4030,7 +4030,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.AttrValueProtos.internal_static_tensorflow_AttrValue_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -4043,13 +4043,14 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           if (shapeBuilder_ != null) {
             shapeBuilder_.clear();
           }
    @@ -4090,89 +4091,37 @@ public org.tensorflow.proto.AttrValue build() {
         @java.lang.Override
         public org.tensorflow.proto.AttrValue buildPartial() {
           org.tensorflow.proto.AttrValue result = new org.tensorflow.proto.AttrValue(this);
    -      if (valueCase_ == 2) {
    -        result.value_ = value_;
    -      }
    -      if (valueCase_ == 3) {
    -        result.value_ = value_;
    -      }
    -      if (valueCase_ == 4) {
    -        result.value_ = value_;
    -      }
    -      if (valueCase_ == 5) {
    -        result.value_ = value_;
    -      }
    -      if (valueCase_ == 6) {
    -        result.value_ = value_;
    -      }
    -      if (valueCase_ == 7) {
    -        if (shapeBuilder_ == null) {
    -          result.value_ = value_;
    -        } else {
    -          result.value_ = shapeBuilder_.build();
    -        }
    -      }
    -      if (valueCase_ == 8) {
    -        if (tensorBuilder_ == null) {
    -          result.value_ = value_;
    -        } else {
    -          result.value_ = tensorBuilder_.build();
    -        }
    -      }
    -      if (valueCase_ == 1) {
    -        if (listBuilder_ == null) {
    -          result.value_ = value_;
    -        } else {
    -          result.value_ = listBuilder_.build();
    -        }
    -      }
    -      if (valueCase_ == 10) {
    -        if (funcBuilder_ == null) {
    -          result.value_ = value_;
    -        } else {
    -          result.value_ = funcBuilder_.build();
    -        }
    -      }
    -      if (valueCase_ == 9) {
    -        result.value_ = value_;
    -      }
    -      result.valueCase_ = valueCase_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      buildPartialOneofs(result);
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    +    private void buildPartial0(org.tensorflow.proto.AttrValue result) {
    +      int from_bitField0_ = bitField0_;
         }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +
    +    private void buildPartialOneofs(org.tensorflow.proto.AttrValue result) {
    +      result.valueCase_ = valueCase_;
    +      result.value_ = this.value_;
    +      if (valueCase_ == 7 &&
    +          shapeBuilder_ != null) {
    +        result.value_ = shapeBuilder_.build();
    +      }
    +      if (valueCase_ == 8 &&
    +          tensorBuilder_ != null) {
    +        result.value_ = tensorBuilder_.build();
    +      }
    +      if (valueCase_ == 1 &&
    +          listBuilder_ != null) {
    +        result.value_ = listBuilder_.build();
    +      }
    +      if (valueCase_ == 10 &&
    +          funcBuilder_ != null) {
    +        result.value_ = funcBuilder_.build();
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.AttrValue) {
    @@ -4348,6 +4297,7 @@ public Builder clearValue() {
           return this;
         }
     
    +    private int bitField0_;
     
         /**
          * 
    @@ -4384,10 +4334,8 @@ public com.google.protobuf.ByteString getS() {
          * @return This builder for chaining.
          */
         public Builder setS(com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  valueCase_ = 2;
    +      if (value == null) { throw new NullPointerException(); }
    +      valueCase_ = 2;
           value_ = value;
           onChanged();
           return this;
    @@ -4444,6 +4392,7 @@ public long getI() {
          * @return This builder for chaining.
          */
         public Builder setI(long value) {
    +
           valueCase_ = 3;
           value_ = value;
           onChanged();
    @@ -4501,6 +4450,7 @@ public float getF() {
          * @return This builder for chaining.
          */
         public Builder setF(float value) {
    +
           valueCase_ = 4;
           value_ = value;
           onChanged();
    @@ -4558,6 +4508,7 @@ public boolean getB() {
          * @return This builder for chaining.
          */
         public Builder setB(boolean value) {
    +
           valueCase_ = 5;
           value_ = value;
           onChanged();
    @@ -4633,8 +4584,7 @@ public Builder setTypeValue(int value) {
         @java.lang.Override
         public org.tensorflow.proto.DataType getType() {
           if (valueCase_ == 6) {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(
    +        org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(
                 (java.lang.Integer) value_);
             return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
           }
    @@ -4675,7 +4625,7 @@ public Builder clearType() {
           return this;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> shapeBuilder_;
         /**
          * 
    @@ -4834,14 +4784,14 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
          *
          * .tensorflow.TensorShapeProto shape = 7;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> 
             getShapeFieldBuilder() {
           if (shapeBuilder_ == null) {
             if (!(valueCase_ == 7)) {
               value_ = org.tensorflow.proto.TensorShapeProto.getDefaultInstance();
             }
    -        shapeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        shapeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>(
                     (org.tensorflow.proto.TensorShapeProto) value_,
                     getParentForChildren(),
    @@ -4849,11 +4799,11 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
             value_ = null;
           }
           valueCase_ = 7;
    -      onChanged();;
    +      onChanged();
           return shapeBuilder_;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> tensorBuilder_;
         /**
          * 
    @@ -5012,14 +4962,14 @@ public org.tensorflow.proto.TensorProtoOrBuilder getTensorOrBuilder() {
          *
          * .tensorflow.TensorProto tensor = 8;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> 
             getTensorFieldBuilder() {
           if (tensorBuilder_ == null) {
             if (!(valueCase_ == 8)) {
               value_ = org.tensorflow.proto.TensorProto.getDefaultInstance();
             }
    -        tensorBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        tensorBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder>(
                     (org.tensorflow.proto.TensorProto) value_,
                     getParentForChildren(),
    @@ -5027,11 +4977,11 @@ public org.tensorflow.proto.TensorProtoOrBuilder getTensorOrBuilder() {
             value_ = null;
           }
           valueCase_ = 8;
    -      onChanged();;
    +      onChanged();
           return tensorBuilder_;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.AttrValue.ListValue, org.tensorflow.proto.AttrValue.ListValue.Builder, org.tensorflow.proto.AttrValue.ListValueOrBuilder> listBuilder_;
         /**
          * 
    @@ -5190,14 +5140,14 @@ public org.tensorflow.proto.AttrValue.ListValueOrBuilder getListOrBuilder() {
          *
          * .tensorflow.AttrValue.ListValue list = 1;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.AttrValue.ListValue, org.tensorflow.proto.AttrValue.ListValue.Builder, org.tensorflow.proto.AttrValue.ListValueOrBuilder> 
             getListFieldBuilder() {
           if (listBuilder_ == null) {
             if (!(valueCase_ == 1)) {
               value_ = org.tensorflow.proto.AttrValue.ListValue.getDefaultInstance();
             }
    -        listBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        listBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.AttrValue.ListValue, org.tensorflow.proto.AttrValue.ListValue.Builder, org.tensorflow.proto.AttrValue.ListValueOrBuilder>(
                     (org.tensorflow.proto.AttrValue.ListValue) value_,
                     getParentForChildren(),
    @@ -5205,11 +5155,11 @@ public org.tensorflow.proto.AttrValue.ListValueOrBuilder getListOrBuilder() {
             value_ = null;
           }
           valueCase_ = 1;
    -      onChanged();;
    +      onChanged();
           return listBuilder_;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.NameAttrList, org.tensorflow.proto.NameAttrList.Builder, org.tensorflow.proto.NameAttrListOrBuilder> funcBuilder_;
         /**
          * 
    @@ -5395,14 +5345,14 @@ public org.tensorflow.proto.NameAttrListOrBuilder getFuncOrBuilder() {
          *
          * .tensorflow.NameAttrList func = 10;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.NameAttrList, org.tensorflow.proto.NameAttrList.Builder, org.tensorflow.proto.NameAttrListOrBuilder> 
             getFuncFieldBuilder() {
           if (funcBuilder_ == null) {
             if (!(valueCase_ == 10)) {
               value_ = org.tensorflow.proto.NameAttrList.getDefaultInstance();
             }
    -        funcBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        funcBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.NameAttrList, org.tensorflow.proto.NameAttrList.Builder, org.tensorflow.proto.NameAttrListOrBuilder>(
                     (org.tensorflow.proto.NameAttrList) value_,
                     getParentForChildren(),
    @@ -5410,7 +5360,7 @@ public org.tensorflow.proto.NameAttrListOrBuilder getFuncOrBuilder() {
             value_ = null;
           }
           valueCase_ = 10;
    -      onChanged();;
    +      onChanged();
           return funcBuilder_;
         }
     
    @@ -5514,10 +5464,8 @@ public java.lang.String getPlaceholder() {
          */
         public Builder setPlaceholder(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  valueCase_ = 9;
    +      if (value == null) { throw new NullPointerException(); }
    +      valueCase_ = 9;
           value_ = value;
           onChanged();
           return this;
    @@ -5561,27 +5509,13 @@ public Builder clearPlaceholder() {
          */
         public Builder setPlaceholderBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           valueCase_ = 9;
           value_ = value;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.AttrValue)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AttrValueOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AttrValueOrBuilder.java
    index 5dc778e642e..88837631bad 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AttrValueOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AttrValueOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/attr_value.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -275,5 +277,5 @@ public interface AttrValueOrBuilder extends
       com.google.protobuf.ByteString
           getPlaceholderBytes();
     
    -  public org.tensorflow.proto.AttrValue.ValueCase getValueCase();
    +  org.tensorflow.proto.AttrValue.ValueCase getValueCase();
     }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AttrValueProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AttrValueProtos.java
    index e444e942611..e37ba3edf83 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AttrValueProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AttrValueProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/attr_value.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class AttrValueProtos {
       private AttrValueProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      AttrValueProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,22 +28,22 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_AttrValue_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_AttrValue_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_AttrValue_ListValue_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_AttrValue_ListValue_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_NameAttrList_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_NameAttrList_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_NameAttrList_AttrEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_NameAttrList_AttrEntry_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -80,27 +91,28 @@ public static void registerAllExtensions(
         internal_static_tensorflow_AttrValue_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_AttrValue_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_AttrValue_descriptor,
             new java.lang.String[] { "S", "I", "F", "B", "Type", "Shape", "Tensor", "List", "Func", "Placeholder", "Value", });
         internal_static_tensorflow_AttrValue_ListValue_descriptor =
           internal_static_tensorflow_AttrValue_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_AttrValue_ListValue_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_AttrValue_ListValue_descriptor,
             new java.lang.String[] { "S", "I", "F", "B", "Type", "Shape", "Tensor", "Func", });
         internal_static_tensorflow_NameAttrList_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_NameAttrList_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_NameAttrList_descriptor,
             new java.lang.String[] { "Name", "Attr", });
         internal_static_tensorflow_NameAttrList_AttrEntry_descriptor =
           internal_static_tensorflow_NameAttrList_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_NameAttrList_AttrEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_NameAttrList_AttrEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.TensorProtos.getDescriptor();
         org.tensorflow.proto.TensorShapeProtos.getDescriptor();
         org.tensorflow.proto.TypesProtos.getDescriptor();
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AutoParallelOptions.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AutoParallelOptions.java
    index 18506fb1b87..9c98cce7b81 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AutoParallelOptions.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AutoParallelOptions.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/rewriter_config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,36 +9,33 @@
      * Protobuf type {@code tensorflow.AutoParallelOptions}
      */
     public final class AutoParallelOptions extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.AutoParallelOptions)
         AutoParallelOptionsOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      AutoParallelOptions.class.getName());
    +  }
       // Use AutoParallelOptions.newBuilder() to construct.
    -  private AutoParallelOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private AutoParallelOptions(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private AutoParallelOptions() {
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new AutoParallelOptions();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.RewriterConfigProtos.internal_static_tensorflow_AutoParallelOptions_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.RewriterConfigProtos.internal_static_tensorflow_AutoParallelOptions_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -44,7 +43,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int ENABLE_FIELD_NUMBER = 1;
    -  private boolean enable_;
    +  private boolean enable_ = false;
       /**
        * bool enable = 1;
        * @return The enable.
    @@ -55,7 +54,7 @@ public boolean getEnable() {
       }
     
       public static final int NUM_REPLICAS_FIELD_NUMBER = 2;
    -  private int numReplicas_;
    +  private int numReplicas_ = 0;
       /**
        * int32 num_replicas = 2;
        * @return The numReplicas.
    @@ -176,39 +175,41 @@ public static org.tensorflow.proto.AutoParallelOptions parseFrom(
       }
       public static org.tensorflow.proto.AutoParallelOptions parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.AutoParallelOptions parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.AutoParallelOptions parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.AutoParallelOptions parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.AutoParallelOptions parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.AutoParallelOptions parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -228,7 +229,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -236,7 +237,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.AutoParallelOptions}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.AutoParallelOptions)
           org.tensorflow.proto.AutoParallelOptionsOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -245,7 +246,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.RewriterConfigProtos.internal_static_tensorflow_AutoParallelOptions_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -258,17 +259,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           enable_ = false;
    -
           numReplicas_ = 0;
    -
           return this;
         }
     
    @@ -295,44 +295,21 @@ public org.tensorflow.proto.AutoParallelOptions build() {
         @java.lang.Override
         public org.tensorflow.proto.AutoParallelOptions buildPartial() {
           org.tensorflow.proto.AutoParallelOptions result = new org.tensorflow.proto.AutoParallelOptions(this);
    -      result.enable_ = enable_;
    -      result.numReplicas_ = numReplicas_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.AutoParallelOptions result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.enable_ = enable_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.numReplicas_ = numReplicas_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.AutoParallelOptions) {
    @@ -379,12 +356,12 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   enable_ = input.readBool();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 16: {
                   numReplicas_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 default: {
    @@ -402,6 +379,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private boolean enable_ ;
         /**
    @@ -418,8 +396,9 @@ public boolean getEnable() {
          * @return This builder for chaining.
          */
         public Builder setEnable(boolean value) {
    -      
    +
           enable_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -428,7 +407,7 @@ public Builder setEnable(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearEnable() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           enable_ = false;
           onChanged();
           return this;
    @@ -449,8 +428,9 @@ public int getNumReplicas() {
          * @return This builder for chaining.
          */
         public Builder setNumReplicas(int value) {
    -      
    +
           numReplicas_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -459,23 +439,11 @@ public Builder setNumReplicas(int value) {
          * @return This builder for chaining.
          */
         public Builder clearNumReplicas() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           numReplicas_ = 0;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.AutoParallelOptions)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AutoParallelOptionsOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AutoParallelOptionsOrBuilder.java
    index e673fb4ec6a..2220bc1d192 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AutoParallelOptionsOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AutoParallelOptionsOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/rewriter_config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AvailableDeviceInfo.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AvailableDeviceInfo.java
    index e71192c47b2..174ab3c3307 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AvailableDeviceInfo.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AvailableDeviceInfo.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,12 +13,21 @@
      * Protobuf type {@code tensorflow.AvailableDeviceInfo}
      */
     public final class AvailableDeviceInfo extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.AvailableDeviceInfo)
         AvailableDeviceInfoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      AvailableDeviceInfo.class.getName());
    +  }
       // Use AvailableDeviceInfo.newBuilder() to construct.
    -  private AvailableDeviceInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private AvailableDeviceInfo(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private AvailableDeviceInfo() {
    @@ -25,25 +36,13 @@ private AvailableDeviceInfo() {
         physicalDescription_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new AvailableDeviceInfo();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_AvailableDeviceInfo_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_AvailableDeviceInfo_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -51,7 +50,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object name_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object name_ = "";
       /**
        * 
        * Device name.
    @@ -97,7 +97,8 @@ public java.lang.String getName() {
       }
     
       public static final int TYPE_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object type_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object type_ = "";
       /**
        * 
        * Device type, e.g. 'CPU' or 'GPU'.
    @@ -143,7 +144,7 @@ public java.lang.String getType() {
       }
     
       public static final int MEMORY_LIMIT_FIELD_NUMBER = 3;
    -  private long memoryLimit_;
    +  private long memoryLimit_ = 0L;
       /**
        * 
        * Memory capacity in bytes.
    @@ -158,7 +159,8 @@ public long getMemoryLimit() {
       }
     
       public static final int PHYSICAL_DESCRIPTION_FIELD_NUMBER = 4;
    -  private volatile java.lang.Object physicalDescription_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object physicalDescription_ = "";
       /**
        * 
        * The physical description of this device.
    @@ -217,17 +219,17 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(type_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, type_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(type_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, type_);
         }
         if (memoryLimit_ != 0L) {
           output.writeInt64(3, memoryLimit_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(physicalDescription_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 4, physicalDescription_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(physicalDescription_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 4, physicalDescription_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -238,18 +240,18 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(type_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, type_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(type_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, type_);
         }
         if (memoryLimit_ != 0L) {
           size += com.google.protobuf.CodedOutputStream
             .computeInt64Size(3, memoryLimit_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(physicalDescription_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, physicalDescription_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(physicalDescription_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(4, physicalDescription_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -333,39 +335,41 @@ public static org.tensorflow.proto.AvailableDeviceInfo parseFrom(
       }
       public static org.tensorflow.proto.AvailableDeviceInfo parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.AvailableDeviceInfo parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.AvailableDeviceInfo parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.AvailableDeviceInfo parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.AvailableDeviceInfo parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.AvailableDeviceInfo parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -385,7 +389,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -397,7 +401,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.AvailableDeviceInfo}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.AvailableDeviceInfo)
           org.tensorflow.proto.AvailableDeviceInfoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -406,7 +410,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_AvailableDeviceInfo_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -419,21 +423,18 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           name_ = "";
    -
           type_ = "";
    -
           memoryLimit_ = 0L;
    -
           physicalDescription_ = "";
    -
           return this;
         }
     
    @@ -460,46 +461,27 @@ public org.tensorflow.proto.AvailableDeviceInfo build() {
         @java.lang.Override
         public org.tensorflow.proto.AvailableDeviceInfo buildPartial() {
           org.tensorflow.proto.AvailableDeviceInfo result = new org.tensorflow.proto.AvailableDeviceInfo(this);
    -      result.name_ = name_;
    -      result.type_ = type_;
    -      result.memoryLimit_ = memoryLimit_;
    -      result.physicalDescription_ = physicalDescription_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.AvailableDeviceInfo result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.name_ = name_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.type_ = type_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.memoryLimit_ = memoryLimit_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.physicalDescription_ = physicalDescription_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.AvailableDeviceInfo) {
    @@ -514,10 +496,12 @@ public Builder mergeFrom(org.tensorflow.proto.AvailableDeviceInfo other) {
           if (other == org.tensorflow.proto.AvailableDeviceInfo.getDefaultInstance()) return this;
           if (!other.getName().isEmpty()) {
             name_ = other.name_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getType().isEmpty()) {
             type_ = other.type_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (other.getMemoryLimit() != 0L) {
    @@ -525,6 +509,7 @@ public Builder mergeFrom(org.tensorflow.proto.AvailableDeviceInfo other) {
           }
           if (!other.getPhysicalDescription().isEmpty()) {
             physicalDescription_ = other.physicalDescription_;
    +        bitField0_ |= 0x00000008;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -555,22 +540,22 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   name_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   type_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 24: {
                   memoryLimit_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 24
                 case 34: {
                   physicalDescription_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 34
                 default: {
    @@ -588,6 +573,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object name_ = "";
         /**
    @@ -642,11 +628,9 @@ public java.lang.String getName() {
          */
         public Builder setName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -659,8 +643,8 @@ public Builder setName(
          * @return This builder for chaining.
          */
         public Builder clearName() {
    -      
           name_ = getDefaultInstance().getName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -675,12 +659,10 @@ public Builder clearName() {
          */
         public Builder setNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -738,11 +720,9 @@ public java.lang.String getType() {
          */
         public Builder setType(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           type_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -755,8 +735,8 @@ public Builder setType(
          * @return This builder for chaining.
          */
         public Builder clearType() {
    -      
           type_ = getDefaultInstance().getType();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -771,12 +751,10 @@ public Builder clearType() {
          */
         public Builder setTypeBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           type_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -804,8 +782,9 @@ public long getMemoryLimit() {
          * @return This builder for chaining.
          */
         public Builder setMemoryLimit(long value) {
    -      
    +
           memoryLimit_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -818,7 +797,7 @@ public Builder setMemoryLimit(long value) {
          * @return This builder for chaining.
          */
         public Builder clearMemoryLimit() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           memoryLimit_ = 0L;
           onChanged();
           return this;
    @@ -877,11 +856,9 @@ public java.lang.String getPhysicalDescription() {
          */
         public Builder setPhysicalDescription(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           physicalDescription_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -894,8 +871,8 @@ public Builder setPhysicalDescription(
          * @return This builder for chaining.
          */
         public Builder clearPhysicalDescription() {
    -      
           physicalDescription_ = getDefaultInstance().getPhysicalDescription();
    +      bitField0_ = (bitField0_ & ~0x00000008);
           onChanged();
           return this;
         }
    @@ -910,27 +887,13 @@ public Builder clearPhysicalDescription() {
          */
         public Builder setPhysicalDescriptionBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           physicalDescription_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.AvailableDeviceInfo)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AvailableDeviceInfoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AvailableDeviceInfoOrBuilder.java
    index ef9f13504d3..de445a4283f 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AvailableDeviceInfoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/AvailableDeviceInfoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BatchingOptions.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BatchingOptions.java
    new file mode 100644
    index 00000000000..fb63a3ec488
    --- /dev/null
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BatchingOptions.java
    @@ -0,0 +1,958 @@
    +// Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: tensorflow/core/protobuf/config.proto
    +// Protobuf Java Version: 4.28.3
    +
    +package org.tensorflow.proto;
    +
    +/**
    + * Protobuf type {@code tensorflow.BatchingOptions}
    + */
    +public final class BatchingOptions extends
    +    com.google.protobuf.GeneratedMessage implements
    +    // @@protoc_insertion_point(message_implements:tensorflow.BatchingOptions)
    +    BatchingOptionsOrBuilder {
    +private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      BatchingOptions.class.getName());
    +  }
    +  // Use BatchingOptions.newBuilder() to construct.
    +  private BatchingOptions(com.google.protobuf.GeneratedMessage.Builder builder) {
    +    super(builder);
    +  }
    +  private BatchingOptions() {
    +    allowedBatchSizes_ = emptyIntList();
    +  }
    +
    +  public static final com.google.protobuf.Descriptors.Descriptor
    +      getDescriptor() {
    +    return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_BatchingOptions_descriptor;
    +  }
    +
    +  @java.lang.Override
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
    +      internalGetFieldAccessorTable() {
    +    return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_BatchingOptions_fieldAccessorTable
    +        .ensureFieldAccessorsInitialized(
    +            org.tensorflow.proto.BatchingOptions.class, org.tensorflow.proto.BatchingOptions.Builder.class);
    +  }
    +
    +  public static final int NUM_BATCH_THREADS_FIELD_NUMBER = 1;
    +  private int numBatchThreads_ = 0;
    +  /**
    +   * 
    +   * Number of scheduling threads for processing batches of work. Determines
    +   * the number of batches processed in parallel. This should be roughly in line
    +   * with the number of TPU cores available.
    +   * 
    + * + * int32 num_batch_threads = 1; + * @return The numBatchThreads. + */ + @java.lang.Override + public int getNumBatchThreads() { + return numBatchThreads_; + } + + public static final int MAX_BATCH_SIZE_FIELD_NUMBER = 2; + private int maxBatchSize_ = 0; + /** + *
    +   * The maximum allowed batch size. Can be larger than allowed_batch_sizes to
    +   * utilize large batch splitting.
    +   * 
    + * + * int32 max_batch_size = 2; + * @return The maxBatchSize. + */ + @java.lang.Override + public int getMaxBatchSize() { + return maxBatchSize_; + } + + public static final int BATCH_TIMEOUT_MICROS_FIELD_NUMBER = 3; + private int batchTimeoutMicros_ = 0; + /** + *
    +   * Maximum number of microseconds to wait before outputting an incomplete
    +   * batch.
    +   * 
    + * + * int32 batch_timeout_micros = 3; + * @return The batchTimeoutMicros. + */ + @java.lang.Override + public int getBatchTimeoutMicros() { + return batchTimeoutMicros_; + } + + public static final int ALLOWED_BATCH_SIZES_FIELD_NUMBER = 4; + @SuppressWarnings("serial") + private com.google.protobuf.Internal.IntList allowedBatchSizes_ = + emptyIntList(); + /** + *
    +   * Optional list of allowed batch sizes. If left empty, does nothing.
    +   * Otherwise, supplies a list of batch sizes, causing the op to pad batches up
    +   * to one of those sizes. The entries must increase monotonically, and the
    +   * final entry must be equal or less than the max_batch_size.
    +   * 
    + * + * repeated int32 allowed_batch_sizes = 4; + * @return A list containing the allowedBatchSizes. + */ + @java.lang.Override + public java.util.List + getAllowedBatchSizesList() { + return allowedBatchSizes_; + } + /** + *
    +   * Optional list of allowed batch sizes. If left empty, does nothing.
    +   * Otherwise, supplies a list of batch sizes, causing the op to pad batches up
    +   * to one of those sizes. The entries must increase monotonically, and the
    +   * final entry must be equal or less than the max_batch_size.
    +   * 
    + * + * repeated int32 allowed_batch_sizes = 4; + * @return The count of allowedBatchSizes. + */ + public int getAllowedBatchSizesCount() { + return allowedBatchSizes_.size(); + } + /** + *
    +   * Optional list of allowed batch sizes. If left empty, does nothing.
    +   * Otherwise, supplies a list of batch sizes, causing the op to pad batches up
    +   * to one of those sizes. The entries must increase monotonically, and the
    +   * final entry must be equal or less than the max_batch_size.
    +   * 
    + * + * repeated int32 allowed_batch_sizes = 4; + * @param index The index of the element to return. + * @return The allowedBatchSizes at the given index. + */ + public int getAllowedBatchSizes(int index) { + return allowedBatchSizes_.getInt(index); + } + private int allowedBatchSizesMemoizedSerializedSize = -1; + + public static final int MAX_ENQUEUED_BATCHES_FIELD_NUMBER = 5; + private int maxEnqueuedBatches_ = 0; + /** + *
    +   * Maximum number of batches enqueued for processing before requests are
    +   * failed fast.
    +   * 
    + * + * int32 max_enqueued_batches = 5; + * @return The maxEnqueuedBatches. + */ + @java.lang.Override + public int getMaxEnqueuedBatches() { + return maxEnqueuedBatches_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + getSerializedSize(); + if (numBatchThreads_ != 0) { + output.writeInt32(1, numBatchThreads_); + } + if (maxBatchSize_ != 0) { + output.writeInt32(2, maxBatchSize_); + } + if (batchTimeoutMicros_ != 0) { + output.writeInt32(3, batchTimeoutMicros_); + } + if (getAllowedBatchSizesList().size() > 0) { + output.writeUInt32NoTag(34); + output.writeUInt32NoTag(allowedBatchSizesMemoizedSerializedSize); + } + for (int i = 0; i < allowedBatchSizes_.size(); i++) { + output.writeInt32NoTag(allowedBatchSizes_.getInt(i)); + } + if (maxEnqueuedBatches_ != 0) { + output.writeInt32(5, maxEnqueuedBatches_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (numBatchThreads_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(1, numBatchThreads_); + } + if (maxBatchSize_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(2, maxBatchSize_); + } + if (batchTimeoutMicros_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(3, batchTimeoutMicros_); + } + { + int dataSize = 0; + for (int i = 0; i < allowedBatchSizes_.size(); i++) { + dataSize += com.google.protobuf.CodedOutputStream + .computeInt32SizeNoTag(allowedBatchSizes_.getInt(i)); + } + size += dataSize; + if (!getAllowedBatchSizesList().isEmpty()) { + size += 1; + size += com.google.protobuf.CodedOutputStream + .computeInt32SizeNoTag(dataSize); + } + allowedBatchSizesMemoizedSerializedSize = dataSize; + } + if (maxEnqueuedBatches_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(5, maxEnqueuedBatches_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof org.tensorflow.proto.BatchingOptions)) { + return super.equals(obj); + } + org.tensorflow.proto.BatchingOptions other = (org.tensorflow.proto.BatchingOptions) obj; + + if (getNumBatchThreads() + != other.getNumBatchThreads()) return false; + if (getMaxBatchSize() + != other.getMaxBatchSize()) return false; + if (getBatchTimeoutMicros() + != other.getBatchTimeoutMicros()) return false; + if (!getAllowedBatchSizesList() + .equals(other.getAllowedBatchSizesList())) return false; + if (getMaxEnqueuedBatches() + != other.getMaxEnqueuedBatches()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + NUM_BATCH_THREADS_FIELD_NUMBER; + hash = (53 * hash) + getNumBatchThreads(); + hash = (37 * hash) + MAX_BATCH_SIZE_FIELD_NUMBER; + hash = (53 * hash) + getMaxBatchSize(); + hash = (37 * hash) + BATCH_TIMEOUT_MICROS_FIELD_NUMBER; + hash = (53 * hash) + getBatchTimeoutMicros(); + if (getAllowedBatchSizesCount() > 0) { + hash = (37 * hash) + ALLOWED_BATCH_SIZES_FIELD_NUMBER; + hash = (53 * hash) + getAllowedBatchSizesList().hashCode(); + } + hash = (37 * hash) + MAX_ENQUEUED_BATCHES_FIELD_NUMBER; + hash = (53 * hash) + getMaxEnqueuedBatches(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static org.tensorflow.proto.BatchingOptions parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static org.tensorflow.proto.BatchingOptions parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static org.tensorflow.proto.BatchingOptions parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static org.tensorflow.proto.BatchingOptions parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static org.tensorflow.proto.BatchingOptions parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static org.tensorflow.proto.BatchingOptions parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static org.tensorflow.proto.BatchingOptions parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static org.tensorflow.proto.BatchingOptions parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static org.tensorflow.proto.BatchingOptions parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input); + } + + public static org.tensorflow.proto.BatchingOptions parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static org.tensorflow.proto.BatchingOptions parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static org.tensorflow.proto.BatchingOptions parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(org.tensorflow.proto.BatchingOptions prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code tensorflow.BatchingOptions} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessage.Builder implements + // @@protoc_insertion_point(builder_implements:tensorflow.BatchingOptions) + org.tensorflow.proto.BatchingOptionsOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_BatchingOptions_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_BatchingOptions_fieldAccessorTable + .ensureFieldAccessorsInitialized( + org.tensorflow.proto.BatchingOptions.class, org.tensorflow.proto.BatchingOptions.Builder.class); + } + + // Construct using org.tensorflow.proto.BatchingOptions.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + numBatchThreads_ = 0; + maxBatchSize_ = 0; + batchTimeoutMicros_ = 0; + allowedBatchSizes_ = emptyIntList(); + maxEnqueuedBatches_ = 0; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_BatchingOptions_descriptor; + } + + @java.lang.Override + public org.tensorflow.proto.BatchingOptions getDefaultInstanceForType() { + return org.tensorflow.proto.BatchingOptions.getDefaultInstance(); + } + + @java.lang.Override + public org.tensorflow.proto.BatchingOptions build() { + org.tensorflow.proto.BatchingOptions result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public org.tensorflow.proto.BatchingOptions buildPartial() { + org.tensorflow.proto.BatchingOptions result = new org.tensorflow.proto.BatchingOptions(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(org.tensorflow.proto.BatchingOptions result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.numBatchThreads_ = numBatchThreads_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.maxBatchSize_ = maxBatchSize_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.batchTimeoutMicros_ = batchTimeoutMicros_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + allowedBatchSizes_.makeImmutable(); + result.allowedBatchSizes_ = allowedBatchSizes_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.maxEnqueuedBatches_ = maxEnqueuedBatches_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof org.tensorflow.proto.BatchingOptions) { + return mergeFrom((org.tensorflow.proto.BatchingOptions)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(org.tensorflow.proto.BatchingOptions other) { + if (other == org.tensorflow.proto.BatchingOptions.getDefaultInstance()) return this; + if (other.getNumBatchThreads() != 0) { + setNumBatchThreads(other.getNumBatchThreads()); + } + if (other.getMaxBatchSize() != 0) { + setMaxBatchSize(other.getMaxBatchSize()); + } + if (other.getBatchTimeoutMicros() != 0) { + setBatchTimeoutMicros(other.getBatchTimeoutMicros()); + } + if (!other.allowedBatchSizes_.isEmpty()) { + if (allowedBatchSizes_.isEmpty()) { + allowedBatchSizes_ = other.allowedBatchSizes_; + allowedBatchSizes_.makeImmutable(); + bitField0_ |= 0x00000008; + } else { + ensureAllowedBatchSizesIsMutable(); + allowedBatchSizes_.addAll(other.allowedBatchSizes_); + } + onChanged(); + } + if (other.getMaxEnqueuedBatches() != 0) { + setMaxEnqueuedBatches(other.getMaxEnqueuedBatches()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + numBatchThreads_ = input.readInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 16: { + maxBatchSize_ = input.readInt32(); + bitField0_ |= 0x00000002; + break; + } // case 16 + case 24: { + batchTimeoutMicros_ = input.readInt32(); + bitField0_ |= 0x00000004; + break; + } // case 24 + case 32: { + int v = input.readInt32(); + ensureAllowedBatchSizesIsMutable(); + allowedBatchSizes_.addInt(v); + break; + } // case 32 + case 34: { + int length = input.readRawVarint32(); + int limit = input.pushLimit(length); + ensureAllowedBatchSizesIsMutable(); + while (input.getBytesUntilLimit() > 0) { + allowedBatchSizes_.addInt(input.readInt32()); + } + input.popLimit(limit); + break; + } // case 34 + case 40: { + maxEnqueuedBatches_ = input.readInt32(); + bitField0_ |= 0x00000010; + break; + } // case 40 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private int numBatchThreads_ ; + /** + *
    +     * Number of scheduling threads for processing batches of work. Determines
    +     * the number of batches processed in parallel. This should be roughly in line
    +     * with the number of TPU cores available.
    +     * 
    + * + * int32 num_batch_threads = 1; + * @return The numBatchThreads. + */ + @java.lang.Override + public int getNumBatchThreads() { + return numBatchThreads_; + } + /** + *
    +     * Number of scheduling threads for processing batches of work. Determines
    +     * the number of batches processed in parallel. This should be roughly in line
    +     * with the number of TPU cores available.
    +     * 
    + * + * int32 num_batch_threads = 1; + * @param value The numBatchThreads to set. + * @return This builder for chaining. + */ + public Builder setNumBatchThreads(int value) { + + numBatchThreads_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + *
    +     * Number of scheduling threads for processing batches of work. Determines
    +     * the number of batches processed in parallel. This should be roughly in line
    +     * with the number of TPU cores available.
    +     * 
    + * + * int32 num_batch_threads = 1; + * @return This builder for chaining. + */ + public Builder clearNumBatchThreads() { + bitField0_ = (bitField0_ & ~0x00000001); + numBatchThreads_ = 0; + onChanged(); + return this; + } + + private int maxBatchSize_ ; + /** + *
    +     * The maximum allowed batch size. Can be larger than allowed_batch_sizes to
    +     * utilize large batch splitting.
    +     * 
    + * + * int32 max_batch_size = 2; + * @return The maxBatchSize. + */ + @java.lang.Override + public int getMaxBatchSize() { + return maxBatchSize_; + } + /** + *
    +     * The maximum allowed batch size. Can be larger than allowed_batch_sizes to
    +     * utilize large batch splitting.
    +     * 
    + * + * int32 max_batch_size = 2; + * @param value The maxBatchSize to set. + * @return This builder for chaining. + */ + public Builder setMaxBatchSize(int value) { + + maxBatchSize_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + *
    +     * The maximum allowed batch size. Can be larger than allowed_batch_sizes to
    +     * utilize large batch splitting.
    +     * 
    + * + * int32 max_batch_size = 2; + * @return This builder for chaining. + */ + public Builder clearMaxBatchSize() { + bitField0_ = (bitField0_ & ~0x00000002); + maxBatchSize_ = 0; + onChanged(); + return this; + } + + private int batchTimeoutMicros_ ; + /** + *
    +     * Maximum number of microseconds to wait before outputting an incomplete
    +     * batch.
    +     * 
    + * + * int32 batch_timeout_micros = 3; + * @return The batchTimeoutMicros. + */ + @java.lang.Override + public int getBatchTimeoutMicros() { + return batchTimeoutMicros_; + } + /** + *
    +     * Maximum number of microseconds to wait before outputting an incomplete
    +     * batch.
    +     * 
    + * + * int32 batch_timeout_micros = 3; + * @param value The batchTimeoutMicros to set. + * @return This builder for chaining. + */ + public Builder setBatchTimeoutMicros(int value) { + + batchTimeoutMicros_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + *
    +     * Maximum number of microseconds to wait before outputting an incomplete
    +     * batch.
    +     * 
    + * + * int32 batch_timeout_micros = 3; + * @return This builder for chaining. + */ + public Builder clearBatchTimeoutMicros() { + bitField0_ = (bitField0_ & ~0x00000004); + batchTimeoutMicros_ = 0; + onChanged(); + return this; + } + + private com.google.protobuf.Internal.IntList allowedBatchSizes_ = emptyIntList(); + private void ensureAllowedBatchSizesIsMutable() { + if (!allowedBatchSizes_.isModifiable()) { + allowedBatchSizes_ = makeMutableCopy(allowedBatchSizes_); + } + bitField0_ |= 0x00000008; + } + /** + *
    +     * Optional list of allowed batch sizes. If left empty, does nothing.
    +     * Otherwise, supplies a list of batch sizes, causing the op to pad batches up
    +     * to one of those sizes. The entries must increase monotonically, and the
    +     * final entry must be equal or less than the max_batch_size.
    +     * 
    + * + * repeated int32 allowed_batch_sizes = 4; + * @return A list containing the allowedBatchSizes. + */ + public java.util.List + getAllowedBatchSizesList() { + allowedBatchSizes_.makeImmutable(); + return allowedBatchSizes_; + } + /** + *
    +     * Optional list of allowed batch sizes. If left empty, does nothing.
    +     * Otherwise, supplies a list of batch sizes, causing the op to pad batches up
    +     * to one of those sizes. The entries must increase monotonically, and the
    +     * final entry must be equal or less than the max_batch_size.
    +     * 
    + * + * repeated int32 allowed_batch_sizes = 4; + * @return The count of allowedBatchSizes. + */ + public int getAllowedBatchSizesCount() { + return allowedBatchSizes_.size(); + } + /** + *
    +     * Optional list of allowed batch sizes. If left empty, does nothing.
    +     * Otherwise, supplies a list of batch sizes, causing the op to pad batches up
    +     * to one of those sizes. The entries must increase monotonically, and the
    +     * final entry must be equal or less than the max_batch_size.
    +     * 
    + * + * repeated int32 allowed_batch_sizes = 4; + * @param index The index of the element to return. + * @return The allowedBatchSizes at the given index. + */ + public int getAllowedBatchSizes(int index) { + return allowedBatchSizes_.getInt(index); + } + /** + *
    +     * Optional list of allowed batch sizes. If left empty, does nothing.
    +     * Otherwise, supplies a list of batch sizes, causing the op to pad batches up
    +     * to one of those sizes. The entries must increase monotonically, and the
    +     * final entry must be equal or less than the max_batch_size.
    +     * 
    + * + * repeated int32 allowed_batch_sizes = 4; + * @param index The index to set the value at. + * @param value The allowedBatchSizes to set. + * @return This builder for chaining. + */ + public Builder setAllowedBatchSizes( + int index, int value) { + + ensureAllowedBatchSizesIsMutable(); + allowedBatchSizes_.setInt(index, value); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + *
    +     * Optional list of allowed batch sizes. If left empty, does nothing.
    +     * Otherwise, supplies a list of batch sizes, causing the op to pad batches up
    +     * to one of those sizes. The entries must increase monotonically, and the
    +     * final entry must be equal or less than the max_batch_size.
    +     * 
    + * + * repeated int32 allowed_batch_sizes = 4; + * @param value The allowedBatchSizes to add. + * @return This builder for chaining. + */ + public Builder addAllowedBatchSizes(int value) { + + ensureAllowedBatchSizesIsMutable(); + allowedBatchSizes_.addInt(value); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + *
    +     * Optional list of allowed batch sizes. If left empty, does nothing.
    +     * Otherwise, supplies a list of batch sizes, causing the op to pad batches up
    +     * to one of those sizes. The entries must increase monotonically, and the
    +     * final entry must be equal or less than the max_batch_size.
    +     * 
    + * + * repeated int32 allowed_batch_sizes = 4; + * @param values The allowedBatchSizes to add. + * @return This builder for chaining. + */ + public Builder addAllAllowedBatchSizes( + java.lang.Iterable values) { + ensureAllowedBatchSizesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, allowedBatchSizes_); + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + /** + *
    +     * Optional list of allowed batch sizes. If left empty, does nothing.
    +     * Otherwise, supplies a list of batch sizes, causing the op to pad batches up
    +     * to one of those sizes. The entries must increase monotonically, and the
    +     * final entry must be equal or less than the max_batch_size.
    +     * 
    + * + * repeated int32 allowed_batch_sizes = 4; + * @return This builder for chaining. + */ + public Builder clearAllowedBatchSizes() { + allowedBatchSizes_ = emptyIntList(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + return this; + } + + private int maxEnqueuedBatches_ ; + /** + *
    +     * Maximum number of batches enqueued for processing before requests are
    +     * failed fast.
    +     * 
    + * + * int32 max_enqueued_batches = 5; + * @return The maxEnqueuedBatches. + */ + @java.lang.Override + public int getMaxEnqueuedBatches() { + return maxEnqueuedBatches_; + } + /** + *
    +     * Maximum number of batches enqueued for processing before requests are
    +     * failed fast.
    +     * 
    + * + * int32 max_enqueued_batches = 5; + * @param value The maxEnqueuedBatches to set. + * @return This builder for chaining. + */ + public Builder setMaxEnqueuedBatches(int value) { + + maxEnqueuedBatches_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + *
    +     * Maximum number of batches enqueued for processing before requests are
    +     * failed fast.
    +     * 
    + * + * int32 max_enqueued_batches = 5; + * @return This builder for chaining. + */ + public Builder clearMaxEnqueuedBatches() { + bitField0_ = (bitField0_ & ~0x00000010); + maxEnqueuedBatches_ = 0; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:tensorflow.BatchingOptions) + } + + // @@protoc_insertion_point(class_scope:tensorflow.BatchingOptions) + private static final org.tensorflow.proto.BatchingOptions DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new org.tensorflow.proto.BatchingOptions(); + } + + public static org.tensorflow.proto.BatchingOptions getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public BatchingOptions parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public org.tensorflow.proto.BatchingOptions getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BatchingOptionsOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BatchingOptionsOrBuilder.java new file mode 100644 index 00000000000..f23c6d205d3 --- /dev/null +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BatchingOptionsOrBuilder.java @@ -0,0 +1,94 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: tensorflow/core/protobuf/config.proto +// Protobuf Java Version: 4.28.3 + +package org.tensorflow.proto; + +public interface BatchingOptionsOrBuilder extends + // @@protoc_insertion_point(interface_extends:tensorflow.BatchingOptions) + com.google.protobuf.MessageOrBuilder { + + /** + *
    +   * Number of scheduling threads for processing batches of work. Determines
    +   * the number of batches processed in parallel. This should be roughly in line
    +   * with the number of TPU cores available.
    +   * 
    + * + * int32 num_batch_threads = 1; + * @return The numBatchThreads. + */ + int getNumBatchThreads(); + + /** + *
    +   * The maximum allowed batch size. Can be larger than allowed_batch_sizes to
    +   * utilize large batch splitting.
    +   * 
    + * + * int32 max_batch_size = 2; + * @return The maxBatchSize. + */ + int getMaxBatchSize(); + + /** + *
    +   * Maximum number of microseconds to wait before outputting an incomplete
    +   * batch.
    +   * 
    + * + * int32 batch_timeout_micros = 3; + * @return The batchTimeoutMicros. + */ + int getBatchTimeoutMicros(); + + /** + *
    +   * Optional list of allowed batch sizes. If left empty, does nothing.
    +   * Otherwise, supplies a list of batch sizes, causing the op to pad batches up
    +   * to one of those sizes. The entries must increase monotonically, and the
    +   * final entry must be equal or less than the max_batch_size.
    +   * 
    + * + * repeated int32 allowed_batch_sizes = 4; + * @return A list containing the allowedBatchSizes. + */ + java.util.List getAllowedBatchSizesList(); + /** + *
    +   * Optional list of allowed batch sizes. If left empty, does nothing.
    +   * Otherwise, supplies a list of batch sizes, causing the op to pad batches up
    +   * to one of those sizes. The entries must increase monotonically, and the
    +   * final entry must be equal or less than the max_batch_size.
    +   * 
    + * + * repeated int32 allowed_batch_sizes = 4; + * @return The count of allowedBatchSizes. + */ + int getAllowedBatchSizesCount(); + /** + *
    +   * Optional list of allowed batch sizes. If left empty, does nothing.
    +   * Otherwise, supplies a list of batch sizes, causing the op to pad batches up
    +   * to one of those sizes. The entries must increase monotonically, and the
    +   * final entry must be equal or less than the max_batch_size.
    +   * 
    + * + * repeated int32 allowed_batch_sizes = 4; + * @param index The index of the element to return. + * @return The allowedBatchSizes at the given index. + */ + int getAllowedBatchSizes(int index); + + /** + *
    +   * Maximum number of batches enqueued for processing before requests are
    +   * failed fast.
    +   * 
    + * + * int32 max_enqueued_batches = 5; + * @return The maxEnqueuedBatches. + */ + int getMaxEnqueuedBatches(); +} diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BenchmarkEntries.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BenchmarkEntries.java index b3ed52d11c0..78647b68d29 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BenchmarkEntries.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BenchmarkEntries.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! -// source: tsl/protobuf/test_log.proto +// NO CHECKED-IN PROTOBUF GENCODE +// source: xla/tsl/protobuf/test_log.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,37 +9,34 @@ * Protobuf type {@code tensorflow.BenchmarkEntries} */ public final class BenchmarkEntries extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.BenchmarkEntries) BenchmarkEntriesOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + BenchmarkEntries.class.getName()); + } // Use BenchmarkEntries.newBuilder() to construct. - private BenchmarkEntries(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private BenchmarkEntries(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private BenchmarkEntries() { entry_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new BenchmarkEntries(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_BenchmarkEntries_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_BenchmarkEntries_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -45,6 +44,7 @@ protected java.lang.Object newInstance( } public static final int ENTRY_FIELD_NUMBER = 1; + @SuppressWarnings("serial") private java.util.List entry_; /** * repeated .tensorflow.BenchmarkEntry entry = 1; @@ -185,39 +185,41 @@ public static org.tensorflow.proto.BenchmarkEntries parseFrom( } public static org.tensorflow.proto.BenchmarkEntries parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.BenchmarkEntries parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.BenchmarkEntries parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.BenchmarkEntries parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.BenchmarkEntries parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.BenchmarkEntries parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -237,7 +239,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -245,7 +247,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.BenchmarkEntries} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.BenchmarkEntries) org.tensorflow.proto.BenchmarkEntriesOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -254,7 +256,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_BenchmarkEntries_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -267,13 +269,14 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; if (entryBuilder_ == null) { entry_ = java.util.Collections.emptyList(); } else { @@ -307,7 +310,13 @@ public org.tensorflow.proto.BenchmarkEntries build() { @java.lang.Override public org.tensorflow.proto.BenchmarkEntries buildPartial() { org.tensorflow.proto.BenchmarkEntries result = new org.tensorflow.proto.BenchmarkEntries(this); - int from_bitField0_ = bitField0_; + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(org.tensorflow.proto.BenchmarkEntries result) { if (entryBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { entry_ = java.util.Collections.unmodifiableList(entry_); @@ -317,42 +326,12 @@ public org.tensorflow.proto.BenchmarkEntries buildPartial() { } else { result.entry_ = entryBuilder_.build(); } - onBuilt(); - return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.BenchmarkEntries result) { + int from_bitField0_ = bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.BenchmarkEntries) { @@ -384,7 +363,7 @@ public Builder mergeFrom(org.tensorflow.proto.BenchmarkEntries other) { entry_ = other.entry_; bitField0_ = (bitField0_ & ~0x00000001); entryBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getEntryFieldBuilder() : null; } else { entryBuilder_.addAllMessages(other.entry_); @@ -456,7 +435,7 @@ private void ensureEntryIsMutable() { } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.BenchmarkEntry, org.tensorflow.proto.BenchmarkEntry.Builder, org.tensorflow.proto.BenchmarkEntryOrBuilder> entryBuilder_; /** @@ -672,11 +651,11 @@ public org.tensorflow.proto.BenchmarkEntry.Builder addEntryBuilder( getEntryBuilderList() { return getEntryFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.BenchmarkEntry, org.tensorflow.proto.BenchmarkEntry.Builder, org.tensorflow.proto.BenchmarkEntryOrBuilder> getEntryFieldBuilder() { if (entryBuilder_ == null) { - entryBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + entryBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.BenchmarkEntry, org.tensorflow.proto.BenchmarkEntry.Builder, org.tensorflow.proto.BenchmarkEntryOrBuilder>( entry_, ((bitField0_ & 0x00000001) != 0), @@ -686,18 +665,6 @@ public org.tensorflow.proto.BenchmarkEntry.Builder addEntryBuilder( } return entryBuilder_; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.BenchmarkEntries) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BenchmarkEntriesOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BenchmarkEntriesOrBuilder.java index b99b30bf045..7f439a05b87 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BenchmarkEntriesOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BenchmarkEntriesOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! -// source: tsl/protobuf/test_log.proto +// NO CHECKED-IN PROTOBUF GENCODE +// source: xla/tsl/protobuf/test_log.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BenchmarkEntry.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BenchmarkEntry.java index 0c470285827..7b41d4e7a15 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BenchmarkEntry.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BenchmarkEntry.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! -// source: tsl/protobuf/test_log.proto +// NO CHECKED-IN PROTOBUF GENCODE +// source: xla/tsl/protobuf/test_log.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -9,6 +11,7 @@ * some set of information. Here we provide some reasonable keys * one would expect to see, with optional key/value pairs for things * we haven't considered. + * * This BenchmarkEntry should be emitted by each unit test or benchmark * reporter. *
    @@ -16,12 +19,21 @@ * Protobuf type {@code tensorflow.BenchmarkEntry} */ public final class BenchmarkEntry extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.BenchmarkEntry) BenchmarkEntryOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + BenchmarkEntry.class.getName()); + } // Use BenchmarkEntry.newBuilder() to construct. - private BenchmarkEntry(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private BenchmarkEntry(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private BenchmarkEntry() { @@ -29,18 +41,6 @@ private BenchmarkEntry() { metrics_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new BenchmarkEntry(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_BenchmarkEntry_descriptor; @@ -48,7 +48,7 @@ protected java.lang.Object newInstance( @SuppressWarnings({"rawtypes"}) @java.lang.Override - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 6: @@ -59,7 +59,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_BenchmarkEntry_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -67,7 +67,8 @@ protected com.google.protobuf.MapField internalGetMapField( } public static final int NAME_FIELD_NUMBER = 1; - private volatile java.lang.Object name_; + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; /** *
        * The name of the specific benchmark or test
    @@ -115,7 +116,7 @@ public java.lang.String getName() {
       }
     
       public static final int ITERS_FIELD_NUMBER = 2;
    -  private long iters_;
    +  private long iters_ = 0L;
       /**
        * 
        * If a benchmark, how many iterations it was run for
    @@ -130,7 +131,7 @@ public long getIters() {
       }
     
       public static final int CPU_TIME_FIELD_NUMBER = 3;
    -  private double cpuTime_;
    +  private double cpuTime_ = 0D;
       /**
        * 
        * Total cpu time used for all iterations (in seconds)
    @@ -145,7 +146,7 @@ public double getCpuTime() {
       }
     
       public static final int WALL_TIME_FIELD_NUMBER = 4;
    -  private double wallTime_;
    +  private double wallTime_ = 0D;
       /**
        * 
        * Total wall time used for all iterations (in seconds)
    @@ -160,7 +161,7 @@ public double getWallTime() {
       }
     
       public static final int THROUGHPUT_FIELD_NUMBER = 5;
    -  private double throughput_;
    +  private double throughput_ = 0D;
       /**
        * 
        * Throughput (in MB/s)
    @@ -186,6 +187,7 @@ private static final class ExtrasDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.MESSAGE,
                     org.tensorflow.proto.EntryValue.getDefaultInstance());
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.String, org.tensorflow.proto.EntryValue> extras_;
       private com.google.protobuf.MapField
    @@ -196,7 +198,6 @@ private static final class ExtrasDefaultEntryHolder {
         }
         return extras_;
       }
    -
       public int getExtrasCount() {
         return internalGetExtras().getMap().size();
       }
    @@ -207,7 +208,6 @@ public int getExtrasCount() {
        *
        * map<string, .tensorflow.EntryValue> extras = 6;
        */
    -
       @java.lang.Override
       public boolean containsExtras(
           java.lang.String key) {
    @@ -230,7 +230,6 @@ public java.util.Map getExtra
        * map<string, .tensorflow.EntryValue> extras = 6;
        */
       @java.lang.Override
    -
       public java.util.Map getExtrasMap() {
         return internalGetExtras().getMap();
       }
    @@ -242,10 +241,11 @@ public java.util.Map getExtra
        * map<string, .tensorflow.EntryValue> extras = 6;
        */
       @java.lang.Override
    -
    -  public org.tensorflow.proto.EntryValue getExtrasOrDefault(
    +  public /* nullable */
    +org.tensorflow.proto.EntryValue getExtrasOrDefault(
           java.lang.String key,
    -      org.tensorflow.proto.EntryValue defaultValue) {
    +      /* nullable */
    +org.tensorflow.proto.EntryValue defaultValue) {
         if (key == null) { throw new NullPointerException("map key"); }
         java.util.Map map =
             internalGetExtras().getMap();
    @@ -259,7 +259,6 @@ public org.tensorflow.proto.EntryValue getExtrasOrDefault(
        * map<string, .tensorflow.EntryValue> extras = 6;
        */
       @java.lang.Override
    -
       public org.tensorflow.proto.EntryValue getExtrasOrThrow(
           java.lang.String key) {
         if (key == null) { throw new NullPointerException("map key"); }
    @@ -272,6 +271,7 @@ public org.tensorflow.proto.EntryValue getExtrasOrThrow(
       }
     
       public static final int METRICS_FIELD_NUMBER = 7;
    +  @SuppressWarnings("serial")
       private java.util.List metrics_;
       /**
        * 
    @@ -350,8 +350,8 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
         }
         if (iters_ != 0L) {
           output.writeInt64(2, iters_);
    @@ -365,7 +365,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (java.lang.Double.doubleToRawLongBits(throughput_) != 0) {
           output.writeDouble(5, throughput_);
         }
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeStringMapTo(
             output,
             internalGetExtras(),
    @@ -383,8 +383,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
         }
         if (iters_ != 0L) {
           size += com.google.protobuf.CodedOutputStream
    @@ -520,39 +520,41 @@ public static org.tensorflow.proto.BenchmarkEntry parseFrom(
       }
       public static org.tensorflow.proto.BenchmarkEntry parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.BenchmarkEntry parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.BenchmarkEntry parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.BenchmarkEntry parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.BenchmarkEntry parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.BenchmarkEntry parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -572,7 +574,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -582,6 +584,7 @@ protected Builder newBuilderForType(
        * some set of information.  Here we provide some reasonable keys
        * one would expect to see, with optional key/value pairs for things
        * we haven't considered.
    +   *
        * This BenchmarkEntry should be emitted by each unit test or benchmark
        * reporter.
        * 
    @@ -589,7 +592,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.BenchmarkEntry} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.BenchmarkEntry) org.tensorflow.proto.BenchmarkEntryOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -598,7 +601,7 @@ public static final class Builder extends } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 6: @@ -609,7 +612,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMutableMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( int number) { switch (number) { case 6: @@ -620,7 +623,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_BenchmarkEntry_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -633,23 +636,19 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; name_ = ""; - iters_ = 0L; - cpuTime_ = 0D; - wallTime_ = 0D; - throughput_ = 0D; - internalGetMutableExtras().clear(); if (metricsBuilder_ == null) { metrics_ = java.util.Collections.emptyList(); @@ -657,7 +656,7 @@ public Builder clear() { metrics_ = null; metricsBuilder_.clear(); } - bitField0_ = (bitField0_ & ~0x00000002); + bitField0_ = (bitField0_ & ~0x00000040); return this; } @@ -684,59 +683,46 @@ public org.tensorflow.proto.BenchmarkEntry build() { @java.lang.Override public org.tensorflow.proto.BenchmarkEntry buildPartial() { org.tensorflow.proto.BenchmarkEntry result = new org.tensorflow.proto.BenchmarkEntry(this); - int from_bitField0_ = bitField0_; - result.name_ = name_; - result.iters_ = iters_; - result.cpuTime_ = cpuTime_; - result.wallTime_ = wallTime_; - result.throughput_ = throughput_; - result.extras_ = internalGetExtras(); - result.extras_.makeImmutable(); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(org.tensorflow.proto.BenchmarkEntry result) { if (metricsBuilder_ == null) { - if (((bitField0_ & 0x00000002) != 0)) { + if (((bitField0_ & 0x00000040) != 0)) { metrics_ = java.util.Collections.unmodifiableList(metrics_); - bitField0_ = (bitField0_ & ~0x00000002); + bitField0_ = (bitField0_ & ~0x00000040); } result.metrics_ = metrics_; } else { result.metrics_ = metricsBuilder_.build(); } - onBuilt(); - return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.BenchmarkEntry result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.iters_ = iters_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.cpuTime_ = cpuTime_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.wallTime_ = wallTime_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.throughput_ = throughput_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.extras_ = internalGetExtras().build(ExtrasDefaultEntryHolder.defaultEntry); + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.BenchmarkEntry) { @@ -751,6 +737,7 @@ public Builder mergeFrom(org.tensorflow.proto.BenchmarkEntry other) { if (other == org.tensorflow.proto.BenchmarkEntry.getDefaultInstance()) return this; if (!other.getName().isEmpty()) { name_ = other.name_; + bitField0_ |= 0x00000001; onChanged(); } if (other.getIters() != 0L) { @@ -767,11 +754,12 @@ public Builder mergeFrom(org.tensorflow.proto.BenchmarkEntry other) { } internalGetMutableExtras().mergeFrom( other.internalGetExtras()); + bitField0_ |= 0x00000020; if (metricsBuilder_ == null) { if (!other.metrics_.isEmpty()) { if (metrics_.isEmpty()) { metrics_ = other.metrics_; - bitField0_ = (bitField0_ & ~0x00000002); + bitField0_ = (bitField0_ & ~0x00000040); } else { ensureMetricsIsMutable(); metrics_.addAll(other.metrics_); @@ -784,9 +772,9 @@ public Builder mergeFrom(org.tensorflow.proto.BenchmarkEntry other) { metricsBuilder_.dispose(); metricsBuilder_ = null; metrics_ = other.metrics_; - bitField0_ = (bitField0_ & ~0x00000002); + bitField0_ = (bitField0_ & ~0x00000040); metricsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getMetricsFieldBuilder() : null; } else { metricsBuilder_.addAllMessages(other.metrics_); @@ -821,35 +809,36 @@ public Builder mergeFrom( break; case 10: { name_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000001; break; } // case 10 case 16: { iters_ = input.readInt64(); - + bitField0_ |= 0x00000002; break; } // case 16 case 25: { cpuTime_ = input.readDouble(); - + bitField0_ |= 0x00000004; break; } // case 25 case 33: { wallTime_ = input.readDouble(); - + bitField0_ |= 0x00000008; break; } // case 33 case 41: { throughput_ = input.readDouble(); - + bitField0_ |= 0x00000010; break; } // case 41 case 50: { com.google.protobuf.MapEntry extras__ = input.readMessage( ExtrasDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); - internalGetMutableExtras().getMutableMap().put( + internalGetMutableExtras().ensureBuilderMap().put( extras__.getKey(), extras__.getValue()); + bitField0_ |= 0x00000020; break; } // case 50 case 58: { @@ -938,11 +927,9 @@ public java.lang.String getName() { */ public Builder setName( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } name_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -956,8 +943,8 @@ public Builder setName( * @return This builder for chaining. */ public Builder clearName() { - name_ = getDefaultInstance().getName(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } @@ -973,12 +960,10 @@ public Builder clearName() { */ public Builder setNameBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); name_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -1006,8 +991,9 @@ public long getIters() { * @return This builder for chaining. */ public Builder setIters(long value) { - + iters_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -1020,7 +1006,7 @@ public Builder setIters(long value) { * @return This builder for chaining. */ public Builder clearIters() { - + bitField0_ = (bitField0_ & ~0x00000002); iters_ = 0L; onChanged(); return this; @@ -1049,8 +1035,9 @@ public double getCpuTime() { * @return This builder for chaining. */ public Builder setCpuTime(double value) { - + cpuTime_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -1063,7 +1050,7 @@ public Builder setCpuTime(double value) { * @return This builder for chaining. */ public Builder clearCpuTime() { - + bitField0_ = (bitField0_ & ~0x00000004); cpuTime_ = 0D; onChanged(); return this; @@ -1092,8 +1079,9 @@ public double getWallTime() { * @return This builder for chaining. */ public Builder setWallTime(double value) { - + wallTime_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -1106,7 +1094,7 @@ public Builder setWallTime(double value) { * @return This builder for chaining. */ public Builder clearWallTime() { - + bitField0_ = (bitField0_ & ~0x00000008); wallTime_ = 0D; onChanged(); return this; @@ -1135,8 +1123,9 @@ public double getThroughput() { * @return This builder for chaining. */ public Builder setThroughput(double value) { - + throughput_ = value; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -1149,37 +1138,46 @@ public Builder setThroughput(double value) { * @return This builder for chaining. */ public Builder clearThroughput() { - + bitField0_ = (bitField0_ & ~0x00000010); throughput_ = 0D; onChanged(); return this; } - private com.google.protobuf.MapField< - java.lang.String, org.tensorflow.proto.EntryValue> extras_; - private com.google.protobuf.MapField - internalGetExtras() { + private static final class ExtrasConverter implements com.google.protobuf.MapFieldBuilder.Converter { + @java.lang.Override + public org.tensorflow.proto.EntryValue build(org.tensorflow.proto.EntryValueOrBuilder val) { + if (val instanceof org.tensorflow.proto.EntryValue) { return (org.tensorflow.proto.EntryValue) val; } + return ((org.tensorflow.proto.EntryValue.Builder) val).build(); + } + + @java.lang.Override + public com.google.protobuf.MapEntry defaultEntry() { + return ExtrasDefaultEntryHolder.defaultEntry; + } + }; + private static final ExtrasConverter extrasConverter = new ExtrasConverter(); + + private com.google.protobuf.MapFieldBuilder< + java.lang.String, org.tensorflow.proto.EntryValueOrBuilder, org.tensorflow.proto.EntryValue, org.tensorflow.proto.EntryValue.Builder> extras_; + private com.google.protobuf.MapFieldBuilder + internalGetExtras() { if (extras_ == null) { - return com.google.protobuf.MapField.emptyMapField( - ExtrasDefaultEntryHolder.defaultEntry); + return new com.google.protobuf.MapFieldBuilder<>(extrasConverter); } return extras_; } - private com.google.protobuf.MapField - internalGetMutableExtras() { - onChanged();; + private com.google.protobuf.MapFieldBuilder + internalGetMutableExtras() { if (extras_ == null) { - extras_ = com.google.protobuf.MapField.newMapField( - ExtrasDefaultEntryHolder.defaultEntry); - } - if (!extras_.isMutable()) { - extras_ = extras_.copy(); + extras_ = new com.google.protobuf.MapFieldBuilder<>(extrasConverter); } + bitField0_ |= 0x00000020; + onChanged(); return extras_; } - public int getExtrasCount() { - return internalGetExtras().getMap().size(); + return internalGetExtras().ensureBuilderMap().size(); } /** *
    @@ -1188,12 +1186,11 @@ public int getExtrasCount() {
          *
          * map<string, .tensorflow.EntryValue> extras = 6;
          */
    -
         @java.lang.Override
         public boolean containsExtras(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      return internalGetExtras().getMap().containsKey(key);
    +      return internalGetExtras().ensureBuilderMap().containsKey(key);
         }
         /**
          * Use {@link #getExtrasMap()} instead.
    @@ -1211,9 +1208,8 @@ public java.util.Map getExtra
          * map<string, .tensorflow.EntryValue> extras = 6;
          */
         @java.lang.Override
    -
         public java.util.Map getExtrasMap() {
    -      return internalGetExtras().getMap();
    +      return internalGetExtras().getImmutableMap();
         }
         /**
          * 
    @@ -1223,14 +1219,14 @@ public java.util.Map getExtra
          * map<string, .tensorflow.EntryValue> extras = 6;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.EntryValue getExtrasOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.EntryValue getExtrasOrDefault(
             java.lang.String key,
    -        org.tensorflow.proto.EntryValue defaultValue) {
    +        /* nullable */
    +org.tensorflow.proto.EntryValue defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetExtras().getMap();
    -      return map.containsKey(key) ? map.get(key) : defaultValue;
    +      java.util.Map map = internalGetMutableExtras().ensureBuilderMap();
    +      return map.containsKey(key) ? extrasConverter.build(map.get(key)) : defaultValue;
         }
         /**
          * 
    @@ -1240,21 +1236,18 @@ public org.tensorflow.proto.EntryValue getExtrasOrDefault(
          * map<string, .tensorflow.EntryValue> extras = 6;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.EntryValue getExtrasOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetExtras().getMap();
    +      java.util.Map map = internalGetMutableExtras().ensureBuilderMap();
           if (!map.containsKey(key)) {
             throw new java.lang.IllegalArgumentException();
           }
    -      return map.get(key);
    +      return extrasConverter.build(map.get(key));
         }
    -
         public Builder clearExtras() {
    -      internalGetMutableExtras().getMutableMap()
    -          .clear();
    +      bitField0_ = (bitField0_ & ~0x00000020);
    +      internalGetMutableExtras().clear();
           return this;
         }
         /**
    @@ -1264,11 +1257,10 @@ public Builder clearExtras() {
          *
          * map<string, .tensorflow.EntryValue> extras = 6;
          */
    -
         public Builder removeExtras(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      internalGetMutableExtras().getMutableMap()
    +      internalGetMutableExtras().ensureBuilderMap()
               .remove(key);
           return this;
         }
    @@ -1277,8 +1269,9 @@ public Builder removeExtras(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableExtras() {
    -      return internalGetMutableExtras().getMutableMap();
    +        getMutableExtras() {
    +      bitField0_ |= 0x00000020;
    +      return internalGetMutableExtras().ensureMessageMap();
         }
         /**
          * 
    @@ -1291,12 +1284,10 @@ public Builder putExtras(
             java.lang.String key,
             org.tensorflow.proto.EntryValue value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    -      internalGetMutableExtras().getMutableMap()
    +      if (value == null) { throw new NullPointerException("map value"); }
    +      internalGetMutableExtras().ensureBuilderMap()
               .put(key, value);
    +      bitField0_ |= 0x00000020;
           return this;
         }
         /**
    @@ -1306,24 +1297,50 @@ public Builder putExtras(
          *
          * map<string, .tensorflow.EntryValue> extras = 6;
          */
    -
         public Builder putAllExtras(
             java.util.Map values) {
    -      internalGetMutableExtras().getMutableMap()
    +      for (java.util.Map.Entry e : values.entrySet()) {
    +        if (e.getKey() == null || e.getValue() == null) {
    +          throw new NullPointerException();
    +        }
    +      }
    +      internalGetMutableExtras().ensureBuilderMap()
               .putAll(values);
    +      bitField0_ |= 0x00000020;
           return this;
         }
    +    /**
    +     * 
    +     * Generic map from result key to value.
    +     * 
    + * + * map<string, .tensorflow.EntryValue> extras = 6; + */ + public org.tensorflow.proto.EntryValue.Builder putExtrasBuilderIfAbsent( + java.lang.String key) { + java.util.Map builderMap = internalGetMutableExtras().ensureBuilderMap(); + org.tensorflow.proto.EntryValueOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.EntryValue.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.EntryValue) { + entry = ((org.tensorflow.proto.EntryValue) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.EntryValue.Builder) entry; + } private java.util.List metrics_ = java.util.Collections.emptyList(); private void ensureMetricsIsMutable() { - if (!((bitField0_ & 0x00000002) != 0)) { + if (!((bitField0_ & 0x00000040) != 0)) { metrics_ = new java.util.ArrayList(metrics_); - bitField0_ |= 0x00000002; + bitField0_ |= 0x00000040; } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.MetricEntry, org.tensorflow.proto.MetricEntry.Builder, org.tensorflow.proto.MetricEntryOrBuilder> metricsBuilder_; /** @@ -1524,7 +1541,7 @@ public Builder addAllMetrics( public Builder clearMetrics() { if (metricsBuilder_ == null) { metrics_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); + bitField0_ = (bitField0_ & ~0x00000040); onChanged(); } else { metricsBuilder_.clear(); @@ -1629,32 +1646,20 @@ public org.tensorflow.proto.MetricEntry.Builder addMetricsBuilder( getMetricsBuilderList() { return getMetricsFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.MetricEntry, org.tensorflow.proto.MetricEntry.Builder, org.tensorflow.proto.MetricEntryOrBuilder> getMetricsFieldBuilder() { if (metricsBuilder_ == null) { - metricsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + metricsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.MetricEntry, org.tensorflow.proto.MetricEntry.Builder, org.tensorflow.proto.MetricEntryOrBuilder>( metrics_, - ((bitField0_ & 0x00000002) != 0), + ((bitField0_ & 0x00000040) != 0), getParentForChildren(), isClean()); metrics_ = null; } return metricsBuilder_; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.BenchmarkEntry) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BenchmarkEntryOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BenchmarkEntryOrBuilder.java index 476aae9ca10..9e699bd4b76 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BenchmarkEntryOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BenchmarkEntryOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! -// source: tsl/protobuf/test_log.proto +// NO CHECKED-IN PROTOBUF GENCODE +// source: xla/tsl/protobuf/test_log.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -108,7 +110,6 @@ boolean containsExtras( * * map<string, .tensorflow.EntryValue> extras = 6; */ - /* nullable */ org.tensorflow.proto.EntryValue getExtrasOrDefault( java.lang.String key, @@ -121,7 +122,6 @@ org.tensorflow.proto.EntryValue getExtrasOrDefault( * * map<string, .tensorflow.EntryValue> extras = 6; */ - org.tensorflow.proto.EntryValue getExtrasOrThrow( java.lang.String key); diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BfcMemoryMap.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BfcMemoryMap.java index fad0c98b837..d84aebde9c7 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BfcMemoryMap.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BfcMemoryMap.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! -// source: tsl/protobuf/bfc_memory_map.proto +// NO CHECKED-IN PROTOBUF GENCODE +// source: xla/tsl/protobuf/bfc_memory_map.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; public final class BfcMemoryMap { private BfcMemoryMap() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + BfcMemoryMap.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -56,36 +67,33 @@ public interface MemAllocatorStatsOrBuilder extends * Protobuf type {@code tensorflow.MemAllocatorStats} */ public static final class MemAllocatorStats extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.MemAllocatorStats) MemAllocatorStatsOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + MemAllocatorStats.class.getName()); + } // Use MemAllocatorStats.newBuilder() to construct. - private MemAllocatorStats(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private MemAllocatorStats(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private MemAllocatorStats() { } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new MemAllocatorStats(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.BfcMemoryMap.internal_static_tensorflow_MemAllocatorStats_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.BfcMemoryMap.internal_static_tensorflow_MemAllocatorStats_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -93,7 +101,7 @@ protected java.lang.Object newInstance( } public static final int NUM_ALLOCS_FIELD_NUMBER = 1; - private long numAllocs_; + private long numAllocs_ = 0L; /** * int64 num_allocs = 1; * @return The numAllocs. @@ -104,7 +112,7 @@ public long getNumAllocs() { } public static final int BYTES_IN_USE_FIELD_NUMBER = 2; - private long bytesInUse_; + private long bytesInUse_ = 0L; /** * int64 bytes_in_use = 2; * @return The bytesInUse. @@ -115,7 +123,7 @@ public long getBytesInUse() { } public static final int PEAK_BYTES_IN_USE_FIELD_NUMBER = 3; - private long peakBytesInUse_; + private long peakBytesInUse_ = 0L; /** * int64 peak_bytes_in_use = 3; * @return The peakBytesInUse. @@ -126,7 +134,7 @@ public long getPeakBytesInUse() { } public static final int LARGEST_ALLOC_SIZE_FIELD_NUMBER = 4; - private long largestAllocSize_; + private long largestAllocSize_ = 0L; /** * int64 largest_alloc_size = 4; * @return The largestAllocSize. @@ -137,7 +145,7 @@ public long getLargestAllocSize() { } public static final int FRAGMENTATION_METRIC_FIELD_NUMBER = 5; - private float fragmentationMetric_; + private float fragmentationMetric_ = 0F; /** * float fragmentation_metric = 5; * @return The fragmentationMetric. @@ -296,39 +304,41 @@ public static org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats parseFrom( } public static org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -348,7 +358,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -360,7 +370,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.MemAllocatorStats} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.MemAllocatorStats) org.tensorflow.proto.BfcMemoryMap.MemAllocatorStatsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -369,7 +379,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.BfcMemoryMap.internal_static_tensorflow_MemAllocatorStats_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -382,23 +392,19 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; numAllocs_ = 0L; - bytesInUse_ = 0L; - peakBytesInUse_ = 0L; - largestAllocSize_ = 0L; - fragmentationMetric_ = 0F; - return this; } @@ -425,47 +431,30 @@ public org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats build() { @java.lang.Override public org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats buildPartial() { org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats result = new org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats(this); - result.numAllocs_ = numAllocs_; - result.bytesInUse_ = bytesInUse_; - result.peakBytesInUse_ = peakBytesInUse_; - result.largestAllocSize_ = largestAllocSize_; - result.fragmentationMetric_ = fragmentationMetric_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.numAllocs_ = numAllocs_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.bytesInUse_ = bytesInUse_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.peakBytesInUse_ = peakBytesInUse_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.largestAllocSize_ = largestAllocSize_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.fragmentationMetric_ = fragmentationMetric_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats) { @@ -521,27 +510,27 @@ public Builder mergeFrom( break; case 8: { numAllocs_ = input.readInt64(); - + bitField0_ |= 0x00000001; break; } // case 8 case 16: { bytesInUse_ = input.readInt64(); - + bitField0_ |= 0x00000002; break; } // case 16 case 24: { peakBytesInUse_ = input.readInt64(); - + bitField0_ |= 0x00000004; break; } // case 24 case 32: { largestAllocSize_ = input.readInt64(); - + bitField0_ |= 0x00000008; break; } // case 32 case 45: { fragmentationMetric_ = input.readFloat(); - + bitField0_ |= 0x00000010; break; } // case 45 default: { @@ -559,6 +548,7 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private long numAllocs_ ; /** @@ -575,8 +565,9 @@ public long getNumAllocs() { * @return This builder for chaining. */ public Builder setNumAllocs(long value) { - + numAllocs_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -585,7 +576,7 @@ public Builder setNumAllocs(long value) { * @return This builder for chaining. */ public Builder clearNumAllocs() { - + bitField0_ = (bitField0_ & ~0x00000001); numAllocs_ = 0L; onChanged(); return this; @@ -606,8 +597,9 @@ public long getBytesInUse() { * @return This builder for chaining. */ public Builder setBytesInUse(long value) { - + bytesInUse_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -616,7 +608,7 @@ public Builder setBytesInUse(long value) { * @return This builder for chaining. */ public Builder clearBytesInUse() { - + bitField0_ = (bitField0_ & ~0x00000002); bytesInUse_ = 0L; onChanged(); return this; @@ -637,8 +629,9 @@ public long getPeakBytesInUse() { * @return This builder for chaining. */ public Builder setPeakBytesInUse(long value) { - + peakBytesInUse_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -647,7 +640,7 @@ public Builder setPeakBytesInUse(long value) { * @return This builder for chaining. */ public Builder clearPeakBytesInUse() { - + bitField0_ = (bitField0_ & ~0x00000004); peakBytesInUse_ = 0L; onChanged(); return this; @@ -668,8 +661,9 @@ public long getLargestAllocSize() { * @return This builder for chaining. */ public Builder setLargestAllocSize(long value) { - + largestAllocSize_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -678,7 +672,7 @@ public Builder setLargestAllocSize(long value) { * @return This builder for chaining. */ public Builder clearLargestAllocSize() { - + bitField0_ = (bitField0_ & ~0x00000008); largestAllocSize_ = 0L; onChanged(); return this; @@ -699,8 +693,9 @@ public float getFragmentationMetric() { * @return This builder for chaining. */ public Builder setFragmentationMetric(float value) { - + fragmentationMetric_ = value; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -709,23 +704,11 @@ public Builder setFragmentationMetric(float value) { * @return This builder for chaining. */ public Builder clearFragmentationMetric() { - + bitField0_ = (bitField0_ & ~0x00000010); fragmentationMetric_ = 0F; onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.MemAllocatorStats) } @@ -846,37 +829,34 @@ public interface MemChunkOrBuilder extends * Protobuf type {@code tensorflow.MemChunk} */ public static final class MemChunk extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.MemChunk) MemChunkOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + MemChunk.class.getName()); + } // Use MemChunk.newBuilder() to construct. - private MemChunk(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private MemChunk(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private MemChunk() { opName_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new MemChunk(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.BfcMemoryMap.internal_static_tensorflow_MemChunk_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.BfcMemoryMap.internal_static_tensorflow_MemChunk_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -884,7 +864,7 @@ protected java.lang.Object newInstance( } public static final int ADDRESS_FIELD_NUMBER = 1; - private long address_; + private long address_ = 0L; /** * uint64 address = 1; * @return The address. @@ -895,7 +875,7 @@ public long getAddress() { } public static final int SIZE_FIELD_NUMBER = 2; - private long size_; + private long size_ = 0L; /** * int64 size = 2; * @return The size. @@ -906,7 +886,7 @@ public long getSize() { } public static final int REQUESTED_SIZE_FIELD_NUMBER = 3; - private long requestedSize_; + private long requestedSize_ = 0L; /** * int64 requested_size = 3; * @return The requestedSize. @@ -917,7 +897,7 @@ public long getRequestedSize() { } public static final int BIN_FIELD_NUMBER = 4; - private int bin_; + private int bin_ = 0; /** * int32 bin = 4; * @return The bin. @@ -928,7 +908,8 @@ public int getBin() { } public static final int OP_NAME_FIELD_NUMBER = 5; - private volatile java.lang.Object opName_; + @SuppressWarnings("serial") + private volatile java.lang.Object opName_ = ""; /** * string op_name = 5; * @return The opName. @@ -966,7 +947,7 @@ public java.lang.String getOpName() { } public static final int FREED_AT_COUNT_FIELD_NUMBER = 6; - private long freedAtCount_; + private long freedAtCount_ = 0L; /** * uint64 freed_at_count = 6; * @return The freedAtCount. @@ -977,7 +958,7 @@ public long getFreedAtCount() { } public static final int ACTION_COUNT_FIELD_NUMBER = 7; - private long actionCount_; + private long actionCount_ = 0L; /** * uint64 action_count = 7; * @return The actionCount. @@ -988,7 +969,7 @@ public long getActionCount() { } public static final int IN_USE_FIELD_NUMBER = 8; - private boolean inUse_; + private boolean inUse_ = false; /** * bool in_use = 8; * @return The inUse. @@ -999,7 +980,7 @@ public boolean getInUse() { } public static final int STEP_ID_FIELD_NUMBER = 9; - private long stepId_; + private long stepId_ = 0L; /** * uint64 step_id = 9; * @return The stepId. @@ -1035,8 +1016,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (bin_ != 0) { output.writeInt32(4, bin_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(opName_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 5, opName_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(opName_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 5, opName_); } if (freedAtCount_ != 0L) { output.writeUInt64(6, freedAtCount_); @@ -1075,8 +1056,8 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeInt32Size(4, bin_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(opName_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, opName_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(opName_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(5, opName_); } if (freedAtCount_ != 0L) { size += com.google.protobuf.CodedOutputStream @@ -1202,39 +1183,41 @@ public static org.tensorflow.proto.BfcMemoryMap.MemChunk parseFrom( } public static org.tensorflow.proto.BfcMemoryMap.MemChunk parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.BfcMemoryMap.MemChunk parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.BfcMemoryMap.MemChunk parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.BfcMemoryMap.MemChunk parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.BfcMemoryMap.MemChunk parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.BfcMemoryMap.MemChunk parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -1254,7 +1237,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -1262,7 +1245,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.MemChunk} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.MemChunk) org.tensorflow.proto.BfcMemoryMap.MemChunkOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -1271,7 +1254,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.BfcMemoryMap.internal_static_tensorflow_MemChunk_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -1284,31 +1267,23 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; address_ = 0L; - size_ = 0L; - requestedSize_ = 0L; - bin_ = 0; - opName_ = ""; - freedAtCount_ = 0L; - actionCount_ = 0L; - inUse_ = false; - stepId_ = 0L; - return this; } @@ -1335,51 +1310,42 @@ public org.tensorflow.proto.BfcMemoryMap.MemChunk build() { @java.lang.Override public org.tensorflow.proto.BfcMemoryMap.MemChunk buildPartial() { org.tensorflow.proto.BfcMemoryMap.MemChunk result = new org.tensorflow.proto.BfcMemoryMap.MemChunk(this); - result.address_ = address_; - result.size_ = size_; - result.requestedSize_ = requestedSize_; - result.bin_ = bin_; - result.opName_ = opName_; - result.freedAtCount_ = freedAtCount_; - result.actionCount_ = actionCount_; - result.inUse_ = inUse_; - result.stepId_ = stepId_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.BfcMemoryMap.MemChunk result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.address_ = address_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.size_ = size_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.requestedSize_ = requestedSize_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.bin_ = bin_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.opName_ = opName_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.freedAtCount_ = freedAtCount_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.actionCount_ = actionCount_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.inUse_ = inUse_; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.stepId_ = stepId_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.BfcMemoryMap.MemChunk) { @@ -1406,6 +1372,7 @@ public Builder mergeFrom(org.tensorflow.proto.BfcMemoryMap.MemChunk other) { } if (!other.getOpName().isEmpty()) { opName_ = other.opName_; + bitField0_ |= 0x00000010; onChanged(); } if (other.getFreedAtCount() != 0L) { @@ -1448,47 +1415,47 @@ public Builder mergeFrom( break; case 8: { address_ = input.readUInt64(); - + bitField0_ |= 0x00000001; break; } // case 8 case 16: { size_ = input.readInt64(); - + bitField0_ |= 0x00000002; break; } // case 16 case 24: { requestedSize_ = input.readInt64(); - + bitField0_ |= 0x00000004; break; } // case 24 case 32: { bin_ = input.readInt32(); - + bitField0_ |= 0x00000008; break; } // case 32 case 42: { opName_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000010; break; } // case 42 case 48: { freedAtCount_ = input.readUInt64(); - + bitField0_ |= 0x00000020; break; } // case 48 case 56: { actionCount_ = input.readUInt64(); - + bitField0_ |= 0x00000040; break; } // case 56 case 64: { inUse_ = input.readBool(); - + bitField0_ |= 0x00000080; break; } // case 64 case 72: { stepId_ = input.readUInt64(); - + bitField0_ |= 0x00000100; break; } // case 72 default: { @@ -1506,6 +1473,7 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private long address_ ; /** @@ -1522,8 +1490,9 @@ public long getAddress() { * @return This builder for chaining. */ public Builder setAddress(long value) { - + address_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -1532,7 +1501,7 @@ public Builder setAddress(long value) { * @return This builder for chaining. */ public Builder clearAddress() { - + bitField0_ = (bitField0_ & ~0x00000001); address_ = 0L; onChanged(); return this; @@ -1553,8 +1522,9 @@ public long getSize() { * @return This builder for chaining. */ public Builder setSize(long value) { - + size_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -1563,7 +1533,7 @@ public Builder setSize(long value) { * @return This builder for chaining. */ public Builder clearSize() { - + bitField0_ = (bitField0_ & ~0x00000002); size_ = 0L; onChanged(); return this; @@ -1584,8 +1554,9 @@ public long getRequestedSize() { * @return This builder for chaining. */ public Builder setRequestedSize(long value) { - + requestedSize_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -1594,7 +1565,7 @@ public Builder setRequestedSize(long value) { * @return This builder for chaining. */ public Builder clearRequestedSize() { - + bitField0_ = (bitField0_ & ~0x00000004); requestedSize_ = 0L; onChanged(); return this; @@ -1615,8 +1586,9 @@ public int getBin() { * @return This builder for chaining. */ public Builder setBin(int value) { - + bin_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -1625,7 +1597,7 @@ public Builder setBin(int value) { * @return This builder for chaining. */ public Builder clearBin() { - + bitField0_ = (bitField0_ & ~0x00000008); bin_ = 0; onChanged(); return this; @@ -1672,11 +1644,9 @@ public java.lang.String getOpName() { */ public Builder setOpName( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } opName_ = value; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -1685,8 +1655,8 @@ public Builder setOpName( * @return This builder for chaining. */ public Builder clearOpName() { - opName_ = getDefaultInstance().getOpName(); + bitField0_ = (bitField0_ & ~0x00000010); onChanged(); return this; } @@ -1697,12 +1667,10 @@ public Builder clearOpName() { */ public Builder setOpNameBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); opName_ = value; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -1722,8 +1690,9 @@ public long getFreedAtCount() { * @return This builder for chaining. */ public Builder setFreedAtCount(long value) { - + freedAtCount_ = value; + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -1732,7 +1701,7 @@ public Builder setFreedAtCount(long value) { * @return This builder for chaining. */ public Builder clearFreedAtCount() { - + bitField0_ = (bitField0_ & ~0x00000020); freedAtCount_ = 0L; onChanged(); return this; @@ -1753,8 +1722,9 @@ public long getActionCount() { * @return This builder for chaining. */ public Builder setActionCount(long value) { - + actionCount_ = value; + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -1763,7 +1733,7 @@ public Builder setActionCount(long value) { * @return This builder for chaining. */ public Builder clearActionCount() { - + bitField0_ = (bitField0_ & ~0x00000040); actionCount_ = 0L; onChanged(); return this; @@ -1784,8 +1754,9 @@ public boolean getInUse() { * @return This builder for chaining. */ public Builder setInUse(boolean value) { - + inUse_ = value; + bitField0_ |= 0x00000080; onChanged(); return this; } @@ -1794,7 +1765,7 @@ public Builder setInUse(boolean value) { * @return This builder for chaining. */ public Builder clearInUse() { - + bitField0_ = (bitField0_ & ~0x00000080); inUse_ = false; onChanged(); return this; @@ -1815,8 +1786,9 @@ public long getStepId() { * @return This builder for chaining. */ public Builder setStepId(long value) { - + stepId_ = value; + bitField0_ |= 0x00000100; onChanged(); return this; } @@ -1825,23 +1797,11 @@ public Builder setStepId(long value) { * @return This builder for chaining. */ public Builder clearStepId() { - + bitField0_ = (bitField0_ & ~0x00000100); stepId_ = 0L; onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.MemChunk) } @@ -1932,36 +1892,33 @@ public interface BinSummaryOrBuilder extends * Protobuf type {@code tensorflow.BinSummary} */ public static final class BinSummary extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.BinSummary) BinSummaryOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + BinSummary.class.getName()); + } // Use BinSummary.newBuilder() to construct. - private BinSummary(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private BinSummary(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private BinSummary() { } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new BinSummary(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.BfcMemoryMap.internal_static_tensorflow_BinSummary_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.BfcMemoryMap.internal_static_tensorflow_BinSummary_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -1969,7 +1926,7 @@ protected java.lang.Object newInstance( } public static final int BIN_FIELD_NUMBER = 1; - private int bin_; + private int bin_ = 0; /** * int32 bin = 1; * @return The bin. @@ -1980,7 +1937,7 @@ public int getBin() { } public static final int TOTAL_BYTES_IN_USE_FIELD_NUMBER = 2; - private long totalBytesInUse_; + private long totalBytesInUse_ = 0L; /** * int64 total_bytes_in_use = 2; * @return The totalBytesInUse. @@ -1991,7 +1948,7 @@ public long getTotalBytesInUse() { } public static final int TOTAL_BYTES_IN_BIN_FIELD_NUMBER = 3; - private long totalBytesInBin_; + private long totalBytesInBin_ = 0L; /** * int64 total_bytes_in_bin = 3; * @return The totalBytesInBin. @@ -2002,7 +1959,7 @@ public long getTotalBytesInBin() { } public static final int TOTAL_CHUNKS_IN_USE_FIELD_NUMBER = 4; - private long totalChunksInUse_; + private long totalChunksInUse_ = 0L; /** * int64 total_chunks_in_use = 4; * @return The totalChunksInUse. @@ -2013,7 +1970,7 @@ public long getTotalChunksInUse() { } public static final int TOTAL_CHUNKS_IN_BIN_FIELD_NUMBER = 5; - private long totalChunksInBin_; + private long totalChunksInBin_ = 0L; /** * int64 total_chunks_in_bin = 5; * @return The totalChunksInBin. @@ -2170,39 +2127,41 @@ public static org.tensorflow.proto.BfcMemoryMap.BinSummary parseFrom( } public static org.tensorflow.proto.BfcMemoryMap.BinSummary parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.BfcMemoryMap.BinSummary parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.BfcMemoryMap.BinSummary parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.BfcMemoryMap.BinSummary parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.BfcMemoryMap.BinSummary parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.BfcMemoryMap.BinSummary parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -2222,7 +2181,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -2230,7 +2189,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.BinSummary} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.BinSummary) org.tensorflow.proto.BfcMemoryMap.BinSummaryOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -2239,7 +2198,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.BfcMemoryMap.internal_static_tensorflow_BinSummary_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -2252,23 +2211,19 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; bin_ = 0; - totalBytesInUse_ = 0L; - totalBytesInBin_ = 0L; - totalChunksInUse_ = 0L; - totalChunksInBin_ = 0L; - return this; } @@ -2295,47 +2250,30 @@ public org.tensorflow.proto.BfcMemoryMap.BinSummary build() { @java.lang.Override public org.tensorflow.proto.BfcMemoryMap.BinSummary buildPartial() { org.tensorflow.proto.BfcMemoryMap.BinSummary result = new org.tensorflow.proto.BfcMemoryMap.BinSummary(this); - result.bin_ = bin_; - result.totalBytesInUse_ = totalBytesInUse_; - result.totalBytesInBin_ = totalBytesInBin_; - result.totalChunksInUse_ = totalChunksInUse_; - result.totalChunksInBin_ = totalChunksInBin_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.BfcMemoryMap.BinSummary result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.bin_ = bin_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.totalBytesInUse_ = totalBytesInUse_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.totalBytesInBin_ = totalBytesInBin_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.totalChunksInUse_ = totalChunksInUse_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.totalChunksInBin_ = totalChunksInBin_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.BfcMemoryMap.BinSummary) { @@ -2391,27 +2329,27 @@ public Builder mergeFrom( break; case 8: { bin_ = input.readInt32(); - + bitField0_ |= 0x00000001; break; } // case 8 case 16: { totalBytesInUse_ = input.readInt64(); - + bitField0_ |= 0x00000002; break; } // case 16 case 24: { totalBytesInBin_ = input.readInt64(); - + bitField0_ |= 0x00000004; break; } // case 24 case 32: { totalChunksInUse_ = input.readInt64(); - + bitField0_ |= 0x00000008; break; } // case 32 case 40: { totalChunksInBin_ = input.readInt64(); - + bitField0_ |= 0x00000010; break; } // case 40 default: { @@ -2429,6 +2367,7 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private int bin_ ; /** @@ -2445,8 +2384,9 @@ public int getBin() { * @return This builder for chaining. */ public Builder setBin(int value) { - + bin_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -2455,7 +2395,7 @@ public Builder setBin(int value) { * @return This builder for chaining. */ public Builder clearBin() { - + bitField0_ = (bitField0_ & ~0x00000001); bin_ = 0; onChanged(); return this; @@ -2476,8 +2416,9 @@ public long getTotalBytesInUse() { * @return This builder for chaining. */ public Builder setTotalBytesInUse(long value) { - + totalBytesInUse_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -2486,7 +2427,7 @@ public Builder setTotalBytesInUse(long value) { * @return This builder for chaining. */ public Builder clearTotalBytesInUse() { - + bitField0_ = (bitField0_ & ~0x00000002); totalBytesInUse_ = 0L; onChanged(); return this; @@ -2507,8 +2448,9 @@ public long getTotalBytesInBin() { * @return This builder for chaining. */ public Builder setTotalBytesInBin(long value) { - + totalBytesInBin_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -2517,7 +2459,7 @@ public Builder setTotalBytesInBin(long value) { * @return This builder for chaining. */ public Builder clearTotalBytesInBin() { - + bitField0_ = (bitField0_ & ~0x00000004); totalBytesInBin_ = 0L; onChanged(); return this; @@ -2538,8 +2480,9 @@ public long getTotalChunksInUse() { * @return This builder for chaining. */ public Builder setTotalChunksInUse(long value) { - + totalChunksInUse_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -2548,7 +2491,7 @@ public Builder setTotalChunksInUse(long value) { * @return This builder for chaining. */ public Builder clearTotalChunksInUse() { - + bitField0_ = (bitField0_ & ~0x00000008); totalChunksInUse_ = 0L; onChanged(); return this; @@ -2569,8 +2512,9 @@ public long getTotalChunksInBin() { * @return This builder for chaining. */ public Builder setTotalChunksInBin(long value) { - + totalChunksInBin_ = value; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -2579,23 +2523,11 @@ public Builder setTotalChunksInBin(long value) { * @return This builder for chaining. */ public Builder clearTotalChunksInBin() { - + bitField0_ = (bitField0_ & ~0x00000010); totalChunksInBin_ = 0L; onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.BinSummary) } @@ -2668,36 +2600,33 @@ public interface SnapShotOrBuilder extends * Protobuf type {@code tensorflow.SnapShot} */ public static final class SnapShot extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.SnapShot) SnapShotOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + SnapShot.class.getName()); + } // Use SnapShot.newBuilder() to construct. - private SnapShot(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private SnapShot(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private SnapShot() { } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new SnapShot(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.BfcMemoryMap.internal_static_tensorflow_SnapShot_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.BfcMemoryMap.internal_static_tensorflow_SnapShot_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -2705,7 +2634,7 @@ protected java.lang.Object newInstance( } public static final int ACTION_COUNT_FIELD_NUMBER = 1; - private long actionCount_; + private long actionCount_ = 0L; /** * uint64 action_count = 1; * @return The actionCount. @@ -2716,7 +2645,7 @@ public long getActionCount() { } public static final int SIZE_FIELD_NUMBER = 2; - private long size_; + private long size_ = 0L; /** * int64 size = 2; * @return The size. @@ -2838,39 +2767,41 @@ public static org.tensorflow.proto.BfcMemoryMap.SnapShot parseFrom( } public static org.tensorflow.proto.BfcMemoryMap.SnapShot parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.BfcMemoryMap.SnapShot parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.BfcMemoryMap.SnapShot parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.BfcMemoryMap.SnapShot parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.BfcMemoryMap.SnapShot parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.BfcMemoryMap.SnapShot parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -2890,7 +2821,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -2898,7 +2829,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.SnapShot} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.SnapShot) org.tensorflow.proto.BfcMemoryMap.SnapShotOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -2907,7 +2838,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.BfcMemoryMap.internal_static_tensorflow_SnapShot_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -2920,17 +2851,16 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; actionCount_ = 0L; - size_ = 0L; - return this; } @@ -2957,44 +2887,21 @@ public org.tensorflow.proto.BfcMemoryMap.SnapShot build() { @java.lang.Override public org.tensorflow.proto.BfcMemoryMap.SnapShot buildPartial() { org.tensorflow.proto.BfcMemoryMap.SnapShot result = new org.tensorflow.proto.BfcMemoryMap.SnapShot(this); - result.actionCount_ = actionCount_; - result.size_ = size_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.BfcMemoryMap.SnapShot result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.actionCount_ = actionCount_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.size_ = size_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.BfcMemoryMap.SnapShot) { @@ -3041,12 +2948,12 @@ public Builder mergeFrom( break; case 8: { actionCount_ = input.readUInt64(); - + bitField0_ |= 0x00000001; break; } // case 8 case 16: { size_ = input.readInt64(); - + bitField0_ |= 0x00000002; break; } // case 16 default: { @@ -3064,6 +2971,7 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private long actionCount_ ; /** @@ -3080,8 +2988,9 @@ public long getActionCount() { * @return This builder for chaining. */ public Builder setActionCount(long value) { - + actionCount_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -3090,7 +2999,7 @@ public Builder setActionCount(long value) { * @return This builder for chaining. */ public Builder clearActionCount() { - + bitField0_ = (bitField0_ & ~0x00000001); actionCount_ = 0L; onChanged(); return this; @@ -3111,8 +3020,9 @@ public long getSize() { * @return This builder for chaining. */ public Builder setSize(long value) { - + size_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -3121,23 +3031,11 @@ public Builder setSize(long value) { * @return This builder for chaining. */ public Builder clearSize() { - + bitField0_ = (bitField0_ & ~0x00000002); size_ = 0L; onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.SnapShot) } @@ -3297,12 +3195,21 @@ org.tensorflow.proto.BfcMemoryMap.SnapShotOrBuilder getSnapShotOrBuilder( * Protobuf type {@code tensorflow.MemoryDump} */ public static final class MemoryDump extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.MemoryDump) MemoryDumpOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + MemoryDump.class.getName()); + } // Use MemoryDump.newBuilder() to construct. - private MemoryDump(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private MemoryDump(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private MemoryDump() { @@ -3312,33 +3219,23 @@ private MemoryDump() { snapShot_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new MemoryDump(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.BfcMemoryMap.internal_static_tensorflow_MemoryDump_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.BfcMemoryMap.internal_static_tensorflow_MemoryDump_fieldAccessorTable .ensureFieldAccessorsInitialized( org.tensorflow.proto.BfcMemoryMap.MemoryDump.class, org.tensorflow.proto.BfcMemoryMap.MemoryDump.Builder.class); } + private int bitField0_; public static final int ALLOCATOR_NAME_FIELD_NUMBER = 1; - private volatile java.lang.Object allocatorName_; + @SuppressWarnings("serial") + private volatile java.lang.Object allocatorName_ = ""; /** * string allocator_name = 1; * @return The allocatorName. @@ -3376,6 +3273,7 @@ public java.lang.String getAllocatorName() { } public static final int BIN_SUMMARY_FIELD_NUMBER = 2; + @SuppressWarnings("serial") private java.util.List binSummary_; /** * repeated .tensorflow.BinSummary bin_summary = 2; @@ -3416,6 +3314,7 @@ public org.tensorflow.proto.BfcMemoryMap.BinSummaryOrBuilder getBinSummaryOrBuil } public static final int CHUNK_FIELD_NUMBER = 3; + @SuppressWarnings("serial") private java.util.List chunk_; /** * repeated .tensorflow.MemChunk chunk = 3; @@ -3456,6 +3355,7 @@ public org.tensorflow.proto.BfcMemoryMap.MemChunkOrBuilder getChunkOrBuilder( } public static final int SNAP_SHOT_FIELD_NUMBER = 4; + @SuppressWarnings("serial") private java.util.List snapShot_; /** * repeated .tensorflow.SnapShot snap_shot = 4; @@ -3503,7 +3403,7 @@ public org.tensorflow.proto.BfcMemoryMap.SnapShotOrBuilder getSnapShotOrBuilder( */ @java.lang.Override public boolean hasStats() { - return stats_ != null; + return ((bitField0_ & 0x00000001) != 0); } /** * .tensorflow.MemAllocatorStats stats = 5; @@ -3518,7 +3418,7 @@ public org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats getStats() { */ @java.lang.Override public org.tensorflow.proto.BfcMemoryMap.MemAllocatorStatsOrBuilder getStatsOrBuilder() { - return getStats(); + return stats_ == null ? org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats.getDefaultInstance() : stats_; } private byte memoizedIsInitialized = -1; @@ -3535,8 +3435,8 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(allocatorName_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, allocatorName_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(allocatorName_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, allocatorName_); } for (int i = 0; i < binSummary_.size(); i++) { output.writeMessage(2, binSummary_.get(i)); @@ -3547,7 +3447,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) for (int i = 0; i < snapShot_.size(); i++) { output.writeMessage(4, snapShot_.get(i)); } - if (stats_ != null) { + if (((bitField0_ & 0x00000001) != 0)) { output.writeMessage(5, getStats()); } getUnknownFields().writeTo(output); @@ -3559,8 +3459,8 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(allocatorName_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, allocatorName_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(allocatorName_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, allocatorName_); } for (int i = 0; i < binSummary_.size(); i++) { size += com.google.protobuf.CodedOutputStream @@ -3574,7 +3474,7 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeMessageSize(4, snapShot_.get(i)); } - if (stats_ != null) { + if (((bitField0_ & 0x00000001) != 0)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(5, getStats()); } @@ -3674,39 +3574,41 @@ public static org.tensorflow.proto.BfcMemoryMap.MemoryDump parseFrom( } public static org.tensorflow.proto.BfcMemoryMap.MemoryDump parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.BfcMemoryMap.MemoryDump parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.BfcMemoryMap.MemoryDump parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.BfcMemoryMap.MemoryDump parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.BfcMemoryMap.MemoryDump parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.BfcMemoryMap.MemoryDump parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -3726,7 +3628,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -3734,7 +3636,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.MemoryDump} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.MemoryDump) org.tensorflow.proto.BfcMemoryMap.MemoryDumpOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -3743,7 +3645,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.BfcMemoryMap.internal_static_tensorflow_MemoryDump_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -3752,44 +3654,52 @@ public static final class Builder extends // Construct using org.tensorflow.proto.BfcMemoryMap.MemoryDump.newBuilder() private Builder() { - + maybeForceBuilderInitialization(); } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); - + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage + .alwaysUseFieldBuilders) { + getBinSummaryFieldBuilder(); + getChunkFieldBuilder(); + getSnapShotFieldBuilder(); + getStatsFieldBuilder(); + } } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; allocatorName_ = ""; - if (binSummaryBuilder_ == null) { binSummary_ = java.util.Collections.emptyList(); } else { binSummary_ = null; binSummaryBuilder_.clear(); } - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000002); if (chunkBuilder_ == null) { chunk_ = java.util.Collections.emptyList(); } else { chunk_ = null; chunkBuilder_.clear(); } - bitField0_ = (bitField0_ & ~0x00000002); + bitField0_ = (bitField0_ & ~0x00000004); if (snapShotBuilder_ == null) { snapShot_ = java.util.Collections.emptyList(); } else { snapShot_ = null; snapShotBuilder_.clear(); } - bitField0_ = (bitField0_ & ~0x00000004); - if (statsBuilder_ == null) { - stats_ = null; - } else { - stats_ = null; + bitField0_ = (bitField0_ & ~0x00000008); + stats_ = null; + if (statsBuilder_ != null) { + statsBuilder_.dispose(); statsBuilder_ = null; } return this; @@ -3818,76 +3728,57 @@ public org.tensorflow.proto.BfcMemoryMap.MemoryDump build() { @java.lang.Override public org.tensorflow.proto.BfcMemoryMap.MemoryDump buildPartial() { org.tensorflow.proto.BfcMemoryMap.MemoryDump result = new org.tensorflow.proto.BfcMemoryMap.MemoryDump(this); - int from_bitField0_ = bitField0_; - result.allocatorName_ = allocatorName_; + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(org.tensorflow.proto.BfcMemoryMap.MemoryDump result) { if (binSummaryBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { + if (((bitField0_ & 0x00000002) != 0)) { binSummary_ = java.util.Collections.unmodifiableList(binSummary_); - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000002); } result.binSummary_ = binSummary_; } else { result.binSummary_ = binSummaryBuilder_.build(); } if (chunkBuilder_ == null) { - if (((bitField0_ & 0x00000002) != 0)) { + if (((bitField0_ & 0x00000004) != 0)) { chunk_ = java.util.Collections.unmodifiableList(chunk_); - bitField0_ = (bitField0_ & ~0x00000002); + bitField0_ = (bitField0_ & ~0x00000004); } result.chunk_ = chunk_; } else { result.chunk_ = chunkBuilder_.build(); } if (snapShotBuilder_ == null) { - if (((bitField0_ & 0x00000004) != 0)) { + if (((bitField0_ & 0x00000008) != 0)) { snapShot_ = java.util.Collections.unmodifiableList(snapShot_); - bitField0_ = (bitField0_ & ~0x00000004); + bitField0_ = (bitField0_ & ~0x00000008); } result.snapShot_ = snapShot_; } else { result.snapShot_ = snapShotBuilder_.build(); } - if (statsBuilder_ == null) { - result.stats_ = stats_; - } else { - result.stats_ = statsBuilder_.build(); - } - onBuilt(); - return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.BfcMemoryMap.MemoryDump result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.allocatorName_ = allocatorName_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000010) != 0)) { + result.stats_ = statsBuilder_ == null + ? stats_ + : statsBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.BfcMemoryMap.MemoryDump) { @@ -3902,13 +3793,14 @@ public Builder mergeFrom(org.tensorflow.proto.BfcMemoryMap.MemoryDump other) { if (other == org.tensorflow.proto.BfcMemoryMap.MemoryDump.getDefaultInstance()) return this; if (!other.getAllocatorName().isEmpty()) { allocatorName_ = other.allocatorName_; + bitField0_ |= 0x00000001; onChanged(); } if (binSummaryBuilder_ == null) { if (!other.binSummary_.isEmpty()) { if (binSummary_.isEmpty()) { binSummary_ = other.binSummary_; - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000002); } else { ensureBinSummaryIsMutable(); binSummary_.addAll(other.binSummary_); @@ -3921,9 +3813,9 @@ public Builder mergeFrom(org.tensorflow.proto.BfcMemoryMap.MemoryDump other) { binSummaryBuilder_.dispose(); binSummaryBuilder_ = null; binSummary_ = other.binSummary_; - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000002); binSummaryBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getBinSummaryFieldBuilder() : null; } else { binSummaryBuilder_.addAllMessages(other.binSummary_); @@ -3934,7 +3826,7 @@ public Builder mergeFrom(org.tensorflow.proto.BfcMemoryMap.MemoryDump other) { if (!other.chunk_.isEmpty()) { if (chunk_.isEmpty()) { chunk_ = other.chunk_; - bitField0_ = (bitField0_ & ~0x00000002); + bitField0_ = (bitField0_ & ~0x00000004); } else { ensureChunkIsMutable(); chunk_.addAll(other.chunk_); @@ -3947,9 +3839,9 @@ public Builder mergeFrom(org.tensorflow.proto.BfcMemoryMap.MemoryDump other) { chunkBuilder_.dispose(); chunkBuilder_ = null; chunk_ = other.chunk_; - bitField0_ = (bitField0_ & ~0x00000002); + bitField0_ = (bitField0_ & ~0x00000004); chunkBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getChunkFieldBuilder() : null; } else { chunkBuilder_.addAllMessages(other.chunk_); @@ -3960,7 +3852,7 @@ public Builder mergeFrom(org.tensorflow.proto.BfcMemoryMap.MemoryDump other) { if (!other.snapShot_.isEmpty()) { if (snapShot_.isEmpty()) { snapShot_ = other.snapShot_; - bitField0_ = (bitField0_ & ~0x00000004); + bitField0_ = (bitField0_ & ~0x00000008); } else { ensureSnapShotIsMutable(); snapShot_.addAll(other.snapShot_); @@ -3973,9 +3865,9 @@ public Builder mergeFrom(org.tensorflow.proto.BfcMemoryMap.MemoryDump other) { snapShotBuilder_.dispose(); snapShotBuilder_ = null; snapShot_ = other.snapShot_; - bitField0_ = (bitField0_ & ~0x00000004); + bitField0_ = (bitField0_ & ~0x00000008); snapShotBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getSnapShotFieldBuilder() : null; } else { snapShotBuilder_.addAllMessages(other.snapShot_); @@ -4013,7 +3905,7 @@ public Builder mergeFrom( break; case 10: { allocatorName_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000001; break; } // case 10 case 18: { @@ -4059,7 +3951,7 @@ public Builder mergeFrom( input.readMessage( getStatsFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000010; break; } // case 42 default: { @@ -4120,11 +4012,9 @@ public java.lang.String getAllocatorName() { */ public Builder setAllocatorName( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } allocatorName_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -4133,8 +4023,8 @@ public Builder setAllocatorName( * @return This builder for chaining. */ public Builder clearAllocatorName() { - allocatorName_ = getDefaultInstance().getAllocatorName(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } @@ -4145,12 +4035,10 @@ public Builder clearAllocatorName() { */ public Builder setAllocatorNameBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); allocatorName_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -4158,13 +4046,13 @@ public Builder setAllocatorNameBytes( private java.util.List binSummary_ = java.util.Collections.emptyList(); private void ensureBinSummaryIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { + if (!((bitField0_ & 0x00000002) != 0)) { binSummary_ = new java.util.ArrayList(binSummary_); - bitField0_ |= 0x00000001; + bitField0_ |= 0x00000002; } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.BfcMemoryMap.BinSummary, org.tensorflow.proto.BfcMemoryMap.BinSummary.Builder, org.tensorflow.proto.BfcMemoryMap.BinSummaryOrBuilder> binSummaryBuilder_; /** @@ -4310,7 +4198,7 @@ public Builder addAllBinSummary( public Builder clearBinSummary() { if (binSummaryBuilder_ == null) { binSummary_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000002); onChanged(); } else { binSummaryBuilder_.clear(); @@ -4380,14 +4268,14 @@ public org.tensorflow.proto.BfcMemoryMap.BinSummary.Builder addBinSummaryBuilder getBinSummaryBuilderList() { return getBinSummaryFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.BfcMemoryMap.BinSummary, org.tensorflow.proto.BfcMemoryMap.BinSummary.Builder, org.tensorflow.proto.BfcMemoryMap.BinSummaryOrBuilder> getBinSummaryFieldBuilder() { if (binSummaryBuilder_ == null) { - binSummaryBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + binSummaryBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.BfcMemoryMap.BinSummary, org.tensorflow.proto.BfcMemoryMap.BinSummary.Builder, org.tensorflow.proto.BfcMemoryMap.BinSummaryOrBuilder>( binSummary_, - ((bitField0_ & 0x00000001) != 0), + ((bitField0_ & 0x00000002) != 0), getParentForChildren(), isClean()); binSummary_ = null; @@ -4398,13 +4286,13 @@ public org.tensorflow.proto.BfcMemoryMap.BinSummary.Builder addBinSummaryBuilder private java.util.List chunk_ = java.util.Collections.emptyList(); private void ensureChunkIsMutable() { - if (!((bitField0_ & 0x00000002) != 0)) { + if (!((bitField0_ & 0x00000004) != 0)) { chunk_ = new java.util.ArrayList(chunk_); - bitField0_ |= 0x00000002; + bitField0_ |= 0x00000004; } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.BfcMemoryMap.MemChunk, org.tensorflow.proto.BfcMemoryMap.MemChunk.Builder, org.tensorflow.proto.BfcMemoryMap.MemChunkOrBuilder> chunkBuilder_; /** @@ -4550,7 +4438,7 @@ public Builder addAllChunk( public Builder clearChunk() { if (chunkBuilder_ == null) { chunk_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); + bitField0_ = (bitField0_ & ~0x00000004); onChanged(); } else { chunkBuilder_.clear(); @@ -4620,14 +4508,14 @@ public org.tensorflow.proto.BfcMemoryMap.MemChunk.Builder addChunkBuilder( getChunkBuilderList() { return getChunkFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.BfcMemoryMap.MemChunk, org.tensorflow.proto.BfcMemoryMap.MemChunk.Builder, org.tensorflow.proto.BfcMemoryMap.MemChunkOrBuilder> getChunkFieldBuilder() { if (chunkBuilder_ == null) { - chunkBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + chunkBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.BfcMemoryMap.MemChunk, org.tensorflow.proto.BfcMemoryMap.MemChunk.Builder, org.tensorflow.proto.BfcMemoryMap.MemChunkOrBuilder>( chunk_, - ((bitField0_ & 0x00000002) != 0), + ((bitField0_ & 0x00000004) != 0), getParentForChildren(), isClean()); chunk_ = null; @@ -4638,13 +4526,13 @@ public org.tensorflow.proto.BfcMemoryMap.MemChunk.Builder addChunkBuilder( private java.util.List snapShot_ = java.util.Collections.emptyList(); private void ensureSnapShotIsMutable() { - if (!((bitField0_ & 0x00000004) != 0)) { + if (!((bitField0_ & 0x00000008) != 0)) { snapShot_ = new java.util.ArrayList(snapShot_); - bitField0_ |= 0x00000004; + bitField0_ |= 0x00000008; } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.BfcMemoryMap.SnapShot, org.tensorflow.proto.BfcMemoryMap.SnapShot.Builder, org.tensorflow.proto.BfcMemoryMap.SnapShotOrBuilder> snapShotBuilder_; /** @@ -4790,7 +4678,7 @@ public Builder addAllSnapShot( public Builder clearSnapShot() { if (snapShotBuilder_ == null) { snapShot_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000004); + bitField0_ = (bitField0_ & ~0x00000008); onChanged(); } else { snapShotBuilder_.clear(); @@ -4860,14 +4748,14 @@ public org.tensorflow.proto.BfcMemoryMap.SnapShot.Builder addSnapShotBuilder( getSnapShotBuilderList() { return getSnapShotFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.BfcMemoryMap.SnapShot, org.tensorflow.proto.BfcMemoryMap.SnapShot.Builder, org.tensorflow.proto.BfcMemoryMap.SnapShotOrBuilder> getSnapShotFieldBuilder() { if (snapShotBuilder_ == null) { - snapShotBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + snapShotBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.BfcMemoryMap.SnapShot, org.tensorflow.proto.BfcMemoryMap.SnapShot.Builder, org.tensorflow.proto.BfcMemoryMap.SnapShotOrBuilder>( snapShot_, - ((bitField0_ & 0x00000004) != 0), + ((bitField0_ & 0x00000008) != 0), getParentForChildren(), isClean()); snapShot_ = null; @@ -4876,14 +4764,14 @@ public org.tensorflow.proto.BfcMemoryMap.SnapShot.Builder addSnapShotBuilder( } private org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats stats_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats, org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats.Builder, org.tensorflow.proto.BfcMemoryMap.MemAllocatorStatsOrBuilder> statsBuilder_; /** * .tensorflow.MemAllocatorStats stats = 5; * @return Whether the stats field is set. */ public boolean hasStats() { - return statsBuilder_ != null || stats_ != null; + return ((bitField0_ & 0x00000010) != 0); } /** * .tensorflow.MemAllocatorStats stats = 5; @@ -4905,11 +4793,11 @@ public Builder setStats(org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats valu throw new NullPointerException(); } stats_ = value; - onChanged(); } else { statsBuilder_.setMessage(value); } - + bitField0_ |= 0x00000010; + onChanged(); return this; } /** @@ -4919,11 +4807,11 @@ public Builder setStats( org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats.Builder builderForValue) { if (statsBuilder_ == null) { stats_ = builderForValue.build(); - onChanged(); } else { statsBuilder_.setMessage(builderForValue.build()); } - + bitField0_ |= 0x00000010; + onChanged(); return this; } /** @@ -4931,38 +4819,40 @@ public Builder setStats( */ public Builder mergeStats(org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats value) { if (statsBuilder_ == null) { - if (stats_ != null) { - stats_ = - org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats.newBuilder(stats_).mergeFrom(value).buildPartial(); + if (((bitField0_ & 0x00000010) != 0) && + stats_ != null && + stats_ != org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats.getDefaultInstance()) { + getStatsBuilder().mergeFrom(value); } else { stats_ = value; } - onChanged(); } else { statsBuilder_.mergeFrom(value); } - + if (stats_ != null) { + bitField0_ |= 0x00000010; + onChanged(); + } return this; } /** * .tensorflow.MemAllocatorStats stats = 5; */ public Builder clearStats() { - if (statsBuilder_ == null) { - stats_ = null; - onChanged(); - } else { - stats_ = null; + bitField0_ = (bitField0_ & ~0x00000010); + stats_ = null; + if (statsBuilder_ != null) { + statsBuilder_.dispose(); statsBuilder_ = null; } - + onChanged(); return this; } /** * .tensorflow.MemAllocatorStats stats = 5; */ public org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats.Builder getStatsBuilder() { - + bitField0_ |= 0x00000010; onChanged(); return getStatsFieldBuilder().getBuilder(); } @@ -4980,11 +4870,11 @@ public org.tensorflow.proto.BfcMemoryMap.MemAllocatorStatsOrBuilder getStatsOrBu /** * .tensorflow.MemAllocatorStats stats = 5; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats, org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats.Builder, org.tensorflow.proto.BfcMemoryMap.MemAllocatorStatsOrBuilder> getStatsFieldBuilder() { if (statsBuilder_ == null) { - statsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + statsBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats, org.tensorflow.proto.BfcMemoryMap.MemAllocatorStats.Builder, org.tensorflow.proto.BfcMemoryMap.MemAllocatorStatsOrBuilder>( getStats(), getParentForChildren(), @@ -4993,18 +4883,6 @@ public org.tensorflow.proto.BfcMemoryMap.MemAllocatorStatsOrBuilder getStatsOrBu } return statsBuilder_; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.MemoryDump) } @@ -5060,27 +4938,27 @@ public org.tensorflow.proto.BfcMemoryMap.MemoryDump getDefaultInstanceForType() private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_MemAllocatorStats_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_MemAllocatorStats_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_MemChunk_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_MemChunk_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_BinSummary_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_BinSummary_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_SnapShot_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_SnapShot_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_MemoryDump_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_MemoryDump_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor @@ -5091,28 +4969,28 @@ public org.tensorflow.proto.BfcMemoryMap.MemoryDump getDefaultInstanceForType() descriptor; static { java.lang.String[] descriptorData = { - "\n!tsl/protobuf/bfc_memory_map.proto\022\nten" + - "sorflow\"\222\001\n\021MemAllocatorStats\022\022\n\nnum_all" + - "ocs\030\001 \001(\003\022\024\n\014bytes_in_use\030\002 \001(\003\022\031\n\021peak_" + - "bytes_in_use\030\003 \001(\003\022\032\n\022largest_alloc_size" + - "\030\004 \001(\003\022\034\n\024fragmentation_metric\030\005 \001(\002\"\256\001\n" + - "\010MemChunk\022\017\n\007address\030\001 \001(\004\022\014\n\004size\030\002 \001(\003" + - "\022\026\n\016requested_size\030\003 \001(\003\022\013\n\003bin\030\004 \001(\005\022\017\n" + - "\007op_name\030\005 \001(\t\022\026\n\016freed_at_count\030\006 \001(\004\022\024" + - "\n\014action_count\030\007 \001(\004\022\016\n\006in_use\030\010 \001(\010\022\017\n\007" + - "step_id\030\t \001(\004\"\213\001\n\nBinSummary\022\013\n\003bin\030\001 \001(" + - "\005\022\032\n\022total_bytes_in_use\030\002 \001(\003\022\032\n\022total_b" + - "ytes_in_bin\030\003 \001(\003\022\033\n\023total_chunks_in_use" + - "\030\004 \001(\003\022\033\n\023total_chunks_in_bin\030\005 \001(\003\".\n\010S" + - "napShot\022\024\n\014action_count\030\001 \001(\004\022\014\n\004size\030\002 " + - "\001(\003\"\315\001\n\nMemoryDump\022\026\n\016allocator_name\030\001 \001" + - "(\t\022+\n\013bin_summary\030\002 \003(\0132\026.tensorflow.Bin" + - "Summary\022#\n\005chunk\030\003 \003(\0132\024.tensorflow.MemC" + - "hunk\022\'\n\tsnap_shot\030\004 \003(\0132\024.tensorflow.Sna" + - "pShot\022,\n\005stats\030\005 \001(\0132\035.tensorflow.MemAll" + - "ocatorStatsBV\n\024org.tensorflow.protoZ>git" + - "hub.com/google/tsl/tsl/go/protobuf/for_c" + - "ore_protos_go_protob\006proto3" + "\n%xla/tsl/protobuf/bfc_memory_map.proto\022" + + "\ntensorflow\"\222\001\n\021MemAllocatorStats\022\022\n\nnum" + + "_allocs\030\001 \001(\003\022\024\n\014bytes_in_use\030\002 \001(\003\022\031\n\021p" + + "eak_bytes_in_use\030\003 \001(\003\022\032\n\022largest_alloc_" + + "size\030\004 \001(\003\022\034\n\024fragmentation_metric\030\005 \001(\002" + + "\"\256\001\n\010MemChunk\022\017\n\007address\030\001 \001(\004\022\014\n\004size\030\002" + + " \001(\003\022\026\n\016requested_size\030\003 \001(\003\022\013\n\003bin\030\004 \001(" + + "\005\022\017\n\007op_name\030\005 \001(\t\022\026\n\016freed_at_count\030\006 \001" + + "(\004\022\024\n\014action_count\030\007 \001(\004\022\016\n\006in_use\030\010 \001(\010" + + "\022\017\n\007step_id\030\t \001(\004\"\213\001\n\nBinSummary\022\013\n\003bin\030" + + "\001 \001(\005\022\032\n\022total_bytes_in_use\030\002 \001(\003\022\032\n\022tot" + + "al_bytes_in_bin\030\003 \001(\003\022\033\n\023total_chunks_in" + + "_use\030\004 \001(\003\022\033\n\023total_chunks_in_bin\030\005 \001(\003\"" + + ".\n\010SnapShot\022\024\n\014action_count\030\001 \001(\004\022\014\n\004siz" + + "e\030\002 \001(\003\"\315\001\n\nMemoryDump\022\026\n\016allocator_name" + + "\030\001 \001(\t\022+\n\013bin_summary\030\002 \003(\0132\026.tensorflow" + + ".BinSummary\022#\n\005chunk\030\003 \003(\0132\024.tensorflow." + + "MemChunk\022\'\n\tsnap_shot\030\004 \003(\0132\024.tensorflow" + + ".SnapShot\022,\n\005stats\030\005 \001(\0132\035.tensorflow.Me" + + "mAllocatorStatsBV\n\024org.tensorflow.protoZ" + + ">github.com/google/tsl/tsl/go/protobuf/f" + + "or_core_protos_go_protob\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, @@ -5121,33 +4999,34 @@ public org.tensorflow.proto.BfcMemoryMap.MemoryDump getDefaultInstanceForType() internal_static_tensorflow_MemAllocatorStats_descriptor = getDescriptor().getMessageTypes().get(0); internal_static_tensorflow_MemAllocatorStats_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_MemAllocatorStats_descriptor, new java.lang.String[] { "NumAllocs", "BytesInUse", "PeakBytesInUse", "LargestAllocSize", "FragmentationMetric", }); internal_static_tensorflow_MemChunk_descriptor = getDescriptor().getMessageTypes().get(1); internal_static_tensorflow_MemChunk_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_MemChunk_descriptor, new java.lang.String[] { "Address", "Size", "RequestedSize", "Bin", "OpName", "FreedAtCount", "ActionCount", "InUse", "StepId", }); internal_static_tensorflow_BinSummary_descriptor = getDescriptor().getMessageTypes().get(2); internal_static_tensorflow_BinSummary_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_BinSummary_descriptor, new java.lang.String[] { "Bin", "TotalBytesInUse", "TotalBytesInBin", "TotalChunksInUse", "TotalChunksInBin", }); internal_static_tensorflow_SnapShot_descriptor = getDescriptor().getMessageTypes().get(3); internal_static_tensorflow_SnapShot_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_SnapShot_descriptor, new java.lang.String[] { "ActionCount", "Size", }); internal_static_tensorflow_MemoryDump_descriptor = getDescriptor().getMessageTypes().get(4); internal_static_tensorflow_MemoryDump_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_MemoryDump_descriptor, new java.lang.String[] { "AllocatorName", "BinSummary", "Chunk", "SnapShot", "Stats", }); + descriptor.resolveAllFeaturesImmutable(); } // @@protoc_insertion_point(outer_class_scope) diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BuildConfiguration.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BuildConfiguration.java index 8e3f0c9e7b5..5924c47cbc4 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BuildConfiguration.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BuildConfiguration.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! -// source: tsl/protobuf/test_log.proto +// NO CHECKED-IN PROTOBUF GENCODE +// source: xla/tsl/protobuf/test_log.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,39 +9,38 @@ * Protobuf type {@code tensorflow.BuildConfiguration} */ public final class BuildConfiguration extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.BuildConfiguration) BuildConfigurationOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + BuildConfiguration.class.getName()); + } // Use BuildConfiguration.newBuilder() to construct. - private BuildConfiguration(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private BuildConfiguration(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private BuildConfiguration() { mode_ = ""; - ccFlags_ = com.google.protobuf.LazyStringArrayList.EMPTY; - opts_ = com.google.protobuf.LazyStringArrayList.EMPTY; + ccFlags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + opts_ = + com.google.protobuf.LazyStringArrayList.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new BuildConfiguration(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_BuildConfiguration_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_BuildConfiguration_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -47,7 +48,8 @@ protected java.lang.Object newInstance( } public static final int MODE_FIELD_NUMBER = 1; - private volatile java.lang.Object mode_; + @SuppressWarnings("serial") + private volatile java.lang.Object mode_ = ""; /** *
        * opt, dbg, etc
    @@ -93,7 +95,9 @@ public java.lang.String getMode() {
       }
     
       public static final int CC_FLAGS_FIELD_NUMBER = 2;
    -  private com.google.protobuf.LazyStringList ccFlags_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList ccFlags_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * CC compiler flags, if known
    @@ -144,7 +148,9 @@ public java.lang.String getCcFlags(int index) {
       }
     
       public static final int OPTS_FIELD_NUMBER = 3;
    -  private com.google.protobuf.LazyStringList opts_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList opts_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * Bazel compilation options, if known
    @@ -208,14 +214,14 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(mode_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, mode_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(mode_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, mode_);
         }
         for (int i = 0; i < ccFlags_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, ccFlags_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, ccFlags_.getRaw(i));
         }
         for (int i = 0; i < opts_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, opts_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, opts_.getRaw(i));
         }
         getUnknownFields().writeTo(output);
       }
    @@ -226,8 +232,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(mode_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, mode_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(mode_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, mode_);
         }
         {
           int dataSize = 0;
    @@ -326,39 +332,41 @@ public static org.tensorflow.proto.BuildConfiguration parseFrom(
       }
       public static org.tensorflow.proto.BuildConfiguration parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.BuildConfiguration parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.BuildConfiguration parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.BuildConfiguration parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.BuildConfiguration parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.BuildConfiguration parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -378,7 +386,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -386,7 +394,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.BuildConfiguration}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.BuildConfiguration)
           org.tensorflow.proto.BuildConfigurationOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -395,7 +403,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_BuildConfiguration_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -408,19 +416,19 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           mode_ = "";
    -
    -      ccFlags_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    -      opts_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000002);
    +      ccFlags_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
    +      opts_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           return this;
         }
     
    @@ -447,54 +455,26 @@ public org.tensorflow.proto.BuildConfiguration build() {
         @java.lang.Override
         public org.tensorflow.proto.BuildConfiguration buildPartial() {
           org.tensorflow.proto.BuildConfiguration result = new org.tensorflow.proto.BuildConfiguration(this);
    -      int from_bitField0_ = bitField0_;
    -      result.mode_ = mode_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        ccFlags_ = ccFlags_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.ccFlags_ = ccFlags_;
    -      if (((bitField0_ & 0x00000002) != 0)) {
    -        opts_ = opts_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000002);
    -      }
    -      result.opts_ = opts_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.BuildConfiguration result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.mode_ = mode_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        ccFlags_.makeImmutable();
    +        result.ccFlags_ = ccFlags_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        opts_.makeImmutable();
    +        result.opts_ = opts_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.BuildConfiguration) {
    @@ -509,12 +489,13 @@ public Builder mergeFrom(org.tensorflow.proto.BuildConfiguration other) {
           if (other == org.tensorflow.proto.BuildConfiguration.getDefaultInstance()) return this;
           if (!other.getMode().isEmpty()) {
             mode_ = other.mode_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.ccFlags_.isEmpty()) {
             if (ccFlags_.isEmpty()) {
               ccFlags_ = other.ccFlags_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ |= 0x00000002;
             } else {
               ensureCcFlagsIsMutable();
               ccFlags_.addAll(other.ccFlags_);
    @@ -524,7 +505,7 @@ public Builder mergeFrom(org.tensorflow.proto.BuildConfiguration other) {
           if (!other.opts_.isEmpty()) {
             if (opts_.isEmpty()) {
               opts_ = other.opts_;
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          bitField0_ |= 0x00000004;
             } else {
               ensureOptsIsMutable();
               opts_.addAll(other.opts_);
    @@ -559,7 +540,7 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   mode_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
    @@ -644,11 +625,9 @@ public java.lang.String getMode() {
          */
         public Builder setMode(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           mode_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -661,8 +640,8 @@ public Builder setMode(
          * @return This builder for chaining.
          */
         public Builder clearMode() {
    -      
           mode_ = getDefaultInstance().getMode();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -677,22 +656,21 @@ public Builder clearMode() {
          */
         public Builder setModeBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           mode_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.LazyStringList ccFlags_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList ccFlags_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureCcFlagsIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!ccFlags_.isModifiable()) {
             ccFlags_ = new com.google.protobuf.LazyStringArrayList(ccFlags_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      }
    +      bitField0_ |= 0x00000002;
         }
         /**
          * 
    @@ -704,7 +682,8 @@ private void ensureCcFlagsIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getCcFlagsList() {
    -      return ccFlags_.getUnmodifiableView();
    +      ccFlags_.makeImmutable();
    +      return ccFlags_;
         }
         /**
          * 
    @@ -754,11 +733,10 @@ public java.lang.String getCcFlags(int index) {
          */
         public Builder setCcFlags(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureCcFlagsIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureCcFlagsIsMutable();
           ccFlags_.set(index, value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -773,11 +751,10 @@ public Builder setCcFlags(
          */
         public Builder addCcFlags(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureCcFlagsIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureCcFlagsIsMutable();
           ccFlags_.add(value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -795,6 +772,7 @@ public Builder addAllCcFlags(
           ensureCcFlagsIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, ccFlags_);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -807,8 +785,9 @@ public Builder addAllCcFlags(
          * @return This builder for chaining.
          */
         public Builder clearCcFlags() {
    -      ccFlags_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      ccFlags_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000002);;
           onChanged();
           return this;
         }
    @@ -823,22 +802,22 @@ public Builder clearCcFlags() {
          */
         public Builder addCcFlagsBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureCcFlagsIsMutable();
           ccFlags_.add(value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.LazyStringList opts_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList opts_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureOptsIsMutable() {
    -      if (!((bitField0_ & 0x00000002) != 0)) {
    +      if (!opts_.isModifiable()) {
             opts_ = new com.google.protobuf.LazyStringArrayList(opts_);
    -        bitField0_ |= 0x00000002;
    -       }
    +      }
    +      bitField0_ |= 0x00000004;
         }
         /**
          * 
    @@ -850,7 +829,8 @@ private void ensureOptsIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getOptsList() {
    -      return opts_.getUnmodifiableView();
    +      opts_.makeImmutable();
    +      return opts_;
         }
         /**
          * 
    @@ -900,11 +880,10 @@ public java.lang.String getOpts(int index) {
          */
         public Builder setOpts(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureOptsIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureOptsIsMutable();
           opts_.set(index, value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -919,11 +898,10 @@ public Builder setOpts(
          */
         public Builder addOpts(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureOptsIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureOptsIsMutable();
           opts_.add(value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -941,6 +919,7 @@ public Builder addAllOpts(
           ensureOptsIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, opts_);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -953,8 +932,9 @@ public Builder addAllOpts(
          * @return This builder for chaining.
          */
         public Builder clearOpts() {
    -      opts_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000002);
    +      opts_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000004);;
           onChanged();
           return this;
         }
    @@ -969,27 +949,14 @@ public Builder clearOpts() {
          */
         public Builder addOptsBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureOptsIsMutable();
           opts_.add(value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.BuildConfiguration)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BuildConfigurationOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BuildConfigurationOrBuilder.java
    index 0f4bc0c0740..4e529158905 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BuildConfigurationOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BuildConfigurationOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BundleEntryProto.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BundleEntryProto.java
    index ff5e9404343..778eb17b5d2 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BundleEntryProto.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BundleEntryProto.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/tensor_bundle.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,12 +13,21 @@
      * Protobuf type {@code tensorflow.BundleEntryProto}
      */
     public final class BundleEntryProto extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.BundleEntryProto)
         BundleEntryProtoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      BundleEntryProto.class.getName());
    +  }
       // Use BundleEntryProto.newBuilder() to construct.
    -  private BundleEntryProto(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private BundleEntryProto(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private BundleEntryProto() {
    @@ -24,33 +35,22 @@ private BundleEntryProto() {
         slices_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new BundleEntryProto();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.TensorBundleProtos.internal_static_tensorflow_BundleEntryProto_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.TensorBundleProtos.internal_static_tensorflow_BundleEntryProto_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.BundleEntryProto.class, org.tensorflow.proto.BundleEntryProto.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int DTYPE_FIELD_NUMBER = 1;
    -  private int dtype_;
    +  private int dtype_ = 0;
       /**
        * 
        * The tensor dtype and shape.
    @@ -71,8 +71,7 @@ protected java.lang.Object newInstance(
        * @return The dtype.
        */
       @java.lang.Override public org.tensorflow.proto.DataType getDtype() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
         return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
       }
     
    @@ -84,7 +83,7 @@ protected java.lang.Object newInstance(
        */
       @java.lang.Override
       public boolean hasShape() {
    -    return shape_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * .tensorflow.TensorShapeProto shape = 2;
    @@ -99,15 +98,15 @@ public org.tensorflow.proto.TensorShapeProto getShape() {
        */
       @java.lang.Override
       public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
    -    return getShape();
    +    return shape_ == null ? org.tensorflow.proto.TensorShapeProto.getDefaultInstance() : shape_;
       }
     
       public static final int SHARD_ID_FIELD_NUMBER = 3;
    -  private int shardId_;
    +  private int shardId_ = 0;
       /**
        * 
        * The binary content of the tensor lies in:
    -   *   File "shard_id": bytes [offset, offset + size).
    +   * File "shard_id": bytes [offset, offset + size).
        * 
    * * int32 shard_id = 3; @@ -119,7 +118,7 @@ public int getShardId() { } public static final int OFFSET_FIELD_NUMBER = 4; - private long offset_; + private long offset_ = 0L; /** * int64 offset = 4; * @return The offset. @@ -130,7 +129,7 @@ public long getOffset() { } public static final int SIZE_FIELD_NUMBER = 5; - private long size_; + private long size_ = 0L; /** * int64 size = 5; * @return The size. @@ -141,7 +140,7 @@ public long getSize() { } public static final int CRC32C_FIELD_NUMBER = 6; - private int crc32C_; + private int crc32C_ = 0; /** *
        * The CRC32C checksum of the tensor bytes.
    @@ -156,15 +155,17 @@ public int getCrc32C() {
       }
     
       public static final int SLICES_FIELD_NUMBER = 7;
    +  @SuppressWarnings("serial")
       private java.util.List slices_;
       /**
        * 
        * Iff present, this entry represents a partitioned tensor.  The previous
        * fields are interpreted as follows:
    -   *   "dtype", "shape": describe the full tensor.
    -   *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -   *      These information for each slice can be looked up in their own
    -   *      BundleEntryProto, keyed by each "slice_name".
    +   *
    +   * "dtype", "shape": describe the full tensor.
    +   * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +   * These information for each slice can be looked up in their own
    +   * BundleEntryProto, keyed by each "slice_name".
        * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -177,10 +178,11 @@ public java.util.List getSlicesList() { *
        * Iff present, this entry represents a partitioned tensor.  The previous
        * fields are interpreted as follows:
    -   *   "dtype", "shape": describe the full tensor.
    -   *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -   *      These information for each slice can be looked up in their own
    -   *      BundleEntryProto, keyed by each "slice_name".
    +   *
    +   * "dtype", "shape": describe the full tensor.
    +   * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +   * These information for each slice can be looked up in their own
    +   * BundleEntryProto, keyed by each "slice_name".
        * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -194,10 +196,11 @@ public java.util.List getSlicesList() { *
        * Iff present, this entry represents a partitioned tensor.  The previous
        * fields are interpreted as follows:
    -   *   "dtype", "shape": describe the full tensor.
    -   *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -   *      These information for each slice can be looked up in their own
    -   *      BundleEntryProto, keyed by each "slice_name".
    +   *
    +   * "dtype", "shape": describe the full tensor.
    +   * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +   * These information for each slice can be looked up in their own
    +   * BundleEntryProto, keyed by each "slice_name".
        * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -210,10 +213,11 @@ public int getSlicesCount() { *
        * Iff present, this entry represents a partitioned tensor.  The previous
        * fields are interpreted as follows:
    -   *   "dtype", "shape": describe the full tensor.
    -   *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -   *      These information for each slice can be looked up in their own
    -   *      BundleEntryProto, keyed by each "slice_name".
    +   *
    +   * "dtype", "shape": describe the full tensor.
    +   * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +   * These information for each slice can be looked up in their own
    +   * BundleEntryProto, keyed by each "slice_name".
        * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -226,10 +230,11 @@ public org.tensorflow.proto.TensorSliceProto getSlices(int index) { *
        * Iff present, this entry represents a partitioned tensor.  The previous
        * fields are interpreted as follows:
    -   *   "dtype", "shape": describe the full tensor.
    -   *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -   *      These information for each slice can be looked up in their own
    -   *      BundleEntryProto, keyed by each "slice_name".
    +   *
    +   * "dtype", "shape": describe the full tensor.
    +   * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +   * These information for each slice can be looked up in their own
    +   * BundleEntryProto, keyed by each "slice_name".
        * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -257,7 +262,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (dtype_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) { output.writeEnum(1, dtype_); } - if (shape_ != null) { + if (((bitField0_ & 0x00000001) != 0)) { output.writeMessage(2, getShape()); } if (shardId_ != 0) { @@ -288,7 +293,7 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeEnumSize(1, dtype_); } - if (shape_ != null) { + if (((bitField0_ & 0x00000001) != 0)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(2, getShape()); } @@ -413,39 +418,41 @@ public static org.tensorflow.proto.BundleEntryProto parseFrom( } public static org.tensorflow.proto.BundleEntryProto parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.BundleEntryProto parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.BundleEntryProto parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.BundleEntryProto parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.BundleEntryProto parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.BundleEntryProto parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -465,7 +472,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -477,7 +484,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.BundleEntryProto} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.BundleEntryProto) org.tensorflow.proto.BundleEntryProtoOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -486,7 +493,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.TensorBundleProtos.internal_static_tensorflow_BundleEntryProto_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -495,40 +502,42 @@ public static final class Builder extends // Construct using org.tensorflow.proto.BundleEntryProto.newBuilder() private Builder() { - + maybeForceBuilderInitialization(); } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); - + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage + .alwaysUseFieldBuilders) { + getShapeFieldBuilder(); + getSlicesFieldBuilder(); + } } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; dtype_ = 0; - - if (shapeBuilder_ == null) { - shape_ = null; - } else { - shape_ = null; + shape_ = null; + if (shapeBuilder_ != null) { + shapeBuilder_.dispose(); shapeBuilder_ = null; } shardId_ = 0; - offset_ = 0L; - size_ = 0L; - crc32C_ = 0; - if (slicesBuilder_ == null) { slices_ = java.util.Collections.emptyList(); } else { slices_ = null; slicesBuilder_.clear(); } - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000040); return this; } @@ -555,62 +564,51 @@ public org.tensorflow.proto.BundleEntryProto build() { @java.lang.Override public org.tensorflow.proto.BundleEntryProto buildPartial() { org.tensorflow.proto.BundleEntryProto result = new org.tensorflow.proto.BundleEntryProto(this); - int from_bitField0_ = bitField0_; - result.dtype_ = dtype_; - if (shapeBuilder_ == null) { - result.shape_ = shape_; - } else { - result.shape_ = shapeBuilder_.build(); - } - result.shardId_ = shardId_; - result.offset_ = offset_; - result.size_ = size_; - result.crc32C_ = crc32C_; + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(org.tensorflow.proto.BundleEntryProto result) { if (slicesBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { + if (((bitField0_ & 0x00000040) != 0)) { slices_ = java.util.Collections.unmodifiableList(slices_); - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000040); } result.slices_ = slices_; } else { result.slices_ = slicesBuilder_.build(); } - onBuilt(); - return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.BundleEntryProto result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.dtype_ = dtype_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.shape_ = shapeBuilder_ == null + ? shape_ + : shapeBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.shardId_ = shardId_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.offset_ = offset_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.size_ = size_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.crc32C_ = crc32C_; + } + result.bitField0_ |= to_bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.BundleEntryProto) { @@ -645,7 +643,7 @@ public Builder mergeFrom(org.tensorflow.proto.BundleEntryProto other) { if (!other.slices_.isEmpty()) { if (slices_.isEmpty()) { slices_ = other.slices_; - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000040); } else { ensureSlicesIsMutable(); slices_.addAll(other.slices_); @@ -658,9 +656,9 @@ public Builder mergeFrom(org.tensorflow.proto.BundleEntryProto other) { slicesBuilder_.dispose(); slicesBuilder_ = null; slices_ = other.slices_; - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000040); slicesBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getSlicesFieldBuilder() : null; } else { slicesBuilder_.addAllMessages(other.slices_); @@ -695,34 +693,34 @@ public Builder mergeFrom( break; case 8: { dtype_ = input.readEnum(); - + bitField0_ |= 0x00000001; break; } // case 8 case 18: { input.readMessage( getShapeFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000002; break; } // case 18 case 24: { shardId_ = input.readInt32(); - + bitField0_ |= 0x00000004; break; } // case 24 case 32: { offset_ = input.readInt64(); - + bitField0_ |= 0x00000008; break; } // case 32 case 40: { size_ = input.readInt64(); - + bitField0_ |= 0x00000010; break; } // case 40 case 53: { crc32C_ = input.readFixed32(); - + bitField0_ |= 0x00000020; break; } // case 53 case 58: { @@ -777,8 +775,8 @@ public Builder mergeFrom( * @return This builder for chaining. */ public Builder setDtypeValue(int value) { - dtype_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -792,8 +790,7 @@ public Builder setDtypeValue(int value) { */ @java.lang.Override public org.tensorflow.proto.DataType getDtype() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_); + org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_); return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result; } /** @@ -809,7 +806,7 @@ public Builder setDtype(org.tensorflow.proto.DataType value) { if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00000001; dtype_ = value.getNumber(); onChanged(); return this; @@ -823,21 +820,21 @@ public Builder setDtype(org.tensorflow.proto.DataType value) { * @return This builder for chaining. */ public Builder clearDtype() { - + bitField0_ = (bitField0_ & ~0x00000001); dtype_ = 0; onChanged(); return this; } private org.tensorflow.proto.TensorShapeProto shape_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> shapeBuilder_; /** * .tensorflow.TensorShapeProto shape = 2; * @return Whether the shape field is set. */ public boolean hasShape() { - return shapeBuilder_ != null || shape_ != null; + return ((bitField0_ & 0x00000002) != 0); } /** * .tensorflow.TensorShapeProto shape = 2; @@ -859,11 +856,11 @@ public Builder setShape(org.tensorflow.proto.TensorShapeProto value) { throw new NullPointerException(); } shape_ = value; - onChanged(); } else { shapeBuilder_.setMessage(value); } - + bitField0_ |= 0x00000002; + onChanged(); return this; } /** @@ -873,11 +870,11 @@ public Builder setShape( org.tensorflow.proto.TensorShapeProto.Builder builderForValue) { if (shapeBuilder_ == null) { shape_ = builderForValue.build(); - onChanged(); } else { shapeBuilder_.setMessage(builderForValue.build()); } - + bitField0_ |= 0x00000002; + onChanged(); return this; } /** @@ -885,38 +882,40 @@ public Builder setShape( */ public Builder mergeShape(org.tensorflow.proto.TensorShapeProto value) { if (shapeBuilder_ == null) { - if (shape_ != null) { - shape_ = - org.tensorflow.proto.TensorShapeProto.newBuilder(shape_).mergeFrom(value).buildPartial(); + if (((bitField0_ & 0x00000002) != 0) && + shape_ != null && + shape_ != org.tensorflow.proto.TensorShapeProto.getDefaultInstance()) { + getShapeBuilder().mergeFrom(value); } else { shape_ = value; } - onChanged(); } else { shapeBuilder_.mergeFrom(value); } - + if (shape_ != null) { + bitField0_ |= 0x00000002; + onChanged(); + } return this; } /** * .tensorflow.TensorShapeProto shape = 2; */ public Builder clearShape() { - if (shapeBuilder_ == null) { - shape_ = null; - onChanged(); - } else { - shape_ = null; + bitField0_ = (bitField0_ & ~0x00000002); + shape_ = null; + if (shapeBuilder_ != null) { + shapeBuilder_.dispose(); shapeBuilder_ = null; } - + onChanged(); return this; } /** * .tensorflow.TensorShapeProto shape = 2; */ public org.tensorflow.proto.TensorShapeProto.Builder getShapeBuilder() { - + bitField0_ |= 0x00000002; onChanged(); return getShapeFieldBuilder().getBuilder(); } @@ -934,11 +933,11 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() { /** * .tensorflow.TensorShapeProto shape = 2; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> getShapeFieldBuilder() { if (shapeBuilder_ == null) { - shapeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + shapeBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>( getShape(), getParentForChildren(), @@ -952,7 +951,7 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() { /** *
          * The binary content of the tensor lies in:
    -     *   File "shard_id": bytes [offset, offset + size).
    +     * File "shard_id": bytes [offset, offset + size).
          * 
    * * int32 shard_id = 3; @@ -965,7 +964,7 @@ public int getShardId() { /** *
          * The binary content of the tensor lies in:
    -     *   File "shard_id": bytes [offset, offset + size).
    +     * File "shard_id": bytes [offset, offset + size).
          * 
    * * int32 shard_id = 3; @@ -973,22 +972,23 @@ public int getShardId() { * @return This builder for chaining. */ public Builder setShardId(int value) { - + shardId_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } /** *
          * The binary content of the tensor lies in:
    -     *   File "shard_id": bytes [offset, offset + size).
    +     * File "shard_id": bytes [offset, offset + size).
          * 
    * * int32 shard_id = 3; * @return This builder for chaining. */ public Builder clearShardId() { - + bitField0_ = (bitField0_ & ~0x00000004); shardId_ = 0; onChanged(); return this; @@ -1009,8 +1009,9 @@ public long getOffset() { * @return This builder for chaining. */ public Builder setOffset(long value) { - + offset_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -1019,7 +1020,7 @@ public Builder setOffset(long value) { * @return This builder for chaining. */ public Builder clearOffset() { - + bitField0_ = (bitField0_ & ~0x00000008); offset_ = 0L; onChanged(); return this; @@ -1040,8 +1041,9 @@ public long getSize() { * @return This builder for chaining. */ public Builder setSize(long value) { - + size_ = value; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -1050,7 +1052,7 @@ public Builder setSize(long value) { * @return This builder for chaining. */ public Builder clearSize() { - + bitField0_ = (bitField0_ & ~0x00000010); size_ = 0L; onChanged(); return this; @@ -1079,8 +1081,9 @@ public int getCrc32C() { * @return This builder for chaining. */ public Builder setCrc32C(int value) { - + crc32C_ = value; + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -1093,7 +1096,7 @@ public Builder setCrc32C(int value) { * @return This builder for chaining. */ public Builder clearCrc32C() { - + bitField0_ = (bitField0_ & ~0x00000020); crc32C_ = 0; onChanged(); return this; @@ -1102,23 +1105,24 @@ public Builder clearCrc32C() { private java.util.List slices_ = java.util.Collections.emptyList(); private void ensureSlicesIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { + if (!((bitField0_ & 0x00000040) != 0)) { slices_ = new java.util.ArrayList(slices_); - bitField0_ |= 0x00000001; + bitField0_ |= 0x00000040; } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.TensorSliceProto, org.tensorflow.proto.TensorSliceProto.Builder, org.tensorflow.proto.TensorSliceProtoOrBuilder> slicesBuilder_; /** *
          * Iff present, this entry represents a partitioned tensor.  The previous
          * fields are interpreted as follows:
    -     *   "dtype", "shape": describe the full tensor.
    -     *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -     *      These information for each slice can be looked up in their own
    -     *      BundleEntryProto, keyed by each "slice_name".
    +     *
    +     * "dtype", "shape": describe the full tensor.
    +     * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +     * These information for each slice can be looked up in their own
    +     * BundleEntryProto, keyed by each "slice_name".
          * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -1134,10 +1138,11 @@ public java.util.List getSlicesList() { *
          * Iff present, this entry represents a partitioned tensor.  The previous
          * fields are interpreted as follows:
    -     *   "dtype", "shape": describe the full tensor.
    -     *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -     *      These information for each slice can be looked up in their own
    -     *      BundleEntryProto, keyed by each "slice_name".
    +     *
    +     * "dtype", "shape": describe the full tensor.
    +     * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +     * These information for each slice can be looked up in their own
    +     * BundleEntryProto, keyed by each "slice_name".
          * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -1153,10 +1158,11 @@ public int getSlicesCount() { *
          * Iff present, this entry represents a partitioned tensor.  The previous
          * fields are interpreted as follows:
    -     *   "dtype", "shape": describe the full tensor.
    -     *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -     *      These information for each slice can be looked up in their own
    -     *      BundleEntryProto, keyed by each "slice_name".
    +     *
    +     * "dtype", "shape": describe the full tensor.
    +     * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +     * These information for each slice can be looked up in their own
    +     * BundleEntryProto, keyed by each "slice_name".
          * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -1172,10 +1178,11 @@ public org.tensorflow.proto.TensorSliceProto getSlices(int index) { *
          * Iff present, this entry represents a partitioned tensor.  The previous
          * fields are interpreted as follows:
    -     *   "dtype", "shape": describe the full tensor.
    -     *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -     *      These information for each slice can be looked up in their own
    -     *      BundleEntryProto, keyed by each "slice_name".
    +     *
    +     * "dtype", "shape": describe the full tensor.
    +     * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +     * These information for each slice can be looked up in their own
    +     * BundleEntryProto, keyed by each "slice_name".
          * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -1198,10 +1205,11 @@ public Builder setSlices( *
          * Iff present, this entry represents a partitioned tensor.  The previous
          * fields are interpreted as follows:
    -     *   "dtype", "shape": describe the full tensor.
    -     *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -     *      These information for each slice can be looked up in their own
    -     *      BundleEntryProto, keyed by each "slice_name".
    +     *
    +     * "dtype", "shape": describe the full tensor.
    +     * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +     * These information for each slice can be looked up in their own
    +     * BundleEntryProto, keyed by each "slice_name".
          * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -1221,10 +1229,11 @@ public Builder setSlices( *
          * Iff present, this entry represents a partitioned tensor.  The previous
          * fields are interpreted as follows:
    -     *   "dtype", "shape": describe the full tensor.
    -     *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -     *      These information for each slice can be looked up in their own
    -     *      BundleEntryProto, keyed by each "slice_name".
    +     *
    +     * "dtype", "shape": describe the full tensor.
    +     * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +     * These information for each slice can be looked up in their own
    +     * BundleEntryProto, keyed by each "slice_name".
          * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -1246,10 +1255,11 @@ public Builder addSlices(org.tensorflow.proto.TensorSliceProto value) { *
          * Iff present, this entry represents a partitioned tensor.  The previous
          * fields are interpreted as follows:
    -     *   "dtype", "shape": describe the full tensor.
    -     *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -     *      These information for each slice can be looked up in their own
    -     *      BundleEntryProto, keyed by each "slice_name".
    +     *
    +     * "dtype", "shape": describe the full tensor.
    +     * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +     * These information for each slice can be looked up in their own
    +     * BundleEntryProto, keyed by each "slice_name".
          * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -1272,10 +1282,11 @@ public Builder addSlices( *
          * Iff present, this entry represents a partitioned tensor.  The previous
          * fields are interpreted as follows:
    -     *   "dtype", "shape": describe the full tensor.
    -     *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -     *      These information for each slice can be looked up in their own
    -     *      BundleEntryProto, keyed by each "slice_name".
    +     *
    +     * "dtype", "shape": describe the full tensor.
    +     * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +     * These information for each slice can be looked up in their own
    +     * BundleEntryProto, keyed by each "slice_name".
          * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -1295,10 +1306,11 @@ public Builder addSlices( *
          * Iff present, this entry represents a partitioned tensor.  The previous
          * fields are interpreted as follows:
    -     *   "dtype", "shape": describe the full tensor.
    -     *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -     *      These information for each slice can be looked up in their own
    -     *      BundleEntryProto, keyed by each "slice_name".
    +     *
    +     * "dtype", "shape": describe the full tensor.
    +     * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +     * These information for each slice can be looked up in their own
    +     * BundleEntryProto, keyed by each "slice_name".
          * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -1318,10 +1330,11 @@ public Builder addSlices( *
          * Iff present, this entry represents a partitioned tensor.  The previous
          * fields are interpreted as follows:
    -     *   "dtype", "shape": describe the full tensor.
    -     *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -     *      These information for each slice can be looked up in their own
    -     *      BundleEntryProto, keyed by each "slice_name".
    +     *
    +     * "dtype", "shape": describe the full tensor.
    +     * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +     * These information for each slice can be looked up in their own
    +     * BundleEntryProto, keyed by each "slice_name".
          * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -1342,10 +1355,11 @@ public Builder addAllSlices( *
          * Iff present, this entry represents a partitioned tensor.  The previous
          * fields are interpreted as follows:
    -     *   "dtype", "shape": describe the full tensor.
    -     *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -     *      These information for each slice can be looked up in their own
    -     *      BundleEntryProto, keyed by each "slice_name".
    +     *
    +     * "dtype", "shape": describe the full tensor.
    +     * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +     * These information for each slice can be looked up in their own
    +     * BundleEntryProto, keyed by each "slice_name".
          * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -1353,7 +1367,7 @@ public Builder addAllSlices( public Builder clearSlices() { if (slicesBuilder_ == null) { slices_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000040); onChanged(); } else { slicesBuilder_.clear(); @@ -1364,10 +1378,11 @@ public Builder clearSlices() { *
          * Iff present, this entry represents a partitioned tensor.  The previous
          * fields are interpreted as follows:
    -     *   "dtype", "shape": describe the full tensor.
    -     *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -     *      These information for each slice can be looked up in their own
    -     *      BundleEntryProto, keyed by each "slice_name".
    +     *
    +     * "dtype", "shape": describe the full tensor.
    +     * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +     * These information for each slice can be looked up in their own
    +     * BundleEntryProto, keyed by each "slice_name".
          * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -1386,10 +1401,11 @@ public Builder removeSlices(int index) { *
          * Iff present, this entry represents a partitioned tensor.  The previous
          * fields are interpreted as follows:
    -     *   "dtype", "shape": describe the full tensor.
    -     *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -     *      These information for each slice can be looked up in their own
    -     *      BundleEntryProto, keyed by each "slice_name".
    +     *
    +     * "dtype", "shape": describe the full tensor.
    +     * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +     * These information for each slice can be looked up in their own
    +     * BundleEntryProto, keyed by each "slice_name".
          * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -1402,10 +1418,11 @@ public org.tensorflow.proto.TensorSliceProto.Builder getSlicesBuilder( *
          * Iff present, this entry represents a partitioned tensor.  The previous
          * fields are interpreted as follows:
    -     *   "dtype", "shape": describe the full tensor.
    -     *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -     *      These information for each slice can be looked up in their own
    -     *      BundleEntryProto, keyed by each "slice_name".
    +     *
    +     * "dtype", "shape": describe the full tensor.
    +     * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +     * These information for each slice can be looked up in their own
    +     * BundleEntryProto, keyed by each "slice_name".
          * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -1421,10 +1438,11 @@ public org.tensorflow.proto.TensorSliceProtoOrBuilder getSlicesOrBuilder( *
          * Iff present, this entry represents a partitioned tensor.  The previous
          * fields are interpreted as follows:
    -     *   "dtype", "shape": describe the full tensor.
    -     *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -     *      These information for each slice can be looked up in their own
    -     *      BundleEntryProto, keyed by each "slice_name".
    +     *
    +     * "dtype", "shape": describe the full tensor.
    +     * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +     * These information for each slice can be looked up in their own
    +     * BundleEntryProto, keyed by each "slice_name".
          * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -1441,10 +1459,11 @@ public org.tensorflow.proto.TensorSliceProtoOrBuilder getSlicesOrBuilder( *
          * Iff present, this entry represents a partitioned tensor.  The previous
          * fields are interpreted as follows:
    -     *   "dtype", "shape": describe the full tensor.
    -     *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -     *      These information for each slice can be looked up in their own
    -     *      BundleEntryProto, keyed by each "slice_name".
    +     *
    +     * "dtype", "shape": describe the full tensor.
    +     * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +     * These information for each slice can be looked up in their own
    +     * BundleEntryProto, keyed by each "slice_name".
          * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -1457,10 +1476,11 @@ public org.tensorflow.proto.TensorSliceProto.Builder addSlicesBuilder() { *
          * Iff present, this entry represents a partitioned tensor.  The previous
          * fields are interpreted as follows:
    -     *   "dtype", "shape": describe the full tensor.
    -     *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -     *      These information for each slice can be looked up in their own
    -     *      BundleEntryProto, keyed by each "slice_name".
    +     *
    +     * "dtype", "shape": describe the full tensor.
    +     * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +     * These information for each slice can be looked up in their own
    +     * BundleEntryProto, keyed by each "slice_name".
          * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -1474,10 +1494,11 @@ public org.tensorflow.proto.TensorSliceProto.Builder addSlicesBuilder( *
          * Iff present, this entry represents a partitioned tensor.  The previous
          * fields are interpreted as follows:
    -     *   "dtype", "shape": describe the full tensor.
    -     *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -     *      These information for each slice can be looked up in their own
    -     *      BundleEntryProto, keyed by each "slice_name".
    +     *
    +     * "dtype", "shape": describe the full tensor.
    +     * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +     * These information for each slice can be looked up in their own
    +     * BundleEntryProto, keyed by each "slice_name".
          * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -1486,32 +1507,20 @@ public org.tensorflow.proto.TensorSliceProto.Builder addSlicesBuilder( getSlicesBuilderList() { return getSlicesFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.TensorSliceProto, org.tensorflow.proto.TensorSliceProto.Builder, org.tensorflow.proto.TensorSliceProtoOrBuilder> getSlicesFieldBuilder() { if (slicesBuilder_ == null) { - slicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + slicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.TensorSliceProto, org.tensorflow.proto.TensorSliceProto.Builder, org.tensorflow.proto.TensorSliceProtoOrBuilder>( slices_, - ((bitField0_ & 0x00000001) != 0), + ((bitField0_ & 0x00000040) != 0), getParentForChildren(), isClean()); slices_ = null; } return slicesBuilder_; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.BundleEntryProto) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BundleEntryProtoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BundleEntryProtoOrBuilder.java index cd69bb75b99..cc082e079da 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BundleEntryProtoOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BundleEntryProtoOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/tensor_bundle.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -44,7 +46,7 @@ public interface BundleEntryProtoOrBuilder extends /** *
        * The binary content of the tensor lies in:
    -   *   File "shard_id": bytes [offset, offset + size).
    +   * File "shard_id": bytes [offset, offset + size).
        * 
    * * int32 shard_id = 3; @@ -78,10 +80,11 @@ public interface BundleEntryProtoOrBuilder extends *
        * Iff present, this entry represents a partitioned tensor.  The previous
        * fields are interpreted as follows:
    -   *   "dtype", "shape": describe the full tensor.
    -   *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -   *      These information for each slice can be looked up in their own
    -   *      BundleEntryProto, keyed by each "slice_name".
    +   *
    +   * "dtype", "shape": describe the full tensor.
    +   * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +   * These information for each slice can be looked up in their own
    +   * BundleEntryProto, keyed by each "slice_name".
        * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -92,10 +95,11 @@ public interface BundleEntryProtoOrBuilder extends *
        * Iff present, this entry represents a partitioned tensor.  The previous
        * fields are interpreted as follows:
    -   *   "dtype", "shape": describe the full tensor.
    -   *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -   *      These information for each slice can be looked up in their own
    -   *      BundleEntryProto, keyed by each "slice_name".
    +   *
    +   * "dtype", "shape": describe the full tensor.
    +   * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +   * These information for each slice can be looked up in their own
    +   * BundleEntryProto, keyed by each "slice_name".
        * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -105,10 +109,11 @@ public interface BundleEntryProtoOrBuilder extends *
        * Iff present, this entry represents a partitioned tensor.  The previous
        * fields are interpreted as follows:
    -   *   "dtype", "shape": describe the full tensor.
    -   *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -   *      These information for each slice can be looked up in their own
    -   *      BundleEntryProto, keyed by each "slice_name".
    +   *
    +   * "dtype", "shape": describe the full tensor.
    +   * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +   * These information for each slice can be looked up in their own
    +   * BundleEntryProto, keyed by each "slice_name".
        * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -118,10 +123,11 @@ public interface BundleEntryProtoOrBuilder extends *
        * Iff present, this entry represents a partitioned tensor.  The previous
        * fields are interpreted as follows:
    -   *   "dtype", "shape": describe the full tensor.
    -   *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -   *      These information for each slice can be looked up in their own
    -   *      BundleEntryProto, keyed by each "slice_name".
    +   *
    +   * "dtype", "shape": describe the full tensor.
    +   * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +   * These information for each slice can be looked up in their own
    +   * BundleEntryProto, keyed by each "slice_name".
        * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; @@ -132,10 +138,11 @@ public interface BundleEntryProtoOrBuilder extends *
        * Iff present, this entry represents a partitioned tensor.  The previous
        * fields are interpreted as follows:
    -   *   "dtype", "shape": describe the full tensor.
    -   *   "shard_id", "offset", "size", "crc32c": all IGNORED.
    -   *      These information for each slice can be looked up in their own
    -   *      BundleEntryProto, keyed by each "slice_name".
    +   *
    +   * "dtype", "shape": describe the full tensor.
    +   * "shard_id", "offset", "size", "crc32c": all IGNORED.
    +   * These information for each slice can be looked up in their own
    +   * BundleEntryProto, keyed by each "slice_name".
        * 
    * * repeated .tensorflow.TensorSliceProto slices = 7; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BundleHeaderProto.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BundleHeaderProto.java index e3ed86bdef5..b3794d41c2e 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BundleHeaderProto.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BundleHeaderProto.java @@ -1,11 +1,14 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/tensor_bundle.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; /** *
      * Special header that is associated with a bundle.
    + *
      * TODO(zongheng,zhifengc): maybe in the future, we can add information about
      * which binary produced this checkpoint, timestamp, etc. Sometime, these can be
      * valuable debugging information. And if needed, these can be used as defensive
    @@ -16,37 +19,34 @@
      * Protobuf type {@code tensorflow.BundleHeaderProto}
      */
     public final class BundleHeaderProto extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.BundleHeaderProto)
         BundleHeaderProtoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      BundleHeaderProto.class.getName());
    +  }
       // Use BundleHeaderProto.newBuilder() to construct.
    -  private BundleHeaderProto(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private BundleHeaderProto(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private BundleHeaderProto() {
         endianness_ = 0;
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new BundleHeaderProto();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.TensorBundleProtos.internal_static_tensorflow_BundleHeaderProto_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.TensorBundleProtos.internal_static_tensorflow_BundleHeaderProto_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -58,6 +58,7 @@ protected java.lang.Object newInstance(
        * An enum indicating the endianness of the platform that produced this
        * bundle.  A bundle can only be read by a platform with matching endianness.
        * Defaults to LITTLE, as most modern platforms are little-endian.
    +   *
        * Affects the binary tensor data bytes only, not the metadata in protobufs.
        * 
    * @@ -76,6 +77,15 @@ public enum Endianness UNRECOGNIZED(-1), ; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + Endianness.class.getName()); + } /** * LITTLE = 0; */ @@ -168,8 +178,9 @@ private Endianness(int value) { // @@protoc_insertion_point(enum_scope:tensorflow.BundleHeaderProto.Endianness) } + private int bitField0_; public static final int NUM_SHARDS_FIELD_NUMBER = 1; - private int numShards_; + private int numShards_ = 0; /** *
        * Number of data files in the bundle.
    @@ -184,7 +195,7 @@ public int getNumShards() {
       }
     
       public static final int ENDIANNESS_FIELD_NUMBER = 2;
    -  private int endianness_;
    +  private int endianness_ = 0;
       /**
        * .tensorflow.BundleHeaderProto.Endianness endianness = 2;
        * @return The enum numeric value on the wire for endianness.
    @@ -197,8 +208,7 @@ public int getNumShards() {
        * @return The endianness.
        */
       @java.lang.Override public org.tensorflow.proto.BundleHeaderProto.Endianness getEndianness() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.BundleHeaderProto.Endianness result = org.tensorflow.proto.BundleHeaderProto.Endianness.valueOf(endianness_);
    +    org.tensorflow.proto.BundleHeaderProto.Endianness result = org.tensorflow.proto.BundleHeaderProto.Endianness.forNumber(endianness_);
         return result == null ? org.tensorflow.proto.BundleHeaderProto.Endianness.UNRECOGNIZED : result;
       }
     
    @@ -214,7 +224,7 @@ public int getNumShards() {
        */
       @java.lang.Override
       public boolean hasVersion() {
    -    return version_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -237,7 +247,7 @@ public org.tensorflow.proto.VersionDef getVersion() {
        */
       @java.lang.Override
       public org.tensorflow.proto.VersionDefOrBuilder getVersionOrBuilder() {
    -    return getVersion();
    +    return version_ == null ? org.tensorflow.proto.VersionDef.getDefaultInstance() : version_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -260,7 +270,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (endianness_ != org.tensorflow.proto.BundleHeaderProto.Endianness.LITTLE.getNumber()) {
           output.writeEnum(2, endianness_);
         }
    -    if (version_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(3, getVersion());
         }
         getUnknownFields().writeTo(output);
    @@ -280,7 +290,7 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeEnumSize(2, endianness_);
         }
    -    if (version_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(3, getVersion());
         }
    @@ -365,39 +375,41 @@ public static org.tensorflow.proto.BundleHeaderProto parseFrom(
       }
       public static org.tensorflow.proto.BundleHeaderProto parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.BundleHeaderProto parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.BundleHeaderProto parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.BundleHeaderProto parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.BundleHeaderProto parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.BundleHeaderProto parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -417,13 +429,14 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
       /**
        * 
        * Special header that is associated with a bundle.
    +   *
        * TODO(zongheng,zhifengc): maybe in the future, we can add information about
        * which binary produced this checkpoint, timestamp, etc. Sometime, these can be
        * valuable debugging information. And if needed, these can be used as defensive
    @@ -434,7 +447,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.BundleHeaderProto}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.BundleHeaderProto)
           org.tensorflow.proto.BundleHeaderProtoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -443,7 +456,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TensorBundleProtos.internal_static_tensorflow_BundleHeaderProto_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -452,25 +465,29 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.BundleHeaderProto.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getVersionFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           numShards_ = 0;
    -
           endianness_ = 0;
    -
    -      if (versionBuilder_ == null) {
    -        version_ = null;
    -      } else {
    -        version_ = null;
    +      version_ = null;
    +      if (versionBuilder_ != null) {
    +        versionBuilder_.dispose();
             versionBuilder_ = null;
           }
           return this;
    @@ -499,49 +516,29 @@ public org.tensorflow.proto.BundleHeaderProto build() {
         @java.lang.Override
         public org.tensorflow.proto.BundleHeaderProto buildPartial() {
           org.tensorflow.proto.BundleHeaderProto result = new org.tensorflow.proto.BundleHeaderProto(this);
    -      result.numShards_ = numShards_;
    -      result.endianness_ = endianness_;
    -      if (versionBuilder_ == null) {
    -        result.version_ = version_;
    -      } else {
    -        result.version_ = versionBuilder_.build();
    -      }
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.BundleHeaderProto result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.numShards_ = numShards_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.endianness_ = endianness_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.version_ = versionBuilder_ == null
    +            ? version_
    +            : versionBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.BundleHeaderProto) {
    @@ -591,19 +588,19 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   numShards_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 16: {
                   endianness_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 case 26: {
                   input.readMessage(
                       getVersionFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 default: {
    @@ -621,6 +618,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private int numShards_ ;
         /**
    @@ -645,8 +643,9 @@ public int getNumShards() {
          * @return This builder for chaining.
          */
         public Builder setNumShards(int value) {
    -      
    +
           numShards_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -659,7 +658,7 @@ public Builder setNumShards(int value) {
          * @return This builder for chaining.
          */
         public Builder clearNumShards() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           numShards_ = 0;
           onChanged();
           return this;
    @@ -679,8 +678,8 @@ public Builder clearNumShards() {
          * @return This builder for chaining.
          */
         public Builder setEndiannessValue(int value) {
    -      
           endianness_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -690,8 +689,7 @@ public Builder setEndiannessValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.BundleHeaderProto.Endianness getEndianness() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.BundleHeaderProto.Endianness result = org.tensorflow.proto.BundleHeaderProto.Endianness.valueOf(endianness_);
    +      org.tensorflow.proto.BundleHeaderProto.Endianness result = org.tensorflow.proto.BundleHeaderProto.Endianness.forNumber(endianness_);
           return result == null ? org.tensorflow.proto.BundleHeaderProto.Endianness.UNRECOGNIZED : result;
         }
         /**
    @@ -703,7 +701,7 @@ public Builder setEndianness(org.tensorflow.proto.BundleHeaderProto.Endianness v
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000002;
           endianness_ = value.getNumber();
           onChanged();
           return this;
    @@ -713,14 +711,14 @@ public Builder setEndianness(org.tensorflow.proto.BundleHeaderProto.Endianness v
          * @return This builder for chaining.
          */
         public Builder clearEndianness() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           endianness_ = 0;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.VersionDef version_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.VersionDef, org.tensorflow.proto.VersionDef.Builder, org.tensorflow.proto.VersionDefOrBuilder> versionBuilder_;
         /**
          * 
    @@ -731,7 +729,7 @@ public Builder clearEndianness() {
          * @return Whether the version field is set.
          */
         public boolean hasVersion() {
    -      return versionBuilder_ != null || version_ != null;
    +      return ((bitField0_ & 0x00000004) != 0);
         }
         /**
          * 
    @@ -761,11 +759,11 @@ public Builder setVersion(org.tensorflow.proto.VersionDef value) {
               throw new NullPointerException();
             }
             version_ = value;
    -        onChanged();
           } else {
             versionBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -779,11 +777,11 @@ public Builder setVersion(
             org.tensorflow.proto.VersionDef.Builder builderForValue) {
           if (versionBuilder_ == null) {
             version_ = builderForValue.build();
    -        onChanged();
           } else {
             versionBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -795,17 +793,20 @@ public Builder setVersion(
          */
         public Builder mergeVersion(org.tensorflow.proto.VersionDef value) {
           if (versionBuilder_ == null) {
    -        if (version_ != null) {
    -          version_ =
    -            org.tensorflow.proto.VersionDef.newBuilder(version_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000004) != 0) &&
    +          version_ != null &&
    +          version_ != org.tensorflow.proto.VersionDef.getDefaultInstance()) {
    +          getVersionBuilder().mergeFrom(value);
             } else {
               version_ = value;
             }
    -        onChanged();
           } else {
             versionBuilder_.mergeFrom(value);
           }
    -
    +      if (version_ != null) {
    +        bitField0_ |= 0x00000004;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -816,14 +817,13 @@ public Builder mergeVersion(org.tensorflow.proto.VersionDef value) {
          * .tensorflow.VersionDef version = 3;
          */
         public Builder clearVersion() {
    -      if (versionBuilder_ == null) {
    -        version_ = null;
    -        onChanged();
    -      } else {
    -        version_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000004);
    +      version_ = null;
    +      if (versionBuilder_ != null) {
    +        versionBuilder_.dispose();
             versionBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -834,7 +834,7 @@ public Builder clearVersion() {
          * .tensorflow.VersionDef version = 3;
          */
         public org.tensorflow.proto.VersionDef.Builder getVersionBuilder() {
    -      
    +      bitField0_ |= 0x00000004;
           onChanged();
           return getVersionFieldBuilder().getBuilder();
         }
    @@ -860,11 +860,11 @@ public org.tensorflow.proto.VersionDefOrBuilder getVersionOrBuilder() {
          *
          * .tensorflow.VersionDef version = 3;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.VersionDef, org.tensorflow.proto.VersionDef.Builder, org.tensorflow.proto.VersionDefOrBuilder> 
             getVersionFieldBuilder() {
           if (versionBuilder_ == null) {
    -        versionBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        versionBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.VersionDef, org.tensorflow.proto.VersionDef.Builder, org.tensorflow.proto.VersionDefOrBuilder>(
                     getVersion(),
                     getParentForChildren(),
    @@ -873,18 +873,6 @@ public org.tensorflow.proto.VersionDefOrBuilder getVersionOrBuilder() {
           }
           return versionBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.BundleHeaderProto)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BundleHeaderProtoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BundleHeaderProtoOrBuilder.java
    index 9ab9de7026e..af4013c645d 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BundleHeaderProtoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BundleHeaderProtoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/tensor_bundle.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BytesList.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BytesList.java
    index e14a7d27419..2f6bc835be9 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BytesList.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BytesList.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/feature.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -12,37 +14,34 @@
      * Protobuf type {@code tensorflow.BytesList}
      */
     public final class BytesList extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.BytesList)
         BytesListOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      BytesList.class.getName());
    +  }
       // Use BytesList.newBuilder() to construct.
    -  private BytesList(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private BytesList(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private BytesList() {
    -    value_ = java.util.Collections.emptyList();
    -  }
    -
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new BytesList();
    +    value_ = emptyList(com.google.protobuf.ByteString.class);
       }
     
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_BytesList_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_BytesList_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -50,7 +49,9 @@ protected java.lang.Object newInstance(
       }
     
       public static final int VALUE_FIELD_NUMBER = 1;
    -  private java.util.List value_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.ProtobufList value_ =
    +      emptyList(com.google.protobuf.ByteString.class);
       /**
        * repeated bytes value = 1;
        * @return A list containing the value.
    @@ -182,39 +183,41 @@ public static org.tensorflow.proto.BytesList parseFrom(
       }
       public static org.tensorflow.proto.BytesList parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.BytesList parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.BytesList parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.BytesList parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.BytesList parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.BytesList parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -234,7 +237,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -247,7 +250,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.BytesList}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.BytesList)
           org.tensorflow.proto.BytesListOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -256,7 +259,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_BytesList_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -269,15 +272,15 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    -      value_ = java.util.Collections.emptyList();
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = 0;
    +      value_ = emptyList(com.google.protobuf.ByteString.class);
           return this;
         }
     
    @@ -304,48 +307,19 @@ public org.tensorflow.proto.BytesList build() {
         @java.lang.Override
         public org.tensorflow.proto.BytesList buildPartial() {
           org.tensorflow.proto.BytesList result = new org.tensorflow.proto.BytesList(this);
    -      int from_bitField0_ = bitField0_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        value_ = java.util.Collections.unmodifiableList(value_);
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.value_ = value_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.BytesList result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        value_.makeImmutable();
    +        result.value_ = value_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.BytesList) {
    @@ -361,7 +335,8 @@ public Builder mergeFrom(org.tensorflow.proto.BytesList other) {
           if (!other.value_.isEmpty()) {
             if (value_.isEmpty()) {
               value_ = other.value_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          value_.makeImmutable();
    +          bitField0_ |= 0x00000001;
             } else {
               ensureValueIsMutable();
               value_.addAll(other.value_);
    @@ -417,12 +392,12 @@ public Builder mergeFrom(
         }
         private int bitField0_;
     
    -    private java.util.List value_ = java.util.Collections.emptyList();
    +    private com.google.protobuf.Internal.ProtobufList value_ = emptyList(com.google.protobuf.ByteString.class);
         private void ensureValueIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    -        value_ = new java.util.ArrayList(value_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      if (!value_.isModifiable()) {
    +        value_ = makeMutableCopy(value_);
    +      }
    +      bitField0_ |= 0x00000001;
         }
         /**
          * repeated bytes value = 1;
    @@ -430,8 +405,8 @@ private void ensureValueIsMutable() {
          */
         public java.util.List
             getValueList() {
    -      return ((bitField0_ & 0x00000001) != 0) ?
    -               java.util.Collections.unmodifiableList(value_) : value_;
    +      value_.makeImmutable();
    +      return value_;
         }
         /**
          * repeated bytes value = 1;
    @@ -456,11 +431,10 @@ public com.google.protobuf.ByteString getValue(int index) {
          */
         public Builder setValue(
             int index, com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureValueIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureValueIsMutable();
           value_.set(index, value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -470,11 +444,10 @@ public Builder setValue(
          * @return This builder for chaining.
          */
         public Builder addValue(com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureValueIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureValueIsMutable();
           value_.add(value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -488,6 +461,7 @@ public Builder addAllValue(
           ensureValueIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, value_);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -496,23 +470,11 @@ public Builder addAllValue(
          * @return This builder for chaining.
          */
         public Builder clearValue() {
    -      value_ = java.util.Collections.emptyList();
    +      value_ = emptyList(com.google.protobuf.ByteString.class);
           bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.BytesList)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BytesListOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BytesListOrBuilder.java
    index 355201bf884..aedd4074e8e 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BytesListOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/BytesListOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/feature.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CPUInfo.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CPUInfo.java
    index 906c5e01a83..035624d0f53 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CPUInfo.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CPUInfo.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,12 +9,21 @@
      * Protobuf type {@code tensorflow.CPUInfo}
      */
     public final class CPUInfo extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.CPUInfo)
         CPUInfoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      CPUInfo.class.getName());
    +  }
       // Use CPUInfo.newBuilder() to construct.
    -  private CPUInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private CPUInfo(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private CPUInfo() {
    @@ -20,18 +31,6 @@ private CPUInfo() {
         cpuGovernor_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new CPUInfo();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_CPUInfo_descriptor;
    @@ -39,7 +38,7 @@ protected java.lang.Object newInstance(
     
       @SuppressWarnings({"rawtypes"})
       @java.lang.Override
    -  protected com.google.protobuf.MapField internalGetMapField(
    +  protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
           int number) {
         switch (number) {
           case 6:
    @@ -50,7 +49,7 @@ protected com.google.protobuf.MapField internalGetMapField(
         }
       }
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_CPUInfo_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -58,7 +57,7 @@ protected com.google.protobuf.MapField internalGetMapField(
       }
     
       public static final int NUM_CORES_FIELD_NUMBER = 1;
    -  private long numCores_;
    +  private long numCores_ = 0L;
       /**
        * int64 num_cores = 1;
        * @return The numCores.
    @@ -69,7 +68,7 @@ public long getNumCores() {
       }
     
       public static final int NUM_CORES_ALLOWED_FIELD_NUMBER = 2;
    -  private long numCoresAllowed_;
    +  private long numCoresAllowed_ = 0L;
       /**
        * int64 num_cores_allowed = 2;
        * @return The numCoresAllowed.
    @@ -80,7 +79,7 @@ public long getNumCoresAllowed() {
       }
     
       public static final int MHZ_PER_CPU_FIELD_NUMBER = 3;
    -  private double mhzPerCpu_;
    +  private double mhzPerCpu_ = 0D;
       /**
        * 
        * How fast are these cpus?
    @@ -95,7 +94,8 @@ public double getMhzPerCpu() {
       }
     
       public static final int CPU_INFO_FIELD_NUMBER = 4;
    -  private volatile java.lang.Object cpuInfo_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object cpuInfo_ = "";
       /**
        * 
        * Additional cpu information. For example,
    @@ -143,7 +143,8 @@ public java.lang.String getCpuInfo() {
       }
     
       public static final int CPU_GOVERNOR_FIELD_NUMBER = 5;
    -  private volatile java.lang.Object cpuGovernor_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object cpuGovernor_ = "";
       /**
        * 
        * What kind of cpu scaling is enabled on the host.
    @@ -202,6 +203,7 @@ private static final class CacheSizeDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.INT64,
                     0L);
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.String, java.lang.Long> cacheSize_;
       private com.google.protobuf.MapField
    @@ -212,7 +214,6 @@ private static final class CacheSizeDefaultEntryHolder {
         }
         return cacheSize_;
       }
    -
       public int getCacheSizeCount() {
         return internalGetCacheSize().getMap().size();
       }
    @@ -223,7 +224,6 @@ public int getCacheSizeCount() {
        *
        * map<string, int64> cache_size = 6;
        */
    -
       @java.lang.Override
       public boolean containsCacheSize(
           java.lang.String key) {
    @@ -246,7 +246,6 @@ public java.util.Map getCacheSize() {
        * map<string, int64> cache_size = 6;
        */
       @java.lang.Override
    -
       public java.util.Map getCacheSizeMap() {
         return internalGetCacheSize().getMap();
       }
    @@ -258,7 +257,6 @@ public java.util.Map getCacheSizeMap() {
        * map<string, int64> cache_size = 6;
        */
       @java.lang.Override
    -
       public long getCacheSizeOrDefault(
           java.lang.String key,
           long defaultValue) {
    @@ -275,7 +273,6 @@ public long getCacheSizeOrDefault(
        * map<string, int64> cache_size = 6;
        */
       @java.lang.Override
    -
       public long getCacheSizeOrThrow(
           java.lang.String key) {
         if (key == null) { throw new NullPointerException("map key"); }
    @@ -310,13 +307,13 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (java.lang.Double.doubleToRawLongBits(mhzPerCpu_) != 0) {
           output.writeDouble(3, mhzPerCpu_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(cpuInfo_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 4, cpuInfo_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(cpuInfo_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 4, cpuInfo_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(cpuGovernor_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 5, cpuGovernor_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(cpuGovernor_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 5, cpuGovernor_);
         }
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeStringMapTo(
             output,
             internalGetCacheSize(),
    @@ -343,11 +340,11 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeDoubleSize(3, mhzPerCpu_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(cpuInfo_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, cpuInfo_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(cpuInfo_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(4, cpuInfo_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(cpuGovernor_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, cpuGovernor_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(cpuGovernor_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(5, cpuGovernor_);
         }
         for (java.util.Map.Entry entry
              : internalGetCacheSize().getMap().entrySet()) {
    @@ -454,39 +451,41 @@ public static org.tensorflow.proto.CPUInfo parseFrom(
       }
       public static org.tensorflow.proto.CPUInfo parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.CPUInfo parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.CPUInfo parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.CPUInfo parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.CPUInfo parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.CPUInfo parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -506,7 +505,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -514,7 +513,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.CPUInfo}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.CPUInfo)
           org.tensorflow.proto.CPUInfoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -523,7 +522,7 @@ public static final class Builder extends
         }
     
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
             int number) {
           switch (number) {
             case 6:
    @@ -534,7 +533,7 @@ protected com.google.protobuf.MapField internalGetMapField(
           }
         }
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMutableMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(
             int number) {
           switch (number) {
             case 6:
    @@ -545,7 +544,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
           }
         }
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_CPUInfo_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -558,23 +557,19 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           numCores_ = 0L;
    -
           numCoresAllowed_ = 0L;
    -
           mhzPerCpu_ = 0D;
    -
           cpuInfo_ = "";
    -
           cpuGovernor_ = "";
    -
           internalGetMutableCacheSize().clear();
           return this;
         }
    @@ -602,50 +597,34 @@ public org.tensorflow.proto.CPUInfo build() {
         @java.lang.Override
         public org.tensorflow.proto.CPUInfo buildPartial() {
           org.tensorflow.proto.CPUInfo result = new org.tensorflow.proto.CPUInfo(this);
    -      int from_bitField0_ = bitField0_;
    -      result.numCores_ = numCores_;
    -      result.numCoresAllowed_ = numCoresAllowed_;
    -      result.mhzPerCpu_ = mhzPerCpu_;
    -      result.cpuInfo_ = cpuInfo_;
    -      result.cpuGovernor_ = cpuGovernor_;
    -      result.cacheSize_ = internalGetCacheSize();
    -      result.cacheSize_.makeImmutable();
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.CPUInfo result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.numCores_ = numCores_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.numCoresAllowed_ = numCoresAllowed_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.mhzPerCpu_ = mhzPerCpu_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.cpuInfo_ = cpuInfo_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.cpuGovernor_ = cpuGovernor_;
    +      }
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.cacheSize_ = internalGetCacheSize();
    +        result.cacheSize_.makeImmutable();
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.CPUInfo) {
    @@ -669,14 +648,17 @@ public Builder mergeFrom(org.tensorflow.proto.CPUInfo other) {
           }
           if (!other.getCpuInfo().isEmpty()) {
             cpuInfo_ = other.cpuInfo_;
    +        bitField0_ |= 0x00000008;
             onChanged();
           }
           if (!other.getCpuGovernor().isEmpty()) {
             cpuGovernor_ = other.cpuGovernor_;
    +        bitField0_ |= 0x00000010;
             onChanged();
           }
           internalGetMutableCacheSize().mergeFrom(
               other.internalGetCacheSize());
    +      bitField0_ |= 0x00000020;
           this.mergeUnknownFields(other.getUnknownFields());
           onChanged();
           return this;
    @@ -705,27 +687,27 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   numCores_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 16: {
                   numCoresAllowed_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 case 25: {
                   mhzPerCpu_ = input.readDouble();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 25
                 case 34: {
                   cpuInfo_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 34
                 case 42: {
                   cpuGovernor_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 42
                 case 50: {
    @@ -734,6 +716,7 @@ public Builder mergeFrom(
                       CacheSizeDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                   internalGetMutableCacheSize().getMutableMap().put(
                       cacheSize__.getKey(), cacheSize__.getValue());
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 50
                 default: {
    @@ -768,8 +751,9 @@ public long getNumCores() {
          * @return This builder for chaining.
          */
         public Builder setNumCores(long value) {
    -      
    +
           numCores_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -778,7 +762,7 @@ public Builder setNumCores(long value) {
          * @return This builder for chaining.
          */
         public Builder clearNumCores() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           numCores_ = 0L;
           onChanged();
           return this;
    @@ -799,8 +783,9 @@ public long getNumCoresAllowed() {
          * @return This builder for chaining.
          */
         public Builder setNumCoresAllowed(long value) {
    -      
    +
           numCoresAllowed_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -809,7 +794,7 @@ public Builder setNumCoresAllowed(long value) {
          * @return This builder for chaining.
          */
         public Builder clearNumCoresAllowed() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           numCoresAllowed_ = 0L;
           onChanged();
           return this;
    @@ -838,8 +823,9 @@ public double getMhzPerCpu() {
          * @return This builder for chaining.
          */
         public Builder setMhzPerCpu(double value) {
    -      
    +
           mhzPerCpu_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -852,7 +838,7 @@ public Builder setMhzPerCpu(double value) {
          * @return This builder for chaining.
          */
         public Builder clearMhzPerCpu() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           mhzPerCpu_ = 0D;
           onChanged();
           return this;
    @@ -914,11 +900,9 @@ public java.lang.String getCpuInfo() {
          */
         public Builder setCpuInfo(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           cpuInfo_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -932,8 +916,8 @@ public Builder setCpuInfo(
          * @return This builder for chaining.
          */
         public Builder clearCpuInfo() {
    -      
           cpuInfo_ = getDefaultInstance().getCpuInfo();
    +      bitField0_ = (bitField0_ & ~0x00000008);
           onChanged();
           return this;
         }
    @@ -949,12 +933,10 @@ public Builder clearCpuInfo() {
          */
         public Builder setCpuInfoBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           cpuInfo_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1015,11 +997,9 @@ public java.lang.String getCpuGovernor() {
          */
         public Builder setCpuGovernor(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           cpuGovernor_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1033,8 +1013,8 @@ public Builder setCpuGovernor(
          * @return This builder for chaining.
          */
         public Builder clearCpuGovernor() {
    -      
           cpuGovernor_ = getDefaultInstance().getCpuGovernor();
    +      bitField0_ = (bitField0_ & ~0x00000010);
           onChanged();
           return this;
         }
    @@ -1050,12 +1030,10 @@ public Builder clearCpuGovernor() {
          */
         public Builder setCpuGovernorBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           cpuGovernor_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1063,7 +1041,7 @@ public Builder setCpuGovernorBytes(
         private com.google.protobuf.MapField<
             java.lang.String, java.lang.Long> cacheSize_;
         private com.google.protobuf.MapField
    -    internalGetCacheSize() {
    +        internalGetCacheSize() {
           if (cacheSize_ == null) {
             return com.google.protobuf.MapField.emptyMapField(
                 CacheSizeDefaultEntryHolder.defaultEntry);
    @@ -1071,8 +1049,7 @@ public Builder setCpuGovernorBytes(
           return cacheSize_;
         }
         private com.google.protobuf.MapField
    -    internalGetMutableCacheSize() {
    -      onChanged();;
    +        internalGetMutableCacheSize() {
           if (cacheSize_ == null) {
             cacheSize_ = com.google.protobuf.MapField.newMapField(
                 CacheSizeDefaultEntryHolder.defaultEntry);
    @@ -1080,9 +1057,10 @@ public Builder setCpuGovernorBytes(
           if (!cacheSize_.isMutable()) {
             cacheSize_ = cacheSize_.copy();
           }
    +      bitField0_ |= 0x00000020;
    +      onChanged();
           return cacheSize_;
         }
    -
         public int getCacheSizeCount() {
           return internalGetCacheSize().getMap().size();
         }
    @@ -1093,7 +1071,6 @@ public int getCacheSizeCount() {
          *
          * map<string, int64> cache_size = 6;
          */
    -
         @java.lang.Override
         public boolean containsCacheSize(
             java.lang.String key) {
    @@ -1116,7 +1093,6 @@ public java.util.Map getCacheSize() {
          * map<string, int64> cache_size = 6;
          */
         @java.lang.Override
    -
         public java.util.Map getCacheSizeMap() {
           return internalGetCacheSize().getMap();
         }
    @@ -1128,7 +1104,6 @@ public java.util.Map getCacheSizeMap() {
          * map<string, int64> cache_size = 6;
          */
         @java.lang.Override
    -
         public long getCacheSizeOrDefault(
             java.lang.String key,
             long defaultValue) {
    @@ -1145,7 +1120,6 @@ public long getCacheSizeOrDefault(
          * map<string, int64> cache_size = 6;
          */
         @java.lang.Override
    -
         public long getCacheSizeOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -1156,8 +1130,8 @@ public long getCacheSizeOrThrow(
           }
           return map.get(key);
         }
    -
         public Builder clearCacheSize() {
    +      bitField0_ = (bitField0_ & ~0x00000020);
           internalGetMutableCacheSize().getMutableMap()
               .clear();
           return this;
    @@ -1169,7 +1143,6 @@ public Builder clearCacheSize() {
          *
          * map<string, int64> cache_size = 6;
          */
    -
         public Builder removeCacheSize(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -1182,7 +1155,8 @@ public Builder removeCacheSize(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableCacheSize() {
    +        getMutableCacheSize() {
    +      bitField0_ |= 0x00000020;
           return internalGetMutableCacheSize().getMutableMap();
         }
         /**
    @@ -1196,9 +1170,10 @@ public Builder putCacheSize(
             java.lang.String key,
             long value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      
    +
           internalGetMutableCacheSize().getMutableMap()
               .put(key, value);
    +      bitField0_ |= 0x00000020;
           return this;
         }
         /**
    @@ -1208,25 +1183,13 @@ public Builder putCacheSize(
          *
          * map<string, int64> cache_size = 6;
          */
    -
         public Builder putAllCacheSize(
             java.util.Map values) {
           internalGetMutableCacheSize().getMutableMap()
               .putAll(values);
    +      bitField0_ |= 0x00000020;
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.CPUInfo)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CPUInfoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CPUInfoOrBuilder.java
    index de66bb23d57..7989860564f 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CPUInfoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CPUInfoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -112,7 +114,6 @@ boolean containsCacheSize(
        *
        * map<string, int64> cache_size = 6;
        */
    -
       long getCacheSizeOrDefault(
           java.lang.String key,
           long defaultValue);
    @@ -123,7 +124,6 @@ long getCacheSizeOrDefault(
        *
        * map<string, int64> cache_size = 6;
        */
    -
       long getCacheSizeOrThrow(
           java.lang.String key);
     }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CallableOptions.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CallableOptions.java
    index 905344c6072..5e11341845b 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CallableOptions.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CallableOptions.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,39 +9,40 @@
      * 
      * Defines a subgraph in another `GraphDef` as a set of feed points and nodes
      * to be fetched or executed.
    + *
      * Compare with the arguments to `Session::Run()`.
      * 
    * * Protobuf type {@code tensorflow.CallableOptions} */ public final class CallableOptions extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.CallableOptions) CallableOptionsOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + CallableOptions.class.getName()); + } // Use CallableOptions.newBuilder() to construct. - private CallableOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private CallableOptions(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private CallableOptions() { - feed_ = com.google.protobuf.LazyStringArrayList.EMPTY; - fetch_ = com.google.protobuf.LazyStringArrayList.EMPTY; - target_ = com.google.protobuf.LazyStringArrayList.EMPTY; + feed_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + fetch_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + target_ = + com.google.protobuf.LazyStringArrayList.emptyList(); tensorConnection_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new CallableOptions(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_CallableOptions_descriptor; @@ -47,7 +50,7 @@ protected java.lang.Object newInstance( @SuppressWarnings({"rawtypes"}) @java.lang.Override - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 6: @@ -60,15 +63,18 @@ protected com.google.protobuf.MapField internalGetMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_CallableOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( org.tensorflow.proto.CallableOptions.class, org.tensorflow.proto.CallableOptions.Builder.class); } + private int bitField0_; public static final int FEED_FIELD_NUMBER = 1; - private com.google.protobuf.LazyStringList feed_; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList feed_ = + com.google.protobuf.LazyStringArrayList.emptyList(); /** *
        * Tensors to be fed in the callable. Each feed is the name of a tensor.
    @@ -119,7 +125,9 @@ public java.lang.String getFeed(int index) {
       }
     
       public static final int FETCH_FIELD_NUMBER = 2;
    -  private com.google.protobuf.LazyStringList fetch_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList fetch_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * Fetches. A list of tensor names. The caller of the callable expects a
    @@ -178,7 +186,9 @@ public java.lang.String getFetch(int index) {
       }
     
       public static final int TARGET_FIELD_NUMBER = 3;
    -  private com.google.protobuf.LazyStringList target_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList target_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * Target Nodes. A list of node names. The named nodes will be run by the
    @@ -244,7 +254,7 @@ public java.lang.String getTarget(int index) {
        */
       @java.lang.Override
       public boolean hasRunOptions() {
    -    return runOptions_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -267,10 +277,11 @@ public org.tensorflow.proto.RunOptions getRunOptions() {
        */
       @java.lang.Override
       public org.tensorflow.proto.RunOptionsOrBuilder getRunOptionsOrBuilder() {
    -    return getRunOptions();
    +    return runOptions_ == null ? org.tensorflow.proto.RunOptions.getDefaultInstance() : runOptions_;
       }
     
       public static final int TENSOR_CONNECTION_FIELD_NUMBER = 5;
    +  @SuppressWarnings("serial")
       private java.util.List tensorConnection_;
       /**
        * 
    @@ -352,6 +363,7 @@ private static final class FeedDevicesDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.STRING,
                     "");
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.String, java.lang.String> feedDevices_;
       private com.google.protobuf.MapField
    @@ -362,7 +374,6 @@ private static final class FeedDevicesDefaultEntryHolder {
         }
         return feedDevices_;
       }
    -
       public int getFeedDevicesCount() {
         return internalGetFeedDevices().getMap().size();
       }
    @@ -370,36 +381,47 @@ public int getFeedDevicesCount() {
        * 
        * The Tensor objects fed in the callable and fetched from the callable
        * are expected to be backed by host (CPU) memory by default.
    +   *
        * The options below allow changing that - feeding tensors backed by
        * device memory, or returning tensors that are backed by device memory.
    +   *
        * The maps below map the name of a feed/fetch tensor (which appears in
        * 'feed' or 'fetch' fields above), to the fully qualified name of the device
        * owning the memory backing the contents of the tensor.
    +   *
        * For example, creating a callable with the following options:
    +   *
        * CallableOptions {
    -   *   feed: "a:0"
    -   *   feed: "b:0"
    -   *   fetch: "x:0"
    -   *   fetch: "y:0"
    -   *   feed_devices: {
    -   *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -   *   }
    -   *   fetch_devices: {
    -   *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -   *  }
    +   * feed: "a:0"
    +   * feed: "b:0"
    +   *
    +   * fetch: "x:0"
    +   * fetch: "y:0"
    +   *
    +   * feed_devices: {
    +   * "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +   * }
    +   *
    +   * fetch_devices: {
    +   * "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
        * }
    +   * }
    +   *
        * means that the Callable expects:
        * - The first argument ("a:0") is a Tensor backed by GPU memory.
        * - The second argument ("b:0") is a Tensor backed by host memory.
        * and of its return values:
        * - The first output ("x:0") will be backed by host memory.
        * - The second output ("y:0") will be backed by GPU memory.
    +   *
        * FEEDS:
        * It is the responsibility of the caller to ensure that the memory of the fed
        * tensors will be correctly initialized and synchronized before it is
        * accessed by operations executed during the call to Session::RunCallable().
    +   *
        * This is typically ensured by using the TensorFlow memory allocators
        * (Device::GetAllocator()) to create the Tensor to be fed.
    +   *
        * Alternatively, for CUDA-enabled GPU devices, this typically means that the
        * operation that produced the contents of the tensor has completed, i.e., the
        * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
    @@ -408,7 +430,6 @@ public int getFeedDevicesCount() {
        *
        * map<string, string> feed_devices = 6;
        */
    -
       @java.lang.Override
       public boolean containsFeedDevices(
           java.lang.String key) {
    @@ -427,36 +448,47 @@ public java.util.Map getFeedDevices() {
        * 
        * The Tensor objects fed in the callable and fetched from the callable
        * are expected to be backed by host (CPU) memory by default.
    +   *
        * The options below allow changing that - feeding tensors backed by
        * device memory, or returning tensors that are backed by device memory.
    +   *
        * The maps below map the name of a feed/fetch tensor (which appears in
        * 'feed' or 'fetch' fields above), to the fully qualified name of the device
        * owning the memory backing the contents of the tensor.
    +   *
        * For example, creating a callable with the following options:
    +   *
        * CallableOptions {
    -   *   feed: "a:0"
    -   *   feed: "b:0"
    -   *   fetch: "x:0"
    -   *   fetch: "y:0"
    -   *   feed_devices: {
    -   *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -   *   }
    -   *   fetch_devices: {
    -   *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -   *  }
    +   * feed: "a:0"
    +   * feed: "b:0"
    +   *
    +   * fetch: "x:0"
    +   * fetch: "y:0"
    +   *
    +   * feed_devices: {
    +   * "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +   * }
    +   *
    +   * fetch_devices: {
    +   * "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
        * }
    +   * }
    +   *
        * means that the Callable expects:
        * - The first argument ("a:0") is a Tensor backed by GPU memory.
        * - The second argument ("b:0") is a Tensor backed by host memory.
        * and of its return values:
        * - The first output ("x:0") will be backed by host memory.
        * - The second output ("y:0") will be backed by GPU memory.
    +   *
        * FEEDS:
        * It is the responsibility of the caller to ensure that the memory of the fed
        * tensors will be correctly initialized and synchronized before it is
        * accessed by operations executed during the call to Session::RunCallable().
    +   *
        * This is typically ensured by using the TensorFlow memory allocators
        * (Device::GetAllocator()) to create the Tensor to be fed.
    +   *
        * Alternatively, for CUDA-enabled GPU devices, this typically means that the
        * operation that produced the contents of the tensor has completed, i.e., the
        * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
    @@ -466,7 +498,6 @@ public java.util.Map getFeedDevices() {
        * map<string, string> feed_devices = 6;
        */
       @java.lang.Override
    -
       public java.util.Map getFeedDevicesMap() {
         return internalGetFeedDevices().getMap();
       }
    @@ -474,36 +505,47 @@ public java.util.Map getFeedDevicesMap() {
        * 
        * The Tensor objects fed in the callable and fetched from the callable
        * are expected to be backed by host (CPU) memory by default.
    +   *
        * The options below allow changing that - feeding tensors backed by
        * device memory, or returning tensors that are backed by device memory.
    +   *
        * The maps below map the name of a feed/fetch tensor (which appears in
        * 'feed' or 'fetch' fields above), to the fully qualified name of the device
        * owning the memory backing the contents of the tensor.
    +   *
        * For example, creating a callable with the following options:
    +   *
        * CallableOptions {
    -   *   feed: "a:0"
    -   *   feed: "b:0"
    -   *   fetch: "x:0"
    -   *   fetch: "y:0"
    -   *   feed_devices: {
    -   *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -   *   }
    -   *   fetch_devices: {
    -   *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -   *  }
    +   * feed: "a:0"
    +   * feed: "b:0"
    +   *
    +   * fetch: "x:0"
    +   * fetch: "y:0"
    +   *
    +   * feed_devices: {
    +   * "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +   * }
    +   *
    +   * fetch_devices: {
    +   * "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +   * }
        * }
    +   *
        * means that the Callable expects:
        * - The first argument ("a:0") is a Tensor backed by GPU memory.
        * - The second argument ("b:0") is a Tensor backed by host memory.
        * and of its return values:
        * - The first output ("x:0") will be backed by host memory.
        * - The second output ("y:0") will be backed by GPU memory.
    +   *
        * FEEDS:
        * It is the responsibility of the caller to ensure that the memory of the fed
        * tensors will be correctly initialized and synchronized before it is
        * accessed by operations executed during the call to Session::RunCallable().
    +   *
        * This is typically ensured by using the TensorFlow memory allocators
        * (Device::GetAllocator()) to create the Tensor to be fed.
    +   *
        * Alternatively, for CUDA-enabled GPU devices, this typically means that the
        * operation that produced the contents of the tensor has completed, i.e., the
        * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
    @@ -513,10 +555,11 @@ public java.util.Map getFeedDevicesMap() {
        * map<string, string> feed_devices = 6;
        */
       @java.lang.Override
    -
    -  public java.lang.String getFeedDevicesOrDefault(
    +  public /* nullable */
    +java.lang.String getFeedDevicesOrDefault(
           java.lang.String key,
    -      java.lang.String defaultValue) {
    +      /* nullable */
    +java.lang.String defaultValue) {
         if (key == null) { throw new NullPointerException("map key"); }
         java.util.Map map =
             internalGetFeedDevices().getMap();
    @@ -526,36 +569,47 @@ public java.lang.String getFeedDevicesOrDefault(
        * 
        * The Tensor objects fed in the callable and fetched from the callable
        * are expected to be backed by host (CPU) memory by default.
    +   *
        * The options below allow changing that - feeding tensors backed by
        * device memory, or returning tensors that are backed by device memory.
    +   *
        * The maps below map the name of a feed/fetch tensor (which appears in
        * 'feed' or 'fetch' fields above), to the fully qualified name of the device
        * owning the memory backing the contents of the tensor.
    +   *
        * For example, creating a callable with the following options:
    +   *
        * CallableOptions {
    -   *   feed: "a:0"
    -   *   feed: "b:0"
    -   *   fetch: "x:0"
    -   *   fetch: "y:0"
    -   *   feed_devices: {
    -   *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -   *   }
    -   *   fetch_devices: {
    -   *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -   *  }
    +   * feed: "a:0"
    +   * feed: "b:0"
    +   *
    +   * fetch: "x:0"
    +   * fetch: "y:0"
    +   *
    +   * feed_devices: {
    +   * "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
        * }
    +   *
    +   * fetch_devices: {
    +   * "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +   * }
    +   * }
    +   *
        * means that the Callable expects:
        * - The first argument ("a:0") is a Tensor backed by GPU memory.
        * - The second argument ("b:0") is a Tensor backed by host memory.
        * and of its return values:
        * - The first output ("x:0") will be backed by host memory.
        * - The second output ("y:0") will be backed by GPU memory.
    +   *
        * FEEDS:
        * It is the responsibility of the caller to ensure that the memory of the fed
        * tensors will be correctly initialized and synchronized before it is
        * accessed by operations executed during the call to Session::RunCallable().
    +   *
        * This is typically ensured by using the TensorFlow memory allocators
        * (Device::GetAllocator()) to create the Tensor to be fed.
    +   *
        * Alternatively, for CUDA-enabled GPU devices, this typically means that the
        * operation that produced the contents of the tensor has completed, i.e., the
        * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
    @@ -565,7 +619,6 @@ public java.lang.String getFeedDevicesOrDefault(
        * map<string, string> feed_devices = 6;
        */
       @java.lang.Override
    -
       public java.lang.String getFeedDevicesOrThrow(
           java.lang.String key) {
         if (key == null) { throw new NullPointerException("map key"); }
    @@ -589,6 +642,7 @@ private static final class FetchDevicesDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.STRING,
                     "");
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.String, java.lang.String> fetchDevices_;
       private com.google.protobuf.MapField
    @@ -599,14 +653,12 @@ private static final class FetchDevicesDefaultEntryHolder {
         }
         return fetchDevices_;
       }
    -
       public int getFetchDevicesCount() {
         return internalGetFetchDevices().getMap().size();
       }
       /**
        * map<string, string> fetch_devices = 7;
        */
    -
       @java.lang.Override
       public boolean containsFetchDevices(
           java.lang.String key) {
    @@ -625,7 +677,6 @@ public java.util.Map getFetchDevices() {
        * map<string, string> fetch_devices = 7;
        */
       @java.lang.Override
    -
       public java.util.Map getFetchDevicesMap() {
         return internalGetFetchDevices().getMap();
       }
    @@ -633,10 +684,11 @@ public java.util.Map getFetchDevicesMap() {
        * map<string, string> fetch_devices = 7;
        */
       @java.lang.Override
    -
    -  public java.lang.String getFetchDevicesOrDefault(
    +  public /* nullable */
    +java.lang.String getFetchDevicesOrDefault(
           java.lang.String key,
    -      java.lang.String defaultValue) {
    +      /* nullable */
    +java.lang.String defaultValue) {
         if (key == null) { throw new NullPointerException("map key"); }
         java.util.Map map =
             internalGetFetchDevices().getMap();
    @@ -646,7 +698,6 @@ public java.lang.String getFetchDevicesOrDefault(
        * map<string, string> fetch_devices = 7;
        */
       @java.lang.Override
    -
       public java.lang.String getFetchDevicesOrThrow(
           java.lang.String key) {
         if (key == null) { throw new NullPointerException("map key"); }
    @@ -659,13 +710,14 @@ public java.lang.String getFetchDevicesOrThrow(
       }
     
       public static final int FETCH_SKIP_SYNC_FIELD_NUMBER = 8;
    -  private boolean fetchSkipSync_;
    +  private boolean fetchSkipSync_ = false;
       /**
        * 
        * By default, RunCallable() will synchronize the GPU stream before returning
        * fetched tensors on a GPU device, to ensure that the values in those tensors
        * have been produced. This simplifies interacting with the tensors, but
        * potentially incurs a performance hit.
    +   *
        * If this options is set to true, the caller is responsible for ensuring
        * that the values in the fetched tensors have been produced before they are
        * used. The caller can do this by invoking `Device::Sync()` on the underlying
    @@ -696,27 +748,27 @@ public final boolean isInitialized() {
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
         for (int i = 0; i < feed_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, feed_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, feed_.getRaw(i));
         }
         for (int i = 0; i < fetch_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, fetch_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, fetch_.getRaw(i));
         }
         for (int i = 0; i < target_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, target_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, target_.getRaw(i));
         }
    -    if (runOptions_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(4, getRunOptions());
         }
         for (int i = 0; i < tensorConnection_.size(); i++) {
           output.writeMessage(5, tensorConnection_.get(i));
         }
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeStringMapTo(
             output,
             internalGetFeedDevices(),
             FeedDevicesDefaultEntryHolder.defaultEntry,
             6);
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeStringMapTo(
             output,
             internalGetFetchDevices(),
    @@ -758,7 +810,7 @@ public int getSerializedSize() {
           size += dataSize;
           size += 1 * getTargetList().size();
         }
    -    if (runOptions_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(4, getRunOptions());
         }
    @@ -905,39 +957,41 @@ public static org.tensorflow.proto.CallableOptions parseFrom(
       }
       public static org.tensorflow.proto.CallableOptions parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.CallableOptions parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.CallableOptions parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.CallableOptions parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.CallableOptions parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.CallableOptions parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -957,7 +1011,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -965,13 +1019,14 @@ protected Builder newBuilderForType(
        * 
        * Defines a subgraph in another `GraphDef` as a set of feed points and nodes
        * to be fetched or executed.
    +   *
        * Compare with the arguments to `Session::Run()`.
        * 
    * * Protobuf type {@code tensorflow.CallableOptions} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.CallableOptions) org.tensorflow.proto.CallableOptionsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -980,7 +1035,7 @@ public static final class Builder extends } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 6: @@ -993,7 +1048,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMutableMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( int number) { switch (number) { case 6: @@ -1006,7 +1061,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_CallableOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -1015,27 +1070,34 @@ protected com.google.protobuf.MapField internalGetMutableMapField( // Construct using org.tensorflow.proto.CallableOptions.newBuilder() private Builder() { - + maybeForceBuilderInitialization(); } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); - + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage + .alwaysUseFieldBuilders) { + getRunOptionsFieldBuilder(); + getTensorConnectionFieldBuilder(); + } } @java.lang.Override public Builder clear() { super.clear(); - feed_ = com.google.protobuf.LazyStringArrayList.EMPTY; - bitField0_ = (bitField0_ & ~0x00000001); - fetch_ = com.google.protobuf.LazyStringArrayList.EMPTY; - bitField0_ = (bitField0_ & ~0x00000002); - target_ = com.google.protobuf.LazyStringArrayList.EMPTY; - bitField0_ = (bitField0_ & ~0x00000004); - if (runOptionsBuilder_ == null) { - runOptions_ = null; - } else { - runOptions_ = null; + bitField0_ = 0; + feed_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + fetch_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + target_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + runOptions_ = null; + if (runOptionsBuilder_ != null) { + runOptionsBuilder_.dispose(); runOptionsBuilder_ = null; } if (tensorConnectionBuilder_ == null) { @@ -1044,11 +1106,10 @@ public Builder clear() { tensorConnection_ = null; tensorConnectionBuilder_.clear(); } - bitField0_ = (bitField0_ & ~0x00000008); + bitField0_ = (bitField0_ & ~0x00000010); internalGetMutableFeedDevices().clear(); internalGetMutableFetchDevices().clear(); fetchSkipSync_ = false; - return this; } @@ -1075,77 +1136,59 @@ public org.tensorflow.proto.CallableOptions build() { @java.lang.Override public org.tensorflow.proto.CallableOptions buildPartial() { org.tensorflow.proto.CallableOptions result = new org.tensorflow.proto.CallableOptions(this); - int from_bitField0_ = bitField0_; - if (((bitField0_ & 0x00000001) != 0)) { - feed_ = feed_.getUnmodifiableView(); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.feed_ = feed_; - if (((bitField0_ & 0x00000002) != 0)) { - fetch_ = fetch_.getUnmodifiableView(); - bitField0_ = (bitField0_ & ~0x00000002); - } - result.fetch_ = fetch_; - if (((bitField0_ & 0x00000004) != 0)) { - target_ = target_.getUnmodifiableView(); - bitField0_ = (bitField0_ & ~0x00000004); - } - result.target_ = target_; - if (runOptionsBuilder_ == null) { - result.runOptions_ = runOptions_; - } else { - result.runOptions_ = runOptionsBuilder_.build(); - } + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(org.tensorflow.proto.CallableOptions result) { if (tensorConnectionBuilder_ == null) { - if (((bitField0_ & 0x00000008) != 0)) { + if (((bitField0_ & 0x00000010) != 0)) { tensorConnection_ = java.util.Collections.unmodifiableList(tensorConnection_); - bitField0_ = (bitField0_ & ~0x00000008); + bitField0_ = (bitField0_ & ~0x00000010); } result.tensorConnection_ = tensorConnection_; } else { result.tensorConnection_ = tensorConnectionBuilder_.build(); } - result.feedDevices_ = internalGetFeedDevices(); - result.feedDevices_.makeImmutable(); - result.fetchDevices_ = internalGetFetchDevices(); - result.fetchDevices_.makeImmutable(); - result.fetchSkipSync_ = fetchSkipSync_; - onBuilt(); - return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.CallableOptions result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + feed_.makeImmutable(); + result.feed_ = feed_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + fetch_.makeImmutable(); + result.fetch_ = fetch_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + target_.makeImmutable(); + result.target_ = target_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000008) != 0)) { + result.runOptions_ = runOptionsBuilder_ == null + ? runOptions_ + : runOptionsBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.feedDevices_ = internalGetFeedDevices(); + result.feedDevices_.makeImmutable(); + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.fetchDevices_ = internalGetFetchDevices(); + result.fetchDevices_.makeImmutable(); + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.fetchSkipSync_ = fetchSkipSync_; + } + result.bitField0_ |= to_bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.CallableOptions) { @@ -1161,7 +1204,7 @@ public Builder mergeFrom(org.tensorflow.proto.CallableOptions other) { if (!other.feed_.isEmpty()) { if (feed_.isEmpty()) { feed_ = other.feed_; - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ |= 0x00000001; } else { ensureFeedIsMutable(); feed_.addAll(other.feed_); @@ -1171,7 +1214,7 @@ public Builder mergeFrom(org.tensorflow.proto.CallableOptions other) { if (!other.fetch_.isEmpty()) { if (fetch_.isEmpty()) { fetch_ = other.fetch_; - bitField0_ = (bitField0_ & ~0x00000002); + bitField0_ |= 0x00000002; } else { ensureFetchIsMutable(); fetch_.addAll(other.fetch_); @@ -1181,7 +1224,7 @@ public Builder mergeFrom(org.tensorflow.proto.CallableOptions other) { if (!other.target_.isEmpty()) { if (target_.isEmpty()) { target_ = other.target_; - bitField0_ = (bitField0_ & ~0x00000004); + bitField0_ |= 0x00000004; } else { ensureTargetIsMutable(); target_.addAll(other.target_); @@ -1195,7 +1238,7 @@ public Builder mergeFrom(org.tensorflow.proto.CallableOptions other) { if (!other.tensorConnection_.isEmpty()) { if (tensorConnection_.isEmpty()) { tensorConnection_ = other.tensorConnection_; - bitField0_ = (bitField0_ & ~0x00000008); + bitField0_ = (bitField0_ & ~0x00000010); } else { ensureTensorConnectionIsMutable(); tensorConnection_.addAll(other.tensorConnection_); @@ -1208,9 +1251,9 @@ public Builder mergeFrom(org.tensorflow.proto.CallableOptions other) { tensorConnectionBuilder_.dispose(); tensorConnectionBuilder_ = null; tensorConnection_ = other.tensorConnection_; - bitField0_ = (bitField0_ & ~0x00000008); + bitField0_ = (bitField0_ & ~0x00000010); tensorConnectionBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getTensorConnectionFieldBuilder() : null; } else { tensorConnectionBuilder_.addAllMessages(other.tensorConnection_); @@ -1219,8 +1262,10 @@ public Builder mergeFrom(org.tensorflow.proto.CallableOptions other) { } internalGetMutableFeedDevices().mergeFrom( other.internalGetFeedDevices()); + bitField0_ |= 0x00000020; internalGetMutableFetchDevices().mergeFrom( other.internalGetFetchDevices()); + bitField0_ |= 0x00000040; if (other.getFetchSkipSync() != false) { setFetchSkipSync(other.getFetchSkipSync()); } @@ -1272,7 +1317,7 @@ public Builder mergeFrom( input.readMessage( getRunOptionsFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000008; break; } // case 34 case 42: { @@ -1294,6 +1339,7 @@ public Builder mergeFrom( FeedDevicesDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); internalGetMutableFeedDevices().getMutableMap().put( feedDevices__.getKey(), feedDevices__.getValue()); + bitField0_ |= 0x00000020; break; } // case 50 case 58: { @@ -1302,11 +1348,12 @@ public Builder mergeFrom( FetchDevicesDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); internalGetMutableFetchDevices().getMutableMap().put( fetchDevices__.getKey(), fetchDevices__.getValue()); + bitField0_ |= 0x00000040; break; } // case 58 case 64: { fetchSkipSync_ = input.readBool(); - + bitField0_ |= 0x00000080; break; } // case 64 default: { @@ -1326,12 +1373,13 @@ public Builder mergeFrom( } private int bitField0_; - private com.google.protobuf.LazyStringList feed_ = com.google.protobuf.LazyStringArrayList.EMPTY; + private com.google.protobuf.LazyStringArrayList feed_ = + com.google.protobuf.LazyStringArrayList.emptyList(); private void ensureFeedIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { + if (!feed_.isModifiable()) { feed_ = new com.google.protobuf.LazyStringArrayList(feed_); - bitField0_ |= 0x00000001; - } + } + bitField0_ |= 0x00000001; } /** *
    @@ -1343,7 +1391,8 @@ private void ensureFeedIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getFeedList() {
    -      return feed_.getUnmodifiableView();
    +      feed_.makeImmutable();
    +      return feed_;
         }
         /**
          * 
    @@ -1393,11 +1442,10 @@ public java.lang.String getFeed(int index) {
          */
         public Builder setFeed(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureFeedIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureFeedIsMutable();
           feed_.set(index, value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1412,11 +1460,10 @@ public Builder setFeed(
          */
         public Builder addFeed(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureFeedIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureFeedIsMutable();
           feed_.add(value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1434,6 +1481,7 @@ public Builder addAllFeed(
           ensureFeedIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, feed_);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1446,8 +1494,9 @@ public Builder addAllFeed(
          * @return This builder for chaining.
          */
         public Builder clearFeed() {
    -      feed_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      feed_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000001);;
           onChanged();
           return this;
         }
    @@ -1462,22 +1511,22 @@ public Builder clearFeed() {
          */
         public Builder addFeedBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureFeedIsMutable();
           feed_.add(value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.LazyStringList fetch_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList fetch_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureFetchIsMutable() {
    -      if (!((bitField0_ & 0x00000002) != 0)) {
    +      if (!fetch_.isModifiable()) {
             fetch_ = new com.google.protobuf.LazyStringArrayList(fetch_);
    -        bitField0_ |= 0x00000002;
    -       }
    +      }
    +      bitField0_ |= 0x00000002;
         }
         /**
          * 
    @@ -1491,7 +1540,8 @@ private void ensureFetchIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getFetchList() {
    -      return fetch_.getUnmodifiableView();
    +      fetch_.makeImmutable();
    +      return fetch_;
         }
         /**
          * 
    @@ -1549,11 +1599,10 @@ public java.lang.String getFetch(int index) {
          */
         public Builder setFetch(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureFetchIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureFetchIsMutable();
           fetch_.set(index, value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1570,11 +1619,10 @@ public Builder setFetch(
          */
         public Builder addFetch(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureFetchIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureFetchIsMutable();
           fetch_.add(value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1594,6 +1642,7 @@ public Builder addAllFetch(
           ensureFetchIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, fetch_);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1608,8 +1657,9 @@ public Builder addAllFetch(
          * @return This builder for chaining.
          */
         public Builder clearFetch() {
    -      fetch_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000002);
    +      fetch_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000002);;
           onChanged();
           return this;
         }
    @@ -1626,22 +1676,22 @@ public Builder clearFetch() {
          */
         public Builder addFetchBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureFetchIsMutable();
           fetch_.add(value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.LazyStringList target_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList target_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureTargetIsMutable() {
    -      if (!((bitField0_ & 0x00000004) != 0)) {
    +      if (!target_.isModifiable()) {
             target_ = new com.google.protobuf.LazyStringArrayList(target_);
    -        bitField0_ |= 0x00000004;
    -       }
    +      }
    +      bitField0_ |= 0x00000004;
         }
         /**
          * 
    @@ -1654,7 +1704,8 @@ private void ensureTargetIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getTargetList() {
    -      return target_.getUnmodifiableView();
    +      target_.makeImmutable();
    +      return target_;
         }
         /**
          * 
    @@ -1708,11 +1759,10 @@ public java.lang.String getTarget(int index) {
          */
         public Builder setTarget(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureTargetIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureTargetIsMutable();
           target_.set(index, value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1728,11 +1778,10 @@ public Builder setTarget(
          */
         public Builder addTarget(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureTargetIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureTargetIsMutable();
           target_.add(value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1751,6 +1800,7 @@ public Builder addAllTarget(
           ensureTargetIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, target_);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1764,8 +1814,9 @@ public Builder addAllTarget(
          * @return This builder for chaining.
          */
         public Builder clearTarget() {
    -      target_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000004);
    +      target_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000004);;
           onChanged();
           return this;
         }
    @@ -1781,18 +1832,17 @@ public Builder clearTarget() {
          */
         public Builder addTargetBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureTargetIsMutable();
           target_.add(value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.RunOptions runOptions_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.RunOptions, org.tensorflow.proto.RunOptions.Builder, org.tensorflow.proto.RunOptionsOrBuilder> runOptionsBuilder_;
         /**
          * 
    @@ -1803,7 +1853,7 @@ public Builder addTargetBytes(
          * @return Whether the runOptions field is set.
          */
         public boolean hasRunOptions() {
    -      return runOptionsBuilder_ != null || runOptions_ != null;
    +      return ((bitField0_ & 0x00000008) != 0);
         }
         /**
          * 
    @@ -1833,11 +1883,11 @@ public Builder setRunOptions(org.tensorflow.proto.RunOptions value) {
               throw new NullPointerException();
             }
             runOptions_ = value;
    -        onChanged();
           } else {
             runOptionsBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000008;
    +      onChanged();
           return this;
         }
         /**
    @@ -1851,11 +1901,11 @@ public Builder setRunOptions(
             org.tensorflow.proto.RunOptions.Builder builderForValue) {
           if (runOptionsBuilder_ == null) {
             runOptions_ = builderForValue.build();
    -        onChanged();
           } else {
             runOptionsBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000008;
    +      onChanged();
           return this;
         }
         /**
    @@ -1867,17 +1917,20 @@ public Builder setRunOptions(
          */
         public Builder mergeRunOptions(org.tensorflow.proto.RunOptions value) {
           if (runOptionsBuilder_ == null) {
    -        if (runOptions_ != null) {
    -          runOptions_ =
    -            org.tensorflow.proto.RunOptions.newBuilder(runOptions_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000008) != 0) &&
    +          runOptions_ != null &&
    +          runOptions_ != org.tensorflow.proto.RunOptions.getDefaultInstance()) {
    +          getRunOptionsBuilder().mergeFrom(value);
             } else {
               runOptions_ = value;
             }
    -        onChanged();
           } else {
             runOptionsBuilder_.mergeFrom(value);
           }
    -
    +      if (runOptions_ != null) {
    +        bitField0_ |= 0x00000008;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -1888,14 +1941,13 @@ public Builder mergeRunOptions(org.tensorflow.proto.RunOptions value) {
          * .tensorflow.RunOptions run_options = 4;
          */
         public Builder clearRunOptions() {
    -      if (runOptionsBuilder_ == null) {
    -        runOptions_ = null;
    -        onChanged();
    -      } else {
    -        runOptions_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000008);
    +      runOptions_ = null;
    +      if (runOptionsBuilder_ != null) {
    +        runOptionsBuilder_.dispose();
             runOptionsBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -1906,7 +1958,7 @@ public Builder clearRunOptions() {
          * .tensorflow.RunOptions run_options = 4;
          */
         public org.tensorflow.proto.RunOptions.Builder getRunOptionsBuilder() {
    -      
    +      bitField0_ |= 0x00000008;
           onChanged();
           return getRunOptionsFieldBuilder().getBuilder();
         }
    @@ -1932,11 +1984,11 @@ public org.tensorflow.proto.RunOptionsOrBuilder getRunOptionsOrBuilder() {
          *
          * .tensorflow.RunOptions run_options = 4;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.RunOptions, org.tensorflow.proto.RunOptions.Builder, org.tensorflow.proto.RunOptionsOrBuilder> 
             getRunOptionsFieldBuilder() {
           if (runOptionsBuilder_ == null) {
    -        runOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        runOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.RunOptions, org.tensorflow.proto.RunOptions.Builder, org.tensorflow.proto.RunOptionsOrBuilder>(
                     getRunOptions(),
                     getParentForChildren(),
    @@ -1949,13 +2001,13 @@ public org.tensorflow.proto.RunOptionsOrBuilder getRunOptionsOrBuilder() {
         private java.util.List tensorConnection_ =
           java.util.Collections.emptyList();
         private void ensureTensorConnectionIsMutable() {
    -      if (!((bitField0_ & 0x00000008) != 0)) {
    +      if (!((bitField0_ & 0x00000010) != 0)) {
             tensorConnection_ = new java.util.ArrayList(tensorConnection_);
    -        bitField0_ |= 0x00000008;
    +        bitField0_ |= 0x00000010;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.TensorConnection, org.tensorflow.proto.TensorConnection.Builder, org.tensorflow.proto.TensorConnectionOrBuilder> tensorConnectionBuilder_;
     
         /**
    @@ -2167,7 +2219,7 @@ public Builder addAllTensorConnection(
         public Builder clearTensorConnection() {
           if (tensorConnectionBuilder_ == null) {
             tensorConnection_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000008);
    +        bitField0_ = (bitField0_ & ~0x00000010);
             onChanged();
           } else {
             tensorConnectionBuilder_.clear();
    @@ -2279,14 +2331,14 @@ public org.tensorflow.proto.TensorConnection.Builder addTensorConnectionBuilder(
              getTensorConnectionBuilderList() {
           return getTensorConnectionFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.TensorConnection, org.tensorflow.proto.TensorConnection.Builder, org.tensorflow.proto.TensorConnectionOrBuilder> 
             getTensorConnectionFieldBuilder() {
           if (tensorConnectionBuilder_ == null) {
    -        tensorConnectionBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        tensorConnectionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.TensorConnection, org.tensorflow.proto.TensorConnection.Builder, org.tensorflow.proto.TensorConnectionOrBuilder>(
                     tensorConnection_,
    -                ((bitField0_ & 0x00000008) != 0),
    +                ((bitField0_ & 0x00000010) != 0),
                     getParentForChildren(),
                     isClean());
             tensorConnection_ = null;
    @@ -2297,7 +2349,7 @@ public org.tensorflow.proto.TensorConnection.Builder addTensorConnectionBuilder(
         private com.google.protobuf.MapField<
             java.lang.String, java.lang.String> feedDevices_;
         private com.google.protobuf.MapField
    -    internalGetFeedDevices() {
    +        internalGetFeedDevices() {
           if (feedDevices_ == null) {
             return com.google.protobuf.MapField.emptyMapField(
                 FeedDevicesDefaultEntryHolder.defaultEntry);
    @@ -2305,8 +2357,7 @@ public org.tensorflow.proto.TensorConnection.Builder addTensorConnectionBuilder(
           return feedDevices_;
         }
         private com.google.protobuf.MapField
    -    internalGetMutableFeedDevices() {
    -      onChanged();;
    +        internalGetMutableFeedDevices() {
           if (feedDevices_ == null) {
             feedDevices_ = com.google.protobuf.MapField.newMapField(
                 FeedDevicesDefaultEntryHolder.defaultEntry);
    @@ -2314,9 +2365,10 @@ public org.tensorflow.proto.TensorConnection.Builder addTensorConnectionBuilder(
           if (!feedDevices_.isMutable()) {
             feedDevices_ = feedDevices_.copy();
           }
    +      bitField0_ |= 0x00000020;
    +      onChanged();
           return feedDevices_;
         }
    -
         public int getFeedDevicesCount() {
           return internalGetFeedDevices().getMap().size();
         }
    @@ -2324,36 +2376,47 @@ public int getFeedDevicesCount() {
          * 
          * The Tensor objects fed in the callable and fetched from the callable
          * are expected to be backed by host (CPU) memory by default.
    +     *
          * The options below allow changing that - feeding tensors backed by
          * device memory, or returning tensors that are backed by device memory.
    +     *
          * The maps below map the name of a feed/fetch tensor (which appears in
          * 'feed' or 'fetch' fields above), to the fully qualified name of the device
          * owning the memory backing the contents of the tensor.
    +     *
          * For example, creating a callable with the following options:
    +     *
          * CallableOptions {
    -     *   feed: "a:0"
    -     *   feed: "b:0"
    -     *   fetch: "x:0"
    -     *   fetch: "y:0"
    -     *   feed_devices: {
    -     *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -     *   }
    -     *   fetch_devices: {
    -     *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -     *  }
    +     * feed: "a:0"
    +     * feed: "b:0"
    +     *
    +     * fetch: "x:0"
    +     * fetch: "y:0"
    +     *
    +     * feed_devices: {
    +     * "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +     * }
    +     *
    +     * fetch_devices: {
    +     * "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
          * }
    +     * }
    +     *
          * means that the Callable expects:
          * - The first argument ("a:0") is a Tensor backed by GPU memory.
          * - The second argument ("b:0") is a Tensor backed by host memory.
          * and of its return values:
          * - The first output ("x:0") will be backed by host memory.
          * - The second output ("y:0") will be backed by GPU memory.
    +     *
          * FEEDS:
          * It is the responsibility of the caller to ensure that the memory of the fed
          * tensors will be correctly initialized and synchronized before it is
          * accessed by operations executed during the call to Session::RunCallable().
    +     *
          * This is typically ensured by using the TensorFlow memory allocators
          * (Device::GetAllocator()) to create the Tensor to be fed.
    +     *
          * Alternatively, for CUDA-enabled GPU devices, this typically means that the
          * operation that produced the contents of the tensor has completed, i.e., the
          * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
    @@ -2362,7 +2425,6 @@ public int getFeedDevicesCount() {
          *
          * map<string, string> feed_devices = 6;
          */
    -
         @java.lang.Override
         public boolean containsFeedDevices(
             java.lang.String key) {
    @@ -2381,36 +2443,47 @@ public java.util.Map getFeedDevices() {
          * 
          * The Tensor objects fed in the callable and fetched from the callable
          * are expected to be backed by host (CPU) memory by default.
    +     *
          * The options below allow changing that - feeding tensors backed by
          * device memory, or returning tensors that are backed by device memory.
    +     *
          * The maps below map the name of a feed/fetch tensor (which appears in
          * 'feed' or 'fetch' fields above), to the fully qualified name of the device
          * owning the memory backing the contents of the tensor.
    +     *
          * For example, creating a callable with the following options:
    +     *
          * CallableOptions {
    -     *   feed: "a:0"
    -     *   feed: "b:0"
    -     *   fetch: "x:0"
    -     *   fetch: "y:0"
    -     *   feed_devices: {
    -     *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -     *   }
    -     *   fetch_devices: {
    -     *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -     *  }
    +     * feed: "a:0"
    +     * feed: "b:0"
    +     *
    +     * fetch: "x:0"
    +     * fetch: "y:0"
    +     *
    +     * feed_devices: {
    +     * "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +     * }
    +     *
    +     * fetch_devices: {
    +     * "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +     * }
          * }
    +     *
          * means that the Callable expects:
          * - The first argument ("a:0") is a Tensor backed by GPU memory.
          * - The second argument ("b:0") is a Tensor backed by host memory.
          * and of its return values:
          * - The first output ("x:0") will be backed by host memory.
          * - The second output ("y:0") will be backed by GPU memory.
    +     *
          * FEEDS:
          * It is the responsibility of the caller to ensure that the memory of the fed
          * tensors will be correctly initialized and synchronized before it is
          * accessed by operations executed during the call to Session::RunCallable().
    +     *
          * This is typically ensured by using the TensorFlow memory allocators
          * (Device::GetAllocator()) to create the Tensor to be fed.
    +     *
          * Alternatively, for CUDA-enabled GPU devices, this typically means that the
          * operation that produced the contents of the tensor has completed, i.e., the
          * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
    @@ -2420,7 +2493,6 @@ public java.util.Map getFeedDevices() {
          * map<string, string> feed_devices = 6;
          */
         @java.lang.Override
    -
         public java.util.Map getFeedDevicesMap() {
           return internalGetFeedDevices().getMap();
         }
    @@ -2428,36 +2500,47 @@ public java.util.Map getFeedDevicesMap() {
          * 
          * The Tensor objects fed in the callable and fetched from the callable
          * are expected to be backed by host (CPU) memory by default.
    +     *
          * The options below allow changing that - feeding tensors backed by
          * device memory, or returning tensors that are backed by device memory.
    +     *
          * The maps below map the name of a feed/fetch tensor (which appears in
          * 'feed' or 'fetch' fields above), to the fully qualified name of the device
          * owning the memory backing the contents of the tensor.
    +     *
          * For example, creating a callable with the following options:
    +     *
          * CallableOptions {
    -     *   feed: "a:0"
    -     *   feed: "b:0"
    -     *   fetch: "x:0"
    -     *   fetch: "y:0"
    -     *   feed_devices: {
    -     *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -     *   }
    -     *   fetch_devices: {
    -     *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -     *  }
    +     * feed: "a:0"
    +     * feed: "b:0"
    +     *
    +     * fetch: "x:0"
    +     * fetch: "y:0"
    +     *
    +     * feed_devices: {
    +     * "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +     * }
    +     *
    +     * fetch_devices: {
    +     * "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +     * }
          * }
    +     *
          * means that the Callable expects:
          * - The first argument ("a:0") is a Tensor backed by GPU memory.
          * - The second argument ("b:0") is a Tensor backed by host memory.
          * and of its return values:
          * - The first output ("x:0") will be backed by host memory.
          * - The second output ("y:0") will be backed by GPU memory.
    +     *
          * FEEDS:
          * It is the responsibility of the caller to ensure that the memory of the fed
          * tensors will be correctly initialized and synchronized before it is
          * accessed by operations executed during the call to Session::RunCallable().
    +     *
          * This is typically ensured by using the TensorFlow memory allocators
          * (Device::GetAllocator()) to create the Tensor to be fed.
    +     *
          * Alternatively, for CUDA-enabled GPU devices, this typically means that the
          * operation that produced the contents of the tensor has completed, i.e., the
          * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
    @@ -2467,10 +2550,11 @@ public java.util.Map getFeedDevicesMap() {
          * map<string, string> feed_devices = 6;
          */
         @java.lang.Override
    -
    -    public java.lang.String getFeedDevicesOrDefault(
    +    public /* nullable */
    +java.lang.String getFeedDevicesOrDefault(
             java.lang.String key,
    -        java.lang.String defaultValue) {
    +        /* nullable */
    +java.lang.String defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
           java.util.Map map =
               internalGetFeedDevices().getMap();
    @@ -2480,36 +2564,47 @@ public java.lang.String getFeedDevicesOrDefault(
          * 
          * The Tensor objects fed in the callable and fetched from the callable
          * are expected to be backed by host (CPU) memory by default.
    +     *
          * The options below allow changing that - feeding tensors backed by
          * device memory, or returning tensors that are backed by device memory.
    +     *
          * The maps below map the name of a feed/fetch tensor (which appears in
          * 'feed' or 'fetch' fields above), to the fully qualified name of the device
          * owning the memory backing the contents of the tensor.
    +     *
          * For example, creating a callable with the following options:
    +     *
          * CallableOptions {
    -     *   feed: "a:0"
    -     *   feed: "b:0"
    -     *   fetch: "x:0"
    -     *   fetch: "y:0"
    -     *   feed_devices: {
    -     *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -     *   }
    -     *   fetch_devices: {
    -     *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -     *  }
    +     * feed: "a:0"
    +     * feed: "b:0"
    +     *
    +     * fetch: "x:0"
    +     * fetch: "y:0"
    +     *
    +     * feed_devices: {
    +     * "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +     * }
    +     *
    +     * fetch_devices: {
    +     * "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
          * }
    +     * }
    +     *
          * means that the Callable expects:
          * - The first argument ("a:0") is a Tensor backed by GPU memory.
          * - The second argument ("b:0") is a Tensor backed by host memory.
          * and of its return values:
          * - The first output ("x:0") will be backed by host memory.
          * - The second output ("y:0") will be backed by GPU memory.
    +     *
          * FEEDS:
          * It is the responsibility of the caller to ensure that the memory of the fed
          * tensors will be correctly initialized and synchronized before it is
          * accessed by operations executed during the call to Session::RunCallable().
    +     *
          * This is typically ensured by using the TensorFlow memory allocators
          * (Device::GetAllocator()) to create the Tensor to be fed.
    +     *
          * Alternatively, for CUDA-enabled GPU devices, this typically means that the
          * operation that produced the contents of the tensor has completed, i.e., the
          * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
    @@ -2519,7 +2614,6 @@ public java.lang.String getFeedDevicesOrDefault(
          * map<string, string> feed_devices = 6;
          */
         @java.lang.Override
    -
         public java.lang.String getFeedDevicesOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -2530,8 +2624,8 @@ public java.lang.String getFeedDevicesOrThrow(
           }
           return map.get(key);
         }
    -
         public Builder clearFeedDevices() {
    +      bitField0_ = (bitField0_ & ~0x00000020);
           internalGetMutableFeedDevices().getMutableMap()
               .clear();
           return this;
    @@ -2540,36 +2634,47 @@ public Builder clearFeedDevices() {
          * 
          * The Tensor objects fed in the callable and fetched from the callable
          * are expected to be backed by host (CPU) memory by default.
    +     *
          * The options below allow changing that - feeding tensors backed by
          * device memory, or returning tensors that are backed by device memory.
    +     *
          * The maps below map the name of a feed/fetch tensor (which appears in
          * 'feed' or 'fetch' fields above), to the fully qualified name of the device
          * owning the memory backing the contents of the tensor.
    +     *
          * For example, creating a callable with the following options:
    +     *
          * CallableOptions {
    -     *   feed: "a:0"
    -     *   feed: "b:0"
    -     *   fetch: "x:0"
    -     *   fetch: "y:0"
    -     *   feed_devices: {
    -     *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -     *   }
    -     *   fetch_devices: {
    -     *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -     *  }
    +     * feed: "a:0"
    +     * feed: "b:0"
    +     *
    +     * fetch: "x:0"
    +     * fetch: "y:0"
    +     *
    +     * feed_devices: {
    +     * "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
          * }
    +     *
    +     * fetch_devices: {
    +     * "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +     * }
    +     * }
    +     *
          * means that the Callable expects:
          * - The first argument ("a:0") is a Tensor backed by GPU memory.
          * - The second argument ("b:0") is a Tensor backed by host memory.
          * and of its return values:
          * - The first output ("x:0") will be backed by host memory.
          * - The second output ("y:0") will be backed by GPU memory.
    +     *
          * FEEDS:
          * It is the responsibility of the caller to ensure that the memory of the fed
          * tensors will be correctly initialized and synchronized before it is
          * accessed by operations executed during the call to Session::RunCallable().
    +     *
          * This is typically ensured by using the TensorFlow memory allocators
          * (Device::GetAllocator()) to create the Tensor to be fed.
    +     *
          * Alternatively, for CUDA-enabled GPU devices, this typically means that the
          * operation that produced the contents of the tensor has completed, i.e., the
          * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
    @@ -2578,7 +2683,6 @@ public Builder clearFeedDevices() {
          *
          * map<string, string> feed_devices = 6;
          */
    -
         public Builder removeFeedDevices(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -2591,43 +2695,55 @@ public Builder removeFeedDevices(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableFeedDevices() {
    +        getMutableFeedDevices() {
    +      bitField0_ |= 0x00000020;
           return internalGetMutableFeedDevices().getMutableMap();
         }
         /**
          * 
          * The Tensor objects fed in the callable and fetched from the callable
          * are expected to be backed by host (CPU) memory by default.
    +     *
          * The options below allow changing that - feeding tensors backed by
          * device memory, or returning tensors that are backed by device memory.
    +     *
          * The maps below map the name of a feed/fetch tensor (which appears in
          * 'feed' or 'fetch' fields above), to the fully qualified name of the device
          * owning the memory backing the contents of the tensor.
    +     *
          * For example, creating a callable with the following options:
    +     *
          * CallableOptions {
    -     *   feed: "a:0"
    -     *   feed: "b:0"
    -     *   fetch: "x:0"
    -     *   fetch: "y:0"
    -     *   feed_devices: {
    -     *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -     *   }
    -     *   fetch_devices: {
    -     *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -     *  }
    +     * feed: "a:0"
    +     * feed: "b:0"
    +     *
    +     * fetch: "x:0"
    +     * fetch: "y:0"
    +     *
    +     * feed_devices: {
    +     * "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
          * }
    +     *
    +     * fetch_devices: {
    +     * "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +     * }
    +     * }
    +     *
          * means that the Callable expects:
          * - The first argument ("a:0") is a Tensor backed by GPU memory.
          * - The second argument ("b:0") is a Tensor backed by host memory.
          * and of its return values:
          * - The first output ("x:0") will be backed by host memory.
          * - The second output ("y:0") will be backed by GPU memory.
    +     *
          * FEEDS:
          * It is the responsibility of the caller to ensure that the memory of the fed
          * tensors will be correctly initialized and synchronized before it is
          * accessed by operations executed during the call to Session::RunCallable().
    +     *
          * This is typically ensured by using the TensorFlow memory allocators
          * (Device::GetAllocator()) to create the Tensor to be fed.
    +     *
          * Alternatively, for CUDA-enabled GPU devices, this typically means that the
          * operation that produced the contents of the tensor has completed, i.e., the
          * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
    @@ -2640,48 +2756,57 @@ public Builder putFeedDevices(
             java.lang.String key,
             java.lang.String value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    +      if (value == null) { throw new NullPointerException("map value"); }
           internalGetMutableFeedDevices().getMutableMap()
               .put(key, value);
    +      bitField0_ |= 0x00000020;
           return this;
         }
         /**
          * 
          * The Tensor objects fed in the callable and fetched from the callable
          * are expected to be backed by host (CPU) memory by default.
    +     *
          * The options below allow changing that - feeding tensors backed by
          * device memory, or returning tensors that are backed by device memory.
    +     *
          * The maps below map the name of a feed/fetch tensor (which appears in
          * 'feed' or 'fetch' fields above), to the fully qualified name of the device
          * owning the memory backing the contents of the tensor.
    +     *
          * For example, creating a callable with the following options:
    +     *
          * CallableOptions {
    -     *   feed: "a:0"
    -     *   feed: "b:0"
    -     *   fetch: "x:0"
    -     *   fetch: "y:0"
    -     *   feed_devices: {
    -     *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -     *   }
    -     *   fetch_devices: {
    -     *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -     *  }
    +     * feed: "a:0"
    +     * feed: "b:0"
    +     *
    +     * fetch: "x:0"
    +     * fetch: "y:0"
    +     *
    +     * feed_devices: {
    +     * "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +     * }
    +     *
    +     * fetch_devices: {
    +     * "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +     * }
          * }
    +     *
          * means that the Callable expects:
          * - The first argument ("a:0") is a Tensor backed by GPU memory.
          * - The second argument ("b:0") is a Tensor backed by host memory.
          * and of its return values:
          * - The first output ("x:0") will be backed by host memory.
          * - The second output ("y:0") will be backed by GPU memory.
    +     *
          * FEEDS:
          * It is the responsibility of the caller to ensure that the memory of the fed
          * tensors will be correctly initialized and synchronized before it is
          * accessed by operations executed during the call to Session::RunCallable().
    +     *
          * This is typically ensured by using the TensorFlow memory allocators
          * (Device::GetAllocator()) to create the Tensor to be fed.
    +     *
          * Alternatively, for CUDA-enabled GPU devices, this typically means that the
          * operation that produced the contents of the tensor has completed, i.e., the
          * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
    @@ -2690,18 +2815,18 @@ public Builder putFeedDevices(
          *
          * map<string, string> feed_devices = 6;
          */
    -
         public Builder putAllFeedDevices(
             java.util.Map values) {
           internalGetMutableFeedDevices().getMutableMap()
               .putAll(values);
    +      bitField0_ |= 0x00000020;
           return this;
         }
     
         private com.google.protobuf.MapField<
             java.lang.String, java.lang.String> fetchDevices_;
         private com.google.protobuf.MapField
    -    internalGetFetchDevices() {
    +        internalGetFetchDevices() {
           if (fetchDevices_ == null) {
             return com.google.protobuf.MapField.emptyMapField(
                 FetchDevicesDefaultEntryHolder.defaultEntry);
    @@ -2709,8 +2834,7 @@ public Builder putAllFeedDevices(
           return fetchDevices_;
         }
         private com.google.protobuf.MapField
    -    internalGetMutableFetchDevices() {
    -      onChanged();;
    +        internalGetMutableFetchDevices() {
           if (fetchDevices_ == null) {
             fetchDevices_ = com.google.protobuf.MapField.newMapField(
                 FetchDevicesDefaultEntryHolder.defaultEntry);
    @@ -2718,16 +2842,16 @@ public Builder putAllFeedDevices(
           if (!fetchDevices_.isMutable()) {
             fetchDevices_ = fetchDevices_.copy();
           }
    +      bitField0_ |= 0x00000040;
    +      onChanged();
           return fetchDevices_;
         }
    -
         public int getFetchDevicesCount() {
           return internalGetFetchDevices().getMap().size();
         }
         /**
          * map<string, string> fetch_devices = 7;
          */
    -
         @java.lang.Override
         public boolean containsFetchDevices(
             java.lang.String key) {
    @@ -2746,7 +2870,6 @@ public java.util.Map getFetchDevices() {
          * map<string, string> fetch_devices = 7;
          */
         @java.lang.Override
    -
         public java.util.Map getFetchDevicesMap() {
           return internalGetFetchDevices().getMap();
         }
    @@ -2754,10 +2877,11 @@ public java.util.Map getFetchDevicesMap() {
          * map<string, string> fetch_devices = 7;
          */
         @java.lang.Override
    -
    -    public java.lang.String getFetchDevicesOrDefault(
    +    public /* nullable */
    +java.lang.String getFetchDevicesOrDefault(
             java.lang.String key,
    -        java.lang.String defaultValue) {
    +        /* nullable */
    +java.lang.String defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
           java.util.Map map =
               internalGetFetchDevices().getMap();
    @@ -2767,7 +2891,6 @@ public java.lang.String getFetchDevicesOrDefault(
          * map<string, string> fetch_devices = 7;
          */
         @java.lang.Override
    -
         public java.lang.String getFetchDevicesOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -2778,8 +2901,8 @@ public java.lang.String getFetchDevicesOrThrow(
           }
           return map.get(key);
         }
    -
         public Builder clearFetchDevices() {
    +      bitField0_ = (bitField0_ & ~0x00000040);
           internalGetMutableFetchDevices().getMutableMap()
               .clear();
           return this;
    @@ -2787,7 +2910,6 @@ public Builder clearFetchDevices() {
         /**
          * map<string, string> fetch_devices = 7;
          */
    -
         public Builder removeFetchDevices(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -2800,7 +2922,8 @@ public Builder removeFetchDevices(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableFetchDevices() {
    +        getMutableFetchDevices() {
    +      bitField0_ |= 0x00000040;
           return internalGetMutableFetchDevices().getMutableMap();
         }
         /**
    @@ -2810,22 +2933,20 @@ public Builder putFetchDevices(
             java.lang.String key,
             java.lang.String value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    +      if (value == null) { throw new NullPointerException("map value"); }
           internalGetMutableFetchDevices().getMutableMap()
               .put(key, value);
    +      bitField0_ |= 0x00000040;
           return this;
         }
         /**
          * map<string, string> fetch_devices = 7;
          */
    -
         public Builder putAllFetchDevices(
             java.util.Map values) {
           internalGetMutableFetchDevices().getMutableMap()
               .putAll(values);
    +      bitField0_ |= 0x00000040;
           return this;
         }
     
    @@ -2836,6 +2957,7 @@ public Builder putAllFetchDevices(
          * fetched tensors on a GPU device, to ensure that the values in those tensors
          * have been produced. This simplifies interacting with the tensors, but
          * potentially incurs a performance hit.
    +     *
          * If this options is set to true, the caller is responsible for ensuring
          * that the values in the fetched tensors have been produced before they are
          * used. The caller can do this by invoking `Device::Sync()` on the underlying
    @@ -2856,6 +2978,7 @@ public boolean getFetchSkipSync() {
          * fetched tensors on a GPU device, to ensure that the values in those tensors
          * have been produced. This simplifies interacting with the tensors, but
          * potentially incurs a performance hit.
    +     *
          * If this options is set to true, the caller is responsible for ensuring
          * that the values in the fetched tensors have been produced before they are
          * used. The caller can do this by invoking `Device::Sync()` on the underlying
    @@ -2868,8 +2991,9 @@ public boolean getFetchSkipSync() {
          * @return This builder for chaining.
          */
         public Builder setFetchSkipSync(boolean value) {
    -      
    +
           fetchSkipSync_ = value;
    +      bitField0_ |= 0x00000080;
           onChanged();
           return this;
         }
    @@ -2879,6 +3003,7 @@ public Builder setFetchSkipSync(boolean value) {
          * fetched tensors on a GPU device, to ensure that the values in those tensors
          * have been produced. This simplifies interacting with the tensors, but
          * potentially incurs a performance hit.
    +     *
          * If this options is set to true, the caller is responsible for ensuring
          * that the values in the fetched tensors have been produced before they are
          * used. The caller can do this by invoking `Device::Sync()` on the underlying
    @@ -2890,23 +3015,11 @@ public Builder setFetchSkipSync(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearFetchSkipSync() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000080);
           fetchSkipSync_ = false;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.CallableOptions)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CallableOptionsOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CallableOptionsOrBuilder.java
    index ac1a0b53857..422a47d8e89 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CallableOptionsOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CallableOptionsOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -227,36 +229,47 @@ org.tensorflow.proto.TensorConnectionOrBuilder getTensorConnectionOrBuilder(
        * 
        * The Tensor objects fed in the callable and fetched from the callable
        * are expected to be backed by host (CPU) memory by default.
    +   *
        * The options below allow changing that - feeding tensors backed by
        * device memory, or returning tensors that are backed by device memory.
    +   *
        * The maps below map the name of a feed/fetch tensor (which appears in
        * 'feed' or 'fetch' fields above), to the fully qualified name of the device
        * owning the memory backing the contents of the tensor.
    +   *
        * For example, creating a callable with the following options:
    +   *
        * CallableOptions {
    -   *   feed: "a:0"
    -   *   feed: "b:0"
    -   *   fetch: "x:0"
    -   *   fetch: "y:0"
    -   *   feed_devices: {
    -   *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -   *   }
    -   *   fetch_devices: {
    -   *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -   *  }
    +   * feed: "a:0"
    +   * feed: "b:0"
    +   *
    +   * fetch: "x:0"
    +   * fetch: "y:0"
    +   *
    +   * feed_devices: {
    +   * "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +   * }
    +   *
    +   * fetch_devices: {
    +   * "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +   * }
        * }
    +   *
        * means that the Callable expects:
        * - The first argument ("a:0") is a Tensor backed by GPU memory.
        * - The second argument ("b:0") is a Tensor backed by host memory.
        * and of its return values:
        * - The first output ("x:0") will be backed by host memory.
        * - The second output ("y:0") will be backed by GPU memory.
    +   *
        * FEEDS:
        * It is the responsibility of the caller to ensure that the memory of the fed
        * tensors will be correctly initialized and synchronized before it is
        * accessed by operations executed during the call to Session::RunCallable().
    +   *
        * This is typically ensured by using the TensorFlow memory allocators
        * (Device::GetAllocator()) to create the Tensor to be fed.
    +   *
        * Alternatively, for CUDA-enabled GPU devices, this typically means that the
        * operation that produced the contents of the tensor has completed, i.e., the
        * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
    @@ -270,36 +283,47 @@ org.tensorflow.proto.TensorConnectionOrBuilder getTensorConnectionOrBuilder(
        * 
        * The Tensor objects fed in the callable and fetched from the callable
        * are expected to be backed by host (CPU) memory by default.
    +   *
        * The options below allow changing that - feeding tensors backed by
        * device memory, or returning tensors that are backed by device memory.
    +   *
        * The maps below map the name of a feed/fetch tensor (which appears in
        * 'feed' or 'fetch' fields above), to the fully qualified name of the device
        * owning the memory backing the contents of the tensor.
    +   *
        * For example, creating a callable with the following options:
    +   *
        * CallableOptions {
    -   *   feed: "a:0"
    -   *   feed: "b:0"
    -   *   fetch: "x:0"
    -   *   fetch: "y:0"
    -   *   feed_devices: {
    -   *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -   *   }
    -   *   fetch_devices: {
    -   *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -   *  }
    +   * feed: "a:0"
    +   * feed: "b:0"
    +   *
    +   * fetch: "x:0"
    +   * fetch: "y:0"
    +   *
    +   * feed_devices: {
    +   * "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +   * }
    +   *
    +   * fetch_devices: {
    +   * "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
        * }
    +   * }
    +   *
        * means that the Callable expects:
        * - The first argument ("a:0") is a Tensor backed by GPU memory.
        * - The second argument ("b:0") is a Tensor backed by host memory.
        * and of its return values:
        * - The first output ("x:0") will be backed by host memory.
        * - The second output ("y:0") will be backed by GPU memory.
    +   *
        * FEEDS:
        * It is the responsibility of the caller to ensure that the memory of the fed
        * tensors will be correctly initialized and synchronized before it is
        * accessed by operations executed during the call to Session::RunCallable().
    +   *
        * This is typically ensured by using the TensorFlow memory allocators
        * (Device::GetAllocator()) to create the Tensor to be fed.
    +   *
        * Alternatively, for CUDA-enabled GPU devices, this typically means that the
        * operation that produced the contents of the tensor has completed, i.e., the
        * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
    @@ -320,36 +344,47 @@ boolean containsFeedDevices(
        * 
        * The Tensor objects fed in the callable and fetched from the callable
        * are expected to be backed by host (CPU) memory by default.
    +   *
        * The options below allow changing that - feeding tensors backed by
        * device memory, or returning tensors that are backed by device memory.
    +   *
        * The maps below map the name of a feed/fetch tensor (which appears in
        * 'feed' or 'fetch' fields above), to the fully qualified name of the device
        * owning the memory backing the contents of the tensor.
    +   *
        * For example, creating a callable with the following options:
    +   *
        * CallableOptions {
    -   *   feed: "a:0"
    -   *   feed: "b:0"
    -   *   fetch: "x:0"
    -   *   fetch: "y:0"
    -   *   feed_devices: {
    -   *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -   *   }
    -   *   fetch_devices: {
    -   *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -   *  }
    +   * feed: "a:0"
    +   * feed: "b:0"
    +   *
    +   * fetch: "x:0"
    +   * fetch: "y:0"
    +   *
    +   * feed_devices: {
    +   * "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +   * }
    +   *
    +   * fetch_devices: {
    +   * "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +   * }
        * }
    +   *
        * means that the Callable expects:
        * - The first argument ("a:0") is a Tensor backed by GPU memory.
        * - The second argument ("b:0") is a Tensor backed by host memory.
        * and of its return values:
        * - The first output ("x:0") will be backed by host memory.
        * - The second output ("y:0") will be backed by GPU memory.
    +   *
        * FEEDS:
        * It is the responsibility of the caller to ensure that the memory of the fed
        * tensors will be correctly initialized and synchronized before it is
        * accessed by operations executed during the call to Session::RunCallable().
    +   *
        * This is typically ensured by using the TensorFlow memory allocators
        * (Device::GetAllocator()) to create the Tensor to be fed.
    +   *
        * Alternatively, for CUDA-enabled GPU devices, this typically means that the
        * operation that produced the contents of the tensor has completed, i.e., the
        * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
    @@ -364,36 +399,47 @@ boolean containsFeedDevices(
        * 
        * The Tensor objects fed in the callable and fetched from the callable
        * are expected to be backed by host (CPU) memory by default.
    +   *
        * The options below allow changing that - feeding tensors backed by
        * device memory, or returning tensors that are backed by device memory.
    +   *
        * The maps below map the name of a feed/fetch tensor (which appears in
        * 'feed' or 'fetch' fields above), to the fully qualified name of the device
        * owning the memory backing the contents of the tensor.
    +   *
        * For example, creating a callable with the following options:
    +   *
        * CallableOptions {
    -   *   feed: "a:0"
    -   *   feed: "b:0"
    -   *   fetch: "x:0"
    -   *   fetch: "y:0"
    -   *   feed_devices: {
    -   *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -   *   }
    -   *   fetch_devices: {
    -   *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -   *  }
    +   * feed: "a:0"
    +   * feed: "b:0"
    +   *
    +   * fetch: "x:0"
    +   * fetch: "y:0"
    +   *
    +   * feed_devices: {
    +   * "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +   * }
    +   *
    +   * fetch_devices: {
    +   * "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
        * }
    +   * }
    +   *
        * means that the Callable expects:
        * - The first argument ("a:0") is a Tensor backed by GPU memory.
        * - The second argument ("b:0") is a Tensor backed by host memory.
        * and of its return values:
        * - The first output ("x:0") will be backed by host memory.
        * - The second output ("y:0") will be backed by GPU memory.
    +   *
        * FEEDS:
        * It is the responsibility of the caller to ensure that the memory of the fed
        * tensors will be correctly initialized and synchronized before it is
        * accessed by operations executed during the call to Session::RunCallable().
    +   *
        * This is typically ensured by using the TensorFlow memory allocators
        * (Device::GetAllocator()) to create the Tensor to be fed.
    +   *
        * Alternatively, for CUDA-enabled GPU devices, this typically means that the
        * operation that produced the contents of the tensor has completed, i.e., the
        * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
    @@ -402,7 +448,6 @@ boolean containsFeedDevices(
        *
        * map<string, string> feed_devices = 6;
        */
    -
       /* nullable */
     java.lang.String getFeedDevicesOrDefault(
           java.lang.String key,
    @@ -412,36 +457,47 @@ java.lang.String getFeedDevicesOrDefault(
        * 
        * The Tensor objects fed in the callable and fetched from the callable
        * are expected to be backed by host (CPU) memory by default.
    +   *
        * The options below allow changing that - feeding tensors backed by
        * device memory, or returning tensors that are backed by device memory.
    +   *
        * The maps below map the name of a feed/fetch tensor (which appears in
        * 'feed' or 'fetch' fields above), to the fully qualified name of the device
        * owning the memory backing the contents of the tensor.
    +   *
        * For example, creating a callable with the following options:
    +   *
        * CallableOptions {
    -   *   feed: "a:0"
    -   *   feed: "b:0"
    -   *   fetch: "x:0"
    -   *   fetch: "y:0"
    -   *   feed_devices: {
    -   *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -   *   }
    -   *   fetch_devices: {
    -   *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    -   *  }
    +   * feed: "a:0"
    +   * feed: "b:0"
    +   *
    +   * fetch: "x:0"
    +   * fetch: "y:0"
    +   *
    +   * feed_devices: {
    +   * "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +   * }
    +   *
    +   * fetch_devices: {
    +   * "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
    +   * }
        * }
    +   *
        * means that the Callable expects:
        * - The first argument ("a:0") is a Tensor backed by GPU memory.
        * - The second argument ("b:0") is a Tensor backed by host memory.
        * and of its return values:
        * - The first output ("x:0") will be backed by host memory.
        * - The second output ("y:0") will be backed by GPU memory.
    +   *
        * FEEDS:
        * It is the responsibility of the caller to ensure that the memory of the fed
        * tensors will be correctly initialized and synchronized before it is
        * accessed by operations executed during the call to Session::RunCallable().
    +   *
        * This is typically ensured by using the TensorFlow memory allocators
        * (Device::GetAllocator()) to create the Tensor to be fed.
    +   *
        * Alternatively, for CUDA-enabled GPU devices, this typically means that the
        * operation that produced the contents of the tensor has completed, i.e., the
        * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
    @@ -450,7 +506,6 @@ java.lang.String getFeedDevicesOrDefault(
        *
        * map<string, string> feed_devices = 6;
        */
    -
       java.lang.String getFeedDevicesOrThrow(
           java.lang.String key);
     
    @@ -477,7 +532,6 @@ boolean containsFetchDevices(
       /**
        * map<string, string> fetch_devices = 7;
        */
    -
       /* nullable */
     java.lang.String getFetchDevicesOrDefault(
           java.lang.String key,
    @@ -486,7 +540,6 @@ java.lang.String getFetchDevicesOrDefault(
       /**
        * map<string, string> fetch_devices = 7;
        */
    -
       java.lang.String getFetchDevicesOrThrow(
           java.lang.String key);
     
    @@ -496,6 +549,7 @@ java.lang.String getFetchDevicesOrThrow(
        * fetched tensors on a GPU device, to ensure that the values in those tensors
        * have been produced. This simplifies interacting with the tensors, but
        * potentially incurs a performance hit.
    +   *
        * If this options is set to true, the caller is responsible for ensuring
        * that the values in the fetched tensors have been produced before they are
        * used. The caller can do this by invoking `Device::Sync()` on the underlying
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterDef.java
    index 054c2fc4b0b..e0593e89941 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterDef.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterDef.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/cluster.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,37 +13,34 @@
      * Protobuf type {@code tensorflow.ClusterDef}
      */
     public final class ClusterDef extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.ClusterDef)
         ClusterDefOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ClusterDef.class.getName());
    +  }
       // Use ClusterDef.newBuilder() to construct.
    -  private ClusterDef(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private ClusterDef(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private ClusterDef() {
         job_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new ClusterDef();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ClusterProtos.internal_static_tensorflow_ClusterDef_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ClusterProtos.internal_static_tensorflow_ClusterDef_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -49,6 +48,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int JOB_FIELD_NUMBER = 1;
    +  @SuppressWarnings("serial")
       private java.util.List job_;
       /**
        * 
    @@ -209,39 +209,41 @@ public static org.tensorflow.proto.ClusterDef parseFrom(
       }
       public static org.tensorflow.proto.ClusterDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ClusterDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.ClusterDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.ClusterDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.ClusterDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ClusterDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -261,7 +263,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -273,7 +275,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.ClusterDef}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.ClusterDef)
           org.tensorflow.proto.ClusterDefOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -282,7 +284,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ClusterProtos.internal_static_tensorflow_ClusterDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -295,13 +297,14 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           if (jobBuilder_ == null) {
             job_ = java.util.Collections.emptyList();
           } else {
    @@ -335,7 +338,13 @@ public org.tensorflow.proto.ClusterDef build() {
         @java.lang.Override
         public org.tensorflow.proto.ClusterDef buildPartial() {
           org.tensorflow.proto.ClusterDef result = new org.tensorflow.proto.ClusterDef(this);
    -      int from_bitField0_ = bitField0_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.ClusterDef result) {
           if (jobBuilder_ == null) {
             if (((bitField0_ & 0x00000001) != 0)) {
               job_ = java.util.Collections.unmodifiableList(job_);
    @@ -345,42 +354,12 @@ public org.tensorflow.proto.ClusterDef buildPartial() {
           } else {
             result.job_ = jobBuilder_.build();
           }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.ClusterDef result) {
    +      int from_bitField0_ = bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.ClusterDef) {
    @@ -412,7 +391,7 @@ public Builder mergeFrom(org.tensorflow.proto.ClusterDef other) {
                 job_ = other.job_;
                 bitField0_ = (bitField0_ & ~0x00000001);
                 jobBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getJobFieldBuilder() : null;
               } else {
                 jobBuilder_.addAllMessages(other.job_);
    @@ -484,7 +463,7 @@ private void ensureJobIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.JobDef, org.tensorflow.proto.JobDef.Builder, org.tensorflow.proto.JobDefOrBuilder> jobBuilder_;
     
         /**
    @@ -772,11 +751,11 @@ public org.tensorflow.proto.JobDef.Builder addJobBuilder(
              getJobBuilderList() {
           return getJobFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.JobDef, org.tensorflow.proto.JobDef.Builder, org.tensorflow.proto.JobDefOrBuilder> 
             getJobFieldBuilder() {
           if (jobBuilder_ == null) {
    -        jobBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        jobBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.JobDef, org.tensorflow.proto.JobDef.Builder, org.tensorflow.proto.JobDefOrBuilder>(
                     job_,
                     ((bitField0_ & 0x00000001) != 0),
    @@ -786,18 +765,6 @@ public org.tensorflow.proto.JobDef.Builder addJobBuilder(
           }
           return jobBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.ClusterDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterDefOrBuilder.java
    index 4e6a591a34c..ffec98bc2ca 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/cluster.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterDeviceFilters.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterDeviceFilters.java
    index 3453537c484..250aec1e1ad 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterDeviceFilters.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterDeviceFilters.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/device_filters.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,37 +13,34 @@
      * Protobuf type {@code tensorflow.ClusterDeviceFilters}
      */
     public final class ClusterDeviceFilters extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.ClusterDeviceFilters)
         ClusterDeviceFiltersOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ClusterDeviceFilters.class.getName());
    +  }
       // Use ClusterDeviceFilters.newBuilder() to construct.
    -  private ClusterDeviceFilters(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private ClusterDeviceFilters(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private ClusterDeviceFilters() {
         jobs_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new ClusterDeviceFilters();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.DeviceFiltersProtos.internal_static_tensorflow_ClusterDeviceFilters_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.DeviceFiltersProtos.internal_static_tensorflow_ClusterDeviceFilters_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -49,6 +48,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int JOBS_FIELD_NUMBER = 1;
    +  @SuppressWarnings("serial")
       private java.util.List jobs_;
       /**
        * repeated .tensorflow.JobDeviceFilters jobs = 1;
    @@ -189,39 +189,41 @@ public static org.tensorflow.proto.ClusterDeviceFilters parseFrom(
       }
       public static org.tensorflow.proto.ClusterDeviceFilters parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ClusterDeviceFilters parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.ClusterDeviceFilters parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.ClusterDeviceFilters parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.ClusterDeviceFilters parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ClusterDeviceFilters parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -241,7 +243,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -253,7 +255,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.ClusterDeviceFilters}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.ClusterDeviceFilters)
           org.tensorflow.proto.ClusterDeviceFiltersOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -262,7 +264,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DeviceFiltersProtos.internal_static_tensorflow_ClusterDeviceFilters_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -275,13 +277,14 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           if (jobsBuilder_ == null) {
             jobs_ = java.util.Collections.emptyList();
           } else {
    @@ -315,7 +318,13 @@ public org.tensorflow.proto.ClusterDeviceFilters build() {
         @java.lang.Override
         public org.tensorflow.proto.ClusterDeviceFilters buildPartial() {
           org.tensorflow.proto.ClusterDeviceFilters result = new org.tensorflow.proto.ClusterDeviceFilters(this);
    -      int from_bitField0_ = bitField0_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.ClusterDeviceFilters result) {
           if (jobsBuilder_ == null) {
             if (((bitField0_ & 0x00000001) != 0)) {
               jobs_ = java.util.Collections.unmodifiableList(jobs_);
    @@ -325,42 +334,12 @@ public org.tensorflow.proto.ClusterDeviceFilters buildPartial() {
           } else {
             result.jobs_ = jobsBuilder_.build();
           }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.ClusterDeviceFilters result) {
    +      int from_bitField0_ = bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.ClusterDeviceFilters) {
    @@ -392,7 +371,7 @@ public Builder mergeFrom(org.tensorflow.proto.ClusterDeviceFilters other) {
                 jobs_ = other.jobs_;
                 bitField0_ = (bitField0_ & ~0x00000001);
                 jobsBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getJobsFieldBuilder() : null;
               } else {
                 jobsBuilder_.addAllMessages(other.jobs_);
    @@ -464,7 +443,7 @@ private void ensureJobsIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.JobDeviceFilters, org.tensorflow.proto.JobDeviceFilters.Builder, org.tensorflow.proto.JobDeviceFiltersOrBuilder> jobsBuilder_;
     
         /**
    @@ -680,11 +659,11 @@ public org.tensorflow.proto.JobDeviceFilters.Builder addJobsBuilder(
              getJobsBuilderList() {
           return getJobsFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.JobDeviceFilters, org.tensorflow.proto.JobDeviceFilters.Builder, org.tensorflow.proto.JobDeviceFiltersOrBuilder> 
             getJobsFieldBuilder() {
           if (jobsBuilder_ == null) {
    -        jobsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        jobsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.JobDeviceFilters, org.tensorflow.proto.JobDeviceFilters.Builder, org.tensorflow.proto.JobDeviceFiltersOrBuilder>(
                     jobs_,
                     ((bitField0_ & 0x00000001) != 0),
    @@ -694,18 +673,6 @@ public org.tensorflow.proto.JobDeviceFilters.Builder addJobsBuilder(
           }
           return jobsBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.ClusterDeviceFilters)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterDeviceFiltersOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterDeviceFiltersOrBuilder.java
    index b05c17dceb4..56c5436ebcd 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterDeviceFiltersOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterDeviceFiltersOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/device_filters.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterProtos.java
    index 1b46df68749..5f55a24f00b 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ClusterProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/cluster.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class ClusterProtos {
       private ClusterProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ClusterProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,17 +28,17 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_JobDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_JobDef_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_JobDef_TasksEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_JobDef_TasksEntry_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_ClusterDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_ClusterDef_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -55,21 +66,22 @@ public static void registerAllExtensions(
         internal_static_tensorflow_JobDef_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_JobDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_JobDef_descriptor,
             new java.lang.String[] { "Name", "Tasks", });
         internal_static_tensorflow_JobDef_TasksEntry_descriptor =
           internal_static_tensorflow_JobDef_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_JobDef_TasksEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_JobDef_TasksEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_ClusterDef_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_ClusterDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_ClusterDef_descriptor,
             new java.lang.String[] { "Job", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CodeLocation.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CodeLocation.java
    index 14591ad3812..c19176e024a 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CodeLocation.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CodeLocation.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug_event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -13,38 +15,36 @@
      * Protobuf type {@code tensorflow.CodeLocation}
      */
     public final class CodeLocation extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.CodeLocation)
         CodeLocationOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      CodeLocation.class.getName());
    +  }
       // Use CodeLocation.newBuilder() to construct.
    -  private CodeLocation(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private CodeLocation(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private CodeLocation() {
         hostName_ = "";
    -    stackFrameIds_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -  }
    -
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new CodeLocation();
    +    stackFrameIds_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
       }
     
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_CodeLocation_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_CodeLocation_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -52,7 +52,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int HOST_NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object hostName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object hostName_ = "";
       /**
        * 
        * Host name on which the source files are located.
    @@ -98,7 +99,9 @@ public java.lang.String getHostName() {
       }
     
       public static final int STACK_FRAME_IDS_FIELD_NUMBER = 2;
    -  private com.google.protobuf.LazyStringList stackFrameIds_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList stackFrameIds_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * ID to a stack frame, each of which is pointed to
    @@ -170,11 +173,11 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hostName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, hostName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(hostName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, hostName_);
         }
         for (int i = 0; i < stackFrameIds_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, stackFrameIds_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, stackFrameIds_.getRaw(i));
         }
         getUnknownFields().writeTo(output);
       }
    @@ -185,8 +188,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hostName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, hostName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(hostName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, hostName_);
         }
         {
           int dataSize = 0;
    @@ -271,39 +274,41 @@ public static org.tensorflow.proto.CodeLocation parseFrom(
       }
       public static org.tensorflow.proto.CodeLocation parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.CodeLocation parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.CodeLocation parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.CodeLocation parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.CodeLocation parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.CodeLocation parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -323,7 +328,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -337,7 +342,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.CodeLocation}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.CodeLocation)
           org.tensorflow.proto.CodeLocationOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -346,7 +351,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_CodeLocation_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -359,17 +364,17 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           hostName_ = "";
    -
    -      stackFrameIds_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      stackFrameIds_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           return this;
         }
     
    @@ -396,49 +401,22 @@ public org.tensorflow.proto.CodeLocation build() {
         @java.lang.Override
         public org.tensorflow.proto.CodeLocation buildPartial() {
           org.tensorflow.proto.CodeLocation result = new org.tensorflow.proto.CodeLocation(this);
    -      int from_bitField0_ = bitField0_;
    -      result.hostName_ = hostName_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        stackFrameIds_ = stackFrameIds_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.stackFrameIds_ = stackFrameIds_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.CodeLocation result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.hostName_ = hostName_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        stackFrameIds_.makeImmutable();
    +        result.stackFrameIds_ = stackFrameIds_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.CodeLocation) {
    @@ -453,12 +431,13 @@ public Builder mergeFrom(org.tensorflow.proto.CodeLocation other) {
           if (other == org.tensorflow.proto.CodeLocation.getDefaultInstance()) return this;
           if (!other.getHostName().isEmpty()) {
             hostName_ = other.hostName_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.stackFrameIds_.isEmpty()) {
             if (stackFrameIds_.isEmpty()) {
               stackFrameIds_ = other.stackFrameIds_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ |= 0x00000002;
             } else {
               ensureStackFrameIdsIsMutable();
               stackFrameIds_.addAll(other.stackFrameIds_);
    @@ -493,7 +472,7 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   hostName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
    @@ -572,11 +551,9 @@ public java.lang.String getHostName() {
          */
         public Builder setHostName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           hostName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -589,8 +566,8 @@ public Builder setHostName(
          * @return This builder for chaining.
          */
         public Builder clearHostName() {
    -      
           hostName_ = getDefaultInstance().getHostName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -605,22 +582,21 @@ public Builder clearHostName() {
          */
         public Builder setHostNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           hostName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.LazyStringList stackFrameIds_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList stackFrameIds_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureStackFrameIdsIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!stackFrameIds_.isModifiable()) {
             stackFrameIds_ = new com.google.protobuf.LazyStringArrayList(stackFrameIds_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      }
    +      bitField0_ |= 0x00000002;
         }
         /**
          * 
    @@ -634,7 +610,8 @@ private void ensureStackFrameIdsIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getStackFrameIdsList() {
    -      return stackFrameIds_.getUnmodifiableView();
    +      stackFrameIds_.makeImmutable();
    +      return stackFrameIds_;
         }
         /**
          * 
    @@ -692,11 +669,10 @@ public java.lang.String getStackFrameIds(int index) {
          */
         public Builder setStackFrameIds(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureStackFrameIdsIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureStackFrameIdsIsMutable();
           stackFrameIds_.set(index, value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -713,11 +689,10 @@ public Builder setStackFrameIds(
          */
         public Builder addStackFrameIds(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureStackFrameIdsIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureStackFrameIdsIsMutable();
           stackFrameIds_.add(value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -737,6 +712,7 @@ public Builder addAllStackFrameIds(
           ensureStackFrameIdsIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, stackFrameIds_);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -751,8 +727,9 @@ public Builder addAllStackFrameIds(
          * @return This builder for chaining.
          */
         public Builder clearStackFrameIds() {
    -      stackFrameIds_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      stackFrameIds_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000002);;
           onChanged();
           return this;
         }
    @@ -769,27 +746,14 @@ public Builder clearStackFrameIds() {
          */
         public Builder addStackFrameIdsBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureStackFrameIdsIsMutable();
           stackFrameIds_.add(value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.CodeLocation)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CodeLocationOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CodeLocationOrBuilder.java
    index 74c15d03196..4c1cc378579 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CodeLocationOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CodeLocationOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug_event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CollectionDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CollectionDef.java
    index 6644d97f6ce..e072f35c64f 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CollectionDef.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CollectionDef.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/meta_graph.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -8,91 +10,97 @@
      * CollectionDef should cover most collections.
      * To add a user-defined collection, do one of the following:
      * 1. For simple data types, such as string, int, float:
    - *      tf.add_to_collection("your_collection_name", your_simple_value)
    - *    strings will be stored as bytes_list.
    + * tf.add_to_collection("your_collection_name", your_simple_value)
    + * strings will be stored as bytes_list.
    + *
      * 2. For Protobuf types, there are three ways to add them:
    - *    1) tf.add_to_collection("your_collection_name",
    - *         your_proto.SerializeToString())
    - *       collection_def {
    - *         key: "user_defined_bytes_collection"
    - *         value {
    - *           bytes_list {
    - *             value: "queue_name: \"test_queue\"\n"
    - *           }
    - *         }
    - *       }
    - *  or
    - *    2) tf.add_to_collection("your_collection_name", str(your_proto))
    - *       collection_def {
    - *         key: "user_defined_string_collection"
    - *         value {
    - *          bytes_list {
    - *             value: "\n\ntest_queue"
    - *           }
    - *         }
    - *       }
    - *  or
    - *    3) any_buf = any_pb2.Any()
    - *       tf.add_to_collection("your_collection_name",
    - *         any_buf.Pack(your_proto))
    - *       collection_def {
    - *         key: "user_defined_any_collection"
    - *         value {
    - *           any_list {
    - *             value {
    - *               type_url: "type.googleapis.com/tensorflow.QueueRunnerDef"
    - *               value: "\n\ntest_queue"
    - *             }
    - *           }
    - *         }
    - *       }
    + * 1) tf.add_to_collection("your_collection_name",
    + * your_proto.SerializeToString())
    + *
    + * collection_def {
    + * key: "user_defined_bytes_collection"
    + * value {
    + * bytes_list {
    + * value: "queue_name: \"test_queue\"\n"
    + * }
    + * }
    + * }
    + *
    + * or
    + *
    + * 2) tf.add_to_collection("your_collection_name", str(your_proto))
    + *
    + * collection_def {
    + * key: "user_defined_string_collection"
    + * value {
    + * bytes_list {
    + * value: "\n\ntest_queue"
    + * }
    + * }
    + * }
    + *
    + * or
    + *
    + * 3) any_buf = any_pb2.Any()
    + * tf.add_to_collection("your_collection_name",
    + * any_buf.Pack(your_proto))
    + *
    + * collection_def {
    + * key: "user_defined_any_collection"
    + * value {
    + * any_list {
    + * value {
    + * type_url: "type.googleapis.com/tensorflow.QueueRunnerDef"
    + * value: "\n\ntest_queue"
    + * }
    + * }
    + * }
    + * }
    + *
      * 3. For Python objects, implement to_proto() and from_proto(), and register
    - *    them in the following manner:
    - *    ops.register_proto_function("your_collection_name",
    - *                                proto_type,
    - *                                to_proto=YourPythonObject.to_proto,
    - *                                from_proto=YourPythonObject.from_proto)
    - *    These functions will be invoked to serialize and de-serialize the
    - *    collection. For example,
    - *    ops.register_proto_function(ops.GraphKeys.GLOBAL_VARIABLES,
    - *                                proto_type=variable_pb2.VariableDef,
    - *                                to_proto=Variable.to_proto,
    - *                                from_proto=Variable.from_proto)
    + * them in the following manner:
    + * ops.register_proto_function("your_collection_name",
    + * proto_type,
    + * to_proto=YourPythonObject.to_proto,
    + * from_proto=YourPythonObject.from_proto)
    + * These functions will be invoked to serialize and de-serialize the
    + * collection. For example,
    + * ops.register_proto_function(ops.GraphKeys.GLOBAL_VARIABLES,
    + * proto_type=variable_pb2.VariableDef,
    + * to_proto=Variable.to_proto,
    + * from_proto=Variable.from_proto)
      * 
    * * Protobuf type {@code tensorflow.CollectionDef} */ public final class CollectionDef extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.CollectionDef) CollectionDefOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + CollectionDef.class.getName()); + } // Use CollectionDef.newBuilder() to construct. - private CollectionDef(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private CollectionDef(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private CollectionDef() { } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new CollectionDef(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_CollectionDef_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_CollectionDef_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -132,50 +140,48 @@ public interface NodeListOrBuilder extends *
        * NodeList is used for collecting nodes in graph. For example
        * collection_def {
    -   *   key: "summaries"
    -   *   value {
    -   *     node_list {
    -   *       value: "input_producer/ScalarSummary:0"
    -   *       value: "shuffle_batch/ScalarSummary:0"
    -   *       value: "ImageSummary:0"
    -   *     }
    -   *   }
    +   * key: "summaries"
    +   * value {
    +   * node_list {
    +   * value: "input_producer/ScalarSummary:0"
    +   * value: "shuffle_batch/ScalarSummary:0"
    +   * value: "ImageSummary:0"
    +   * }
    +   * }
        * 
    * * Protobuf type {@code tensorflow.CollectionDef.NodeList} */ public static final class NodeList extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.CollectionDef.NodeList) NodeListOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + NodeList.class.getName()); + } // Use NodeList.newBuilder() to construct. - private NodeList(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private NodeList(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private NodeList() { - value_ = com.google.protobuf.LazyStringArrayList.EMPTY; + value_ = + com.google.protobuf.LazyStringArrayList.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new NodeList(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_CollectionDef_NodeList_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_CollectionDef_NodeList_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -183,7 +189,9 @@ protected java.lang.Object newInstance( } public static final int VALUE_FIELD_NUMBER = 1; - private com.google.protobuf.LazyStringList value_; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList value_ = + com.google.protobuf.LazyStringArrayList.emptyList(); /** * repeated string value = 1; * @return A list containing the value. @@ -232,7 +240,7 @@ public final boolean isInitialized() { public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { for (int i = 0; i < value_.size(); i++) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, value_.getRaw(i)); + com.google.protobuf.GeneratedMessage.writeString(output, 1, value_.getRaw(i)); } getUnknownFields().writeTo(output); } @@ -322,39 +330,41 @@ public static org.tensorflow.proto.CollectionDef.NodeList parseFrom( } public static org.tensorflow.proto.CollectionDef.NodeList parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.CollectionDef.NodeList parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.CollectionDef.NodeList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.CollectionDef.NodeList parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.CollectionDef.NodeList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.CollectionDef.NodeList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -374,7 +384,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -382,20 +392,20 @@ protected Builder newBuilderForType( *
          * NodeList is used for collecting nodes in graph. For example
          * collection_def {
    -     *   key: "summaries"
    -     *   value {
    -     *     node_list {
    -     *       value: "input_producer/ScalarSummary:0"
    -     *       value: "shuffle_batch/ScalarSummary:0"
    -     *       value: "ImageSummary:0"
    -     *     }
    -     *   }
    +     * key: "summaries"
    +     * value {
    +     * node_list {
    +     * value: "input_producer/ScalarSummary:0"
    +     * value: "shuffle_batch/ScalarSummary:0"
    +     * value: "ImageSummary:0"
    +     * }
    +     * }
          * 
    * * Protobuf type {@code tensorflow.CollectionDef.NodeList} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.CollectionDef.NodeList) org.tensorflow.proto.CollectionDef.NodeListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -404,7 +414,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_CollectionDef_NodeList_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -417,15 +427,16 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); - value_ = com.google.protobuf.LazyStringArrayList.EMPTY; - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = 0; + value_ = + com.google.protobuf.LazyStringArrayList.emptyList(); return this; } @@ -452,48 +463,19 @@ public org.tensorflow.proto.CollectionDef.NodeList build() { @java.lang.Override public org.tensorflow.proto.CollectionDef.NodeList buildPartial() { org.tensorflow.proto.CollectionDef.NodeList result = new org.tensorflow.proto.CollectionDef.NodeList(this); - int from_bitField0_ = bitField0_; - if (((bitField0_ & 0x00000001) != 0)) { - value_ = value_.getUnmodifiableView(); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.value_ = value_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.CollectionDef.NodeList result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + value_.makeImmutable(); + result.value_ = value_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.CollectionDef.NodeList) { @@ -509,7 +491,7 @@ public Builder mergeFrom(org.tensorflow.proto.CollectionDef.NodeList other) { if (!other.value_.isEmpty()) { if (value_.isEmpty()) { value_ = other.value_; - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ |= 0x00000001; } else { ensureValueIsMutable(); value_.addAll(other.value_); @@ -565,12 +547,13 @@ public Builder mergeFrom( } private int bitField0_; - private com.google.protobuf.LazyStringList value_ = com.google.protobuf.LazyStringArrayList.EMPTY; + private com.google.protobuf.LazyStringArrayList value_ = + com.google.protobuf.LazyStringArrayList.emptyList(); private void ensureValueIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { + if (!value_.isModifiable()) { value_ = new com.google.protobuf.LazyStringArrayList(value_); - bitField0_ |= 0x00000001; - } + } + bitField0_ |= 0x00000001; } /** * repeated string value = 1; @@ -578,7 +561,8 @@ private void ensureValueIsMutable() { */ public com.google.protobuf.ProtocolStringList getValueList() { - return value_.getUnmodifiableView(); + value_.makeImmutable(); + return value_; } /** * repeated string value = 1; @@ -612,11 +596,10 @@ public java.lang.String getValue(int index) { */ public Builder setValue( int index, java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureValueIsMutable(); + if (value == null) { throw new NullPointerException(); } + ensureValueIsMutable(); value_.set(index, value); + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -627,11 +610,10 @@ public Builder setValue( */ public Builder addValue( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureValueIsMutable(); + if (value == null) { throw new NullPointerException(); } + ensureValueIsMutable(); value_.add(value); + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -645,6 +627,7 @@ public Builder addAllValue( ensureValueIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, value_); + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -653,8 +636,9 @@ public Builder addAllValue( * @return This builder for chaining. */ public Builder clearValue() { - value_ = com.google.protobuf.LazyStringArrayList.EMPTY; - bitField0_ = (bitField0_ & ~0x00000001); + value_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001);; onChanged(); return this; } @@ -665,27 +649,14 @@ public Builder clearValue() { */ public Builder addValueBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); ensureValueIsMutable(); value_.add(value); + bitField0_ |= 0x00000001; onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.CollectionDef.NodeList) } @@ -764,52 +735,49 @@ public interface BytesListOrBuilder extends * BytesList is used for collecting strings and serialized protobufs. For * example: * collection_def { - * key: "trainable_variables" - * value { - * bytes_list { - * value: "\n\017conv1/weights:0\022\024conv1/weights/Assign - * \032\024conv1/weights/read:0" - * value: "\n\016conv1/biases:0\022\023conv1/biases/Assign\032 - * \023conv1/biases/read:0" - * } - * } + * key: "trainable_variables" + * value { + * bytes_list { + * value: "\n\017conv1/weights:0\022\024conv1/weights/Assign + * \032\024conv1/weights/read:0" + * value: "\n\016conv1/biases:0\022\023conv1/biases/Assign\032 + * \023conv1/biases/read:0" + * } + * } * } *
    * * Protobuf type {@code tensorflow.CollectionDef.BytesList} */ public static final class BytesList extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.CollectionDef.BytesList) BytesListOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + BytesList.class.getName()); + } // Use BytesList.newBuilder() to construct. - private BytesList(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private BytesList(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private BytesList() { - value_ = java.util.Collections.emptyList(); + value_ = emptyList(com.google.protobuf.ByteString.class); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new BytesList(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_CollectionDef_BytesList_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_CollectionDef_BytesList_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -817,7 +785,9 @@ protected java.lang.Object newInstance( } public static final int VALUE_FIELD_NUMBER = 1; - private java.util.List value_; + @SuppressWarnings("serial") + private com.google.protobuf.Internal.ProtobufList value_ = + emptyList(com.google.protobuf.ByteString.class); /** * repeated bytes value = 1; * @return A list containing the value. @@ -949,39 +919,41 @@ public static org.tensorflow.proto.CollectionDef.BytesList parseFrom( } public static org.tensorflow.proto.CollectionDef.BytesList parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.CollectionDef.BytesList parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.CollectionDef.BytesList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.CollectionDef.BytesList parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.CollectionDef.BytesList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.CollectionDef.BytesList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -1001,7 +973,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -1010,22 +982,22 @@ protected Builder newBuilderForType( * BytesList is used for collecting strings and serialized protobufs. For * example: * collection_def { - * key: "trainable_variables" - * value { - * bytes_list { - * value: "\n\017conv1/weights:0\022\024conv1/weights/Assign - * \032\024conv1/weights/read:0" - * value: "\n\016conv1/biases:0\022\023conv1/biases/Assign\032 - * \023conv1/biases/read:0" - * } - * } + * key: "trainable_variables" + * value { + * bytes_list { + * value: "\n\017conv1/weights:0\022\024conv1/weights/Assign + * \032\024conv1/weights/read:0" + * value: "\n\016conv1/biases:0\022\023conv1/biases/Assign\032 + * \023conv1/biases/read:0" + * } + * } * } *
    * * Protobuf type {@code tensorflow.CollectionDef.BytesList} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.CollectionDef.BytesList) org.tensorflow.proto.CollectionDef.BytesListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -1034,7 +1006,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_CollectionDef_BytesList_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -1047,15 +1019,15 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); - value_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = 0; + value_ = emptyList(com.google.protobuf.ByteString.class); return this; } @@ -1082,48 +1054,19 @@ public org.tensorflow.proto.CollectionDef.BytesList build() { @java.lang.Override public org.tensorflow.proto.CollectionDef.BytesList buildPartial() { org.tensorflow.proto.CollectionDef.BytesList result = new org.tensorflow.proto.CollectionDef.BytesList(this); - int from_bitField0_ = bitField0_; - if (((bitField0_ & 0x00000001) != 0)) { - value_ = java.util.Collections.unmodifiableList(value_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.value_ = value_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.CollectionDef.BytesList result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + value_.makeImmutable(); + result.value_ = value_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.CollectionDef.BytesList) { @@ -1139,7 +1082,8 @@ public Builder mergeFrom(org.tensorflow.proto.CollectionDef.BytesList other) { if (!other.value_.isEmpty()) { if (value_.isEmpty()) { value_ = other.value_; - bitField0_ = (bitField0_ & ~0x00000001); + value_.makeImmutable(); + bitField0_ |= 0x00000001; } else { ensureValueIsMutable(); value_.addAll(other.value_); @@ -1195,12 +1139,12 @@ public Builder mergeFrom( } private int bitField0_; - private java.util.List value_ = java.util.Collections.emptyList(); + private com.google.protobuf.Internal.ProtobufList value_ = emptyList(com.google.protobuf.ByteString.class); private void ensureValueIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - value_ = new java.util.ArrayList(value_); - bitField0_ |= 0x00000001; - } + if (!value_.isModifiable()) { + value_ = makeMutableCopy(value_); + } + bitField0_ |= 0x00000001; } /** * repeated bytes value = 1; @@ -1208,8 +1152,8 @@ private void ensureValueIsMutable() { */ public java.util.List getValueList() { - return ((bitField0_ & 0x00000001) != 0) ? - java.util.Collections.unmodifiableList(value_) : value_; + value_.makeImmutable(); + return value_; } /** * repeated bytes value = 1; @@ -1234,11 +1178,10 @@ public com.google.protobuf.ByteString getValue(int index) { */ public Builder setValue( int index, com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - ensureValueIsMutable(); + if (value == null) { throw new NullPointerException(); } + ensureValueIsMutable(); value_.set(index, value); + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -1248,11 +1191,10 @@ public Builder setValue( * @return This builder for chaining. */ public Builder addValue(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - ensureValueIsMutable(); + if (value == null) { throw new NullPointerException(); } + ensureValueIsMutable(); value_.add(value); + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -1266,6 +1208,7 @@ public Builder addAllValue( ensureValueIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, value_); + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -1274,23 +1217,11 @@ public Builder addAllValue( * @return This builder for chaining. */ public Builder clearValue() { - value_ = java.util.Collections.emptyList(); + value_ = emptyList(com.google.protobuf.ByteString.class); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.CollectionDef.BytesList) } @@ -1372,37 +1303,34 @@ public interface Int64ListOrBuilder extends * Protobuf type {@code tensorflow.CollectionDef.Int64List} */ public static final class Int64List extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.CollectionDef.Int64List) Int64ListOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + Int64List.class.getName()); + } // Use Int64List.newBuilder() to construct. - private Int64List(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private Int64List(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private Int64List() { value_ = emptyLongList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new Int64List(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_CollectionDef_Int64List_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_CollectionDef_Int64List_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -1410,7 +1338,9 @@ protected java.lang.Object newInstance( } public static final int VALUE_FIELD_NUMBER = 1; - private com.google.protobuf.Internal.LongList value_; + @SuppressWarnings("serial") + private com.google.protobuf.Internal.LongList value_ = + emptyLongList(); /** * repeated int64 value = 1 [packed = true]; * @return A list containing the value. @@ -1553,39 +1483,41 @@ public static org.tensorflow.proto.CollectionDef.Int64List parseFrom( } public static org.tensorflow.proto.CollectionDef.Int64List parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.CollectionDef.Int64List parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.CollectionDef.Int64List parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.CollectionDef.Int64List parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.CollectionDef.Int64List parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.CollectionDef.Int64List parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -1605,7 +1537,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -1617,7 +1549,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.CollectionDef.Int64List} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.CollectionDef.Int64List) org.tensorflow.proto.CollectionDef.Int64ListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -1626,7 +1558,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_CollectionDef_Int64List_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -1639,15 +1571,15 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; value_ = emptyLongList(); - bitField0_ = (bitField0_ & ~0x00000001); return this; } @@ -1674,48 +1606,19 @@ public org.tensorflow.proto.CollectionDef.Int64List build() { @java.lang.Override public org.tensorflow.proto.CollectionDef.Int64List buildPartial() { org.tensorflow.proto.CollectionDef.Int64List result = new org.tensorflow.proto.CollectionDef.Int64List(this); - int from_bitField0_ = bitField0_; - if (((bitField0_ & 0x00000001) != 0)) { - value_.makeImmutable(); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.value_ = value_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.CollectionDef.Int64List result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + value_.makeImmutable(); + result.value_ = value_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.CollectionDef.Int64List) { @@ -1731,7 +1634,8 @@ public Builder mergeFrom(org.tensorflow.proto.CollectionDef.Int64List other) { if (!other.value_.isEmpty()) { if (value_.isEmpty()) { value_ = other.value_; - bitField0_ = (bitField0_ & ~0x00000001); + value_.makeImmutable(); + bitField0_ |= 0x00000001; } else { ensureValueIsMutable(); value_.addAll(other.value_); @@ -1799,10 +1703,10 @@ public Builder mergeFrom( private com.google.protobuf.Internal.LongList value_ = emptyLongList(); private void ensureValueIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - value_ = mutableCopy(value_); - bitField0_ |= 0x00000001; - } + if (!value_.isModifiable()) { + value_ = makeMutableCopy(value_); + } + bitField0_ |= 0x00000001; } /** * repeated int64 value = 1 [packed = true]; @@ -1810,8 +1714,8 @@ private void ensureValueIsMutable() { */ public java.util.List getValueList() { - return ((bitField0_ & 0x00000001) != 0) ? - java.util.Collections.unmodifiableList(value_) : value_; + value_.makeImmutable(); + return value_; } /** * repeated int64 value = 1 [packed = true]; @@ -1836,8 +1740,10 @@ public long getValue(int index) { */ public Builder setValue( int index, long value) { + ensureValueIsMutable(); value_.setLong(index, value); + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -1847,8 +1753,10 @@ public Builder setValue( * @return This builder for chaining. */ public Builder addValue(long value) { + ensureValueIsMutable(); value_.addLong(value); + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -1862,6 +1770,7 @@ public Builder addAllValue( ensureValueIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, value_); + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -1875,18 +1784,6 @@ public Builder clearValue() { onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.CollectionDef.Int64List) } @@ -1968,37 +1865,34 @@ public interface FloatListOrBuilder extends * Protobuf type {@code tensorflow.CollectionDef.FloatList} */ public static final class FloatList extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.CollectionDef.FloatList) FloatListOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + FloatList.class.getName()); + } // Use FloatList.newBuilder() to construct. - private FloatList(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private FloatList(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private FloatList() { value_ = emptyFloatList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new FloatList(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_CollectionDef_FloatList_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_CollectionDef_FloatList_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -2006,7 +1900,9 @@ protected java.lang.Object newInstance( } public static final int VALUE_FIELD_NUMBER = 1; - private com.google.protobuf.Internal.FloatList value_; + @SuppressWarnings("serial") + private com.google.protobuf.Internal.FloatList value_ = + emptyFloatList(); /** * repeated float value = 1 [packed = true]; * @return A list containing the value. @@ -2146,39 +2042,41 @@ public static org.tensorflow.proto.CollectionDef.FloatList parseFrom( } public static org.tensorflow.proto.CollectionDef.FloatList parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.CollectionDef.FloatList parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.CollectionDef.FloatList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.CollectionDef.FloatList parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.CollectionDef.FloatList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.CollectionDef.FloatList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -2198,7 +2096,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -2210,7 +2108,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.CollectionDef.FloatList} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.CollectionDef.FloatList) org.tensorflow.proto.CollectionDef.FloatListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -2219,7 +2117,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_CollectionDef_FloatList_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -2232,15 +2130,15 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; value_ = emptyFloatList(); - bitField0_ = (bitField0_ & ~0x00000001); return this; } @@ -2267,48 +2165,19 @@ public org.tensorflow.proto.CollectionDef.FloatList build() { @java.lang.Override public org.tensorflow.proto.CollectionDef.FloatList buildPartial() { org.tensorflow.proto.CollectionDef.FloatList result = new org.tensorflow.proto.CollectionDef.FloatList(this); - int from_bitField0_ = bitField0_; - if (((bitField0_ & 0x00000001) != 0)) { - value_.makeImmutable(); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.value_ = value_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.CollectionDef.FloatList result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + value_.makeImmutable(); + result.value_ = value_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.CollectionDef.FloatList) { @@ -2324,7 +2193,8 @@ public Builder mergeFrom(org.tensorflow.proto.CollectionDef.FloatList other) { if (!other.value_.isEmpty()) { if (value_.isEmpty()) { value_ = other.value_; - bitField0_ = (bitField0_ & ~0x00000001); + value_.makeImmutable(); + bitField0_ |= 0x00000001; } else { ensureValueIsMutable(); value_.addAll(other.value_); @@ -2366,7 +2236,8 @@ public Builder mergeFrom( case 10: { int length = input.readRawVarint32(); int limit = input.pushLimit(length); - ensureValueIsMutable(); + int alloc = length > 4096 ? 4096 : length; + ensureValueIsMutable(alloc / 4); while (input.getBytesUntilLimit() > 0) { value_.addFloat(input.readFloat()); } @@ -2392,10 +2263,16 @@ public Builder mergeFrom( private com.google.protobuf.Internal.FloatList value_ = emptyFloatList(); private void ensureValueIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - value_ = mutableCopy(value_); - bitField0_ |= 0x00000001; - } + if (!value_.isModifiable()) { + value_ = makeMutableCopy(value_); + } + bitField0_ |= 0x00000001; + } + private void ensureValueIsMutable(int capacity) { + if (!value_.isModifiable()) { + value_ = makeMutableCopy(value_, capacity); + } + bitField0_ |= 0x00000001; } /** * repeated float value = 1 [packed = true]; @@ -2403,8 +2280,8 @@ private void ensureValueIsMutable() { */ public java.util.List getValueList() { - return ((bitField0_ & 0x00000001) != 0) ? - java.util.Collections.unmodifiableList(value_) : value_; + value_.makeImmutable(); + return value_; } /** * repeated float value = 1 [packed = true]; @@ -2429,8 +2306,10 @@ public float getValue(int index) { */ public Builder setValue( int index, float value) { + ensureValueIsMutable(); value_.setFloat(index, value); + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -2440,8 +2319,10 @@ public Builder setValue( * @return This builder for chaining. */ public Builder addValue(float value) { + ensureValueIsMutable(); value_.addFloat(value); + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -2455,6 +2336,7 @@ public Builder addAllValue( ensureValueIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, value_); + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -2468,18 +2350,6 @@ public Builder clearValue() { onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.CollectionDef.FloatList) } @@ -2568,37 +2438,34 @@ com.google.protobuf.AnyOrBuilder getValueOrBuilder( * Protobuf type {@code tensorflow.CollectionDef.AnyList} */ public static final class AnyList extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.CollectionDef.AnyList) AnyListOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + AnyList.class.getName()); + } // Use AnyList.newBuilder() to construct. - private AnyList(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private AnyList(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private AnyList() { value_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new AnyList(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_CollectionDef_AnyList_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_CollectionDef_AnyList_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -2606,6 +2473,7 @@ protected java.lang.Object newInstance( } public static final int VALUE_FIELD_NUMBER = 1; + @SuppressWarnings("serial") private java.util.List value_; /** * repeated .google.protobuf.Any value = 1; @@ -2746,39 +2614,41 @@ public static org.tensorflow.proto.CollectionDef.AnyList parseFrom( } public static org.tensorflow.proto.CollectionDef.AnyList parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.CollectionDef.AnyList parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.CollectionDef.AnyList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.CollectionDef.AnyList parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.CollectionDef.AnyList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.CollectionDef.AnyList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -2798,7 +2668,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -2810,7 +2680,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.CollectionDef.AnyList} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.CollectionDef.AnyList) org.tensorflow.proto.CollectionDef.AnyListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -2819,7 +2689,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_CollectionDef_AnyList_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -2832,13 +2702,14 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; if (valueBuilder_ == null) { value_ = java.util.Collections.emptyList(); } else { @@ -2872,7 +2743,13 @@ public org.tensorflow.proto.CollectionDef.AnyList build() { @java.lang.Override public org.tensorflow.proto.CollectionDef.AnyList buildPartial() { org.tensorflow.proto.CollectionDef.AnyList result = new org.tensorflow.proto.CollectionDef.AnyList(this); - int from_bitField0_ = bitField0_; + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(org.tensorflow.proto.CollectionDef.AnyList result) { if (valueBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { value_ = java.util.Collections.unmodifiableList(value_); @@ -2882,42 +2759,12 @@ public org.tensorflow.proto.CollectionDef.AnyList buildPartial() { } else { result.value_ = valueBuilder_.build(); } - onBuilt(); - return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.CollectionDef.AnyList result) { + int from_bitField0_ = bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.CollectionDef.AnyList) { @@ -2949,7 +2796,7 @@ public Builder mergeFrom(org.tensorflow.proto.CollectionDef.AnyList other) { value_ = other.value_; bitField0_ = (bitField0_ & ~0x00000001); valueBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getValueFieldBuilder() : null; } else { valueBuilder_.addAllMessages(other.value_); @@ -3021,7 +2868,7 @@ private void ensureValueIsMutable() { } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< com.google.protobuf.Any, com.google.protobuf.Any.Builder, com.google.protobuf.AnyOrBuilder> valueBuilder_; /** @@ -3237,11 +3084,11 @@ public com.google.protobuf.Any.Builder addValueBuilder( getValueBuilderList() { return getValueFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< com.google.protobuf.Any, com.google.protobuf.Any.Builder, com.google.protobuf.AnyOrBuilder> getValueFieldBuilder() { if (valueBuilder_ == null) { - valueBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + valueBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< com.google.protobuf.Any, com.google.protobuf.Any.Builder, com.google.protobuf.AnyOrBuilder>( value_, ((bitField0_ & 0x00000001) != 0), @@ -3251,18 +3098,6 @@ public com.google.protobuf.Any.Builder addValueBuilder( } return valueBuilder_; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.CollectionDef.AnyList) } @@ -3316,6 +3151,7 @@ public org.tensorflow.proto.CollectionDef.AnyList getDefaultInstanceForType() { } private int kindCase_ = 0; + @SuppressWarnings("serial") private java.lang.Object kind_; public enum KindCase implements com.google.protobuf.Internal.EnumLite, @@ -3689,39 +3525,41 @@ public static org.tensorflow.proto.CollectionDef parseFrom( } public static org.tensorflow.proto.CollectionDef parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.CollectionDef parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.CollectionDef parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.CollectionDef parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.CollectionDef parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.CollectionDef parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -3741,7 +3579,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -3750,62 +3588,71 @@ protected Builder newBuilderForType( * CollectionDef should cover most collections. * To add a user-defined collection, do one of the following: * 1. For simple data types, such as string, int, float: - * tf.add_to_collection("your_collection_name", your_simple_value) - * strings will be stored as bytes_list. + * tf.add_to_collection("your_collection_name", your_simple_value) + * strings will be stored as bytes_list. + * * 2. For Protobuf types, there are three ways to add them: - * 1) tf.add_to_collection("your_collection_name", - * your_proto.SerializeToString()) - * collection_def { - * key: "user_defined_bytes_collection" - * value { - * bytes_list { - * value: "queue_name: \"test_queue\"\n" - * } - * } - * } - * or - * 2) tf.add_to_collection("your_collection_name", str(your_proto)) - * collection_def { - * key: "user_defined_string_collection" - * value { - * bytes_list { - * value: "\n\ntest_queue" - * } - * } - * } - * or - * 3) any_buf = any_pb2.Any() - * tf.add_to_collection("your_collection_name", - * any_buf.Pack(your_proto)) - * collection_def { - * key: "user_defined_any_collection" - * value { - * any_list { - * value { - * type_url: "type.googleapis.com/tensorflow.QueueRunnerDef" - * value: "\n\ntest_queue" - * } - * } - * } - * } + * 1) tf.add_to_collection("your_collection_name", + * your_proto.SerializeToString()) + * + * collection_def { + * key: "user_defined_bytes_collection" + * value { + * bytes_list { + * value: "queue_name: \"test_queue\"\n" + * } + * } + * } + * + * or + * + * 2) tf.add_to_collection("your_collection_name", str(your_proto)) + * + * collection_def { + * key: "user_defined_string_collection" + * value { + * bytes_list { + * value: "\n\ntest_queue" + * } + * } + * } + * + * or + * + * 3) any_buf = any_pb2.Any() + * tf.add_to_collection("your_collection_name", + * any_buf.Pack(your_proto)) + * + * collection_def { + * key: "user_defined_any_collection" + * value { + * any_list { + * value { + * type_url: "type.googleapis.com/tensorflow.QueueRunnerDef" + * value: "\n\ntest_queue" + * } + * } + * } + * } + * * 3. For Python objects, implement to_proto() and from_proto(), and register - * them in the following manner: - * ops.register_proto_function("your_collection_name", - * proto_type, - * to_proto=YourPythonObject.to_proto, - * from_proto=YourPythonObject.from_proto) - * These functions will be invoked to serialize and de-serialize the - * collection. For example, - * ops.register_proto_function(ops.GraphKeys.GLOBAL_VARIABLES, - * proto_type=variable_pb2.VariableDef, - * to_proto=Variable.to_proto, - * from_proto=Variable.from_proto) + * them in the following manner: + * ops.register_proto_function("your_collection_name", + * proto_type, + * to_proto=YourPythonObject.to_proto, + * from_proto=YourPythonObject.from_proto) + * These functions will be invoked to serialize and de-serialize the + * collection. For example, + * ops.register_proto_function(ops.GraphKeys.GLOBAL_VARIABLES, + * proto_type=variable_pb2.VariableDef, + * to_proto=Variable.to_proto, + * from_proto=Variable.from_proto) *
    * * Protobuf type {@code tensorflow.CollectionDef} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.CollectionDef) org.tensorflow.proto.CollectionDefOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -3814,7 +3661,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_CollectionDef_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -3827,13 +3674,14 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; if (nodeListBuilder_ != null) { nodeListBuilder_.clear(); } @@ -3877,78 +3725,41 @@ public org.tensorflow.proto.CollectionDef build() { @java.lang.Override public org.tensorflow.proto.CollectionDef buildPartial() { org.tensorflow.proto.CollectionDef result = new org.tensorflow.proto.CollectionDef(this); - if (kindCase_ == 1) { - if (nodeListBuilder_ == null) { - result.kind_ = kind_; - } else { - result.kind_ = nodeListBuilder_.build(); - } + if (bitField0_ != 0) { buildPartial0(result); } + buildPartialOneofs(result); + onBuilt(); + return result; + } + + private void buildPartial0(org.tensorflow.proto.CollectionDef result) { + int from_bitField0_ = bitField0_; + } + + private void buildPartialOneofs(org.tensorflow.proto.CollectionDef result) { + result.kindCase_ = kindCase_; + result.kind_ = this.kind_; + if (kindCase_ == 1 && + nodeListBuilder_ != null) { + result.kind_ = nodeListBuilder_.build(); } - if (kindCase_ == 2) { - if (bytesListBuilder_ == null) { - result.kind_ = kind_; - } else { - result.kind_ = bytesListBuilder_.build(); - } + if (kindCase_ == 2 && + bytesListBuilder_ != null) { + result.kind_ = bytesListBuilder_.build(); } - if (kindCase_ == 3) { - if (int64ListBuilder_ == null) { - result.kind_ = kind_; - } else { - result.kind_ = int64ListBuilder_.build(); - } + if (kindCase_ == 3 && + int64ListBuilder_ != null) { + result.kind_ = int64ListBuilder_.build(); } - if (kindCase_ == 4) { - if (floatListBuilder_ == null) { - result.kind_ = kind_; - } else { - result.kind_ = floatListBuilder_.build(); - } + if (kindCase_ == 4 && + floatListBuilder_ != null) { + result.kind_ = floatListBuilder_.build(); } - if (kindCase_ == 5) { - if (anyListBuilder_ == null) { - result.kind_ = kind_; - } else { - result.kind_ = anyListBuilder_.build(); - } + if (kindCase_ == 5 && + anyListBuilder_ != null) { + result.kind_ = anyListBuilder_.build(); } - result.kindCase_ = kindCase_; - onBuilt(); - return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); - } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.CollectionDef) { @@ -4077,8 +3888,9 @@ public Builder clearKind() { return this; } + private int bitField0_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.CollectionDef.NodeList, org.tensorflow.proto.CollectionDef.NodeList.Builder, org.tensorflow.proto.CollectionDef.NodeListOrBuilder> nodeListBuilder_; /** * .tensorflow.CollectionDef.NodeList node_list = 1; @@ -4201,14 +4013,14 @@ public org.tensorflow.proto.CollectionDef.NodeListOrBuilder getNodeListOrBuilder /** * .tensorflow.CollectionDef.NodeList node_list = 1; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.CollectionDef.NodeList, org.tensorflow.proto.CollectionDef.NodeList.Builder, org.tensorflow.proto.CollectionDef.NodeListOrBuilder> getNodeListFieldBuilder() { if (nodeListBuilder_ == null) { if (!(kindCase_ == 1)) { kind_ = org.tensorflow.proto.CollectionDef.NodeList.getDefaultInstance(); } - nodeListBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + nodeListBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.CollectionDef.NodeList, org.tensorflow.proto.CollectionDef.NodeList.Builder, org.tensorflow.proto.CollectionDef.NodeListOrBuilder>( (org.tensorflow.proto.CollectionDef.NodeList) kind_, getParentForChildren(), @@ -4216,11 +4028,11 @@ public org.tensorflow.proto.CollectionDef.NodeListOrBuilder getNodeListOrBuilder kind_ = null; } kindCase_ = 1; - onChanged();; + onChanged(); return nodeListBuilder_; } - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.CollectionDef.BytesList, org.tensorflow.proto.CollectionDef.BytesList.Builder, org.tensorflow.proto.CollectionDef.BytesListOrBuilder> bytesListBuilder_; /** * .tensorflow.CollectionDef.BytesList bytes_list = 2; @@ -4343,14 +4155,14 @@ public org.tensorflow.proto.CollectionDef.BytesListOrBuilder getBytesListOrBuild /** * .tensorflow.CollectionDef.BytesList bytes_list = 2; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.CollectionDef.BytesList, org.tensorflow.proto.CollectionDef.BytesList.Builder, org.tensorflow.proto.CollectionDef.BytesListOrBuilder> getBytesListFieldBuilder() { if (bytesListBuilder_ == null) { if (!(kindCase_ == 2)) { kind_ = org.tensorflow.proto.CollectionDef.BytesList.getDefaultInstance(); } - bytesListBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + bytesListBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.CollectionDef.BytesList, org.tensorflow.proto.CollectionDef.BytesList.Builder, org.tensorflow.proto.CollectionDef.BytesListOrBuilder>( (org.tensorflow.proto.CollectionDef.BytesList) kind_, getParentForChildren(), @@ -4358,11 +4170,11 @@ public org.tensorflow.proto.CollectionDef.BytesListOrBuilder getBytesListOrBuild kind_ = null; } kindCase_ = 2; - onChanged();; + onChanged(); return bytesListBuilder_; } - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.CollectionDef.Int64List, org.tensorflow.proto.CollectionDef.Int64List.Builder, org.tensorflow.proto.CollectionDef.Int64ListOrBuilder> int64ListBuilder_; /** * .tensorflow.CollectionDef.Int64List int64_list = 3; @@ -4485,14 +4297,14 @@ public org.tensorflow.proto.CollectionDef.Int64ListOrBuilder getInt64ListOrBuild /** * .tensorflow.CollectionDef.Int64List int64_list = 3; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.CollectionDef.Int64List, org.tensorflow.proto.CollectionDef.Int64List.Builder, org.tensorflow.proto.CollectionDef.Int64ListOrBuilder> getInt64ListFieldBuilder() { if (int64ListBuilder_ == null) { if (!(kindCase_ == 3)) { kind_ = org.tensorflow.proto.CollectionDef.Int64List.getDefaultInstance(); } - int64ListBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + int64ListBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.CollectionDef.Int64List, org.tensorflow.proto.CollectionDef.Int64List.Builder, org.tensorflow.proto.CollectionDef.Int64ListOrBuilder>( (org.tensorflow.proto.CollectionDef.Int64List) kind_, getParentForChildren(), @@ -4500,11 +4312,11 @@ public org.tensorflow.proto.CollectionDef.Int64ListOrBuilder getInt64ListOrBuild kind_ = null; } kindCase_ = 3; - onChanged();; + onChanged(); return int64ListBuilder_; } - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.CollectionDef.FloatList, org.tensorflow.proto.CollectionDef.FloatList.Builder, org.tensorflow.proto.CollectionDef.FloatListOrBuilder> floatListBuilder_; /** * .tensorflow.CollectionDef.FloatList float_list = 4; @@ -4627,14 +4439,14 @@ public org.tensorflow.proto.CollectionDef.FloatListOrBuilder getFloatListOrBuild /** * .tensorflow.CollectionDef.FloatList float_list = 4; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.CollectionDef.FloatList, org.tensorflow.proto.CollectionDef.FloatList.Builder, org.tensorflow.proto.CollectionDef.FloatListOrBuilder> getFloatListFieldBuilder() { if (floatListBuilder_ == null) { if (!(kindCase_ == 4)) { kind_ = org.tensorflow.proto.CollectionDef.FloatList.getDefaultInstance(); } - floatListBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + floatListBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.CollectionDef.FloatList, org.tensorflow.proto.CollectionDef.FloatList.Builder, org.tensorflow.proto.CollectionDef.FloatListOrBuilder>( (org.tensorflow.proto.CollectionDef.FloatList) kind_, getParentForChildren(), @@ -4642,11 +4454,11 @@ public org.tensorflow.proto.CollectionDef.FloatListOrBuilder getFloatListOrBuild kind_ = null; } kindCase_ = 4; - onChanged();; + onChanged(); return floatListBuilder_; } - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.CollectionDef.AnyList, org.tensorflow.proto.CollectionDef.AnyList.Builder, org.tensorflow.proto.CollectionDef.AnyListOrBuilder> anyListBuilder_; /** * .tensorflow.CollectionDef.AnyList any_list = 5; @@ -4769,14 +4581,14 @@ public org.tensorflow.proto.CollectionDef.AnyListOrBuilder getAnyListOrBuilder() /** * .tensorflow.CollectionDef.AnyList any_list = 5; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.CollectionDef.AnyList, org.tensorflow.proto.CollectionDef.AnyList.Builder, org.tensorflow.proto.CollectionDef.AnyListOrBuilder> getAnyListFieldBuilder() { if (anyListBuilder_ == null) { if (!(kindCase_ == 5)) { kind_ = org.tensorflow.proto.CollectionDef.AnyList.getDefaultInstance(); } - anyListBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + anyListBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.CollectionDef.AnyList, org.tensorflow.proto.CollectionDef.AnyList.Builder, org.tensorflow.proto.CollectionDef.AnyListOrBuilder>( (org.tensorflow.proto.CollectionDef.AnyList) kind_, getParentForChildren(), @@ -4784,21 +4596,9 @@ public org.tensorflow.proto.CollectionDef.AnyListOrBuilder getAnyListOrBuilder() kind_ = null; } kindCase_ = 5; - onChanged();; + onChanged(); return anyListBuilder_; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.CollectionDef) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CollectionDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CollectionDefOrBuilder.java index dafdcb0f648..0b80d88866e 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CollectionDefOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CollectionDefOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/meta_graph.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -82,5 +84,5 @@ public interface CollectionDefOrBuilder extends */ org.tensorflow.proto.CollectionDef.AnyListOrBuilder getAnyListOrBuilder(); - public org.tensorflow.proto.CollectionDef.KindCase getKindCase(); + org.tensorflow.proto.CollectionDef.KindCase getKindCase(); } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CommitId.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CommitId.java index 3fdd1c804b6..e47f5125f55 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CommitId.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CommitId.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! -// source: tsl/protobuf/test_log.proto +// NO CHECKED-IN PROTOBUF GENCODE +// source: xla/tsl/protobuf/test_log.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,37 +9,34 @@ * Protobuf type {@code tensorflow.CommitId} */ public final class CommitId extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.CommitId) CommitIdOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + CommitId.class.getName()); + } // Use CommitId.newBuilder() to construct. - private CommitId(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private CommitId(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private CommitId() { snapshot_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new CommitId(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_CommitId_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_CommitId_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -45,6 +44,7 @@ protected java.lang.Object newInstance( } private int kindCase_ = 0; + @SuppressWarnings("serial") private java.lang.Object kind_; public enum KindCase implements com.google.protobuf.Internal.EnumLite, @@ -167,7 +167,8 @@ public java.lang.String getHash() { } public static final int SNAPSHOT_FIELD_NUMBER = 3; - private volatile java.lang.Object snapshot_; + @SuppressWarnings("serial") + private volatile java.lang.Object snapshot_ = ""; /** *
        * Hash of intermediate change between hash/changelist and what was tested.
    @@ -215,7 +216,7 @@ public java.lang.String getSnapshot() {
       }
     
       public static final int PENDING_CHANGELIST_FIELD_NUMBER = 4;
    -  private long pendingChangelist_;
    +  private long pendingChangelist_ = 0L;
       /**
        * 
        * Changelist tested if the change list is not already submitted.
    @@ -248,10 +249,10 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
               1, (long)((java.lang.Long) kind_));
         }
         if (kindCase_ == 2) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, kind_);
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, kind_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(snapshot_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, snapshot_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(snapshot_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, snapshot_);
         }
         if (pendingChangelist_ != 0L) {
           output.writeInt64(4, pendingChangelist_);
    @@ -271,10 +272,10 @@ public int getSerializedSize() {
                 1, (long)((java.lang.Long) kind_));
         }
         if (kindCase_ == 2) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, kind_);
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, kind_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(snapshot_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, snapshot_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(snapshot_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, snapshot_);
         }
         if (pendingChangelist_ != 0L) {
           size += com.google.protobuf.CodedOutputStream
    @@ -380,39 +381,41 @@ public static org.tensorflow.proto.CommitId parseFrom(
       }
       public static org.tensorflow.proto.CommitId parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.CommitId parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.CommitId parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.CommitId parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.CommitId parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.CommitId parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -432,7 +435,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -440,7 +443,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.CommitId}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.CommitId)
           org.tensorflow.proto.CommitIdOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -449,7 +452,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_CommitId_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -462,17 +465,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           snapshot_ = "";
    -
           pendingChangelist_ = 0L;
    -
           kindCase_ = 0;
           kind_ = null;
           return this;
    @@ -501,51 +503,27 @@ public org.tensorflow.proto.CommitId build() {
         @java.lang.Override
         public org.tensorflow.proto.CommitId buildPartial() {
           org.tensorflow.proto.CommitId result = new org.tensorflow.proto.CommitId(this);
    -      if (kindCase_ == 1) {
    -        result.kind_ = kind_;
    -      }
    -      if (kindCase_ == 2) {
    -        result.kind_ = kind_;
    -      }
    -      result.snapshot_ = snapshot_;
    -      result.pendingChangelist_ = pendingChangelist_;
    -      result.kindCase_ = kindCase_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      buildPartialOneofs(result);
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    +    private void buildPartial0(org.tensorflow.proto.CommitId result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.snapshot_ = snapshot_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.pendingChangelist_ = pendingChangelist_;
    +      }
         }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +
    +    private void buildPartialOneofs(org.tensorflow.proto.CommitId result) {
    +      result.kindCase_ = kindCase_;
    +      result.kind_ = this.kind_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.CommitId) {
    @@ -560,6 +538,7 @@ public Builder mergeFrom(org.tensorflow.proto.CommitId other) {
           if (other == org.tensorflow.proto.CommitId.getDefaultInstance()) return this;
           if (!other.getSnapshot().isEmpty()) {
             snapshot_ = other.snapshot_;
    +        bitField0_ |= 0x00000004;
             onChanged();
           }
           if (other.getPendingChangelist() != 0L) {
    @@ -619,12 +598,12 @@ public Builder mergeFrom(
                 } // case 18
                 case 26: {
                   snapshot_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 case 32: {
                   pendingChangelist_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 32
                 default: {
    @@ -657,6 +636,7 @@ public Builder clearKind() {
           return this;
         }
     
    +    private int bitField0_;
     
         /**
          * 
    @@ -693,6 +673,7 @@ public long getChangelist() {
          * @return This builder for chaining.
          */
         public Builder setChangelist(long value) {
    +
           kindCase_ = 1;
           kind_ = value;
           onChanged();
    @@ -775,10 +756,8 @@ public java.lang.String getHash() {
          */
         public Builder setHash(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  kindCase_ = 2;
    +      if (value == null) { throw new NullPointerException(); }
    +      kindCase_ = 2;
           kind_ = value;
           onChanged();
           return this;
    @@ -802,10 +781,8 @@ public Builder clearHash() {
          */
         public Builder setHashBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           kindCase_ = 2;
           kind_ = value;
           onChanged();
    @@ -868,11 +845,9 @@ public java.lang.String getSnapshot() {
          */
         public Builder setSnapshot(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           snapshot_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -886,8 +861,8 @@ public Builder setSnapshot(
          * @return This builder for chaining.
          */
         public Builder clearSnapshot() {
    -      
           snapshot_ = getDefaultInstance().getSnapshot();
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -903,12 +878,10 @@ public Builder clearSnapshot() {
          */
         public Builder setSnapshotBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           snapshot_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -936,8 +909,9 @@ public long getPendingChangelist() {
          * @return This builder for chaining.
          */
         public Builder setPendingChangelist(long value) {
    -      
    +
           pendingChangelist_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -950,23 +924,11 @@ public Builder setPendingChangelist(long value) {
          * @return This builder for chaining.
          */
         public Builder clearPendingChangelist() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           pendingChangelist_ = 0L;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.CommitId)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CommitIdOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CommitIdOrBuilder.java
    index 1b124825e66..0975a2c537f 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CommitIdOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CommitIdOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -75,5 +77,5 @@ public interface CommitIdOrBuilder extends
        */
       long getPendingChangelist();
     
    -  public org.tensorflow.proto.CommitId.KindCase getKindCase();
    +  org.tensorflow.proto.CommitId.KindCase getKindCase();
     }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CompositeTensorVariant.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CompositeTensorVariant.java
    index a2630d9ac0e..80fd1875558 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CompositeTensorVariant.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CompositeTensorVariant.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/composite_tensor_variant.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class CompositeTensorVariant {
       private CompositeTensorVariant() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      CompositeTensorVariant.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -36,6 +47,7 @@ public interface CompositeTensorVariantMetadataOrBuilder extends
       /**
        * 
        * Metadata for CompositeTensorVariant, used when serializing as Variant.
    +   *
        * We define a new message here (rather than directly using TypeSpecProto for
        * the metadata string) to retain flexibility to change the metadata encoding
        * to support additional features.
    @@ -44,42 +56,40 @@ public interface CompositeTensorVariantMetadataOrBuilder extends
        * Protobuf type {@code tensorflow.CompositeTensorVariantMetadata}
        */
       public static final class CompositeTensorVariantMetadata extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.CompositeTensorVariantMetadata)
           CompositeTensorVariantMetadataOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        CompositeTensorVariantMetadata.class.getName());
    +    }
         // Use CompositeTensorVariantMetadata.newBuilder() to construct.
    -    private CompositeTensorVariantMetadata(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private CompositeTensorVariantMetadata(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private CompositeTensorVariantMetadata() {
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new CompositeTensorVariantMetadata();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.CompositeTensorVariant.internal_static_tensorflow_CompositeTensorVariantMetadata_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.CompositeTensorVariant.internal_static_tensorflow_CompositeTensorVariantMetadata_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
                   org.tensorflow.proto.CompositeTensorVariant.CompositeTensorVariantMetadata.class, org.tensorflow.proto.CompositeTensorVariant.CompositeTensorVariantMetadata.Builder.class);
         }
     
    +    private int bitField0_;
         public static final int TYPE_SPEC_PROTO_FIELD_NUMBER = 1;
         private org.tensorflow.proto.Struct.TypeSpecProto typeSpecProto_;
         /**
    @@ -88,7 +98,7 @@ protected java.lang.Object newInstance(
          */
         @java.lang.Override
         public boolean hasTypeSpecProto() {
    -      return typeSpecProto_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * .tensorflow.TypeSpecProto type_spec_proto = 1;
    @@ -103,7 +113,7 @@ public org.tensorflow.proto.Struct.TypeSpecProto getTypeSpecProto() {
          */
         @java.lang.Override
         public org.tensorflow.proto.Struct.TypeSpecProtoOrBuilder getTypeSpecProtoOrBuilder() {
    -      return getTypeSpecProto();
    +      return typeSpecProto_ == null ? org.tensorflow.proto.Struct.TypeSpecProto.getDefaultInstance() : typeSpecProto_;
         }
     
         private byte memoizedIsInitialized = -1;
    @@ -120,7 +130,7 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (typeSpecProto_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(1, getTypeSpecProto());
           }
           getUnknownFields().writeTo(output);
    @@ -132,7 +142,7 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (typeSpecProto_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(1, getTypeSpecProto());
           }
    @@ -210,39 +220,41 @@ public static org.tensorflow.proto.CompositeTensorVariant.CompositeTensorVariant
         }
         public static org.tensorflow.proto.CompositeTensorVariant.CompositeTensorVariantMetadata parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.CompositeTensorVariant.CompositeTensorVariantMetadata parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.CompositeTensorVariant.CompositeTensorVariantMetadata parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.CompositeTensorVariant.CompositeTensorVariantMetadata parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.CompositeTensorVariant.CompositeTensorVariantMetadata parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.CompositeTensorVariant.CompositeTensorVariantMetadata parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -262,13 +274,14 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
         /**
          * 
          * Metadata for CompositeTensorVariant, used when serializing as Variant.
    +     *
          * We define a new message here (rather than directly using TypeSpecProto for
          * the metadata string) to retain flexibility to change the metadata encoding
          * to support additional features.
    @@ -277,7 +290,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.CompositeTensorVariantMetadata}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.CompositeTensorVariantMetadata)
             org.tensorflow.proto.CompositeTensorVariant.CompositeTensorVariantMetadataOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -286,7 +299,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.CompositeTensorVariant.internal_static_tensorflow_CompositeTensorVariantMetadata_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -295,21 +308,27 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.CompositeTensorVariant.CompositeTensorVariantMetadata.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getTypeSpecProtoFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    -        if (typeSpecProtoBuilder_ == null) {
    -          typeSpecProto_ = null;
    -        } else {
    -          typeSpecProto_ = null;
    +        bitField0_ = 0;
    +        typeSpecProto_ = null;
    +        if (typeSpecProtoBuilder_ != null) {
    +          typeSpecProtoBuilder_.dispose();
               typeSpecProtoBuilder_ = null;
             }
             return this;
    @@ -338,47 +357,23 @@ public org.tensorflow.proto.CompositeTensorVariant.CompositeTensorVariantMetadat
           @java.lang.Override
           public org.tensorflow.proto.CompositeTensorVariant.CompositeTensorVariantMetadata buildPartial() {
             org.tensorflow.proto.CompositeTensorVariant.CompositeTensorVariantMetadata result = new org.tensorflow.proto.CompositeTensorVariant.CompositeTensorVariantMetadata(this);
    -        if (typeSpecProtoBuilder_ == null) {
    -          result.typeSpecProto_ = typeSpecProto_;
    -        } else {
    -          result.typeSpecProto_ = typeSpecProtoBuilder_.build();
    -        }
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.CompositeTensorVariant.CompositeTensorVariantMetadata result) {
    +        int from_bitField0_ = bitField0_;
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.typeSpecProto_ = typeSpecProtoBuilder_ == null
    +              ? typeSpecProto_
    +              : typeSpecProtoBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.CompositeTensorVariant.CompositeTensorVariantMetadata) {
    @@ -424,7 +419,7 @@ public Builder mergeFrom(
                     input.readMessage(
                         getTypeSpecProtoFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   default: {
    @@ -442,16 +437,17 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private org.tensorflow.proto.Struct.TypeSpecProto typeSpecProto_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.TypeSpecProto, org.tensorflow.proto.Struct.TypeSpecProto.Builder, org.tensorflow.proto.Struct.TypeSpecProtoOrBuilder> typeSpecProtoBuilder_;
           /**
            * .tensorflow.TypeSpecProto type_spec_proto = 1;
            * @return Whether the typeSpecProto field is set.
            */
           public boolean hasTypeSpecProto() {
    -        return typeSpecProtoBuilder_ != null || typeSpecProto_ != null;
    +        return ((bitField0_ & 0x00000001) != 0);
           }
           /**
            * .tensorflow.TypeSpecProto type_spec_proto = 1;
    @@ -473,11 +469,11 @@ public Builder setTypeSpecProto(org.tensorflow.proto.Struct.TypeSpecProto value)
                 throw new NullPointerException();
               }
               typeSpecProto_ = value;
    -          onChanged();
             } else {
               typeSpecProtoBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000001;
    +        onChanged();
             return this;
           }
           /**
    @@ -487,11 +483,11 @@ public Builder setTypeSpecProto(
               org.tensorflow.proto.Struct.TypeSpecProto.Builder builderForValue) {
             if (typeSpecProtoBuilder_ == null) {
               typeSpecProto_ = builderForValue.build();
    -          onChanged();
             } else {
               typeSpecProtoBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000001;
    +        onChanged();
             return this;
           }
           /**
    @@ -499,38 +495,40 @@ public Builder setTypeSpecProto(
            */
           public Builder mergeTypeSpecProto(org.tensorflow.proto.Struct.TypeSpecProto value) {
             if (typeSpecProtoBuilder_ == null) {
    -          if (typeSpecProto_ != null) {
    -            typeSpecProto_ =
    -              org.tensorflow.proto.Struct.TypeSpecProto.newBuilder(typeSpecProto_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000001) != 0) &&
    +            typeSpecProto_ != null &&
    +            typeSpecProto_ != org.tensorflow.proto.Struct.TypeSpecProto.getDefaultInstance()) {
    +            getTypeSpecProtoBuilder().mergeFrom(value);
               } else {
                 typeSpecProto_ = value;
               }
    -          onChanged();
             } else {
               typeSpecProtoBuilder_.mergeFrom(value);
             }
    -
    +        if (typeSpecProto_ != null) {
    +          bitField0_ |= 0x00000001;
    +          onChanged();
    +        }
             return this;
           }
           /**
            * .tensorflow.TypeSpecProto type_spec_proto = 1;
            */
           public Builder clearTypeSpecProto() {
    -        if (typeSpecProtoBuilder_ == null) {
    -          typeSpecProto_ = null;
    -          onChanged();
    -        } else {
    -          typeSpecProto_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000001);
    +        typeSpecProto_ = null;
    +        if (typeSpecProtoBuilder_ != null) {
    +          typeSpecProtoBuilder_.dispose();
               typeSpecProtoBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
            * .tensorflow.TypeSpecProto type_spec_proto = 1;
            */
           public org.tensorflow.proto.Struct.TypeSpecProto.Builder getTypeSpecProtoBuilder() {
    -        
    +        bitField0_ |= 0x00000001;
             onChanged();
             return getTypeSpecProtoFieldBuilder().getBuilder();
           }
    @@ -548,11 +546,11 @@ public org.tensorflow.proto.Struct.TypeSpecProtoOrBuilder getTypeSpecProtoOrBuil
           /**
            * .tensorflow.TypeSpecProto type_spec_proto = 1;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.TypeSpecProto, org.tensorflow.proto.Struct.TypeSpecProto.Builder, org.tensorflow.proto.Struct.TypeSpecProtoOrBuilder> 
               getTypeSpecProtoFieldBuilder() {
             if (typeSpecProtoBuilder_ == null) {
    -          typeSpecProtoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          typeSpecProtoBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.Struct.TypeSpecProto, org.tensorflow.proto.Struct.TypeSpecProto.Builder, org.tensorflow.proto.Struct.TypeSpecProtoOrBuilder>(
                       getTypeSpecProto(),
                       getParentForChildren(),
    @@ -561,18 +559,6 @@ public org.tensorflow.proto.Struct.TypeSpecProtoOrBuilder getTypeSpecProtoOrBuil
             }
             return typeSpecProtoBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.CompositeTensorVariantMetadata)
         }
    @@ -628,7 +614,7 @@ public org.tensorflow.proto.CompositeTensorVariant.CompositeTensorVariantMetadat
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_CompositeTensorVariantMetadata_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_CompositeTensorVariantMetadata_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -656,9 +642,10 @@ public org.tensorflow.proto.CompositeTensorVariant.CompositeTensorVariantMetadat
         internal_static_tensorflow_CompositeTensorVariantMetadata_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_CompositeTensorVariantMetadata_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_CompositeTensorVariantMetadata_descriptor,
             new java.lang.String[] { "TypeSpecProto", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.Struct.getDescriptor();
       }
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CondContextDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CondContextDef.java
    index e985c3683cc..a75ca0e43fb 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CondContextDef.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CondContextDef.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/control_flow.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,12 +13,21 @@
      * Protobuf type {@code tensorflow.CondContextDef}
      */
     public final class CondContextDef extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.CondContextDef)
         CondContextDefOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      CondContextDef.class.getName());
    +  }
       // Use CondContextDef.newBuilder() to construct.
    -  private CondContextDef(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private CondContextDef(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private CondContextDef() {
    @@ -26,33 +37,23 @@ private CondContextDef() {
         nestedContexts_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new CondContextDef();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ControlFlowProtos.internal_static_tensorflow_CondContextDef_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ControlFlowProtos.internal_static_tensorflow_CondContextDef_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.CondContextDef.class, org.tensorflow.proto.CondContextDef.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int CONTEXT_NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object contextName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object contextName_ = "";
       /**
        * 
        * Name of the context.
    @@ -98,7 +99,8 @@ public java.lang.String getContextName() {
       }
     
       public static final int PRED_NAME_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object predName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object predName_ = "";
       /**
        * 
        * Name of the pred tensor.
    @@ -144,7 +146,8 @@ public java.lang.String getPredName() {
       }
     
       public static final int PIVOT_NAME_FIELD_NUMBER = 3;
    -  private volatile java.lang.Object pivotName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object pivotName_ = "";
       /**
        * 
        * Name of the pivot tensor.
    @@ -190,7 +193,7 @@ public java.lang.String getPivotName() {
       }
     
       public static final int BRANCH_FIELD_NUMBER = 4;
    -  private int branch_;
    +  private int branch_ = 0;
       /**
        * 
        * Branch prediction. 0 or 1.
    @@ -216,7 +219,7 @@ public int getBranch() {
        */
       @java.lang.Override
       public boolean hasValuesDef() {
    -    return valuesDef_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -239,10 +242,11 @@ public org.tensorflow.proto.ValuesDef getValuesDef() {
        */
       @java.lang.Override
       public org.tensorflow.proto.ValuesDefOrBuilder getValuesDefOrBuilder() {
    -    return getValuesDef();
    +    return valuesDef_ == null ? org.tensorflow.proto.ValuesDef.getDefaultInstance() : valuesDef_;
       }
     
       public static final int NESTED_CONTEXTS_FIELD_NUMBER = 6;
    +  @SuppressWarnings("serial")
       private java.util.List nestedContexts_;
       /**
        * 
    @@ -316,19 +320,19 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(contextName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, contextName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(contextName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, contextName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(predName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, predName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(predName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, predName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pivotName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, pivotName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pivotName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, pivotName_);
         }
         if (branch_ != 0) {
           output.writeInt32(4, branch_);
         }
    -    if (valuesDef_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(5, getValuesDef());
         }
         for (int i = 0; i < nestedContexts_.size(); i++) {
    @@ -343,20 +347,20 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(contextName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, contextName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(contextName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, contextName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(predName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, predName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(predName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, predName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pivotName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, pivotName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pivotName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, pivotName_);
         }
         if (branch_ != 0) {
           size += com.google.protobuf.CodedOutputStream
             .computeInt32Size(4, branch_);
         }
    -    if (valuesDef_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(5, getValuesDef());
         }
    @@ -460,39 +464,41 @@ public static org.tensorflow.proto.CondContextDef parseFrom(
       }
       public static org.tensorflow.proto.CondContextDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.CondContextDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.CondContextDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.CondContextDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.CondContextDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.CondContextDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -512,7 +518,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -524,7 +530,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.CondContextDef}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.CondContextDef)
           org.tensorflow.proto.CondContextDefOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -533,7 +539,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ControlFlowProtos.internal_static_tensorflow_CondContextDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -542,29 +548,32 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.CondContextDef.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getValuesDefFieldBuilder();
    +        getNestedContextsFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           contextName_ = "";
    -
           predName_ = "";
    -
           pivotName_ = "";
    -
           branch_ = 0;
    -
    -      if (valuesDefBuilder_ == null) {
    -        valuesDef_ = null;
    -      } else {
    -        valuesDef_ = null;
    +      valuesDef_ = null;
    +      if (valuesDefBuilder_ != null) {
    +        valuesDefBuilder_.dispose();
             valuesDefBuilder_ = null;
           }
           if (nestedContextsBuilder_ == null) {
    @@ -573,7 +582,7 @@ public Builder clear() {
             nestedContexts_ = null;
             nestedContextsBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000020);
           return this;
         }
     
    @@ -600,61 +609,48 @@ public org.tensorflow.proto.CondContextDef build() {
         @java.lang.Override
         public org.tensorflow.proto.CondContextDef buildPartial() {
           org.tensorflow.proto.CondContextDef result = new org.tensorflow.proto.CondContextDef(this);
    -      int from_bitField0_ = bitField0_;
    -      result.contextName_ = contextName_;
    -      result.predName_ = predName_;
    -      result.pivotName_ = pivotName_;
    -      result.branch_ = branch_;
    -      if (valuesDefBuilder_ == null) {
    -        result.valuesDef_ = valuesDef_;
    -      } else {
    -        result.valuesDef_ = valuesDefBuilder_.build();
    -      }
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.CondContextDef result) {
           if (nestedContextsBuilder_ == null) {
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((bitField0_ & 0x00000020) != 0)) {
               nestedContexts_ = java.util.Collections.unmodifiableList(nestedContexts_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000020);
             }
             result.nestedContexts_ = nestedContexts_;
           } else {
             result.nestedContexts_ = nestedContextsBuilder_.build();
           }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.CondContextDef result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.contextName_ = contextName_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.predName_ = predName_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.pivotName_ = pivotName_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.branch_ = branch_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.valuesDef_ = valuesDefBuilder_ == null
    +            ? valuesDef_
    +            : valuesDefBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.CondContextDef) {
    @@ -669,14 +665,17 @@ public Builder mergeFrom(org.tensorflow.proto.CondContextDef other) {
           if (other == org.tensorflow.proto.CondContextDef.getDefaultInstance()) return this;
           if (!other.getContextName().isEmpty()) {
             contextName_ = other.contextName_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getPredName().isEmpty()) {
             predName_ = other.predName_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (!other.getPivotName().isEmpty()) {
             pivotName_ = other.pivotName_;
    +        bitField0_ |= 0x00000004;
             onChanged();
           }
           if (other.getBranch() != 0) {
    @@ -689,7 +688,7 @@ public Builder mergeFrom(org.tensorflow.proto.CondContextDef other) {
             if (!other.nestedContexts_.isEmpty()) {
               if (nestedContexts_.isEmpty()) {
                 nestedContexts_ = other.nestedContexts_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000020);
               } else {
                 ensureNestedContextsIsMutable();
                 nestedContexts_.addAll(other.nestedContexts_);
    @@ -702,9 +701,9 @@ public Builder mergeFrom(org.tensorflow.proto.CondContextDef other) {
                 nestedContextsBuilder_.dispose();
                 nestedContextsBuilder_ = null;
                 nestedContexts_ = other.nestedContexts_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000020);
                 nestedContextsBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getNestedContextsFieldBuilder() : null;
               } else {
                 nestedContextsBuilder_.addAllMessages(other.nestedContexts_);
    @@ -739,29 +738,29 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   contextName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   predName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
                   pivotName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 case 32: {
                   branch_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 32
                 case 42: {
                   input.readMessage(
                       getValuesDefFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 42
                 case 50: {
    @@ -847,11 +846,9 @@ public java.lang.String getContextName() {
          */
         public Builder setContextName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           contextName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -864,8 +861,8 @@ public Builder setContextName(
          * @return This builder for chaining.
          */
         public Builder clearContextName() {
    -      
           contextName_ = getDefaultInstance().getContextName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -880,12 +877,10 @@ public Builder clearContextName() {
          */
         public Builder setContextNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           contextName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -943,11 +938,9 @@ public java.lang.String getPredName() {
          */
         public Builder setPredName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           predName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -960,8 +953,8 @@ public Builder setPredName(
          * @return This builder for chaining.
          */
         public Builder clearPredName() {
    -      
           predName_ = getDefaultInstance().getPredName();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -976,12 +969,10 @@ public Builder clearPredName() {
          */
         public Builder setPredNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           predName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1039,11 +1030,9 @@ public java.lang.String getPivotName() {
          */
         public Builder setPivotName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           pivotName_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1056,8 +1045,8 @@ public Builder setPivotName(
          * @return This builder for chaining.
          */
         public Builder clearPivotName() {
    -      
           pivotName_ = getDefaultInstance().getPivotName();
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -1072,12 +1061,10 @@ public Builder clearPivotName() {
          */
         public Builder setPivotNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           pivotName_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1105,8 +1092,9 @@ public int getBranch() {
          * @return This builder for chaining.
          */
         public Builder setBranch(int value) {
    -      
    +
           branch_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1119,14 +1107,14 @@ public Builder setBranch(int value) {
          * @return This builder for chaining.
          */
         public Builder clearBranch() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           branch_ = 0;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.ValuesDef valuesDef_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.ValuesDef, org.tensorflow.proto.ValuesDef.Builder, org.tensorflow.proto.ValuesDefOrBuilder> valuesDefBuilder_;
         /**
          * 
    @@ -1137,7 +1125,7 @@ public Builder clearBranch() {
          * @return Whether the valuesDef field is set.
          */
         public boolean hasValuesDef() {
    -      return valuesDefBuilder_ != null || valuesDef_ != null;
    +      return ((bitField0_ & 0x00000010) != 0);
         }
         /**
          * 
    @@ -1167,11 +1155,11 @@ public Builder setValuesDef(org.tensorflow.proto.ValuesDef value) {
               throw new NullPointerException();
             }
             valuesDef_ = value;
    -        onChanged();
           } else {
             valuesDefBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000010;
    +      onChanged();
           return this;
         }
         /**
    @@ -1185,11 +1173,11 @@ public Builder setValuesDef(
             org.tensorflow.proto.ValuesDef.Builder builderForValue) {
           if (valuesDefBuilder_ == null) {
             valuesDef_ = builderForValue.build();
    -        onChanged();
           } else {
             valuesDefBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000010;
    +      onChanged();
           return this;
         }
         /**
    @@ -1201,17 +1189,20 @@ public Builder setValuesDef(
          */
         public Builder mergeValuesDef(org.tensorflow.proto.ValuesDef value) {
           if (valuesDefBuilder_ == null) {
    -        if (valuesDef_ != null) {
    -          valuesDef_ =
    -            org.tensorflow.proto.ValuesDef.newBuilder(valuesDef_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000010) != 0) &&
    +          valuesDef_ != null &&
    +          valuesDef_ != org.tensorflow.proto.ValuesDef.getDefaultInstance()) {
    +          getValuesDefBuilder().mergeFrom(value);
             } else {
               valuesDef_ = value;
             }
    -        onChanged();
           } else {
             valuesDefBuilder_.mergeFrom(value);
           }
    -
    +      if (valuesDef_ != null) {
    +        bitField0_ |= 0x00000010;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -1222,14 +1213,13 @@ public Builder mergeValuesDef(org.tensorflow.proto.ValuesDef value) {
          * .tensorflow.ValuesDef values_def = 5;
          */
         public Builder clearValuesDef() {
    -      if (valuesDefBuilder_ == null) {
    -        valuesDef_ = null;
    -        onChanged();
    -      } else {
    -        valuesDef_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000010);
    +      valuesDef_ = null;
    +      if (valuesDefBuilder_ != null) {
    +        valuesDefBuilder_.dispose();
             valuesDefBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -1240,7 +1230,7 @@ public Builder clearValuesDef() {
          * .tensorflow.ValuesDef values_def = 5;
          */
         public org.tensorflow.proto.ValuesDef.Builder getValuesDefBuilder() {
    -      
    +      bitField0_ |= 0x00000010;
           onChanged();
           return getValuesDefFieldBuilder().getBuilder();
         }
    @@ -1266,11 +1256,11 @@ public org.tensorflow.proto.ValuesDefOrBuilder getValuesDefOrBuilder() {
          *
          * .tensorflow.ValuesDef values_def = 5;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.ValuesDef, org.tensorflow.proto.ValuesDef.Builder, org.tensorflow.proto.ValuesDefOrBuilder> 
             getValuesDefFieldBuilder() {
           if (valuesDefBuilder_ == null) {
    -        valuesDefBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        valuesDefBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.ValuesDef, org.tensorflow.proto.ValuesDef.Builder, org.tensorflow.proto.ValuesDefOrBuilder>(
                     getValuesDef(),
                     getParentForChildren(),
    @@ -1283,13 +1273,13 @@ public org.tensorflow.proto.ValuesDefOrBuilder getValuesDefOrBuilder() {
         private java.util.List nestedContexts_ =
           java.util.Collections.emptyList();
         private void ensureNestedContextsIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!((bitField0_ & 0x00000020) != 0)) {
             nestedContexts_ = new java.util.ArrayList(nestedContexts_);
    -        bitField0_ |= 0x00000001;
    +        bitField0_ |= 0x00000020;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ControlFlowContextDef, org.tensorflow.proto.ControlFlowContextDef.Builder, org.tensorflow.proto.ControlFlowContextDefOrBuilder> nestedContextsBuilder_;
     
         /**
    @@ -1479,7 +1469,7 @@ public Builder addAllNestedContexts(
         public Builder clearNestedContexts() {
           if (nestedContextsBuilder_ == null) {
             nestedContexts_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000020);
             onChanged();
           } else {
             nestedContextsBuilder_.clear();
    @@ -1577,32 +1567,20 @@ public org.tensorflow.proto.ControlFlowContextDef.Builder addNestedContextsBuild
              getNestedContextsBuilderList() {
           return getNestedContextsFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ControlFlowContextDef, org.tensorflow.proto.ControlFlowContextDef.Builder, org.tensorflow.proto.ControlFlowContextDefOrBuilder> 
             getNestedContextsFieldBuilder() {
           if (nestedContextsBuilder_ == null) {
    -        nestedContextsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        nestedContextsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.ControlFlowContextDef, org.tensorflow.proto.ControlFlowContextDef.Builder, org.tensorflow.proto.ControlFlowContextDefOrBuilder>(
                     nestedContexts_,
    -                ((bitField0_ & 0x00000001) != 0),
    +                ((bitField0_ & 0x00000020) != 0),
                     getParentForChildren(),
                     isClean());
             nestedContexts_ = null;
           }
           return nestedContextsBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.CondContextDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CondContextDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CondContextDefOrBuilder.java
    index c995a5f46a1..e136d8849da 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CondContextDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CondContextDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/control_flow.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ConfigProto.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ConfigProto.java
    index 04d15e4a308..08d6ec83d47 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ConfigProto.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ConfigProto.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -12,31 +14,29 @@
      * Protobuf type {@code tensorflow.ConfigProto}
      */
     public final class ConfigProto extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.ConfigProto)
         ConfigProtoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ConfigProto.class.getName());
    +  }
       // Use ConfigProto.newBuilder() to construct.
    -  private ConfigProto(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private ConfigProto(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private ConfigProto() {
         sessionInterOpThreadPool_ = java.util.Collections.emptyList();
    -    deviceFilters_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -  }
    -
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new ConfigProto();
    +    deviceFilters_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
       }
     
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_ConfigProto_descriptor;
    @@ -44,7 +44,7 @@ protected java.lang.Object newInstance(
     
       @SuppressWarnings({"rawtypes"})
       @java.lang.Override
    -  protected com.google.protobuf.MapField internalGetMapField(
    +  protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
           int number) {
         switch (number) {
           case 1:
    @@ -55,7 +55,7 @@ protected com.google.protobuf.MapField internalGetMapField(
         }
       }
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_ConfigProto_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -159,6 +159,7 @@ public interface ExperimentalOrBuilder extends
          * In the following, session state means the value of a variable, elements
          * in a hash table, or any other resource, accessible by worker sessions
          * held by a TF server.
    +     *
          * When ClusterSpec propagation is enabled, the value of
          * isolate_session_state is ignored when deciding whether to share session
          * states in a TF server (for backwards compatibility reasons).
    @@ -166,11 +167,13 @@ public interface ExperimentalOrBuilder extends
          * states are shared.
          * - If share_session_state_in_clusterspec_propagation is false, session
          * states are isolated.
    +     *
          * When clusterspec propagation is not used, the value of
          * share_session_state_in_clusterspec_propagation is ignored when deciding
          * whether to share session states in a TF server.
          * - If isolate_session_state is true, session states are isolated.
          * - If isolate_session_state is false, session states are shared.
    +     *
          * TODO(b/129330037): Add a single API that consistently treats
          * isolate_session_state and ClusterSpec propagation.
          * 
    @@ -207,8 +210,10 @@ public interface ExperimentalOrBuilder extends /** *
          * Metadata about the session.
    +     *
          * If set, this can be used by the runtime and the Ops for debugging,
          * monitoring, etc.
    +     *
          * NOTE: This is currently used and propagated only by the direct session
          * and EagerContext.
          * 
    @@ -220,8 +225,10 @@ public interface ExperimentalOrBuilder extends /** *
          * Metadata about the session.
    +     *
          * If set, this can be used by the runtime and the Ops for debugging,
          * monitoring, etc.
    +     *
          * NOTE: This is currently used and propagated only by the direct session
          * and EagerContext.
          * 
    @@ -233,8 +240,10 @@ public interface ExperimentalOrBuilder extends /** *
          * Metadata about the session.
    +     *
          * If set, this can be used by the runtime and the Ops for debugging,
          * monitoring, etc.
    +     *
          * NOTE: This is currently used and propagated only by the direct session
          * and EagerContext.
          * 
    @@ -247,6 +256,7 @@ public interface ExperimentalOrBuilder extends *
          * If true, the session may treat the graph as being static for optimization
          * purposes.
    +     *
          * If this option is set to true when a session is created, the full
          * GraphDef must be passed in a single call to Session::Create(), and
          * Session::Extend() may not be supported.
    @@ -262,6 +272,7 @@ public interface ExperimentalOrBuilder extends
          * Whether to enable the MLIR-based TF->XLA bridge. This is only used if set
          * to true. Default value or false is ignored. Use mlir_bridge_rollout for
          * finer control.
    +     *
          * If this option is set to true when a session is created, MLIR is used to
          * perform the set of graph transformations to put the graph in a form that
          * can be executed with delegation of some computations to an accelerator.
    @@ -298,6 +309,7 @@ public interface ExperimentalOrBuilder extends
         /**
          * 
          * Whether to enable the MLIR-based Graph optimizations.
    +     *
          * This will become a part of standard Tensorflow graph optimization
          * pipeline, currently this is only used for gradual migration and testing
          * new passes that are replacing existing optimizations in Grappler.
    @@ -312,6 +324,7 @@ public interface ExperimentalOrBuilder extends
          * 
          * If true, the session will not store an additional copy of the graph for
          * each subgraph.
    +     *
          * If this option is set to true when a session is created, the
          * `RunOptions.output_partition_graphs` options must not be set.
          * 
    @@ -325,6 +338,7 @@ public interface ExperimentalOrBuilder extends *
          * Minimum number of batches run through the XLA graph before XLA fusion
          * autotuner is enabled. Default value of zero disables the autotuner.
    +     *
          * The XLA fusion autotuner can improve performance by executing a heuristic
          * search on the compiler parameters.
          * 
    @@ -354,6 +368,17 @@ public interface ExperimentalOrBuilder extends */ boolean getEnableMultiHost(); + /** + *
    +     * If true, use ifrt as the backend for TFRT. This is only used when
    +     * `use_tfrt` is true.
    +     * 
    + * + * bool tfrt_use_ifrt = 32; + * @return The tfrtUseIfrt. + */ + boolean getTfrtUseIfrt(); + /** *
          * Port for the Pathways server. Ignored if enable_multi_host=false.
    @@ -413,7 +438,7 @@ public interface ExperimentalOrBuilder extends
         /**
          * 
          * Provides a hint to XLA auto clustering to prefer forming a single large
    -     * cluster that encompases most of the graph.
    +     * cluster that encompasses most of the graph.
          * 
    * * bool xla_prefer_single_graph_cluster = 22; @@ -452,9 +477,11 @@ public interface ExperimentalOrBuilder extends *
          * If true, the session will treat the graph as being non-static for
          * optimization purposes.
    +     *
          * If this option is set to true when a session is created, the full
          * GraphDef will be retained to enable calls to Session::Extend().
          * Calling Extend() without setting this flag will result in errors.
    +     *
          * This option is meant to replace `optimize_for_static_graph` and it
          * aims to negate its value.
          * 
    @@ -475,23 +502,54 @@ public interface ExperimentalOrBuilder extends * @return The disableEagerExecutorStreamingEnqueue. */ boolean getDisableEagerExecutorStreamingEnqueue(); + + /** + *
    +     * If true, the function library runtime will be finalized when the session
    +     * is finalized.
    +     * 
    + * + * bool finalize_function_library_runtime = 33; + * @return The finalizeFunctionLibraryRuntime. + */ + boolean getFinalizeFunctionLibraryRuntime(); + + /** + *
    +     * If true, the resource manager will be finalized when the session
    +     * is finalized.
    +     * 
    + * + * bool finalize_resource_manager = 34; + * @return The finalizeResourceManager. + */ + boolean getFinalizeResourceManager(); } /** *
        * Everything inside Experimental is subject to change and is not subject
        * to API stability guarantees in
    -   * https://www.tensorflow.org/guide/version_compat.
    +   * https://www.tensorflow.org/guide/versions.
        * 
    * * Protobuf type {@code tensorflow.ConfigProto.Experimental} */ public static final class Experimental extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.ConfigProto.Experimental) ExperimentalOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + Experimental.class.getName()); + } // Use Experimental.newBuilder() to construct. - private Experimental(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private Experimental(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private Experimental() { @@ -500,25 +558,13 @@ private Experimental() { mlirBridgeRollout_ = 0; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new Experimental(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_ConfigProto_Experimental_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_ConfigProto_Experimental_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -562,6 +608,15 @@ public enum MlirBridgeRollout UNRECOGNIZED(-1), ; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + MlirBridgeRollout.class.getName()); + } /** *
            * If this field is left unspecified, the MLIR bridge may be selectively
    @@ -672,8 +727,10 @@ private MlirBridgeRollout(int value) {
           // @@protoc_insertion_point(enum_scope:tensorflow.ConfigProto.Experimental.MlirBridgeRollout)
         }
     
    +    private int bitField0_;
         public static final int COLLECTIVE_GROUP_LEADER_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object collectiveGroupLeader_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object collectiveGroupLeader_ = "";
         /**
          * 
          * Task name for group resolution.
    @@ -719,7 +776,8 @@ public java.lang.String getCollectiveGroupLeader() {
         }
     
         public static final int EXECUTOR_TYPE_FIELD_NUMBER = 3;
    -    private volatile java.lang.Object executorType_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object executorType_ = "";
         /**
          * 
          * Which executor to use, the default executor will be used
    @@ -767,7 +825,7 @@ public java.lang.String getExecutorType() {
         }
     
         public static final int RECV_BUF_MAX_CHUNK_FIELD_NUMBER = 4;
    -    private int recvBufMaxChunk_;
    +    private int recvBufMaxChunk_ = 0;
         /**
          * 
          * Guidance to formatting of large RecvBuf fields for transfer.
    @@ -784,7 +842,7 @@ public int getRecvBufMaxChunk() {
         }
     
         public static final int USE_NUMA_AFFINITY_FIELD_NUMBER = 5;
    -    private boolean useNumaAffinity_;
    +    private boolean useNumaAffinity_ = false;
         /**
          * 
          * If true, and supported by the platform, the runtime will attempt to
    @@ -801,7 +859,7 @@ public boolean getUseNumaAffinity() {
         }
     
         public static final int COLLECTIVE_DETERMINISTIC_SEQUENTIAL_EXECUTION_FIELD_NUMBER = 6;
    -    private boolean collectiveDeterministicSequentialExecution_;
    +    private boolean collectiveDeterministicSequentialExecution_ = false;
         /**
          * 
          * If true, make collective op execution order sequential and deterministic
    @@ -817,7 +875,7 @@ public boolean getCollectiveDeterministicSequentialExecution() {
         }
     
         public static final int COLLECTIVE_NCCL_FIELD_NUMBER = 7;
    -    private boolean collectiveNccl_;
    +    private boolean collectiveNccl_ = false;
         /**
          * 
          * If true, use NCCL for CollectiveOps.  This feature is highly
    @@ -833,12 +891,13 @@ public boolean getCollectiveNccl() {
         }
     
         public static final int SHARE_SESSION_STATE_IN_CLUSTERSPEC_PROPAGATION_FIELD_NUMBER = 8;
    -    private boolean shareSessionStateInClusterspecPropagation_;
    +    private boolean shareSessionStateInClusterspecPropagation_ = false;
         /**
          * 
          * In the following, session state means the value of a variable, elements
          * in a hash table, or any other resource, accessible by worker sessions
          * held by a TF server.
    +     *
          * When ClusterSpec propagation is enabled, the value of
          * isolate_session_state is ignored when deciding whether to share session
          * states in a TF server (for backwards compatibility reasons).
    @@ -846,11 +905,13 @@ public boolean getCollectiveNccl() {
          * states are shared.
          * - If share_session_state_in_clusterspec_propagation is false, session
          * states are isolated.
    +     *
          * When clusterspec propagation is not used, the value of
          * share_session_state_in_clusterspec_propagation is ignored when deciding
          * whether to share session states in a TF server.
          * - If isolate_session_state is true, session states are isolated.
          * - If isolate_session_state is false, session states are shared.
    +     *
          * TODO(b/129330037): Add a single API that consistently treats
          * isolate_session_state and ClusterSpec propagation.
          * 
    @@ -864,7 +925,7 @@ public boolean getShareSessionStateInClusterspecPropagation() { } public static final int DISABLE_THREAD_SPINNING_FIELD_NUMBER = 9; - private boolean disableThreadSpinning_; + private boolean disableThreadSpinning_ = false; /** *
          * If using a direct session, disable spinning while waiting for work in
    @@ -882,7 +943,7 @@ public boolean getDisableThreadSpinning() {
         }
     
         public static final int SHARE_CLUSTER_DEVICES_IN_SESSION_FIELD_NUMBER = 10;
    -    private boolean shareClusterDevicesInSession_;
    +    private boolean shareClusterDevicesInSession_ = false;
         /**
          * 
          * This was promoted to a non-experimental API. Please use
    @@ -902,8 +963,10 @@ public boolean getShareClusterDevicesInSession() {
         /**
          * 
          * Metadata about the session.
    +     *
          * If set, this can be used by the runtime and the Ops for debugging,
          * monitoring, etc.
    +     *
          * NOTE: This is currently used and propagated only by the direct session
          * and EagerContext.
          * 
    @@ -913,13 +976,15 @@ public boolean getShareClusterDevicesInSession() { */ @java.lang.Override public boolean hasSessionMetadata() { - return sessionMetadata_ != null; + return ((bitField0_ & 0x00000001) != 0); } /** *
          * Metadata about the session.
    +     *
          * If set, this can be used by the runtime and the Ops for debugging,
          * monitoring, etc.
    +     *
          * NOTE: This is currently used and propagated only by the direct session
          * and EagerContext.
          * 
    @@ -934,8 +999,10 @@ public org.tensorflow.proto.SessionMetadata getSessionMetadata() { /** *
          * Metadata about the session.
    +     *
          * If set, this can be used by the runtime and the Ops for debugging,
          * monitoring, etc.
    +     *
          * NOTE: This is currently used and propagated only by the direct session
          * and EagerContext.
          * 
    @@ -944,15 +1011,16 @@ public org.tensorflow.proto.SessionMetadata getSessionMetadata() { */ @java.lang.Override public org.tensorflow.proto.SessionMetadataOrBuilder getSessionMetadataOrBuilder() { - return getSessionMetadata(); + return sessionMetadata_ == null ? org.tensorflow.proto.SessionMetadata.getDefaultInstance() : sessionMetadata_; } public static final int OPTIMIZE_FOR_STATIC_GRAPH_FIELD_NUMBER = 12; - private boolean optimizeForStaticGraph_; + private boolean optimizeForStaticGraph_ = false; /** *
          * If true, the session may treat the graph as being static for optimization
          * purposes.
    +     *
          * If this option is set to true when a session is created, the full
          * GraphDef must be passed in a single call to Session::Create(), and
          * Session::Extend() may not be supported.
    @@ -967,12 +1035,13 @@ public boolean getOptimizeForStaticGraph() {
         }
     
         public static final int ENABLE_MLIR_BRIDGE_FIELD_NUMBER = 13;
    -    private boolean enableMlirBridge_;
    +    private boolean enableMlirBridge_ = false;
         /**
          * 
          * Whether to enable the MLIR-based TF->XLA bridge. This is only used if set
          * to true. Default value or false is ignored. Use mlir_bridge_rollout for
          * finer control.
    +     *
          * If this option is set to true when a session is created, MLIR is used to
          * perform the set of graph transformations to put the graph in a form that
          * can be executed with delegation of some computations to an accelerator.
    @@ -991,7 +1060,7 @@ public boolean getEnableMlirBridge() {
         }
     
         public static final int MLIR_BRIDGE_ROLLOUT_FIELD_NUMBER = 17;
    -    private int mlirBridgeRollout_;
    +    private int mlirBridgeRollout_ = 0;
         /**
          * 
          * Whether to enable the MLIR-based TF->XLA bridge.
    @@ -1012,16 +1081,16 @@ public boolean getEnableMlirBridge() {
          * @return The mlirBridgeRollout.
          */
         @java.lang.Override public org.tensorflow.proto.ConfigProto.Experimental.MlirBridgeRollout getMlirBridgeRollout() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.ConfigProto.Experimental.MlirBridgeRollout result = org.tensorflow.proto.ConfigProto.Experimental.MlirBridgeRollout.valueOf(mlirBridgeRollout_);
    +      org.tensorflow.proto.ConfigProto.Experimental.MlirBridgeRollout result = org.tensorflow.proto.ConfigProto.Experimental.MlirBridgeRollout.forNumber(mlirBridgeRollout_);
           return result == null ? org.tensorflow.proto.ConfigProto.Experimental.MlirBridgeRollout.UNRECOGNIZED : result;
         }
     
         public static final int ENABLE_MLIR_GRAPH_OPTIMIZATION_FIELD_NUMBER = 16;
    -    private boolean enableMlirGraphOptimization_;
    +    private boolean enableMlirGraphOptimization_ = false;
         /**
          * 
          * Whether to enable the MLIR-based Graph optimizations.
    +     *
          * This will become a part of standard Tensorflow graph optimization
          * pipeline, currently this is only used for gradual migration and testing
          * new passes that are replacing existing optimizations in Grappler.
    @@ -1036,11 +1105,12 @@ public boolean getEnableMlirGraphOptimization() {
         }
     
         public static final int DISABLE_OUTPUT_PARTITION_GRAPHS_FIELD_NUMBER = 14;
    -    private boolean disableOutputPartitionGraphs_;
    +    private boolean disableOutputPartitionGraphs_ = false;
         /**
          * 
          * If true, the session will not store an additional copy of the graph for
          * each subgraph.
    +     *
          * If this option is set to true when a session is created, the
          * `RunOptions.output_partition_graphs` options must not be set.
          * 
    @@ -1054,11 +1124,12 @@ public boolean getDisableOutputPartitionGraphs() { } public static final int XLA_FUSION_AUTOTUNER_THRESH_FIELD_NUMBER = 15; - private long xlaFusionAutotunerThresh_; + private long xlaFusionAutotunerThresh_ = 0L; /** *
          * Minimum number of batches run through the XLA graph before XLA fusion
          * autotuner is enabled. Default value of zero disables the autotuner.
    +     *
          * The XLA fusion autotuner can improve performance by executing a heuristic
          * search on the compiler parameters.
          * 
    @@ -1072,7 +1143,7 @@ public long getXlaFusionAutotunerThresh() { } public static final int USE_TFRT_FIELD_NUMBER = 18; - private boolean useTfrt_; + private boolean useTfrt_ = false; /** *
          * Whether runtime execution uses TFRT.
    @@ -1087,7 +1158,7 @@ public boolean getUseTfrt() {
         }
     
         public static final int ENABLE_MULTI_HOST_FIELD_NUMBER = 27;
    -    private boolean enableMultiHost_;
    +    private boolean enableMultiHost_ = false;
         /**
          * 
          * If true, use Pathways with TFRT API for multi host support.
    @@ -1101,8 +1172,24 @@ public boolean getEnableMultiHost() {
           return enableMultiHost_;
         }
     
    +    public static final int TFRT_USE_IFRT_FIELD_NUMBER = 32;
    +    private boolean tfrtUseIfrt_ = false;
    +    /**
    +     * 
    +     * If true, use ifrt as the backend for TFRT. This is only used when
    +     * `use_tfrt` is true.
    +     * 
    + * + * bool tfrt_use_ifrt = 32; + * @return The tfrtUseIfrt. + */ + @java.lang.Override + public boolean getTfrtUseIfrt() { + return tfrtUseIfrt_; + } + public static final int BACKEND_SERVER_PORT_FIELD_NUMBER = 28; - private int backendServerPort_; + private int backendServerPort_ = 0; /** *
          * Port for the Pathways server. Ignored if enable_multi_host=false.
    @@ -1117,7 +1204,7 @@ public int getBackendServerPort() {
         }
     
         public static final int TARGET_TPU_FIELD_NUMBER = 29;
    -    private boolean targetTpu_;
    +    private boolean targetTpu_ = false;
         /**
          * 
          * If true, TFRT will use TPU specific compiler passes and perform TPU
    @@ -1133,7 +1220,7 @@ public boolean getTargetTpu() {
         }
     
         public static final int TARGET_GPU_FIELD_NUMBER = 30;
    -    private boolean targetGpu_;
    +    private boolean targetGpu_ = false;
         /**
          * 
          * If true, TFRT will use GPU specific compiler passes and perform GPU
    @@ -1149,7 +1236,7 @@ public boolean getTargetGpu() {
         }
     
         public static final int STREAM_MERGE_THRESHOLD_FIELD_NUMBER = 31;
    -    private int streamMergeThreshold_;
    +    private int streamMergeThreshold_ = 0;
         /**
          * 
          * The threshold to merge small streams in TFRT. The stream with cost
    @@ -1166,7 +1253,7 @@ public int getStreamMergeThreshold() {
         }
     
         public static final int DISABLE_FUNCTIONAL_OPS_LOWERING_FIELD_NUMBER = 21;
    -    private boolean disableFunctionalOpsLowering_;
    +    private boolean disableFunctionalOpsLowering_ = false;
         /**
          * 
          * Whether functional control flow op lowering should be disabled. This is
    @@ -1183,11 +1270,11 @@ public boolean getDisableFunctionalOpsLowering() {
         }
     
         public static final int XLA_PREFER_SINGLE_GRAPH_CLUSTER_FIELD_NUMBER = 22;
    -    private boolean xlaPreferSingleGraphCluster_;
    +    private boolean xlaPreferSingleGraphCluster_ = false;
         /**
          * 
          * Provides a hint to XLA auto clustering to prefer forming a single large
    -     * cluster that encompases most of the graph.
    +     * cluster that encompasses most of the graph.
          * 
    * * bool xla_prefer_single_graph_cluster = 22; @@ -1210,7 +1297,7 @@ public boolean getXlaPreferSingleGraphCluster() { */ @java.lang.Override public boolean hasCoordinationConfig() { - return coordinationConfig_ != null; + return ((bitField0_ & 0x00000002) != 0); } /** *
    @@ -1233,18 +1320,20 @@ public org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig getCoor
          */
         @java.lang.Override
         public org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfigOrBuilder getCoordinationConfigOrBuilder() {
    -      return getCoordinationConfig();
    +      return coordinationConfig_ == null ? org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig.getDefaultInstance() : coordinationConfig_;
         }
     
         public static final int DISABLE_OPTIMIZE_FOR_STATIC_GRAPH_FIELD_NUMBER = 24;
    -    private boolean disableOptimizeForStaticGraph_;
    +    private boolean disableOptimizeForStaticGraph_ = false;
         /**
          * 
          * If true, the session will treat the graph as being non-static for
          * optimization purposes.
    +     *
          * If this option is set to true when a session is created, the full
          * GraphDef will be retained to enable calls to Session::Extend().
          * Calling Extend() without setting this flag will result in errors.
    +     *
          * This option is meant to replace `optimize_for_static_graph` and it
          * aims to negate its value.
          * 
    @@ -1258,7 +1347,7 @@ public boolean getDisableOptimizeForStaticGraph() { } public static final int DISABLE_EAGER_EXECUTOR_STREAMING_ENQUEUE_FIELD_NUMBER = 26; - private boolean disableEagerExecutorStreamingEnqueue_; + private boolean disableEagerExecutorStreamingEnqueue_ = false; /** *
          * Whether eager remote execution will stream all the function calls or
    @@ -1274,6 +1363,38 @@ public boolean getDisableEagerExecutorStreamingEnqueue() {
           return disableEagerExecutorStreamingEnqueue_;
         }
     
    +    public static final int FINALIZE_FUNCTION_LIBRARY_RUNTIME_FIELD_NUMBER = 33;
    +    private boolean finalizeFunctionLibraryRuntime_ = false;
    +    /**
    +     * 
    +     * If true, the function library runtime will be finalized when the session
    +     * is finalized.
    +     * 
    + * + * bool finalize_function_library_runtime = 33; + * @return The finalizeFunctionLibraryRuntime. + */ + @java.lang.Override + public boolean getFinalizeFunctionLibraryRuntime() { + return finalizeFunctionLibraryRuntime_; + } + + public static final int FINALIZE_RESOURCE_MANAGER_FIELD_NUMBER = 34; + private boolean finalizeResourceManager_ = false; + /** + *
    +     * If true, the resource manager will be finalized when the session
    +     * is finalized.
    +     * 
    + * + * bool finalize_resource_manager = 34; + * @return The finalizeResourceManager. + */ + @java.lang.Override + public boolean getFinalizeResourceManager() { + return finalizeResourceManager_; + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -1288,11 +1409,11 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(collectiveGroupLeader_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, collectiveGroupLeader_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(collectiveGroupLeader_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, collectiveGroupLeader_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(executorType_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 3, executorType_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(executorType_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, executorType_); } if (recvBufMaxChunk_ != 0) { output.writeInt32(4, recvBufMaxChunk_); @@ -1315,7 +1436,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (shareClusterDevicesInSession_ != false) { output.writeBool(10, shareClusterDevicesInSession_); } - if (sessionMetadata_ != null) { + if (((bitField0_ & 0x00000001) != 0)) { output.writeMessage(11, getSessionMetadata()); } if (optimizeForStaticGraph_ != false) { @@ -1345,7 +1466,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (xlaPreferSingleGraphCluster_ != false) { output.writeBool(22, xlaPreferSingleGraphCluster_); } - if (coordinationConfig_ != null) { + if (((bitField0_ & 0x00000002) != 0)) { output.writeMessage(23, getCoordinationConfig()); } if (disableOptimizeForStaticGraph_ != false) { @@ -1369,6 +1490,15 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (streamMergeThreshold_ != 0) { output.writeInt32(31, streamMergeThreshold_); } + if (tfrtUseIfrt_ != false) { + output.writeBool(32, tfrtUseIfrt_); + } + if (finalizeFunctionLibraryRuntime_ != false) { + output.writeBool(33, finalizeFunctionLibraryRuntime_); + } + if (finalizeResourceManager_ != false) { + output.writeBool(34, finalizeResourceManager_); + } getUnknownFields().writeTo(output); } @@ -1378,11 +1508,11 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(collectiveGroupLeader_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, collectiveGroupLeader_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(collectiveGroupLeader_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, collectiveGroupLeader_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(executorType_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, executorType_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(executorType_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, executorType_); } if (recvBufMaxChunk_ != 0) { size += com.google.protobuf.CodedOutputStream @@ -1412,7 +1542,7 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeBoolSize(10, shareClusterDevicesInSession_); } - if (sessionMetadata_ != null) { + if (((bitField0_ & 0x00000001) != 0)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(11, getSessionMetadata()); } @@ -1452,7 +1582,7 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeBoolSize(22, xlaPreferSingleGraphCluster_); } - if (coordinationConfig_ != null) { + if (((bitField0_ & 0x00000002) != 0)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(23, getCoordinationConfig()); } @@ -1484,6 +1614,18 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeInt32Size(31, streamMergeThreshold_); } + if (tfrtUseIfrt_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(32, tfrtUseIfrt_); + } + if (finalizeFunctionLibraryRuntime_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(33, finalizeFunctionLibraryRuntime_); + } + if (finalizeResourceManager_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(34, finalizeResourceManager_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -1537,6 +1679,8 @@ public boolean equals(final java.lang.Object obj) { != other.getUseTfrt()) return false; if (getEnableMultiHost() != other.getEnableMultiHost()) return false; + if (getTfrtUseIfrt() + != other.getTfrtUseIfrt()) return false; if (getBackendServerPort() != other.getBackendServerPort()) return false; if (getTargetTpu() @@ -1558,6 +1702,10 @@ public boolean equals(final java.lang.Object obj) { != other.getDisableOptimizeForStaticGraph()) return false; if (getDisableEagerExecutorStreamingEnqueue() != other.getDisableEagerExecutorStreamingEnqueue()) return false; + if (getFinalizeFunctionLibraryRuntime() + != other.getFinalizeFunctionLibraryRuntime()) return false; + if (getFinalizeResourceManager() + != other.getFinalizeResourceManager()) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -1620,6 +1768,9 @@ public int hashCode() { hash = (37 * hash) + ENABLE_MULTI_HOST_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( getEnableMultiHost()); + hash = (37 * hash) + TFRT_USE_IFRT_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getTfrtUseIfrt()); hash = (37 * hash) + BACKEND_SERVER_PORT_FIELD_NUMBER; hash = (53 * hash) + getBackendServerPort(); hash = (37 * hash) + TARGET_TPU_FIELD_NUMBER; @@ -1646,6 +1797,12 @@ public int hashCode() { hash = (37 * hash) + DISABLE_EAGER_EXECUTOR_STREAMING_ENQUEUE_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( getDisableEagerExecutorStreamingEnqueue()); + hash = (37 * hash) + FINALIZE_FUNCTION_LIBRARY_RUNTIME_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getFinalizeFunctionLibraryRuntime()); + hash = (37 * hash) + FINALIZE_RESOURCE_MANAGER_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getFinalizeResourceManager()); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -1685,39 +1842,41 @@ public static org.tensorflow.proto.ConfigProto.Experimental parseFrom( } public static org.tensorflow.proto.ConfigProto.Experimental parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.ConfigProto.Experimental parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.ConfigProto.Experimental parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.ConfigProto.Experimental parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.ConfigProto.Experimental parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.ConfigProto.Experimental parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -1737,7 +1896,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -1745,13 +1904,13 @@ protected Builder newBuilderForType( *
          * Everything inside Experimental is subject to change and is not subject
          * to API stability guarantees in
    -     * https://www.tensorflow.org/guide/version_compat.
    +     * https://www.tensorflow.org/guide/versions.
          * 
    * * Protobuf type {@code tensorflow.ConfigProto.Experimental} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.ConfigProto.Experimental) org.tensorflow.proto.ConfigProto.ExperimentalOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -1760,7 +1919,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_ConfigProto_Experimental_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -1769,79 +1928,63 @@ public static final class Builder extends // Construct using org.tensorflow.proto.ConfigProto.Experimental.newBuilder() private Builder() { - + maybeForceBuilderInitialization(); } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); - + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage + .alwaysUseFieldBuilders) { + getSessionMetadataFieldBuilder(); + getCoordinationConfigFieldBuilder(); + } } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; collectiveGroupLeader_ = ""; - executorType_ = ""; - recvBufMaxChunk_ = 0; - useNumaAffinity_ = false; - collectiveDeterministicSequentialExecution_ = false; - collectiveNccl_ = false; - shareSessionStateInClusterspecPropagation_ = false; - disableThreadSpinning_ = false; - shareClusterDevicesInSession_ = false; - - if (sessionMetadataBuilder_ == null) { - sessionMetadata_ = null; - } else { - sessionMetadata_ = null; + sessionMetadata_ = null; + if (sessionMetadataBuilder_ != null) { + sessionMetadataBuilder_.dispose(); sessionMetadataBuilder_ = null; } optimizeForStaticGraph_ = false; - enableMlirBridge_ = false; - mlirBridgeRollout_ = 0; - enableMlirGraphOptimization_ = false; - disableOutputPartitionGraphs_ = false; - xlaFusionAutotunerThresh_ = 0L; - useTfrt_ = false; - enableMultiHost_ = false; - + tfrtUseIfrt_ = false; backendServerPort_ = 0; - targetTpu_ = false; - targetGpu_ = false; - streamMergeThreshold_ = 0; - disableFunctionalOpsLowering_ = false; - xlaPreferSingleGraphCluster_ = false; - - if (coordinationConfigBuilder_ == null) { - coordinationConfig_ = null; - } else { - coordinationConfig_ = null; + coordinationConfig_ = null; + if (coordinationConfigBuilder_ != null) { + coordinationConfigBuilder_.dispose(); coordinationConfigBuilder_ = null; } disableOptimizeForStaticGraph_ = false; - disableEagerExecutorStreamingEnqueue_ = false; - + finalizeFunctionLibraryRuntime_ = false; + finalizeResourceManager_ = false; return this; } @@ -1868,77 +2011,113 @@ public org.tensorflow.proto.ConfigProto.Experimental build() { @java.lang.Override public org.tensorflow.proto.ConfigProto.Experimental buildPartial() { org.tensorflow.proto.ConfigProto.Experimental result = new org.tensorflow.proto.ConfigProto.Experimental(this); - result.collectiveGroupLeader_ = collectiveGroupLeader_; - result.executorType_ = executorType_; - result.recvBufMaxChunk_ = recvBufMaxChunk_; - result.useNumaAffinity_ = useNumaAffinity_; - result.collectiveDeterministicSequentialExecution_ = collectiveDeterministicSequentialExecution_; - result.collectiveNccl_ = collectiveNccl_; - result.shareSessionStateInClusterspecPropagation_ = shareSessionStateInClusterspecPropagation_; - result.disableThreadSpinning_ = disableThreadSpinning_; - result.shareClusterDevicesInSession_ = shareClusterDevicesInSession_; - if (sessionMetadataBuilder_ == null) { - result.sessionMetadata_ = sessionMetadata_; - } else { - result.sessionMetadata_ = sessionMetadataBuilder_.build(); - } - result.optimizeForStaticGraph_ = optimizeForStaticGraph_; - result.enableMlirBridge_ = enableMlirBridge_; - result.mlirBridgeRollout_ = mlirBridgeRollout_; - result.enableMlirGraphOptimization_ = enableMlirGraphOptimization_; - result.disableOutputPartitionGraphs_ = disableOutputPartitionGraphs_; - result.xlaFusionAutotunerThresh_ = xlaFusionAutotunerThresh_; - result.useTfrt_ = useTfrt_; - result.enableMultiHost_ = enableMultiHost_; - result.backendServerPort_ = backendServerPort_; - result.targetTpu_ = targetTpu_; - result.targetGpu_ = targetGpu_; - result.streamMergeThreshold_ = streamMergeThreshold_; - result.disableFunctionalOpsLowering_ = disableFunctionalOpsLowering_; - result.xlaPreferSingleGraphCluster_ = xlaPreferSingleGraphCluster_; - if (coordinationConfigBuilder_ == null) { - result.coordinationConfig_ = coordinationConfig_; - } else { - result.coordinationConfig_ = coordinationConfigBuilder_.build(); - } - result.disableOptimizeForStaticGraph_ = disableOptimizeForStaticGraph_; - result.disableEagerExecutorStreamingEnqueue_ = disableEagerExecutorStreamingEnqueue_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.ConfigProto.Experimental result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.collectiveGroupLeader_ = collectiveGroupLeader_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.executorType_ = executorType_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.recvBufMaxChunk_ = recvBufMaxChunk_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.useNumaAffinity_ = useNumaAffinity_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.collectiveDeterministicSequentialExecution_ = collectiveDeterministicSequentialExecution_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.collectiveNccl_ = collectiveNccl_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.shareSessionStateInClusterspecPropagation_ = shareSessionStateInClusterspecPropagation_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.disableThreadSpinning_ = disableThreadSpinning_; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.shareClusterDevicesInSession_ = shareClusterDevicesInSession_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000200) != 0)) { + result.sessionMetadata_ = sessionMetadataBuilder_ == null + ? sessionMetadata_ + : sessionMetadataBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.optimizeForStaticGraph_ = optimizeForStaticGraph_; + } + if (((from_bitField0_ & 0x00000800) != 0)) { + result.enableMlirBridge_ = enableMlirBridge_; + } + if (((from_bitField0_ & 0x00001000) != 0)) { + result.mlirBridgeRollout_ = mlirBridgeRollout_; + } + if (((from_bitField0_ & 0x00002000) != 0)) { + result.enableMlirGraphOptimization_ = enableMlirGraphOptimization_; + } + if (((from_bitField0_ & 0x00004000) != 0)) { + result.disableOutputPartitionGraphs_ = disableOutputPartitionGraphs_; + } + if (((from_bitField0_ & 0x00008000) != 0)) { + result.xlaFusionAutotunerThresh_ = xlaFusionAutotunerThresh_; + } + if (((from_bitField0_ & 0x00010000) != 0)) { + result.useTfrt_ = useTfrt_; + } + if (((from_bitField0_ & 0x00020000) != 0)) { + result.enableMultiHost_ = enableMultiHost_; + } + if (((from_bitField0_ & 0x00040000) != 0)) { + result.tfrtUseIfrt_ = tfrtUseIfrt_; + } + if (((from_bitField0_ & 0x00080000) != 0)) { + result.backendServerPort_ = backendServerPort_; + } + if (((from_bitField0_ & 0x00100000) != 0)) { + result.targetTpu_ = targetTpu_; + } + if (((from_bitField0_ & 0x00200000) != 0)) { + result.targetGpu_ = targetGpu_; + } + if (((from_bitField0_ & 0x00400000) != 0)) { + result.streamMergeThreshold_ = streamMergeThreshold_; + } + if (((from_bitField0_ & 0x00800000) != 0)) { + result.disableFunctionalOpsLowering_ = disableFunctionalOpsLowering_; + } + if (((from_bitField0_ & 0x01000000) != 0)) { + result.xlaPreferSingleGraphCluster_ = xlaPreferSingleGraphCluster_; + } + if (((from_bitField0_ & 0x02000000) != 0)) { + result.coordinationConfig_ = coordinationConfigBuilder_ == null + ? coordinationConfig_ + : coordinationConfigBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x04000000) != 0)) { + result.disableOptimizeForStaticGraph_ = disableOptimizeForStaticGraph_; + } + if (((from_bitField0_ & 0x08000000) != 0)) { + result.disableEagerExecutorStreamingEnqueue_ = disableEagerExecutorStreamingEnqueue_; + } + if (((from_bitField0_ & 0x10000000) != 0)) { + result.finalizeFunctionLibraryRuntime_ = finalizeFunctionLibraryRuntime_; + } + if (((from_bitField0_ & 0x20000000) != 0)) { + result.finalizeResourceManager_ = finalizeResourceManager_; + } + result.bitField0_ |= to_bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.ConfigProto.Experimental) { @@ -1953,10 +2132,12 @@ public Builder mergeFrom(org.tensorflow.proto.ConfigProto.Experimental other) { if (other == org.tensorflow.proto.ConfigProto.Experimental.getDefaultInstance()) return this; if (!other.getCollectiveGroupLeader().isEmpty()) { collectiveGroupLeader_ = other.collectiveGroupLeader_; + bitField0_ |= 0x00000001; onChanged(); } if (!other.getExecutorType().isEmpty()) { executorType_ = other.executorType_; + bitField0_ |= 0x00000002; onChanged(); } if (other.getRecvBufMaxChunk() != 0) { @@ -2007,6 +2188,9 @@ public Builder mergeFrom(org.tensorflow.proto.ConfigProto.Experimental other) { if (other.getEnableMultiHost() != false) { setEnableMultiHost(other.getEnableMultiHost()); } + if (other.getTfrtUseIfrt() != false) { + setTfrtUseIfrt(other.getTfrtUseIfrt()); + } if (other.getBackendServerPort() != 0) { setBackendServerPort(other.getBackendServerPort()); } @@ -2034,6 +2218,12 @@ public Builder mergeFrom(org.tensorflow.proto.ConfigProto.Experimental other) { if (other.getDisableEagerExecutorStreamingEnqueue() != false) { setDisableEagerExecutorStreamingEnqueue(other.getDisableEagerExecutorStreamingEnqueue()); } + if (other.getFinalizeFunctionLibraryRuntime() != false) { + setFinalizeFunctionLibraryRuntime(other.getFinalizeFunctionLibraryRuntime()); + } + if (other.getFinalizeResourceManager() != false) { + setFinalizeResourceManager(other.getFinalizeResourceManager()); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -2062,143 +2252,158 @@ public Builder mergeFrom( break; case 10: { collectiveGroupLeader_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000001; break; } // case 10 case 26: { executorType_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000002; break; } // case 26 case 32: { recvBufMaxChunk_ = input.readInt32(); - + bitField0_ |= 0x00000004; break; } // case 32 case 40: { useNumaAffinity_ = input.readBool(); - + bitField0_ |= 0x00000008; break; } // case 40 case 48: { collectiveDeterministicSequentialExecution_ = input.readBool(); - + bitField0_ |= 0x00000010; break; } // case 48 case 56: { collectiveNccl_ = input.readBool(); - + bitField0_ |= 0x00000020; break; } // case 56 case 64: { shareSessionStateInClusterspecPropagation_ = input.readBool(); - + bitField0_ |= 0x00000040; break; } // case 64 case 72: { disableThreadSpinning_ = input.readBool(); - + bitField0_ |= 0x00000080; break; } // case 72 case 80: { shareClusterDevicesInSession_ = input.readBool(); - + bitField0_ |= 0x00000100; break; } // case 80 case 90: { input.readMessage( getSessionMetadataFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000200; break; } // case 90 case 96: { optimizeForStaticGraph_ = input.readBool(); - + bitField0_ |= 0x00000400; break; } // case 96 case 104: { enableMlirBridge_ = input.readBool(); - + bitField0_ |= 0x00000800; break; } // case 104 case 112: { disableOutputPartitionGraphs_ = input.readBool(); - + bitField0_ |= 0x00004000; break; } // case 112 case 120: { xlaFusionAutotunerThresh_ = input.readInt64(); - + bitField0_ |= 0x00008000; break; } // case 120 case 128: { enableMlirGraphOptimization_ = input.readBool(); - + bitField0_ |= 0x00002000; break; } // case 128 case 136: { mlirBridgeRollout_ = input.readEnum(); - + bitField0_ |= 0x00001000; break; } // case 136 case 144: { useTfrt_ = input.readBool(); - + bitField0_ |= 0x00010000; break; } // case 144 case 168: { disableFunctionalOpsLowering_ = input.readBool(); - + bitField0_ |= 0x00800000; break; } // case 168 case 176: { xlaPreferSingleGraphCluster_ = input.readBool(); - + bitField0_ |= 0x01000000; break; } // case 176 case 186: { input.readMessage( getCoordinationConfigFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x02000000; break; } // case 186 case 192: { disableOptimizeForStaticGraph_ = input.readBool(); - + bitField0_ |= 0x04000000; break; } // case 192 case 208: { disableEagerExecutorStreamingEnqueue_ = input.readBool(); - + bitField0_ |= 0x08000000; break; } // case 208 case 216: { enableMultiHost_ = input.readBool(); - + bitField0_ |= 0x00020000; break; } // case 216 case 224: { backendServerPort_ = input.readInt32(); - + bitField0_ |= 0x00080000; break; } // case 224 case 232: { targetTpu_ = input.readBool(); - + bitField0_ |= 0x00100000; break; } // case 232 case 240: { targetGpu_ = input.readBool(); - + bitField0_ |= 0x00200000; break; } // case 240 case 248: { streamMergeThreshold_ = input.readInt32(); - + bitField0_ |= 0x00400000; break; } // case 248 + case 256: { + tfrtUseIfrt_ = input.readBool(); + bitField0_ |= 0x00040000; + break; + } // case 256 + case 264: { + finalizeFunctionLibraryRuntime_ = input.readBool(); + bitField0_ |= 0x10000000; + break; + } // case 264 + case 272: { + finalizeResourceManager_ = input.readBool(); + bitField0_ |= 0x20000000; + break; + } // case 272 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag @@ -2214,6 +2419,7 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private java.lang.Object collectiveGroupLeader_ = ""; /** @@ -2268,11 +2474,9 @@ public java.lang.String getCollectiveGroupLeader() { */ public Builder setCollectiveGroupLeader( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } collectiveGroupLeader_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -2285,8 +2489,8 @@ public Builder setCollectiveGroupLeader( * @return This builder for chaining. */ public Builder clearCollectiveGroupLeader() { - collectiveGroupLeader_ = getDefaultInstance().getCollectiveGroupLeader(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } @@ -2301,12 +2505,10 @@ public Builder clearCollectiveGroupLeader() { */ public Builder setCollectiveGroupLeaderBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); collectiveGroupLeader_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -2367,11 +2569,9 @@ public java.lang.String getExecutorType() { */ public Builder setExecutorType( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } executorType_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -2385,8 +2585,8 @@ public Builder setExecutorType( * @return This builder for chaining. */ public Builder clearExecutorType() { - executorType_ = getDefaultInstance().getExecutorType(); + bitField0_ = (bitField0_ & ~0x00000002); onChanged(); return this; } @@ -2402,12 +2602,10 @@ public Builder clearExecutorType() { */ public Builder setExecutorTypeBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); executorType_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -2439,8 +2637,9 @@ public int getRecvBufMaxChunk() { * @return This builder for chaining. */ public Builder setRecvBufMaxChunk(int value) { - + recvBufMaxChunk_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -2455,7 +2654,7 @@ public Builder setRecvBufMaxChunk(int value) { * @return This builder for chaining. */ public Builder clearRecvBufMaxChunk() { - + bitField0_ = (bitField0_ & ~0x00000004); recvBufMaxChunk_ = 0; onChanged(); return this; @@ -2488,8 +2687,9 @@ public boolean getUseNumaAffinity() { * @return This builder for chaining. */ public Builder setUseNumaAffinity(boolean value) { - + useNumaAffinity_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -2504,7 +2704,7 @@ public Builder setUseNumaAffinity(boolean value) { * @return This builder for chaining. */ public Builder clearUseNumaAffinity() { - + bitField0_ = (bitField0_ & ~0x00000008); useNumaAffinity_ = false; onChanged(); return this; @@ -2535,8 +2735,9 @@ public boolean getCollectiveDeterministicSequentialExecution() { * @return This builder for chaining. */ public Builder setCollectiveDeterministicSequentialExecution(boolean value) { - + collectiveDeterministicSequentialExecution_ = value; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -2550,7 +2751,7 @@ public Builder setCollectiveDeterministicSequentialExecution(boolean value) { * @return This builder for chaining. */ public Builder clearCollectiveDeterministicSequentialExecution() { - + bitField0_ = (bitField0_ & ~0x00000010); collectiveDeterministicSequentialExecution_ = false; onChanged(); return this; @@ -2581,8 +2782,9 @@ public boolean getCollectiveNccl() { * @return This builder for chaining. */ public Builder setCollectiveNccl(boolean value) { - + collectiveNccl_ = value; + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -2596,7 +2798,7 @@ public Builder setCollectiveNccl(boolean value) { * @return This builder for chaining. */ public Builder clearCollectiveNccl() { - + bitField0_ = (bitField0_ & ~0x00000020); collectiveNccl_ = false; onChanged(); return this; @@ -2608,6 +2810,7 @@ public Builder clearCollectiveNccl() { * In the following, session state means the value of a variable, elements * in a hash table, or any other resource, accessible by worker sessions * held by a TF server. + * * When ClusterSpec propagation is enabled, the value of * isolate_session_state is ignored when deciding whether to share session * states in a TF server (for backwards compatibility reasons). @@ -2615,11 +2818,13 @@ public Builder clearCollectiveNccl() { * states are shared. * - If share_session_state_in_clusterspec_propagation is false, session * states are isolated. + * * When clusterspec propagation is not used, the value of * share_session_state_in_clusterspec_propagation is ignored when deciding * whether to share session states in a TF server. * - If isolate_session_state is true, session states are isolated. * - If isolate_session_state is false, session states are shared. + * * TODO(b/129330037): Add a single API that consistently treats * isolate_session_state and ClusterSpec propagation. *
    @@ -2636,6 +2841,7 @@ public boolean getShareSessionStateInClusterspecPropagation() { * In the following, session state means the value of a variable, elements * in a hash table, or any other resource, accessible by worker sessions * held by a TF server. + * * When ClusterSpec propagation is enabled, the value of * isolate_session_state is ignored when deciding whether to share session * states in a TF server (for backwards compatibility reasons). @@ -2643,11 +2849,13 @@ public boolean getShareSessionStateInClusterspecPropagation() { * states are shared. * - If share_session_state_in_clusterspec_propagation is false, session * states are isolated. + * * When clusterspec propagation is not used, the value of * share_session_state_in_clusterspec_propagation is ignored when deciding * whether to share session states in a TF server. * - If isolate_session_state is true, session states are isolated. * - If isolate_session_state is false, session states are shared. + * * TODO(b/129330037): Add a single API that consistently treats * isolate_session_state and ClusterSpec propagation. *
    @@ -2657,8 +2865,9 @@ public boolean getShareSessionStateInClusterspecPropagation() { * @return This builder for chaining. */ public Builder setShareSessionStateInClusterspecPropagation(boolean value) { - + shareSessionStateInClusterspecPropagation_ = value; + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -2667,6 +2876,7 @@ public Builder setShareSessionStateInClusterspecPropagation(boolean value) { * In the following, session state means the value of a variable, elements * in a hash table, or any other resource, accessible by worker sessions * held by a TF server. + * * When ClusterSpec propagation is enabled, the value of * isolate_session_state is ignored when deciding whether to share session * states in a TF server (for backwards compatibility reasons). @@ -2674,11 +2884,13 @@ public Builder setShareSessionStateInClusterspecPropagation(boolean value) { * states are shared. * - If share_session_state_in_clusterspec_propagation is false, session * states are isolated. + * * When clusterspec propagation is not used, the value of * share_session_state_in_clusterspec_propagation is ignored when deciding * whether to share session states in a TF server. * - If isolate_session_state is true, session states are isolated. * - If isolate_session_state is false, session states are shared. + * * TODO(b/129330037): Add a single API that consistently treats * isolate_session_state and ClusterSpec propagation. *
    @@ -2687,7 +2899,7 @@ public Builder setShareSessionStateInClusterspecPropagation(boolean value) { * @return This builder for chaining. */ public Builder clearShareSessionStateInClusterspecPropagation() { - + bitField0_ = (bitField0_ & ~0x00000040); shareSessionStateInClusterspecPropagation_ = false; onChanged(); return this; @@ -2722,8 +2934,9 @@ public boolean getDisableThreadSpinning() { * @return This builder for chaining. */ public Builder setDisableThreadSpinning(boolean value) { - + disableThreadSpinning_ = value; + bitField0_ |= 0x00000080; onChanged(); return this; } @@ -2739,7 +2952,7 @@ public Builder setDisableThreadSpinning(boolean value) { * @return This builder for chaining. */ public Builder clearDisableThreadSpinning() { - + bitField0_ = (bitField0_ & ~0x00000080); disableThreadSpinning_ = false; onChanged(); return this; @@ -2770,8 +2983,9 @@ public boolean getShareClusterDevicesInSession() { * @return This builder for chaining. */ public Builder setShareClusterDevicesInSession(boolean value) { - + shareClusterDevicesInSession_ = value; + bitField0_ |= 0x00000100; onChanged(); return this; } @@ -2785,20 +2999,22 @@ public Builder setShareClusterDevicesInSession(boolean value) { * @return This builder for chaining. */ public Builder clearShareClusterDevicesInSession() { - + bitField0_ = (bitField0_ & ~0x00000100); shareClusterDevicesInSession_ = false; onChanged(); return this; } private org.tensorflow.proto.SessionMetadata sessionMetadata_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SessionMetadata, org.tensorflow.proto.SessionMetadata.Builder, org.tensorflow.proto.SessionMetadataOrBuilder> sessionMetadataBuilder_; /** *
            * Metadata about the session.
    +       *
            * If set, this can be used by the runtime and the Ops for debugging,
            * monitoring, etc.
    +       *
            * NOTE: This is currently used and propagated only by the direct session
            * and EagerContext.
            * 
    @@ -2807,13 +3023,15 @@ public Builder clearShareClusterDevicesInSession() { * @return Whether the sessionMetadata field is set. */ public boolean hasSessionMetadata() { - return sessionMetadataBuilder_ != null || sessionMetadata_ != null; + return ((bitField0_ & 0x00000200) != 0); } /** *
            * Metadata about the session.
    +       *
            * If set, this can be used by the runtime and the Ops for debugging,
            * monitoring, etc.
    +       *
            * NOTE: This is currently used and propagated only by the direct session
            * and EagerContext.
            * 
    @@ -2831,8 +3049,10 @@ public org.tensorflow.proto.SessionMetadata getSessionMetadata() { /** *
            * Metadata about the session.
    +       *
            * If set, this can be used by the runtime and the Ops for debugging,
            * monitoring, etc.
    +       *
            * NOTE: This is currently used and propagated only by the direct session
            * and EagerContext.
            * 
    @@ -2845,18 +3065,20 @@ public Builder setSessionMetadata(org.tensorflow.proto.SessionMetadata value) { throw new NullPointerException(); } sessionMetadata_ = value; - onChanged(); } else { sessionMetadataBuilder_.setMessage(value); } - + bitField0_ |= 0x00000200; + onChanged(); return this; } /** *
            * Metadata about the session.
    +       *
            * If set, this can be used by the runtime and the Ops for debugging,
            * monitoring, etc.
    +       *
            * NOTE: This is currently used and propagated only by the direct session
            * and EagerContext.
            * 
    @@ -2867,18 +3089,20 @@ public Builder setSessionMetadata( org.tensorflow.proto.SessionMetadata.Builder builderForValue) { if (sessionMetadataBuilder_ == null) { sessionMetadata_ = builderForValue.build(); - onChanged(); } else { sessionMetadataBuilder_.setMessage(builderForValue.build()); } - + bitField0_ |= 0x00000200; + onChanged(); return this; } /** *
            * Metadata about the session.
    +       *
            * If set, this can be used by the runtime and the Ops for debugging,
            * monitoring, etc.
    +       *
            * NOTE: This is currently used and propagated only by the direct session
            * and EagerContext.
            * 
    @@ -2887,24 +3111,29 @@ public Builder setSessionMetadata( */ public Builder mergeSessionMetadata(org.tensorflow.proto.SessionMetadata value) { if (sessionMetadataBuilder_ == null) { - if (sessionMetadata_ != null) { - sessionMetadata_ = - org.tensorflow.proto.SessionMetadata.newBuilder(sessionMetadata_).mergeFrom(value).buildPartial(); + if (((bitField0_ & 0x00000200) != 0) && + sessionMetadata_ != null && + sessionMetadata_ != org.tensorflow.proto.SessionMetadata.getDefaultInstance()) { + getSessionMetadataBuilder().mergeFrom(value); } else { sessionMetadata_ = value; } - onChanged(); } else { sessionMetadataBuilder_.mergeFrom(value); } - + if (sessionMetadata_ != null) { + bitField0_ |= 0x00000200; + onChanged(); + } return this; } /** *
            * Metadata about the session.
    +       *
            * If set, this can be used by the runtime and the Ops for debugging,
            * monitoring, etc.
    +       *
            * NOTE: This is currently used and propagated only by the direct session
            * and EagerContext.
            * 
    @@ -2912,21 +3141,22 @@ public Builder mergeSessionMetadata(org.tensorflow.proto.SessionMetadata value) * .tensorflow.SessionMetadata session_metadata = 11; */ public Builder clearSessionMetadata() { - if (sessionMetadataBuilder_ == null) { - sessionMetadata_ = null; - onChanged(); - } else { - sessionMetadata_ = null; + bitField0_ = (bitField0_ & ~0x00000200); + sessionMetadata_ = null; + if (sessionMetadataBuilder_ != null) { + sessionMetadataBuilder_.dispose(); sessionMetadataBuilder_ = null; } - + onChanged(); return this; } /** *
            * Metadata about the session.
    +       *
            * If set, this can be used by the runtime and the Ops for debugging,
            * monitoring, etc.
    +       *
            * NOTE: This is currently used and propagated only by the direct session
            * and EagerContext.
            * 
    @@ -2934,15 +3164,17 @@ public Builder clearSessionMetadata() { * .tensorflow.SessionMetadata session_metadata = 11; */ public org.tensorflow.proto.SessionMetadata.Builder getSessionMetadataBuilder() { - + bitField0_ |= 0x00000200; onChanged(); return getSessionMetadataFieldBuilder().getBuilder(); } /** *
            * Metadata about the session.
    +       *
            * If set, this can be used by the runtime and the Ops for debugging,
            * monitoring, etc.
    +       *
            * NOTE: This is currently used and propagated only by the direct session
            * and EagerContext.
            * 
    @@ -2960,19 +3192,21 @@ public org.tensorflow.proto.SessionMetadataOrBuilder getSessionMetadataOrBuilder /** *
            * Metadata about the session.
    +       *
            * If set, this can be used by the runtime and the Ops for debugging,
            * monitoring, etc.
    +       *
            * NOTE: This is currently used and propagated only by the direct session
            * and EagerContext.
            * 
    * * .tensorflow.SessionMetadata session_metadata = 11; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SessionMetadata, org.tensorflow.proto.SessionMetadata.Builder, org.tensorflow.proto.SessionMetadataOrBuilder> getSessionMetadataFieldBuilder() { if (sessionMetadataBuilder_ == null) { - sessionMetadataBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + sessionMetadataBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SessionMetadata, org.tensorflow.proto.SessionMetadata.Builder, org.tensorflow.proto.SessionMetadataOrBuilder>( getSessionMetadata(), getParentForChildren(), @@ -2987,6 +3221,7 @@ public org.tensorflow.proto.SessionMetadataOrBuilder getSessionMetadataOrBuilder *
            * If true, the session may treat the graph as being static for optimization
            * purposes.
    +       *
            * If this option is set to true when a session is created, the full
            * GraphDef must be passed in a single call to Session::Create(), and
            * Session::Extend() may not be supported.
    @@ -3003,6 +3238,7 @@ public boolean getOptimizeForStaticGraph() {
            * 
            * If true, the session may treat the graph as being static for optimization
            * purposes.
    +       *
            * If this option is set to true when a session is created, the full
            * GraphDef must be passed in a single call to Session::Create(), and
            * Session::Extend() may not be supported.
    @@ -3013,8 +3249,9 @@ public boolean getOptimizeForStaticGraph() {
            * @return This builder for chaining.
            */
           public Builder setOptimizeForStaticGraph(boolean value) {
    -        
    +
             optimizeForStaticGraph_ = value;
    +        bitField0_ |= 0x00000400;
             onChanged();
             return this;
           }
    @@ -3022,6 +3259,7 @@ public Builder setOptimizeForStaticGraph(boolean value) {
            * 
            * If true, the session may treat the graph as being static for optimization
            * purposes.
    +       *
            * If this option is set to true when a session is created, the full
            * GraphDef must be passed in a single call to Session::Create(), and
            * Session::Extend() may not be supported.
    @@ -3031,7 +3269,7 @@ public Builder setOptimizeForStaticGraph(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearOptimizeForStaticGraph() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000400);
             optimizeForStaticGraph_ = false;
             onChanged();
             return this;
    @@ -3043,6 +3281,7 @@ public Builder clearOptimizeForStaticGraph() {
            * Whether to enable the MLIR-based TF->XLA bridge. This is only used if set
            * to true. Default value or false is ignored. Use mlir_bridge_rollout for
            * finer control.
    +       *
            * If this option is set to true when a session is created, MLIR is used to
            * perform the set of graph transformations to put the graph in a form that
            * can be executed with delegation of some computations to an accelerator.
    @@ -3064,6 +3303,7 @@ public boolean getEnableMlirBridge() {
            * Whether to enable the MLIR-based TF->XLA bridge. This is only used if set
            * to true. Default value or false is ignored. Use mlir_bridge_rollout for
            * finer control.
    +       *
            * If this option is set to true when a session is created, MLIR is used to
            * perform the set of graph transformations to put the graph in a form that
            * can be executed with delegation of some computations to an accelerator.
    @@ -3078,8 +3318,9 @@ public boolean getEnableMlirBridge() {
            * @return This builder for chaining.
            */
           public Builder setEnableMlirBridge(boolean value) {
    -        
    +
             enableMlirBridge_ = value;
    +        bitField0_ |= 0x00000800;
             onChanged();
             return this;
           }
    @@ -3088,6 +3329,7 @@ public Builder setEnableMlirBridge(boolean value) {
            * Whether to enable the MLIR-based TF->XLA bridge. This is only used if set
            * to true. Default value or false is ignored. Use mlir_bridge_rollout for
            * finer control.
    +       *
            * If this option is set to true when a session is created, MLIR is used to
            * perform the set of graph transformations to put the graph in a form that
            * can be executed with delegation of some computations to an accelerator.
    @@ -3101,7 +3343,7 @@ public Builder setEnableMlirBridge(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearEnableMlirBridge() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000800);
             enableMlirBridge_ = false;
             onChanged();
             return this;
    @@ -3129,8 +3371,8 @@ public Builder clearEnableMlirBridge() {
            * @return This builder for chaining.
            */
           public Builder setMlirBridgeRolloutValue(int value) {
    -        
             mlirBridgeRollout_ = value;
    +        bitField0_ |= 0x00001000;
             onChanged();
             return this;
           }
    @@ -3144,8 +3386,7 @@ public Builder setMlirBridgeRolloutValue(int value) {
            */
           @java.lang.Override
           public org.tensorflow.proto.ConfigProto.Experimental.MlirBridgeRollout getMlirBridgeRollout() {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.ConfigProto.Experimental.MlirBridgeRollout result = org.tensorflow.proto.ConfigProto.Experimental.MlirBridgeRollout.valueOf(mlirBridgeRollout_);
    +        org.tensorflow.proto.ConfigProto.Experimental.MlirBridgeRollout result = org.tensorflow.proto.ConfigProto.Experimental.MlirBridgeRollout.forNumber(mlirBridgeRollout_);
             return result == null ? org.tensorflow.proto.ConfigProto.Experimental.MlirBridgeRollout.UNRECOGNIZED : result;
           }
           /**
    @@ -3161,7 +3402,7 @@ public Builder setMlirBridgeRollout(org.tensorflow.proto.ConfigProto.Experimenta
             if (value == null) {
               throw new NullPointerException();
             }
    -        
    +        bitField0_ |= 0x00001000;
             mlirBridgeRollout_ = value.getNumber();
             onChanged();
             return this;
    @@ -3175,7 +3416,7 @@ public Builder setMlirBridgeRollout(org.tensorflow.proto.ConfigProto.Experimenta
            * @return This builder for chaining.
            */
           public Builder clearMlirBridgeRollout() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00001000);
             mlirBridgeRollout_ = 0;
             onChanged();
             return this;
    @@ -3185,6 +3426,7 @@ public Builder clearMlirBridgeRollout() {
           /**
            * 
            * Whether to enable the MLIR-based Graph optimizations.
    +       *
            * This will become a part of standard Tensorflow graph optimization
            * pipeline, currently this is only used for gradual migration and testing
            * new passes that are replacing existing optimizations in Grappler.
    @@ -3200,6 +3442,7 @@ public boolean getEnableMlirGraphOptimization() {
           /**
            * 
            * Whether to enable the MLIR-based Graph optimizations.
    +       *
            * This will become a part of standard Tensorflow graph optimization
            * pipeline, currently this is only used for gradual migration and testing
            * new passes that are replacing existing optimizations in Grappler.
    @@ -3210,14 +3453,16 @@ public boolean getEnableMlirGraphOptimization() {
            * @return This builder for chaining.
            */
           public Builder setEnableMlirGraphOptimization(boolean value) {
    -        
    +
             enableMlirGraphOptimization_ = value;
    +        bitField0_ |= 0x00002000;
             onChanged();
             return this;
           }
           /**
            * 
            * Whether to enable the MLIR-based Graph optimizations.
    +       *
            * This will become a part of standard Tensorflow graph optimization
            * pipeline, currently this is only used for gradual migration and testing
            * new passes that are replacing existing optimizations in Grappler.
    @@ -3227,7 +3472,7 @@ public Builder setEnableMlirGraphOptimization(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearEnableMlirGraphOptimization() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00002000);
             enableMlirGraphOptimization_ = false;
             onChanged();
             return this;
    @@ -3238,6 +3483,7 @@ public Builder clearEnableMlirGraphOptimization() {
            * 
            * If true, the session will not store an additional copy of the graph for
            * each subgraph.
    +       *
            * If this option is set to true when a session is created, the
            * `RunOptions.output_partition_graphs` options must not be set.
            * 
    @@ -3253,6 +3499,7 @@ public boolean getDisableOutputPartitionGraphs() { *
            * If true, the session will not store an additional copy of the graph for
            * each subgraph.
    +       *
            * If this option is set to true when a session is created, the
            * `RunOptions.output_partition_graphs` options must not be set.
            * 
    @@ -3262,8 +3509,9 @@ public boolean getDisableOutputPartitionGraphs() { * @return This builder for chaining. */ public Builder setDisableOutputPartitionGraphs(boolean value) { - + disableOutputPartitionGraphs_ = value; + bitField0_ |= 0x00004000; onChanged(); return this; } @@ -3271,6 +3519,7 @@ public Builder setDisableOutputPartitionGraphs(boolean value) { *
            * If true, the session will not store an additional copy of the graph for
            * each subgraph.
    +       *
            * If this option is set to true when a session is created, the
            * `RunOptions.output_partition_graphs` options must not be set.
            * 
    @@ -3279,7 +3528,7 @@ public Builder setDisableOutputPartitionGraphs(boolean value) { * @return This builder for chaining. */ public Builder clearDisableOutputPartitionGraphs() { - + bitField0_ = (bitField0_ & ~0x00004000); disableOutputPartitionGraphs_ = false; onChanged(); return this; @@ -3290,6 +3539,7 @@ public Builder clearDisableOutputPartitionGraphs() { *
            * Minimum number of batches run through the XLA graph before XLA fusion
            * autotuner is enabled. Default value of zero disables the autotuner.
    +       *
            * The XLA fusion autotuner can improve performance by executing a heuristic
            * search on the compiler parameters.
            * 
    @@ -3305,6 +3555,7 @@ public long getXlaFusionAutotunerThresh() { *
            * Minimum number of batches run through the XLA graph before XLA fusion
            * autotuner is enabled. Default value of zero disables the autotuner.
    +       *
            * The XLA fusion autotuner can improve performance by executing a heuristic
            * search on the compiler parameters.
            * 
    @@ -3314,8 +3565,9 @@ public long getXlaFusionAutotunerThresh() { * @return This builder for chaining. */ public Builder setXlaFusionAutotunerThresh(long value) { - + xlaFusionAutotunerThresh_ = value; + bitField0_ |= 0x00008000; onChanged(); return this; } @@ -3323,6 +3575,7 @@ public Builder setXlaFusionAutotunerThresh(long value) { *
            * Minimum number of batches run through the XLA graph before XLA fusion
            * autotuner is enabled. Default value of zero disables the autotuner.
    +       *
            * The XLA fusion autotuner can improve performance by executing a heuristic
            * search on the compiler parameters.
            * 
    @@ -3331,7 +3584,7 @@ public Builder setXlaFusionAutotunerThresh(long value) { * @return This builder for chaining. */ public Builder clearXlaFusionAutotunerThresh() { - + bitField0_ = (bitField0_ & ~0x00008000); xlaFusionAutotunerThresh_ = 0L; onChanged(); return this; @@ -3360,8 +3613,9 @@ public boolean getUseTfrt() { * @return This builder for chaining. */ public Builder setUseTfrt(boolean value) { - + useTfrt_ = value; + bitField0_ |= 0x00010000; onChanged(); return this; } @@ -3374,7 +3628,7 @@ public Builder setUseTfrt(boolean value) { * @return This builder for chaining. */ public Builder clearUseTfrt() { - + bitField0_ = (bitField0_ & ~0x00010000); useTfrt_ = false; onChanged(); return this; @@ -3403,8 +3657,9 @@ public boolean getEnableMultiHost() { * @return This builder for chaining. */ public Builder setEnableMultiHost(boolean value) { - + enableMultiHost_ = value; + bitField0_ |= 0x00020000; onChanged(); return this; } @@ -3417,12 +3672,59 @@ public Builder setEnableMultiHost(boolean value) { * @return This builder for chaining. */ public Builder clearEnableMultiHost() { - + bitField0_ = (bitField0_ & ~0x00020000); enableMultiHost_ = false; onChanged(); return this; } + private boolean tfrtUseIfrt_ ; + /** + *
    +       * If true, use ifrt as the backend for TFRT. This is only used when
    +       * `use_tfrt` is true.
    +       * 
    + * + * bool tfrt_use_ifrt = 32; + * @return The tfrtUseIfrt. + */ + @java.lang.Override + public boolean getTfrtUseIfrt() { + return tfrtUseIfrt_; + } + /** + *
    +       * If true, use ifrt as the backend for TFRT. This is only used when
    +       * `use_tfrt` is true.
    +       * 
    + * + * bool tfrt_use_ifrt = 32; + * @param value The tfrtUseIfrt to set. + * @return This builder for chaining. + */ + public Builder setTfrtUseIfrt(boolean value) { + + tfrtUseIfrt_ = value; + bitField0_ |= 0x00040000; + onChanged(); + return this; + } + /** + *
    +       * If true, use ifrt as the backend for TFRT. This is only used when
    +       * `use_tfrt` is true.
    +       * 
    + * + * bool tfrt_use_ifrt = 32; + * @return This builder for chaining. + */ + public Builder clearTfrtUseIfrt() { + bitField0_ = (bitField0_ & ~0x00040000); + tfrtUseIfrt_ = false; + onChanged(); + return this; + } + private int backendServerPort_ ; /** *
    @@ -3446,8 +3748,9 @@ public int getBackendServerPort() {
            * @return This builder for chaining.
            */
           public Builder setBackendServerPort(int value) {
    -        
    +
             backendServerPort_ = value;
    +        bitField0_ |= 0x00080000;
             onChanged();
             return this;
           }
    @@ -3460,7 +3763,7 @@ public Builder setBackendServerPort(int value) {
            * @return This builder for chaining.
            */
           public Builder clearBackendServerPort() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00080000);
             backendServerPort_ = 0;
             onChanged();
             return this;
    @@ -3491,8 +3794,9 @@ public boolean getTargetTpu() {
            * @return This builder for chaining.
            */
           public Builder setTargetTpu(boolean value) {
    -        
    +
             targetTpu_ = value;
    +        bitField0_ |= 0x00100000;
             onChanged();
             return this;
           }
    @@ -3506,7 +3810,7 @@ public Builder setTargetTpu(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearTargetTpu() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00100000);
             targetTpu_ = false;
             onChanged();
             return this;
    @@ -3537,8 +3841,9 @@ public boolean getTargetGpu() {
            * @return This builder for chaining.
            */
           public Builder setTargetGpu(boolean value) {
    -        
    +
             targetGpu_ = value;
    +        bitField0_ |= 0x00200000;
             onChanged();
             return this;
           }
    @@ -3552,7 +3857,7 @@ public Builder setTargetGpu(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearTargetGpu() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00200000);
             targetGpu_ = false;
             onChanged();
             return this;
    @@ -3585,8 +3890,9 @@ public int getStreamMergeThreshold() {
            * @return This builder for chaining.
            */
           public Builder setStreamMergeThreshold(int value) {
    -        
    +
             streamMergeThreshold_ = value;
    +        bitField0_ |= 0x00400000;
             onChanged();
             return this;
           }
    @@ -3601,7 +3907,7 @@ public Builder setStreamMergeThreshold(int value) {
            * @return This builder for chaining.
            */
           public Builder clearStreamMergeThreshold() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00400000);
             streamMergeThreshold_ = 0;
             onChanged();
             return this;
    @@ -3634,8 +3940,9 @@ public boolean getDisableFunctionalOpsLowering() {
            * @return This builder for chaining.
            */
           public Builder setDisableFunctionalOpsLowering(boolean value) {
    -        
    +
             disableFunctionalOpsLowering_ = value;
    +        bitField0_ |= 0x00800000;
             onChanged();
             return this;
           }
    @@ -3650,7 +3957,7 @@ public Builder setDisableFunctionalOpsLowering(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearDisableFunctionalOpsLowering() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00800000);
             disableFunctionalOpsLowering_ = false;
             onChanged();
             return this;
    @@ -3660,7 +3967,7 @@ public Builder clearDisableFunctionalOpsLowering() {
           /**
            * 
            * Provides a hint to XLA auto clustering to prefer forming a single large
    -       * cluster that encompases most of the graph.
    +       * cluster that encompasses most of the graph.
            * 
    * * bool xla_prefer_single_graph_cluster = 22; @@ -3673,7 +3980,7 @@ public boolean getXlaPreferSingleGraphCluster() { /** *
            * Provides a hint to XLA auto clustering to prefer forming a single large
    -       * cluster that encompases most of the graph.
    +       * cluster that encompasses most of the graph.
            * 
    * * bool xla_prefer_single_graph_cluster = 22; @@ -3681,29 +3988,30 @@ public boolean getXlaPreferSingleGraphCluster() { * @return This builder for chaining. */ public Builder setXlaPreferSingleGraphCluster(boolean value) { - + xlaPreferSingleGraphCluster_ = value; + bitField0_ |= 0x01000000; onChanged(); return this; } /** *
            * Provides a hint to XLA auto clustering to prefer forming a single large
    -       * cluster that encompases most of the graph.
    +       * cluster that encompasses most of the graph.
            * 
    * * bool xla_prefer_single_graph_cluster = 22; * @return This builder for chaining. */ public Builder clearXlaPreferSingleGraphCluster() { - + bitField0_ = (bitField0_ & ~0x01000000); xlaPreferSingleGraphCluster_ = false; onChanged(); return this; } private org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig coordinationConfig_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig, org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig.Builder, org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfigOrBuilder> coordinationConfigBuilder_; /** *
    @@ -3714,7 +4022,7 @@ public Builder clearXlaPreferSingleGraphCluster() {
            * @return Whether the coordinationConfig field is set.
            */
           public boolean hasCoordinationConfig() {
    -        return coordinationConfigBuilder_ != null || coordinationConfig_ != null;
    +        return ((bitField0_ & 0x02000000) != 0);
           }
           /**
            * 
    @@ -3744,11 +4052,11 @@ public Builder setCoordinationConfig(org.tensorflow.proto.CoordinationConfig.Coo
                 throw new NullPointerException();
               }
               coordinationConfig_ = value;
    -          onChanged();
             } else {
               coordinationConfigBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x02000000;
    +        onChanged();
             return this;
           }
           /**
    @@ -3762,11 +4070,11 @@ public Builder setCoordinationConfig(
               org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig.Builder builderForValue) {
             if (coordinationConfigBuilder_ == null) {
               coordinationConfig_ = builderForValue.build();
    -          onChanged();
             } else {
               coordinationConfigBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x02000000;
    +        onChanged();
             return this;
           }
           /**
    @@ -3778,17 +4086,20 @@ public Builder setCoordinationConfig(
            */
           public Builder mergeCoordinationConfig(org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig value) {
             if (coordinationConfigBuilder_ == null) {
    -          if (coordinationConfig_ != null) {
    -            coordinationConfig_ =
    -              org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig.newBuilder(coordinationConfig_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x02000000) != 0) &&
    +            coordinationConfig_ != null &&
    +            coordinationConfig_ != org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig.getDefaultInstance()) {
    +            getCoordinationConfigBuilder().mergeFrom(value);
               } else {
                 coordinationConfig_ = value;
               }
    -          onChanged();
             } else {
               coordinationConfigBuilder_.mergeFrom(value);
             }
    -
    +        if (coordinationConfig_ != null) {
    +          bitField0_ |= 0x02000000;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -3799,14 +4110,13 @@ public Builder mergeCoordinationConfig(org.tensorflow.proto.CoordinationConfig.C
            * .tensorflow.CoordinationServiceConfig coordination_config = 23;
            */
           public Builder clearCoordinationConfig() {
    -        if (coordinationConfigBuilder_ == null) {
    -          coordinationConfig_ = null;
    -          onChanged();
    -        } else {
    -          coordinationConfig_ = null;
    +        bitField0_ = (bitField0_ & ~0x02000000);
    +        coordinationConfig_ = null;
    +        if (coordinationConfigBuilder_ != null) {
    +          coordinationConfigBuilder_.dispose();
               coordinationConfigBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -3817,7 +4127,7 @@ public Builder clearCoordinationConfig() {
            * .tensorflow.CoordinationServiceConfig coordination_config = 23;
            */
           public org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig.Builder getCoordinationConfigBuilder() {
    -        
    +        bitField0_ |= 0x02000000;
             onChanged();
             return getCoordinationConfigFieldBuilder().getBuilder();
           }
    @@ -3843,11 +4153,11 @@ public org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfigOrBuilde
            *
            * .tensorflow.CoordinationServiceConfig coordination_config = 23;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig, org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig.Builder, org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfigOrBuilder> 
               getCoordinationConfigFieldBuilder() {
             if (coordinationConfigBuilder_ == null) {
    -          coordinationConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          coordinationConfigBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig, org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig.Builder, org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfigOrBuilder>(
                       getCoordinationConfig(),
                       getParentForChildren(),
    @@ -3862,9 +4172,11 @@ public org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfigOrBuilde
            * 
            * If true, the session will treat the graph as being non-static for
            * optimization purposes.
    +       *
            * If this option is set to true when a session is created, the full
            * GraphDef will be retained to enable calls to Session::Extend().
            * Calling Extend() without setting this flag will result in errors.
    +       *
            * This option is meant to replace `optimize_for_static_graph` and it
            * aims to negate its value.
            * 
    @@ -3880,9 +4192,11 @@ public boolean getDisableOptimizeForStaticGraph() { *
            * If true, the session will treat the graph as being non-static for
            * optimization purposes.
    +       *
            * If this option is set to true when a session is created, the full
            * GraphDef will be retained to enable calls to Session::Extend().
            * Calling Extend() without setting this flag will result in errors.
    +       *
            * This option is meant to replace `optimize_for_static_graph` and it
            * aims to negate its value.
            * 
    @@ -3892,8 +4206,9 @@ public boolean getDisableOptimizeForStaticGraph() { * @return This builder for chaining. */ public Builder setDisableOptimizeForStaticGraph(boolean value) { - + disableOptimizeForStaticGraph_ = value; + bitField0_ |= 0x04000000; onChanged(); return this; } @@ -3901,9 +4216,11 @@ public Builder setDisableOptimizeForStaticGraph(boolean value) { *
            * If true, the session will treat the graph as being non-static for
            * optimization purposes.
    +       *
            * If this option is set to true when a session is created, the full
            * GraphDef will be retained to enable calls to Session::Extend().
            * Calling Extend() without setting this flag will result in errors.
    +       *
            * This option is meant to replace `optimize_for_static_graph` and it
            * aims to negate its value.
            * 
    @@ -3912,7 +4229,7 @@ public Builder setDisableOptimizeForStaticGraph(boolean value) { * @return This builder for chaining. */ public Builder clearDisableOptimizeForStaticGraph() { - + bitField0_ = (bitField0_ & ~0x04000000); disableOptimizeForStaticGraph_ = false; onChanged(); return this; @@ -3945,8 +4262,9 @@ public boolean getDisableEagerExecutorStreamingEnqueue() { * @return This builder for chaining. */ public Builder setDisableEagerExecutorStreamingEnqueue(boolean value) { - + disableEagerExecutorStreamingEnqueue_ = value; + bitField0_ |= 0x08000000; onChanged(); return this; } @@ -3961,23 +4279,105 @@ public Builder setDisableEagerExecutorStreamingEnqueue(boolean value) { * @return This builder for chaining. */ public Builder clearDisableEagerExecutorStreamingEnqueue() { - + bitField0_ = (bitField0_ & ~0x08000000); disableEagerExecutorStreamingEnqueue_ = false; onChanged(); return this; } + + private boolean finalizeFunctionLibraryRuntime_ ; + /** + *
    +       * If true, the function library runtime will be finalized when the session
    +       * is finalized.
    +       * 
    + * + * bool finalize_function_library_runtime = 33; + * @return The finalizeFunctionLibraryRuntime. + */ @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); + public boolean getFinalizeFunctionLibraryRuntime() { + return finalizeFunctionLibraryRuntime_; + } + /** + *
    +       * If true, the function library runtime will be finalized when the session
    +       * is finalized.
    +       * 
    + * + * bool finalize_function_library_runtime = 33; + * @param value The finalizeFunctionLibraryRuntime to set. + * @return This builder for chaining. + */ + public Builder setFinalizeFunctionLibraryRuntime(boolean value) { + + finalizeFunctionLibraryRuntime_ = value; + bitField0_ |= 0x10000000; + onChanged(); + return this; + } + /** + *
    +       * If true, the function library runtime will be finalized when the session
    +       * is finalized.
    +       * 
    + * + * bool finalize_function_library_runtime = 33; + * @return This builder for chaining. + */ + public Builder clearFinalizeFunctionLibraryRuntime() { + bitField0_ = (bitField0_ & ~0x10000000); + finalizeFunctionLibraryRuntime_ = false; + onChanged(); + return this; } + private boolean finalizeResourceManager_ ; + /** + *
    +       * If true, the resource manager will be finalized when the session
    +       * is finalized.
    +       * 
    + * + * bool finalize_resource_manager = 34; + * @return The finalizeResourceManager. + */ @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + public boolean getFinalizeResourceManager() { + return finalizeResourceManager_; } + /** + *
    +       * If true, the resource manager will be finalized when the session
    +       * is finalized.
    +       * 
    + * + * bool finalize_resource_manager = 34; + * @param value The finalizeResourceManager to set. + * @return This builder for chaining. + */ + public Builder setFinalizeResourceManager(boolean value) { + finalizeResourceManager_ = value; + bitField0_ |= 0x20000000; + onChanged(); + return this; + } + /** + *
    +       * If true, the resource manager will be finalized when the session
    +       * is finalized.
    +       * 
    + * + * bool finalize_resource_manager = 34; + * @return This builder for chaining. + */ + public Builder clearFinalizeResourceManager() { + bitField0_ = (bitField0_ & ~0x20000000); + finalizeResourceManager_ = false; + onChanged(); + return this; + } // @@protoc_insertion_point(builder_scope:tensorflow.ConfigProto.Experimental) } @@ -4030,6 +4430,7 @@ public org.tensorflow.proto.ConfigProto.Experimental getDefaultInstanceForType() } + private int bitField0_; public static final int DEVICE_COUNT_FIELD_NUMBER = 1; private static final class DeviceCountDefaultEntryHolder { static final com.google.protobuf.MapEntry< @@ -4042,6 +4443,7 @@ private static final class DeviceCountDefaultEntryHolder { com.google.protobuf.WireFormat.FieldType.INT32, 0); } + @SuppressWarnings("serial") private com.google.protobuf.MapField< java.lang.String, java.lang.Integer> deviceCount_; private com.google.protobuf.MapField @@ -4052,7 +4454,6 @@ private static final class DeviceCountDefaultEntryHolder { } return deviceCount_; } - public int getDeviceCountCount() { return internalGetDeviceCount().getMap().size(); } @@ -4066,7 +4467,6 @@ public int getDeviceCountCount() { * * map<string, int32> device_count = 1; */ - @java.lang.Override public boolean containsDeviceCount( java.lang.String key) { @@ -4092,7 +4492,6 @@ public java.util.Map getDeviceCount() { * map<string, int32> device_count = 1; */ @java.lang.Override - public java.util.Map getDeviceCountMap() { return internalGetDeviceCount().getMap(); } @@ -4107,7 +4506,6 @@ public java.util.Map getDeviceCountMap() { * map<string, int32> device_count = 1; */ @java.lang.Override - public int getDeviceCountOrDefault( java.lang.String key, int defaultValue) { @@ -4127,7 +4525,6 @@ public int getDeviceCountOrDefault( * map<string, int32> device_count = 1; */ @java.lang.Override - public int getDeviceCountOrThrow( java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } @@ -4140,21 +4537,23 @@ public int getDeviceCountOrThrow( } public static final int INTRA_OP_PARALLELISM_THREADS_FIELD_NUMBER = 2; - private int intraOpParallelismThreads_; + private int intraOpParallelismThreads_ = 0; /** *
        * The execution of an individual op (for some op types) can be
        * parallelized on a pool of intra_op_parallelism_threads.
        * 0 means the system picks an appropriate number.
    +   *
        * If you create an ordinary session, e.g., from Python or C++,
        * then there is exactly one intra op thread pool per process.
        * The first session created determines the number of threads in this pool.
        * All subsequent sessions reuse/share this one global pool.
    +   *
        * There are notable exceptions to the default behavior described above:
        * 1. There is an environment variable  for overriding this thread pool,
    -   *    named TF_OVERRIDE_GLOBAL_THREADPOOL.
    +   * named TF_OVERRIDE_GLOBAL_THREADPOOL.
        * 2. When connecting to a server, such as a remote `tf.train.Server`
    -   *    instance, then this option will be ignored altogether.
    +   * instance, then this option will be ignored altogether.
        * 
    * * int32 intra_op_parallelism_threads = 2; @@ -4166,13 +4565,15 @@ public int getIntraOpParallelismThreads() { } public static final int INTER_OP_PARALLELISM_THREADS_FIELD_NUMBER = 5; - private int interOpParallelismThreads_; + private int interOpParallelismThreads_ = 0; /** *
        * Nodes that perform blocking operations are enqueued on a pool of
        * inter_op_parallelism_threads available in each process.
    +   *
        * 0 means the system picks an appropriate number.
        * Negative means all operations are performed in caller's thread.
    +   *
        * Note that the first Session created in the process sets the
        * number of threads for all future sessions unless use_per_session_threads is
        * true or session_inter_op_thread_pool is configured.
    @@ -4187,13 +4588,15 @@ public int getInterOpParallelismThreads() {
       }
     
       public static final int USE_PER_SESSION_THREADS_FIELD_NUMBER = 9;
    -  private boolean usePerSessionThreads_;
    +  private boolean usePerSessionThreads_ = false;
       /**
        * 
        * If true, use a new set of threads for this session rather than the global
        * pool of threads. Only supported by direct sessions.
    +   *
        * If false, use the global threads created by the first session, or the
        * per-session thread pools configured by session_inter_op_thread_pool.
    +   *
        * This option is deprecated. The same effect can be achieved by setting
        * session_inter_op_thread_pool to have one element, whose num_threads equals
        * inter_op_parallelism_threads.
    @@ -4208,13 +4611,16 @@ public boolean getUsePerSessionThreads() {
       }
     
       public static final int SESSION_INTER_OP_THREAD_POOL_FIELD_NUMBER = 12;
    +  @SuppressWarnings("serial")
       private java.util.List sessionInterOpThreadPool_;
       /**
        * 
        * This option is experimental - it may be replaced with a different mechanism
        * in the future.
    +   *
        * Configures session thread pools. If this is configured, then RunOptions for
        * a Run call can select the thread pool to use.
    +   *
        * The intended use is for when some session invocations need to run in a
        * background pool limited to a small number of threads:
        * - For example, a session may be configured to have one large pool (for
    @@ -4240,8 +4646,10 @@ public java.util.List getSessionInte
        * 
        * This option is experimental - it may be replaced with a different mechanism
        * in the future.
    +   *
        * Configures session thread pools. If this is configured, then RunOptions for
        * a Run call can select the thread pool to use.
    +   *
        * The intended use is for when some session invocations need to run in a
        * background pool limited to a small number of threads:
        * - For example, a session may be configured to have one large pool (for
    @@ -4268,8 +4676,10 @@ public java.util.List getSessionInte
        * 
        * This option is experimental - it may be replaced with a different mechanism
        * in the future.
    +   *
        * Configures session thread pools. If this is configured, then RunOptions for
        * a Run call can select the thread pool to use.
    +   *
        * The intended use is for when some session invocations need to run in a
        * background pool limited to a small number of threads:
        * - For example, a session may be configured to have one large pool (for
    @@ -4295,8 +4705,10 @@ public int getSessionInterOpThreadPoolCount() {
        * 
        * This option is experimental - it may be replaced with a different mechanism
        * in the future.
    +   *
        * Configures session thread pools. If this is configured, then RunOptions for
        * a Run call can select the thread pool to use.
    +   *
        * The intended use is for when some session invocations need to run in a
        * background pool limited to a small number of threads:
        * - For example, a session may be configured to have one large pool (for
    @@ -4322,8 +4734,10 @@ public org.tensorflow.proto.ThreadPoolOptionProto getSessionInterOpThreadPool(in
        * 
        * This option is experimental - it may be replaced with a different mechanism
        * in the future.
    +   *
        * Configures session thread pools. If this is configured, then RunOptions for
        * a Run call can select the thread pool to use.
    +   *
        * The intended use is for when some session invocations need to run in a
        * background pool limited to a small number of threads:
        * - For example, a session may be configured to have one large pool (for
    @@ -4348,7 +4762,7 @@ public org.tensorflow.proto.ThreadPoolOptionProtoOrBuilder getSessionInterOpThre
       }
     
       public static final int PLACEMENT_PERIOD_FIELD_NUMBER = 3;
    -  private int placementPeriod_;
    +  private int placementPeriod_ = 0;
       /**
        * 
        * Assignment of Nodes to Devices is recomputed every placement_period
    @@ -4365,7 +4779,9 @@ public int getPlacementPeriod() {
       }
     
       public static final int DEVICE_FILTERS_FIELD_NUMBER = 4;
    -  private com.google.protobuf.LazyStringList deviceFilters_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList deviceFilters_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * When any filters are present sessions will ignore all devices which do not
    @@ -4435,7 +4851,7 @@ public java.lang.String getDeviceFilters(int index) {
        */
       @java.lang.Override
       public boolean hasGpuOptions() {
    -    return gpuOptions_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -4458,20 +4874,58 @@ public org.tensorflow.proto.GPUOptions getGpuOptions() {
        */
       @java.lang.Override
       public org.tensorflow.proto.GPUOptionsOrBuilder getGpuOptionsOrBuilder() {
    -    return getGpuOptions();
    +    return gpuOptions_ == null ? org.tensorflow.proto.GPUOptions.getDefaultInstance() : gpuOptions_;
    +  }
    +
    +  public static final int PLUGGABLE_DEVICE_OPTIONS_FIELD_NUMBER = 18;
    +  private org.tensorflow.proto.GPUOptions pluggableDeviceOptions_;
    +  /**
    +   * 
    +   * Options that apply to pluggable devices.
    +   * 
    + * + * .tensorflow.GPUOptions pluggable_device_options = 18; + * @return Whether the pluggableDeviceOptions field is set. + */ + @java.lang.Override + public boolean hasPluggableDeviceOptions() { + return ((bitField0_ & 0x00000002) != 0); + } + /** + *
    +   * Options that apply to pluggable devices.
    +   * 
    + * + * .tensorflow.GPUOptions pluggable_device_options = 18; + * @return The pluggableDeviceOptions. + */ + @java.lang.Override + public org.tensorflow.proto.GPUOptions getPluggableDeviceOptions() { + return pluggableDeviceOptions_ == null ? org.tensorflow.proto.GPUOptions.getDefaultInstance() : pluggableDeviceOptions_; + } + /** + *
    +   * Options that apply to pluggable devices.
    +   * 
    + * + * .tensorflow.GPUOptions pluggable_device_options = 18; + */ + @java.lang.Override + public org.tensorflow.proto.GPUOptionsOrBuilder getPluggableDeviceOptionsOrBuilder() { + return pluggableDeviceOptions_ == null ? org.tensorflow.proto.GPUOptions.getDefaultInstance() : pluggableDeviceOptions_; } public static final int ALLOW_SOFT_PLACEMENT_FIELD_NUMBER = 7; - private boolean allowSoftPlacement_; + private boolean allowSoftPlacement_ = false; /** *
        * Whether soft placement is allowed. If allow_soft_placement is true,
        * an op will be placed on CPU if
    -   *   1. there's no GPU implementation for the OP
    +   * 1. there's no GPU implementation for the OP
        * or
    -   *   2. no GPU devices are known or registered
    +   * 2. no GPU devices are known or registered
        * or
    -   *   3. need to co-locate with reftype input(s) which are from CPU.
    +   * 3. need to co-locate with reftype input(s) which are from CPU.
        * 
    * * bool allow_soft_placement = 7; @@ -4483,7 +4937,7 @@ public boolean getAllowSoftPlacement() { } public static final int LOG_DEVICE_PLACEMENT_FIELD_NUMBER = 8; - private boolean logDevicePlacement_; + private boolean logDevicePlacement_ = false; /** *
        * Whether device placements should be logged.
    @@ -4509,7 +4963,7 @@ public boolean getLogDevicePlacement() {
        */
       @java.lang.Override
       public boolean hasGraphOptions() {
    -    return graphOptions_ != null;
    +    return ((bitField0_ & 0x00000004) != 0);
       }
       /**
        * 
    @@ -4532,11 +4986,11 @@ public org.tensorflow.proto.GraphOptions getGraphOptions() {
        */
       @java.lang.Override
       public org.tensorflow.proto.GraphOptionsOrBuilder getGraphOptionsOrBuilder() {
    -    return getGraphOptions();
    +    return graphOptions_ == null ? org.tensorflow.proto.GraphOptions.getDefaultInstance() : graphOptions_;
       }
     
       public static final int OPERATION_TIMEOUT_IN_MS_FIELD_NUMBER = 11;
    -  private long operationTimeoutInMs_;
    +  private long operationTimeoutInMs_ = 0L;
       /**
        * 
        * Global timeout for all blocking operations in this session.  If non-zero,
    @@ -4564,7 +5018,7 @@ public long getOperationTimeoutInMs() {
        */
       @java.lang.Override
       public boolean hasRpcOptions() {
    -    return rpcOptions_ != null;
    +    return ((bitField0_ & 0x00000008) != 0);
       }
       /**
        * 
    @@ -4587,7 +5041,7 @@ public org.tensorflow.proto.RpcOptions.RPCOptions getRpcOptions() {
        */
       @java.lang.Override
       public org.tensorflow.proto.RpcOptions.RPCOptionsOrBuilder getRpcOptionsOrBuilder() {
    -    return getRpcOptions();
    +    return rpcOptions_ == null ? org.tensorflow.proto.RpcOptions.RPCOptions.getDefaultInstance() : rpcOptions_;
       }
     
       public static final int CLUSTER_DEF_FIELD_NUMBER = 14;
    @@ -4602,7 +5056,7 @@ public org.tensorflow.proto.RpcOptions.RPCOptionsOrBuilder getRpcOptionsOrBuilde
        */
       @java.lang.Override
       public boolean hasClusterDef() {
    -    return clusterDef_ != null;
    +    return ((bitField0_ & 0x00000010) != 0);
       }
       /**
        * 
    @@ -4625,11 +5079,11 @@ public org.tensorflow.proto.ClusterDef getClusterDef() {
        */
       @java.lang.Override
       public org.tensorflow.proto.ClusterDefOrBuilder getClusterDefOrBuilder() {
    -    return getClusterDef();
    +    return clusterDef_ == null ? org.tensorflow.proto.ClusterDef.getDefaultInstance() : clusterDef_;
       }
     
       public static final int ISOLATE_SESSION_STATE_FIELD_NUMBER = 15;
    -  private boolean isolateSessionState_;
    +  private boolean isolateSessionState_ = false;
       /**
        * 
        * If true, any resources such as Variables used in the session will not be
    @@ -4646,7 +5100,7 @@ public boolean getIsolateSessionState() {
       }
     
       public static final int SHARE_CLUSTER_DEVICES_IN_SESSION_FIELD_NUMBER = 17;
    -  private boolean shareClusterDevicesInSession_;
    +  private boolean shareClusterDevicesInSession_ = false;
       /**
        * 
        * When true, WorkerSessions are created with device attributes from the
    @@ -4671,7 +5125,7 @@ public boolean getShareClusterDevicesInSession() {
        */
       @java.lang.Override
       public boolean hasExperimental() {
    -    return experimental_ != null;
    +    return ((bitField0_ & 0x00000020) != 0);
       }
       /**
        * .tensorflow.ConfigProto.Experimental experimental = 16;
    @@ -4686,7 +5140,7 @@ public org.tensorflow.proto.ConfigProto.Experimental getExperimental() {
        */
       @java.lang.Override
       public org.tensorflow.proto.ConfigProto.ExperimentalOrBuilder getExperimentalOrBuilder() {
    -    return getExperimental();
    +    return experimental_ == null ? org.tensorflow.proto.ConfigProto.Experimental.getDefaultInstance() : experimental_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -4703,7 +5157,7 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeStringMapTo(
             output,
             internalGetDeviceCount(),
    @@ -4716,12 +5170,12 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           output.writeInt32(3, placementPeriod_);
         }
         for (int i = 0; i < deviceFilters_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 4, deviceFilters_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 4, deviceFilters_.getRaw(i));
         }
         if (interOpParallelismThreads_ != 0) {
           output.writeInt32(5, interOpParallelismThreads_);
         }
    -    if (gpuOptions_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(6, getGpuOptions());
         }
         if (allowSoftPlacement_ != false) {
    @@ -4733,7 +5187,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (usePerSessionThreads_ != false) {
           output.writeBool(9, usePerSessionThreads_);
         }
    -    if (graphOptions_ != null) {
    +    if (((bitField0_ & 0x00000004) != 0)) {
           output.writeMessage(10, getGraphOptions());
         }
         if (operationTimeoutInMs_ != 0L) {
    @@ -4742,21 +5196,24 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         for (int i = 0; i < sessionInterOpThreadPool_.size(); i++) {
           output.writeMessage(12, sessionInterOpThreadPool_.get(i));
         }
    -    if (rpcOptions_ != null) {
    +    if (((bitField0_ & 0x00000008) != 0)) {
           output.writeMessage(13, getRpcOptions());
         }
    -    if (clusterDef_ != null) {
    +    if (((bitField0_ & 0x00000010) != 0)) {
           output.writeMessage(14, getClusterDef());
         }
         if (isolateSessionState_ != false) {
           output.writeBool(15, isolateSessionState_);
         }
    -    if (experimental_ != null) {
    +    if (((bitField0_ & 0x00000020) != 0)) {
           output.writeMessage(16, getExperimental());
         }
         if (shareClusterDevicesInSession_ != false) {
           output.writeBool(17, shareClusterDevicesInSession_);
         }
    +    if (((bitField0_ & 0x00000002) != 0)) {
    +      output.writeMessage(18, getPluggableDeviceOptions());
    +    }
         getUnknownFields().writeTo(output);
       }
     
    @@ -4796,7 +5253,7 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeInt32Size(5, interOpParallelismThreads_);
         }
    -    if (gpuOptions_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(6, getGpuOptions());
         }
    @@ -4812,7 +5269,7 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeBoolSize(9, usePerSessionThreads_);
         }
    -    if (graphOptions_ != null) {
    +    if (((bitField0_ & 0x00000004) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(10, getGraphOptions());
         }
    @@ -4824,11 +5281,11 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(12, sessionInterOpThreadPool_.get(i));
         }
    -    if (rpcOptions_ != null) {
    +    if (((bitField0_ & 0x00000008) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(13, getRpcOptions());
         }
    -    if (clusterDef_ != null) {
    +    if (((bitField0_ & 0x00000010) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(14, getClusterDef());
         }
    @@ -4836,7 +5293,7 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeBoolSize(15, isolateSessionState_);
         }
    -    if (experimental_ != null) {
    +    if (((bitField0_ & 0x00000020) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(16, getExperimental());
         }
    @@ -4844,6 +5301,10 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeBoolSize(17, shareClusterDevicesInSession_);
         }
    +    if (((bitField0_ & 0x00000002) != 0)) {
    +      size += com.google.protobuf.CodedOutputStream
    +        .computeMessageSize(18, getPluggableDeviceOptions());
    +    }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
         return size;
    @@ -4878,6 +5339,11 @@ public boolean equals(final java.lang.Object obj) {
           if (!getGpuOptions()
               .equals(other.getGpuOptions())) return false;
         }
    +    if (hasPluggableDeviceOptions() != other.hasPluggableDeviceOptions()) return false;
    +    if (hasPluggableDeviceOptions()) {
    +      if (!getPluggableDeviceOptions()
    +          .equals(other.getPluggableDeviceOptions())) return false;
    +    }
         if (getAllowSoftPlacement()
             != other.getAllowSoftPlacement()) return false;
         if (getLogDevicePlacement()
    @@ -4944,6 +5410,10 @@ public int hashCode() {
           hash = (37 * hash) + GPU_OPTIONS_FIELD_NUMBER;
           hash = (53 * hash) + getGpuOptions().hashCode();
         }
    +    if (hasPluggableDeviceOptions()) {
    +      hash = (37 * hash) + PLUGGABLE_DEVICE_OPTIONS_FIELD_NUMBER;
    +      hash = (53 * hash) + getPluggableDeviceOptions().hashCode();
    +    }
         hash = (37 * hash) + ALLOW_SOFT_PLACEMENT_FIELD_NUMBER;
         hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
             getAllowSoftPlacement());
    @@ -5014,39 +5484,41 @@ public static org.tensorflow.proto.ConfigProto parseFrom(
       }
       public static org.tensorflow.proto.ConfigProto parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ConfigProto parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.ConfigProto parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.ConfigProto parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.ConfigProto parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ConfigProto parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -5066,7 +5538,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -5079,7 +5551,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.ConfigProto}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.ConfigProto)
           org.tensorflow.proto.ConfigProtoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -5088,7 +5560,7 @@ public static final class Builder extends
         }
     
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
             int number) {
           switch (number) {
             case 1:
    @@ -5099,7 +5571,7 @@ protected com.google.protobuf.MapField internalGetMapField(
           }
         }
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMutableMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(
             int number) {
           switch (number) {
             case 1:
    @@ -5110,7 +5582,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
           }
         }
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_ConfigProto_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -5119,73 +5591,77 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
     
         // Construct using org.tensorflow.proto.ConfigProto.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getSessionInterOpThreadPoolFieldBuilder();
    +        getGpuOptionsFieldBuilder();
    +        getPluggableDeviceOptionsFieldBuilder();
    +        getGraphOptionsFieldBuilder();
    +        getRpcOptionsFieldBuilder();
    +        getClusterDefFieldBuilder();
    +        getExperimentalFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           internalGetMutableDeviceCount().clear();
           intraOpParallelismThreads_ = 0;
    -
           interOpParallelismThreads_ = 0;
    -
           usePerSessionThreads_ = false;
    -
           if (sessionInterOpThreadPoolBuilder_ == null) {
             sessionInterOpThreadPool_ = java.util.Collections.emptyList();
           } else {
             sessionInterOpThreadPool_ = null;
             sessionInterOpThreadPoolBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000002);
    +      bitField0_ = (bitField0_ & ~0x00000010);
           placementPeriod_ = 0;
    -
    -      deviceFilters_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000004);
    -      if (gpuOptionsBuilder_ == null) {
    -        gpuOptions_ = null;
    -      } else {
    -        gpuOptions_ = null;
    +      deviceFilters_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
    +      gpuOptions_ = null;
    +      if (gpuOptionsBuilder_ != null) {
    +        gpuOptionsBuilder_.dispose();
             gpuOptionsBuilder_ = null;
           }
    +      pluggableDeviceOptions_ = null;
    +      if (pluggableDeviceOptionsBuilder_ != null) {
    +        pluggableDeviceOptionsBuilder_.dispose();
    +        pluggableDeviceOptionsBuilder_ = null;
    +      }
           allowSoftPlacement_ = false;
    -
           logDevicePlacement_ = false;
    -
    -      if (graphOptionsBuilder_ == null) {
    -        graphOptions_ = null;
    -      } else {
    -        graphOptions_ = null;
    +      graphOptions_ = null;
    +      if (graphOptionsBuilder_ != null) {
    +        graphOptionsBuilder_.dispose();
             graphOptionsBuilder_ = null;
           }
           operationTimeoutInMs_ = 0L;
    -
    -      if (rpcOptionsBuilder_ == null) {
    -        rpcOptions_ = null;
    -      } else {
    -        rpcOptions_ = null;
    +      rpcOptions_ = null;
    +      if (rpcOptionsBuilder_ != null) {
    +        rpcOptionsBuilder_.dispose();
             rpcOptionsBuilder_ = null;
           }
    -      if (clusterDefBuilder_ == null) {
    -        clusterDef_ = null;
    -      } else {
    -        clusterDef_ = null;
    +      clusterDef_ = null;
    +      if (clusterDefBuilder_ != null) {
    +        clusterDefBuilder_.dispose();
             clusterDefBuilder_ = null;
           }
           isolateSessionState_ = false;
    -
           shareClusterDevicesInSession_ = false;
    -
    -      if (experimentalBuilder_ == null) {
    -        experimental_ = null;
    -      } else {
    -        experimental_ = null;
    +      experimental_ = null;
    +      if (experimentalBuilder_ != null) {
    +        experimentalBuilder_.dispose();
             experimentalBuilder_ = null;
           }
           return this;
    @@ -5214,93 +5690,101 @@ public org.tensorflow.proto.ConfigProto build() {
         @java.lang.Override
         public org.tensorflow.proto.ConfigProto buildPartial() {
           org.tensorflow.proto.ConfigProto result = new org.tensorflow.proto.ConfigProto(this);
    -      int from_bitField0_ = bitField0_;
    -      result.deviceCount_ = internalGetDeviceCount();
    -      result.deviceCount_.makeImmutable();
    -      result.intraOpParallelismThreads_ = intraOpParallelismThreads_;
    -      result.interOpParallelismThreads_ = interOpParallelismThreads_;
    -      result.usePerSessionThreads_ = usePerSessionThreads_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.ConfigProto result) {
           if (sessionInterOpThreadPoolBuilder_ == null) {
    -        if (((bitField0_ & 0x00000002) != 0)) {
    +        if (((bitField0_ & 0x00000010) != 0)) {
               sessionInterOpThreadPool_ = java.util.Collections.unmodifiableList(sessionInterOpThreadPool_);
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          bitField0_ = (bitField0_ & ~0x00000010);
             }
             result.sessionInterOpThreadPool_ = sessionInterOpThreadPool_;
           } else {
             result.sessionInterOpThreadPool_ = sessionInterOpThreadPoolBuilder_.build();
           }
    -      result.placementPeriod_ = placementPeriod_;
    -      if (((bitField0_ & 0x00000004) != 0)) {
    -        deviceFilters_ = deviceFilters_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000004);
    -      }
    -      result.deviceFilters_ = deviceFilters_;
    -      if (gpuOptionsBuilder_ == null) {
    -        result.gpuOptions_ = gpuOptions_;
    -      } else {
    -        result.gpuOptions_ = gpuOptionsBuilder_.build();
    -      }
    -      result.allowSoftPlacement_ = allowSoftPlacement_;
    -      result.logDevicePlacement_ = logDevicePlacement_;
    -      if (graphOptionsBuilder_ == null) {
    -        result.graphOptions_ = graphOptions_;
    -      } else {
    -        result.graphOptions_ = graphOptionsBuilder_.build();
    -      }
    -      result.operationTimeoutInMs_ = operationTimeoutInMs_;
    -      if (rpcOptionsBuilder_ == null) {
    -        result.rpcOptions_ = rpcOptions_;
    -      } else {
    -        result.rpcOptions_ = rpcOptionsBuilder_.build();
    -      }
    -      if (clusterDefBuilder_ == null) {
    -        result.clusterDef_ = clusterDef_;
    -      } else {
    -        result.clusterDef_ = clusterDefBuilder_.build();
    +    }
    +
    +    private void buildPartial0(org.tensorflow.proto.ConfigProto result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.deviceCount_ = internalGetDeviceCount();
    +        result.deviceCount_.makeImmutable();
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.intraOpParallelismThreads_ = intraOpParallelismThreads_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.interOpParallelismThreads_ = interOpParallelismThreads_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.usePerSessionThreads_ = usePerSessionThreads_;
    +      }
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.placementPeriod_ = placementPeriod_;
    +      }
    +      if (((from_bitField0_ & 0x00000040) != 0)) {
    +        deviceFilters_.makeImmutable();
    +        result.deviceFilters_ = deviceFilters_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000080) != 0)) {
    +        result.gpuOptions_ = gpuOptionsBuilder_ == null
    +            ? gpuOptions_
    +            : gpuOptionsBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000100) != 0)) {
    +        result.pluggableDeviceOptions_ = pluggableDeviceOptionsBuilder_ == null
    +            ? pluggableDeviceOptions_
    +            : pluggableDeviceOptionsBuilder_.build();
    +        to_bitField0_ |= 0x00000002;
    +      }
    +      if (((from_bitField0_ & 0x00000200) != 0)) {
    +        result.allowSoftPlacement_ = allowSoftPlacement_;
    +      }
    +      if (((from_bitField0_ & 0x00000400) != 0)) {
    +        result.logDevicePlacement_ = logDevicePlacement_;
    +      }
    +      if (((from_bitField0_ & 0x00000800) != 0)) {
    +        result.graphOptions_ = graphOptionsBuilder_ == null
    +            ? graphOptions_
    +            : graphOptionsBuilder_.build();
    +        to_bitField0_ |= 0x00000004;
    +      }
    +      if (((from_bitField0_ & 0x00001000) != 0)) {
    +        result.operationTimeoutInMs_ = operationTimeoutInMs_;
    +      }
    +      if (((from_bitField0_ & 0x00002000) != 0)) {
    +        result.rpcOptions_ = rpcOptionsBuilder_ == null
    +            ? rpcOptions_
    +            : rpcOptionsBuilder_.build();
    +        to_bitField0_ |= 0x00000008;
    +      }
    +      if (((from_bitField0_ & 0x00004000) != 0)) {
    +        result.clusterDef_ = clusterDefBuilder_ == null
    +            ? clusterDef_
    +            : clusterDefBuilder_.build();
    +        to_bitField0_ |= 0x00000010;
    +      }
    +      if (((from_bitField0_ & 0x00008000) != 0)) {
    +        result.isolateSessionState_ = isolateSessionState_;
    +      }
    +      if (((from_bitField0_ & 0x00010000) != 0)) {
    +        result.shareClusterDevicesInSession_ = shareClusterDevicesInSession_;
           }
    -      result.isolateSessionState_ = isolateSessionState_;
    -      result.shareClusterDevicesInSession_ = shareClusterDevicesInSession_;
    -      if (experimentalBuilder_ == null) {
    -        result.experimental_ = experimental_;
    -      } else {
    -        result.experimental_ = experimentalBuilder_.build();
    +      if (((from_bitField0_ & 0x00020000) != 0)) {
    +        result.experimental_ = experimentalBuilder_ == null
    +            ? experimental_
    +            : experimentalBuilder_.build();
    +        to_bitField0_ |= 0x00000020;
           }
    -      onBuilt();
    -      return result;
    +      result.bitField0_ |= to_bitField0_;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    -    }
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.ConfigProto) {
    @@ -5315,6 +5799,7 @@ public Builder mergeFrom(org.tensorflow.proto.ConfigProto other) {
           if (other == org.tensorflow.proto.ConfigProto.getDefaultInstance()) return this;
           internalGetMutableDeviceCount().mergeFrom(
               other.internalGetDeviceCount());
    +      bitField0_ |= 0x00000001;
           if (other.getIntraOpParallelismThreads() != 0) {
             setIntraOpParallelismThreads(other.getIntraOpParallelismThreads());
           }
    @@ -5328,7 +5813,7 @@ public Builder mergeFrom(org.tensorflow.proto.ConfigProto other) {
             if (!other.sessionInterOpThreadPool_.isEmpty()) {
               if (sessionInterOpThreadPool_.isEmpty()) {
                 sessionInterOpThreadPool_ = other.sessionInterOpThreadPool_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            bitField0_ = (bitField0_ & ~0x00000010);
               } else {
                 ensureSessionInterOpThreadPoolIsMutable();
                 sessionInterOpThreadPool_.addAll(other.sessionInterOpThreadPool_);
    @@ -5341,9 +5826,9 @@ public Builder mergeFrom(org.tensorflow.proto.ConfigProto other) {
                 sessionInterOpThreadPoolBuilder_.dispose();
                 sessionInterOpThreadPoolBuilder_ = null;
                 sessionInterOpThreadPool_ = other.sessionInterOpThreadPool_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            bitField0_ = (bitField0_ & ~0x00000010);
                 sessionInterOpThreadPoolBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getSessionInterOpThreadPoolFieldBuilder() : null;
               } else {
                 sessionInterOpThreadPoolBuilder_.addAllMessages(other.sessionInterOpThreadPool_);
    @@ -5356,7 +5841,7 @@ public Builder mergeFrom(org.tensorflow.proto.ConfigProto other) {
           if (!other.deviceFilters_.isEmpty()) {
             if (deviceFilters_.isEmpty()) {
               deviceFilters_ = other.deviceFilters_;
    -          bitField0_ = (bitField0_ & ~0x00000004);
    +          bitField0_ |= 0x00000040;
             } else {
               ensureDeviceFiltersIsMutable();
               deviceFilters_.addAll(other.deviceFilters_);
    @@ -5366,6 +5851,9 @@ public Builder mergeFrom(org.tensorflow.proto.ConfigProto other) {
           if (other.hasGpuOptions()) {
             mergeGpuOptions(other.getGpuOptions());
           }
    +      if (other.hasPluggableDeviceOptions()) {
    +        mergePluggableDeviceOptions(other.getPluggableDeviceOptions());
    +      }
           if (other.getAllowSoftPlacement() != false) {
             setAllowSoftPlacement(other.getAllowSoftPlacement());
           }
    @@ -5425,16 +5913,17 @@ public Builder mergeFrom(
                       DeviceCountDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                   internalGetMutableDeviceCount().getMutableMap().put(
                       deviceCount__.getKey(), deviceCount__.getValue());
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 16: {
                   intraOpParallelismThreads_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 case 24: {
                   placementPeriod_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 24
                 case 34: {
    @@ -5445,41 +5934,41 @@ public Builder mergeFrom(
                 } // case 34
                 case 40: {
                   interOpParallelismThreads_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 40
                 case 50: {
                   input.readMessage(
                       getGpuOptionsFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000080;
                   break;
                 } // case 50
                 case 56: {
                   allowSoftPlacement_ = input.readBool();
    -
    +              bitField0_ |= 0x00000200;
                   break;
                 } // case 56
                 case 64: {
                   logDevicePlacement_ = input.readBool();
    -
    +              bitField0_ |= 0x00000400;
                   break;
                 } // case 64
                 case 72: {
                   usePerSessionThreads_ = input.readBool();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 72
                 case 82: {
                   input.readMessage(
                       getGraphOptionsFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000800;
                   break;
                 } // case 82
                 case 88: {
                   operationTimeoutInMs_ = input.readInt64();
    -
    +              bitField0_ |= 0x00001000;
                   break;
                 } // case 88
                 case 98: {
    @@ -5499,33 +5988,40 @@ public Builder mergeFrom(
                   input.readMessage(
                       getRpcOptionsFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00002000;
                   break;
                 } // case 106
                 case 114: {
                   input.readMessage(
                       getClusterDefFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00004000;
                   break;
                 } // case 114
                 case 120: {
                   isolateSessionState_ = input.readBool();
    -
    +              bitField0_ |= 0x00008000;
                   break;
                 } // case 120
                 case 130: {
                   input.readMessage(
                       getExperimentalFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00020000;
                   break;
                 } // case 130
                 case 136: {
                   shareClusterDevicesInSession_ = input.readBool();
    -
    +              bitField0_ |= 0x00010000;
                   break;
                 } // case 136
    +            case 146: {
    +              input.readMessage(
    +                  getPluggableDeviceOptionsFieldBuilder().getBuilder(),
    +                  extensionRegistry);
    +              bitField0_ |= 0x00000100;
    +              break;
    +            } // case 146
                 default: {
                   if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                     done = true; // was an endgroup tag
    @@ -5546,7 +6042,7 @@ public Builder mergeFrom(
         private com.google.protobuf.MapField<
             java.lang.String, java.lang.Integer> deviceCount_;
         private com.google.protobuf.MapField
    -    internalGetDeviceCount() {
    +        internalGetDeviceCount() {
           if (deviceCount_ == null) {
             return com.google.protobuf.MapField.emptyMapField(
                 DeviceCountDefaultEntryHolder.defaultEntry);
    @@ -5554,8 +6050,7 @@ public Builder mergeFrom(
           return deviceCount_;
         }
         private com.google.protobuf.MapField
    -    internalGetMutableDeviceCount() {
    -      onChanged();;
    +        internalGetMutableDeviceCount() {
           if (deviceCount_ == null) {
             deviceCount_ = com.google.protobuf.MapField.newMapField(
                 DeviceCountDefaultEntryHolder.defaultEntry);
    @@ -5563,9 +6058,10 @@ public Builder mergeFrom(
           if (!deviceCount_.isMutable()) {
             deviceCount_ = deviceCount_.copy();
           }
    +      bitField0_ |= 0x00000001;
    +      onChanged();
           return deviceCount_;
         }
    -
         public int getDeviceCountCount() {
           return internalGetDeviceCount().getMap().size();
         }
    @@ -5579,7 +6075,6 @@ public int getDeviceCountCount() {
          *
          * map<string, int32> device_count = 1;
          */
    -
         @java.lang.Override
         public boolean containsDeviceCount(
             java.lang.String key) {
    @@ -5605,7 +6100,6 @@ public java.util.Map getDeviceCount() {
          * map<string, int32> device_count = 1;
          */
         @java.lang.Override
    -
         public java.util.Map getDeviceCountMap() {
           return internalGetDeviceCount().getMap();
         }
    @@ -5620,7 +6114,6 @@ public java.util.Map getDeviceCountMap() {
          * map<string, int32> device_count = 1;
          */
         @java.lang.Override
    -
         public int getDeviceCountOrDefault(
             java.lang.String key,
             int defaultValue) {
    @@ -5640,7 +6133,6 @@ public int getDeviceCountOrDefault(
          * map<string, int32> device_count = 1;
          */
         @java.lang.Override
    -
         public int getDeviceCountOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -5651,8 +6143,8 @@ public int getDeviceCountOrThrow(
           }
           return map.get(key);
         }
    -
         public Builder clearDeviceCount() {
    +      bitField0_ = (bitField0_ & ~0x00000001);
           internalGetMutableDeviceCount().getMutableMap()
               .clear();
           return this;
    @@ -5667,7 +6159,6 @@ public Builder clearDeviceCount() {
          *
          * map<string, int32> device_count = 1;
          */
    -
         public Builder removeDeviceCount(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -5680,7 +6171,8 @@ public Builder removeDeviceCount(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableDeviceCount() {
    +        getMutableDeviceCount() {
    +      bitField0_ |= 0x00000001;
           return internalGetMutableDeviceCount().getMutableMap();
         }
         /**
    @@ -5697,9 +6189,10 @@ public Builder putDeviceCount(
             java.lang.String key,
             int value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      
    +
           internalGetMutableDeviceCount().getMutableMap()
               .put(key, value);
    +      bitField0_ |= 0x00000001;
           return this;
         }
         /**
    @@ -5712,11 +6205,11 @@ public Builder putDeviceCount(
          *
          * map<string, int32> device_count = 1;
          */
    -
         public Builder putAllDeviceCount(
             java.util.Map values) {
           internalGetMutableDeviceCount().getMutableMap()
               .putAll(values);
    +      bitField0_ |= 0x00000001;
           return this;
         }
     
    @@ -5726,15 +6219,17 @@ public Builder putAllDeviceCount(
          * The execution of an individual op (for some op types) can be
          * parallelized on a pool of intra_op_parallelism_threads.
          * 0 means the system picks an appropriate number.
    +     *
          * If you create an ordinary session, e.g., from Python or C++,
          * then there is exactly one intra op thread pool per process.
          * The first session created determines the number of threads in this pool.
          * All subsequent sessions reuse/share this one global pool.
    +     *
          * There are notable exceptions to the default behavior described above:
          * 1. There is an environment variable  for overriding this thread pool,
    -     *    named TF_OVERRIDE_GLOBAL_THREADPOOL.
    +     * named TF_OVERRIDE_GLOBAL_THREADPOOL.
          * 2. When connecting to a server, such as a remote `tf.train.Server`
    -     *    instance, then this option will be ignored altogether.
    +     * instance, then this option will be ignored altogether.
          * 
    * * int32 intra_op_parallelism_threads = 2; @@ -5749,15 +6244,17 @@ public int getIntraOpParallelismThreads() { * The execution of an individual op (for some op types) can be * parallelized on a pool of intra_op_parallelism_threads. * 0 means the system picks an appropriate number. + * * If you create an ordinary session, e.g., from Python or C++, * then there is exactly one intra op thread pool per process. * The first session created determines the number of threads in this pool. * All subsequent sessions reuse/share this one global pool. + * * There are notable exceptions to the default behavior described above: * 1. There is an environment variable for overriding this thread pool, - * named TF_OVERRIDE_GLOBAL_THREADPOOL. + * named TF_OVERRIDE_GLOBAL_THREADPOOL. * 2. When connecting to a server, such as a remote `tf.train.Server` - * instance, then this option will be ignored altogether. + * instance, then this option will be ignored altogether. *
    * * int32 intra_op_parallelism_threads = 2; @@ -5765,8 +6262,9 @@ public int getIntraOpParallelismThreads() { * @return This builder for chaining. */ public Builder setIntraOpParallelismThreads(int value) { - + intraOpParallelismThreads_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -5775,22 +6273,24 @@ public Builder setIntraOpParallelismThreads(int value) { * The execution of an individual op (for some op types) can be * parallelized on a pool of intra_op_parallelism_threads. * 0 means the system picks an appropriate number. + * * If you create an ordinary session, e.g., from Python or C++, * then there is exactly one intra op thread pool per process. * The first session created determines the number of threads in this pool. * All subsequent sessions reuse/share this one global pool. + * * There are notable exceptions to the default behavior described above: * 1. There is an environment variable for overriding this thread pool, - * named TF_OVERRIDE_GLOBAL_THREADPOOL. + * named TF_OVERRIDE_GLOBAL_THREADPOOL. * 2. When connecting to a server, such as a remote `tf.train.Server` - * instance, then this option will be ignored altogether. + * instance, then this option will be ignored altogether. *
    * * int32 intra_op_parallelism_threads = 2; * @return This builder for chaining. */ public Builder clearIntraOpParallelismThreads() { - + bitField0_ = (bitField0_ & ~0x00000002); intraOpParallelismThreads_ = 0; onChanged(); return this; @@ -5801,8 +6301,10 @@ public Builder clearIntraOpParallelismThreads() { *
          * Nodes that perform blocking operations are enqueued on a pool of
          * inter_op_parallelism_threads available in each process.
    +     *
          * 0 means the system picks an appropriate number.
          * Negative means all operations are performed in caller's thread.
    +     *
          * Note that the first Session created in the process sets the
          * number of threads for all future sessions unless use_per_session_threads is
          * true or session_inter_op_thread_pool is configured.
    @@ -5819,8 +6321,10 @@ public int getInterOpParallelismThreads() {
          * 
          * Nodes that perform blocking operations are enqueued on a pool of
          * inter_op_parallelism_threads available in each process.
    +     *
          * 0 means the system picks an appropriate number.
          * Negative means all operations are performed in caller's thread.
    +     *
          * Note that the first Session created in the process sets the
          * number of threads for all future sessions unless use_per_session_threads is
          * true or session_inter_op_thread_pool is configured.
    @@ -5831,8 +6335,9 @@ public int getInterOpParallelismThreads() {
          * @return This builder for chaining.
          */
         public Builder setInterOpParallelismThreads(int value) {
    -      
    +
           interOpParallelismThreads_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -5840,8 +6345,10 @@ public Builder setInterOpParallelismThreads(int value) {
          * 
          * Nodes that perform blocking operations are enqueued on a pool of
          * inter_op_parallelism_threads available in each process.
    +     *
          * 0 means the system picks an appropriate number.
          * Negative means all operations are performed in caller's thread.
    +     *
          * Note that the first Session created in the process sets the
          * number of threads for all future sessions unless use_per_session_threads is
          * true or session_inter_op_thread_pool is configured.
    @@ -5851,7 +6358,7 @@ public Builder setInterOpParallelismThreads(int value) {
          * @return This builder for chaining.
          */
         public Builder clearInterOpParallelismThreads() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           interOpParallelismThreads_ = 0;
           onChanged();
           return this;
    @@ -5862,8 +6369,10 @@ public Builder clearInterOpParallelismThreads() {
          * 
          * If true, use a new set of threads for this session rather than the global
          * pool of threads. Only supported by direct sessions.
    +     *
          * If false, use the global threads created by the first session, or the
          * per-session thread pools configured by session_inter_op_thread_pool.
    +     *
          * This option is deprecated. The same effect can be achieved by setting
          * session_inter_op_thread_pool to have one element, whose num_threads equals
          * inter_op_parallelism_threads.
    @@ -5880,8 +6389,10 @@ public boolean getUsePerSessionThreads() {
          * 
          * If true, use a new set of threads for this session rather than the global
          * pool of threads. Only supported by direct sessions.
    +     *
          * If false, use the global threads created by the first session, or the
          * per-session thread pools configured by session_inter_op_thread_pool.
    +     *
          * This option is deprecated. The same effect can be achieved by setting
          * session_inter_op_thread_pool to have one element, whose num_threads equals
          * inter_op_parallelism_threads.
    @@ -5892,8 +6403,9 @@ public boolean getUsePerSessionThreads() {
          * @return This builder for chaining.
          */
         public Builder setUsePerSessionThreads(boolean value) {
    -      
    +
           usePerSessionThreads_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -5901,8 +6413,10 @@ public Builder setUsePerSessionThreads(boolean value) {
          * 
          * If true, use a new set of threads for this session rather than the global
          * pool of threads. Only supported by direct sessions.
    +     *
          * If false, use the global threads created by the first session, or the
          * per-session thread pools configured by session_inter_op_thread_pool.
    +     *
          * This option is deprecated. The same effect can be achieved by setting
          * session_inter_op_thread_pool to have one element, whose num_threads equals
          * inter_op_parallelism_threads.
    @@ -5912,7 +6426,7 @@ public Builder setUsePerSessionThreads(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearUsePerSessionThreads() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           usePerSessionThreads_ = false;
           onChanged();
           return this;
    @@ -5921,21 +6435,23 @@ public Builder clearUsePerSessionThreads() {
         private java.util.List sessionInterOpThreadPool_ =
           java.util.Collections.emptyList();
         private void ensureSessionInterOpThreadPoolIsMutable() {
    -      if (!((bitField0_ & 0x00000002) != 0)) {
    +      if (!((bitField0_ & 0x00000010) != 0)) {
             sessionInterOpThreadPool_ = new java.util.ArrayList(sessionInterOpThreadPool_);
    -        bitField0_ |= 0x00000002;
    +        bitField0_ |= 0x00000010;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ThreadPoolOptionProto, org.tensorflow.proto.ThreadPoolOptionProto.Builder, org.tensorflow.proto.ThreadPoolOptionProtoOrBuilder> sessionInterOpThreadPoolBuilder_;
     
         /**
          * 
          * This option is experimental - it may be replaced with a different mechanism
          * in the future.
    +     *
          * Configures session thread pools. If this is configured, then RunOptions for
          * a Run call can select the thread pool to use.
    +     *
          * The intended use is for when some session invocations need to run in a
          * background pool limited to a small number of threads:
          * - For example, a session may be configured to have one large pool (for
    @@ -5964,8 +6480,10 @@ public java.util.List getSessionInte
          * 
          * This option is experimental - it may be replaced with a different mechanism
          * in the future.
    +     *
          * Configures session thread pools. If this is configured, then RunOptions for
          * a Run call can select the thread pool to use.
    +     *
          * The intended use is for when some session invocations need to run in a
          * background pool limited to a small number of threads:
          * - For example, a session may be configured to have one large pool (for
    @@ -5994,8 +6512,10 @@ public int getSessionInterOpThreadPoolCount() {
          * 
          * This option is experimental - it may be replaced with a different mechanism
          * in the future.
    +     *
          * Configures session thread pools. If this is configured, then RunOptions for
          * a Run call can select the thread pool to use.
    +     *
          * The intended use is for when some session invocations need to run in a
          * background pool limited to a small number of threads:
          * - For example, a session may be configured to have one large pool (for
    @@ -6024,8 +6544,10 @@ public org.tensorflow.proto.ThreadPoolOptionProto getSessionInterOpThreadPool(in
          * 
          * This option is experimental - it may be replaced with a different mechanism
          * in the future.
    +     *
          * Configures session thread pools. If this is configured, then RunOptions for
          * a Run call can select the thread pool to use.
    +     *
          * The intended use is for when some session invocations need to run in a
          * background pool limited to a small number of threads:
          * - For example, a session may be configured to have one large pool (for
    @@ -6061,8 +6583,10 @@ public Builder setSessionInterOpThreadPool(
          * 
          * This option is experimental - it may be replaced with a different mechanism
          * in the future.
    +     *
          * Configures session thread pools. If this is configured, then RunOptions for
          * a Run call can select the thread pool to use.
    +     *
          * The intended use is for when some session invocations need to run in a
          * background pool limited to a small number of threads:
          * - For example, a session may be configured to have one large pool (for
    @@ -6095,8 +6619,10 @@ public Builder setSessionInterOpThreadPool(
          * 
          * This option is experimental - it may be replaced with a different mechanism
          * in the future.
    +     *
          * Configures session thread pools. If this is configured, then RunOptions for
          * a Run call can select the thread pool to use.
    +     *
          * The intended use is for when some session invocations need to run in a
          * background pool limited to a small number of threads:
          * - For example, a session may be configured to have one large pool (for
    @@ -6131,8 +6657,10 @@ public Builder addSessionInterOpThreadPool(org.tensorflow.proto.ThreadPoolOption
          * 
          * This option is experimental - it may be replaced with a different mechanism
          * in the future.
    +     *
          * Configures session thread pools. If this is configured, then RunOptions for
          * a Run call can select the thread pool to use.
    +     *
          * The intended use is for when some session invocations need to run in a
          * background pool limited to a small number of threads:
          * - For example, a session may be configured to have one large pool (for
    @@ -6168,8 +6696,10 @@ public Builder addSessionInterOpThreadPool(
          * 
          * This option is experimental - it may be replaced with a different mechanism
          * in the future.
    +     *
          * Configures session thread pools. If this is configured, then RunOptions for
          * a Run call can select the thread pool to use.
    +     *
          * The intended use is for when some session invocations need to run in a
          * background pool limited to a small number of threads:
          * - For example, a session may be configured to have one large pool (for
    @@ -6202,8 +6732,10 @@ public Builder addSessionInterOpThreadPool(
          * 
          * This option is experimental - it may be replaced with a different mechanism
          * in the future.
    +     *
          * Configures session thread pools. If this is configured, then RunOptions for
          * a Run call can select the thread pool to use.
    +     *
          * The intended use is for when some session invocations need to run in a
          * background pool limited to a small number of threads:
          * - For example, a session may be configured to have one large pool (for
    @@ -6236,8 +6768,10 @@ public Builder addSessionInterOpThreadPool(
          * 
          * This option is experimental - it may be replaced with a different mechanism
          * in the future.
    +     *
          * Configures session thread pools. If this is configured, then RunOptions for
          * a Run call can select the thread pool to use.
    +     *
          * The intended use is for when some session invocations need to run in a
          * background pool limited to a small number of threads:
          * - For example, a session may be configured to have one large pool (for
    @@ -6271,8 +6805,10 @@ public Builder addAllSessionInterOpThreadPool(
          * 
          * This option is experimental - it may be replaced with a different mechanism
          * in the future.
    +     *
          * Configures session thread pools. If this is configured, then RunOptions for
          * a Run call can select the thread pool to use.
    +     *
          * The intended use is for when some session invocations need to run in a
          * background pool limited to a small number of threads:
          * - For example, a session may be configured to have one large pool (for
    @@ -6293,7 +6829,7 @@ public Builder addAllSessionInterOpThreadPool(
         public Builder clearSessionInterOpThreadPool() {
           if (sessionInterOpThreadPoolBuilder_ == null) {
             sessionInterOpThreadPool_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        bitField0_ = (bitField0_ & ~0x00000010);
             onChanged();
           } else {
             sessionInterOpThreadPoolBuilder_.clear();
    @@ -6304,8 +6840,10 @@ public Builder clearSessionInterOpThreadPool() {
          * 
          * This option is experimental - it may be replaced with a different mechanism
          * in the future.
    +     *
          * Configures session thread pools. If this is configured, then RunOptions for
          * a Run call can select the thread pool to use.
    +     *
          * The intended use is for when some session invocations need to run in a
          * background pool limited to a small number of threads:
          * - For example, a session may be configured to have one large pool (for
    @@ -6337,8 +6875,10 @@ public Builder removeSessionInterOpThreadPool(int index) {
          * 
          * This option is experimental - it may be replaced with a different mechanism
          * in the future.
    +     *
          * Configures session thread pools. If this is configured, then RunOptions for
          * a Run call can select the thread pool to use.
    +     *
          * The intended use is for when some session invocations need to run in a
          * background pool limited to a small number of threads:
          * - For example, a session may be configured to have one large pool (for
    @@ -6364,8 +6904,10 @@ public org.tensorflow.proto.ThreadPoolOptionProto.Builder getSessionInterOpThrea
          * 
          * This option is experimental - it may be replaced with a different mechanism
          * in the future.
    +     *
          * Configures session thread pools. If this is configured, then RunOptions for
          * a Run call can select the thread pool to use.
    +     *
          * The intended use is for when some session invocations need to run in a
          * background pool limited to a small number of threads:
          * - For example, a session may be configured to have one large pool (for
    @@ -6394,8 +6936,10 @@ public org.tensorflow.proto.ThreadPoolOptionProtoOrBuilder getSessionInterOpThre
          * 
          * This option is experimental - it may be replaced with a different mechanism
          * in the future.
    +     *
          * Configures session thread pools. If this is configured, then RunOptions for
          * a Run call can select the thread pool to use.
    +     *
          * The intended use is for when some session invocations need to run in a
          * background pool limited to a small number of threads:
          * - For example, a session may be configured to have one large pool (for
    @@ -6425,8 +6969,10 @@ public org.tensorflow.proto.ThreadPoolOptionProtoOrBuilder getSessionInterOpThre
          * 
          * This option is experimental - it may be replaced with a different mechanism
          * in the future.
    +     *
          * Configures session thread pools. If this is configured, then RunOptions for
          * a Run call can select the thread pool to use.
    +     *
          * The intended use is for when some session invocations need to run in a
          * background pool limited to a small number of threads:
          * - For example, a session may be configured to have one large pool (for
    @@ -6452,8 +6998,10 @@ public org.tensorflow.proto.ThreadPoolOptionProto.Builder addSessionInterOpThrea
          * 
          * This option is experimental - it may be replaced with a different mechanism
          * in the future.
    +     *
          * Configures session thread pools. If this is configured, then RunOptions for
          * a Run call can select the thread pool to use.
    +     *
          * The intended use is for when some session invocations need to run in a
          * background pool limited to a small number of threads:
          * - For example, a session may be configured to have one large pool (for
    @@ -6480,8 +7028,10 @@ public org.tensorflow.proto.ThreadPoolOptionProto.Builder addSessionInterOpThrea
          * 
          * This option is experimental - it may be replaced with a different mechanism
          * in the future.
    +     *
          * Configures session thread pools. If this is configured, then RunOptions for
          * a Run call can select the thread pool to use.
    +     *
          * The intended use is for when some session invocations need to run in a
          * background pool limited to a small number of threads:
          * - For example, a session may be configured to have one large pool (for
    @@ -6503,14 +7053,14 @@ public org.tensorflow.proto.ThreadPoolOptionProto.Builder addSessionInterOpThrea
              getSessionInterOpThreadPoolBuilderList() {
           return getSessionInterOpThreadPoolFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ThreadPoolOptionProto, org.tensorflow.proto.ThreadPoolOptionProto.Builder, org.tensorflow.proto.ThreadPoolOptionProtoOrBuilder> 
             getSessionInterOpThreadPoolFieldBuilder() {
           if (sessionInterOpThreadPoolBuilder_ == null) {
    -        sessionInterOpThreadPoolBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        sessionInterOpThreadPoolBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.ThreadPoolOptionProto, org.tensorflow.proto.ThreadPoolOptionProto.Builder, org.tensorflow.proto.ThreadPoolOptionProtoOrBuilder>(
                     sessionInterOpThreadPool_,
    -                ((bitField0_ & 0x00000002) != 0),
    +                ((bitField0_ & 0x00000010) != 0),
                     getParentForChildren(),
                     isClean());
             sessionInterOpThreadPool_ = null;
    @@ -6545,8 +7095,9 @@ public int getPlacementPeriod() {
          * @return This builder for chaining.
          */
         public Builder setPlacementPeriod(int value) {
    -      
    +
           placementPeriod_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -6561,18 +7112,19 @@ public Builder setPlacementPeriod(int value) {
          * @return This builder for chaining.
          */
         public Builder clearPlacementPeriod() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000020);
           placementPeriod_ = 0;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.LazyStringList deviceFilters_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList deviceFilters_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureDeviceFiltersIsMutable() {
    -      if (!((bitField0_ & 0x00000004) != 0)) {
    +      if (!deviceFilters_.isModifiable()) {
             deviceFilters_ = new com.google.protobuf.LazyStringArrayList(deviceFilters_);
    -        bitField0_ |= 0x00000004;
    -       }
    +      }
    +      bitField0_ |= 0x00000040;
         }
         /**
          * 
    @@ -6586,7 +7138,8 @@ private void ensureDeviceFiltersIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getDeviceFiltersList() {
    -      return deviceFilters_.getUnmodifiableView();
    +      deviceFilters_.makeImmutable();
    +      return deviceFilters_;
         }
         /**
          * 
    @@ -6644,11 +7197,10 @@ public java.lang.String getDeviceFilters(int index) {
          */
         public Builder setDeviceFilters(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureDeviceFiltersIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureDeviceFiltersIsMutable();
           deviceFilters_.set(index, value);
    +      bitField0_ |= 0x00000040;
           onChanged();
           return this;
         }
    @@ -6665,11 +7217,10 @@ public Builder setDeviceFilters(
          */
         public Builder addDeviceFilters(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureDeviceFiltersIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureDeviceFiltersIsMutable();
           deviceFilters_.add(value);
    +      bitField0_ |= 0x00000040;
           onChanged();
           return this;
         }
    @@ -6689,6 +7240,7 @@ public Builder addAllDeviceFilters(
           ensureDeviceFiltersIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, deviceFilters_);
    +      bitField0_ |= 0x00000040;
           onChanged();
           return this;
         }
    @@ -6703,8 +7255,9 @@ public Builder addAllDeviceFilters(
          * @return This builder for chaining.
          */
         public Builder clearDeviceFilters() {
    -      deviceFilters_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000004);
    +      deviceFilters_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000040);;
           onChanged();
           return this;
         }
    @@ -6721,18 +7274,17 @@ public Builder clearDeviceFilters() {
          */
         public Builder addDeviceFiltersBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureDeviceFiltersIsMutable();
           deviceFilters_.add(value);
    +      bitField0_ |= 0x00000040;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.GPUOptions gpuOptions_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.GPUOptions, org.tensorflow.proto.GPUOptions.Builder, org.tensorflow.proto.GPUOptionsOrBuilder> gpuOptionsBuilder_;
         /**
          * 
    @@ -6743,7 +7295,7 @@ public Builder addDeviceFiltersBytes(
          * @return Whether the gpuOptions field is set.
          */
         public boolean hasGpuOptions() {
    -      return gpuOptionsBuilder_ != null || gpuOptions_ != null;
    +      return ((bitField0_ & 0x00000080) != 0);
         }
         /**
          * 
    @@ -6773,11 +7325,11 @@ public Builder setGpuOptions(org.tensorflow.proto.GPUOptions value) {
               throw new NullPointerException();
             }
             gpuOptions_ = value;
    -        onChanged();
           } else {
             gpuOptionsBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000080;
    +      onChanged();
           return this;
         }
         /**
    @@ -6791,11 +7343,11 @@ public Builder setGpuOptions(
             org.tensorflow.proto.GPUOptions.Builder builderForValue) {
           if (gpuOptionsBuilder_ == null) {
             gpuOptions_ = builderForValue.build();
    -        onChanged();
           } else {
             gpuOptionsBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000080;
    +      onChanged();
           return this;
         }
         /**
    @@ -6807,17 +7359,20 @@ public Builder setGpuOptions(
          */
         public Builder mergeGpuOptions(org.tensorflow.proto.GPUOptions value) {
           if (gpuOptionsBuilder_ == null) {
    -        if (gpuOptions_ != null) {
    -          gpuOptions_ =
    -            org.tensorflow.proto.GPUOptions.newBuilder(gpuOptions_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000080) != 0) &&
    +          gpuOptions_ != null &&
    +          gpuOptions_ != org.tensorflow.proto.GPUOptions.getDefaultInstance()) {
    +          getGpuOptionsBuilder().mergeFrom(value);
             } else {
               gpuOptions_ = value;
             }
    -        onChanged();
           } else {
             gpuOptionsBuilder_.mergeFrom(value);
           }
    -
    +      if (gpuOptions_ != null) {
    +        bitField0_ |= 0x00000080;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -6828,14 +7383,13 @@ public Builder mergeGpuOptions(org.tensorflow.proto.GPUOptions value) {
          * .tensorflow.GPUOptions gpu_options = 6;
          */
         public Builder clearGpuOptions() {
    -      if (gpuOptionsBuilder_ == null) {
    -        gpuOptions_ = null;
    -        onChanged();
    -      } else {
    -        gpuOptions_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000080);
    +      gpuOptions_ = null;
    +      if (gpuOptionsBuilder_ != null) {
    +        gpuOptionsBuilder_.dispose();
             gpuOptionsBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -6846,7 +7400,7 @@ public Builder clearGpuOptions() {
          * .tensorflow.GPUOptions gpu_options = 6;
          */
         public org.tensorflow.proto.GPUOptions.Builder getGpuOptionsBuilder() {
    -      
    +      bitField0_ |= 0x00000080;
           onChanged();
           return getGpuOptionsFieldBuilder().getBuilder();
         }
    @@ -6872,11 +7426,11 @@ public org.tensorflow.proto.GPUOptionsOrBuilder getGpuOptionsOrBuilder() {
          *
          * .tensorflow.GPUOptions gpu_options = 6;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.GPUOptions, org.tensorflow.proto.GPUOptions.Builder, org.tensorflow.proto.GPUOptionsOrBuilder> 
             getGpuOptionsFieldBuilder() {
           if (gpuOptionsBuilder_ == null) {
    -        gpuOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        gpuOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.GPUOptions, org.tensorflow.proto.GPUOptions.Builder, org.tensorflow.proto.GPUOptionsOrBuilder>(
                     getGpuOptions(),
                     getParentForChildren(),
    @@ -6886,16 +7440,173 @@ public org.tensorflow.proto.GPUOptionsOrBuilder getGpuOptionsOrBuilder() {
           return gpuOptionsBuilder_;
         }
     
    +    private org.tensorflow.proto.GPUOptions pluggableDeviceOptions_;
    +    private com.google.protobuf.SingleFieldBuilder<
    +        org.tensorflow.proto.GPUOptions, org.tensorflow.proto.GPUOptions.Builder, org.tensorflow.proto.GPUOptionsOrBuilder> pluggableDeviceOptionsBuilder_;
    +    /**
    +     * 
    +     * Options that apply to pluggable devices.
    +     * 
    + * + * .tensorflow.GPUOptions pluggable_device_options = 18; + * @return Whether the pluggableDeviceOptions field is set. + */ + public boolean hasPluggableDeviceOptions() { + return ((bitField0_ & 0x00000100) != 0); + } + /** + *
    +     * Options that apply to pluggable devices.
    +     * 
    + * + * .tensorflow.GPUOptions pluggable_device_options = 18; + * @return The pluggableDeviceOptions. + */ + public org.tensorflow.proto.GPUOptions getPluggableDeviceOptions() { + if (pluggableDeviceOptionsBuilder_ == null) { + return pluggableDeviceOptions_ == null ? org.tensorflow.proto.GPUOptions.getDefaultInstance() : pluggableDeviceOptions_; + } else { + return pluggableDeviceOptionsBuilder_.getMessage(); + } + } + /** + *
    +     * Options that apply to pluggable devices.
    +     * 
    + * + * .tensorflow.GPUOptions pluggable_device_options = 18; + */ + public Builder setPluggableDeviceOptions(org.tensorflow.proto.GPUOptions value) { + if (pluggableDeviceOptionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + pluggableDeviceOptions_ = value; + } else { + pluggableDeviceOptionsBuilder_.setMessage(value); + } + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + *
    +     * Options that apply to pluggable devices.
    +     * 
    + * + * .tensorflow.GPUOptions pluggable_device_options = 18; + */ + public Builder setPluggableDeviceOptions( + org.tensorflow.proto.GPUOptions.Builder builderForValue) { + if (pluggableDeviceOptionsBuilder_ == null) { + pluggableDeviceOptions_ = builderForValue.build(); + } else { + pluggableDeviceOptionsBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + *
    +     * Options that apply to pluggable devices.
    +     * 
    + * + * .tensorflow.GPUOptions pluggable_device_options = 18; + */ + public Builder mergePluggableDeviceOptions(org.tensorflow.proto.GPUOptions value) { + if (pluggableDeviceOptionsBuilder_ == null) { + if (((bitField0_ & 0x00000100) != 0) && + pluggableDeviceOptions_ != null && + pluggableDeviceOptions_ != org.tensorflow.proto.GPUOptions.getDefaultInstance()) { + getPluggableDeviceOptionsBuilder().mergeFrom(value); + } else { + pluggableDeviceOptions_ = value; + } + } else { + pluggableDeviceOptionsBuilder_.mergeFrom(value); + } + if (pluggableDeviceOptions_ != null) { + bitField0_ |= 0x00000100; + onChanged(); + } + return this; + } + /** + *
    +     * Options that apply to pluggable devices.
    +     * 
    + * + * .tensorflow.GPUOptions pluggable_device_options = 18; + */ + public Builder clearPluggableDeviceOptions() { + bitField0_ = (bitField0_ & ~0x00000100); + pluggableDeviceOptions_ = null; + if (pluggableDeviceOptionsBuilder_ != null) { + pluggableDeviceOptionsBuilder_.dispose(); + pluggableDeviceOptionsBuilder_ = null; + } + onChanged(); + return this; + } + /** + *
    +     * Options that apply to pluggable devices.
    +     * 
    + * + * .tensorflow.GPUOptions pluggable_device_options = 18; + */ + public org.tensorflow.proto.GPUOptions.Builder getPluggableDeviceOptionsBuilder() { + bitField0_ |= 0x00000100; + onChanged(); + return getPluggableDeviceOptionsFieldBuilder().getBuilder(); + } + /** + *
    +     * Options that apply to pluggable devices.
    +     * 
    + * + * .tensorflow.GPUOptions pluggable_device_options = 18; + */ + public org.tensorflow.proto.GPUOptionsOrBuilder getPluggableDeviceOptionsOrBuilder() { + if (pluggableDeviceOptionsBuilder_ != null) { + return pluggableDeviceOptionsBuilder_.getMessageOrBuilder(); + } else { + return pluggableDeviceOptions_ == null ? + org.tensorflow.proto.GPUOptions.getDefaultInstance() : pluggableDeviceOptions_; + } + } + /** + *
    +     * Options that apply to pluggable devices.
    +     * 
    + * + * .tensorflow.GPUOptions pluggable_device_options = 18; + */ + private com.google.protobuf.SingleFieldBuilder< + org.tensorflow.proto.GPUOptions, org.tensorflow.proto.GPUOptions.Builder, org.tensorflow.proto.GPUOptionsOrBuilder> + getPluggableDeviceOptionsFieldBuilder() { + if (pluggableDeviceOptionsBuilder_ == null) { + pluggableDeviceOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilder< + org.tensorflow.proto.GPUOptions, org.tensorflow.proto.GPUOptions.Builder, org.tensorflow.proto.GPUOptionsOrBuilder>( + getPluggableDeviceOptions(), + getParentForChildren(), + isClean()); + pluggableDeviceOptions_ = null; + } + return pluggableDeviceOptionsBuilder_; + } + private boolean allowSoftPlacement_ ; /** *
          * Whether soft placement is allowed. If allow_soft_placement is true,
          * an op will be placed on CPU if
    -     *   1. there's no GPU implementation for the OP
    +     * 1. there's no GPU implementation for the OP
          * or
    -     *   2. no GPU devices are known or registered
    +     * 2. no GPU devices are known or registered
          * or
    -     *   3. need to co-locate with reftype input(s) which are from CPU.
    +     * 3. need to co-locate with reftype input(s) which are from CPU.
          * 
    * * bool allow_soft_placement = 7; @@ -6909,11 +7620,11 @@ public boolean getAllowSoftPlacement() { *
          * Whether soft placement is allowed. If allow_soft_placement is true,
          * an op will be placed on CPU if
    -     *   1. there's no GPU implementation for the OP
    +     * 1. there's no GPU implementation for the OP
          * or
    -     *   2. no GPU devices are known or registered
    +     * 2. no GPU devices are known or registered
          * or
    -     *   3. need to co-locate with reftype input(s) which are from CPU.
    +     * 3. need to co-locate with reftype input(s) which are from CPU.
          * 
    * * bool allow_soft_placement = 7; @@ -6921,8 +7632,9 @@ public boolean getAllowSoftPlacement() { * @return This builder for chaining. */ public Builder setAllowSoftPlacement(boolean value) { - + allowSoftPlacement_ = value; + bitField0_ |= 0x00000200; onChanged(); return this; } @@ -6930,18 +7642,18 @@ public Builder setAllowSoftPlacement(boolean value) { *
          * Whether soft placement is allowed. If allow_soft_placement is true,
          * an op will be placed on CPU if
    -     *   1. there's no GPU implementation for the OP
    +     * 1. there's no GPU implementation for the OP
          * or
    -     *   2. no GPU devices are known or registered
    +     * 2. no GPU devices are known or registered
          * or
    -     *   3. need to co-locate with reftype input(s) which are from CPU.
    +     * 3. need to co-locate with reftype input(s) which are from CPU.
          * 
    * * bool allow_soft_placement = 7; * @return This builder for chaining. */ public Builder clearAllowSoftPlacement() { - + bitField0_ = (bitField0_ & ~0x00000200); allowSoftPlacement_ = false; onChanged(); return this; @@ -6970,8 +7682,9 @@ public boolean getLogDevicePlacement() { * @return This builder for chaining. */ public Builder setLogDevicePlacement(boolean value) { - + logDevicePlacement_ = value; + bitField0_ |= 0x00000400; onChanged(); return this; } @@ -6984,14 +7697,14 @@ public Builder setLogDevicePlacement(boolean value) { * @return This builder for chaining. */ public Builder clearLogDevicePlacement() { - + bitField0_ = (bitField0_ & ~0x00000400); logDevicePlacement_ = false; onChanged(); return this; } private org.tensorflow.proto.GraphOptions graphOptions_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.GraphOptions, org.tensorflow.proto.GraphOptions.Builder, org.tensorflow.proto.GraphOptionsOrBuilder> graphOptionsBuilder_; /** *
    @@ -7002,7 +7715,7 @@ public Builder clearLogDevicePlacement() {
          * @return Whether the graphOptions field is set.
          */
         public boolean hasGraphOptions() {
    -      return graphOptionsBuilder_ != null || graphOptions_ != null;
    +      return ((bitField0_ & 0x00000800) != 0);
         }
         /**
          * 
    @@ -7032,11 +7745,11 @@ public Builder setGraphOptions(org.tensorflow.proto.GraphOptions value) {
               throw new NullPointerException();
             }
             graphOptions_ = value;
    -        onChanged();
           } else {
             graphOptionsBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000800;
    +      onChanged();
           return this;
         }
         /**
    @@ -7050,11 +7763,11 @@ public Builder setGraphOptions(
             org.tensorflow.proto.GraphOptions.Builder builderForValue) {
           if (graphOptionsBuilder_ == null) {
             graphOptions_ = builderForValue.build();
    -        onChanged();
           } else {
             graphOptionsBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000800;
    +      onChanged();
           return this;
         }
         /**
    @@ -7066,17 +7779,20 @@ public Builder setGraphOptions(
          */
         public Builder mergeGraphOptions(org.tensorflow.proto.GraphOptions value) {
           if (graphOptionsBuilder_ == null) {
    -        if (graphOptions_ != null) {
    -          graphOptions_ =
    -            org.tensorflow.proto.GraphOptions.newBuilder(graphOptions_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000800) != 0) &&
    +          graphOptions_ != null &&
    +          graphOptions_ != org.tensorflow.proto.GraphOptions.getDefaultInstance()) {
    +          getGraphOptionsBuilder().mergeFrom(value);
             } else {
               graphOptions_ = value;
             }
    -        onChanged();
           } else {
             graphOptionsBuilder_.mergeFrom(value);
           }
    -
    +      if (graphOptions_ != null) {
    +        bitField0_ |= 0x00000800;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -7087,14 +7803,13 @@ public Builder mergeGraphOptions(org.tensorflow.proto.GraphOptions value) {
          * .tensorflow.GraphOptions graph_options = 10;
          */
         public Builder clearGraphOptions() {
    -      if (graphOptionsBuilder_ == null) {
    -        graphOptions_ = null;
    -        onChanged();
    -      } else {
    -        graphOptions_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000800);
    +      graphOptions_ = null;
    +      if (graphOptionsBuilder_ != null) {
    +        graphOptionsBuilder_.dispose();
             graphOptionsBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -7105,7 +7820,7 @@ public Builder clearGraphOptions() {
          * .tensorflow.GraphOptions graph_options = 10;
          */
         public org.tensorflow.proto.GraphOptions.Builder getGraphOptionsBuilder() {
    -      
    +      bitField0_ |= 0x00000800;
           onChanged();
           return getGraphOptionsFieldBuilder().getBuilder();
         }
    @@ -7131,11 +7846,11 @@ public org.tensorflow.proto.GraphOptionsOrBuilder getGraphOptionsOrBuilder() {
          *
          * .tensorflow.GraphOptions graph_options = 10;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.GraphOptions, org.tensorflow.proto.GraphOptions.Builder, org.tensorflow.proto.GraphOptionsOrBuilder> 
             getGraphOptionsFieldBuilder() {
           if (graphOptionsBuilder_ == null) {
    -        graphOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        graphOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.GraphOptions, org.tensorflow.proto.GraphOptions.Builder, org.tensorflow.proto.GraphOptionsOrBuilder>(
                     getGraphOptions(),
                     getParentForChildren(),
    @@ -7172,8 +7887,9 @@ public long getOperationTimeoutInMs() {
          * @return This builder for chaining.
          */
         public Builder setOperationTimeoutInMs(long value) {
    -      
    +
           operationTimeoutInMs_ = value;
    +      bitField0_ |= 0x00001000;
           onChanged();
           return this;
         }
    @@ -7188,14 +7904,14 @@ public Builder setOperationTimeoutInMs(long value) {
          * @return This builder for chaining.
          */
         public Builder clearOperationTimeoutInMs() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00001000);
           operationTimeoutInMs_ = 0L;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.RpcOptions.RPCOptions rpcOptions_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.RpcOptions.RPCOptions, org.tensorflow.proto.RpcOptions.RPCOptions.Builder, org.tensorflow.proto.RpcOptions.RPCOptionsOrBuilder> rpcOptionsBuilder_;
         /**
          * 
    @@ -7206,7 +7922,7 @@ public Builder clearOperationTimeoutInMs() {
          * @return Whether the rpcOptions field is set.
          */
         public boolean hasRpcOptions() {
    -      return rpcOptionsBuilder_ != null || rpcOptions_ != null;
    +      return ((bitField0_ & 0x00002000) != 0);
         }
         /**
          * 
    @@ -7236,11 +7952,11 @@ public Builder setRpcOptions(org.tensorflow.proto.RpcOptions.RPCOptions value) {
               throw new NullPointerException();
             }
             rpcOptions_ = value;
    -        onChanged();
           } else {
             rpcOptionsBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00002000;
    +      onChanged();
           return this;
         }
         /**
    @@ -7254,11 +7970,11 @@ public Builder setRpcOptions(
             org.tensorflow.proto.RpcOptions.RPCOptions.Builder builderForValue) {
           if (rpcOptionsBuilder_ == null) {
             rpcOptions_ = builderForValue.build();
    -        onChanged();
           } else {
             rpcOptionsBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00002000;
    +      onChanged();
           return this;
         }
         /**
    @@ -7270,17 +7986,20 @@ public Builder setRpcOptions(
          */
         public Builder mergeRpcOptions(org.tensorflow.proto.RpcOptions.RPCOptions value) {
           if (rpcOptionsBuilder_ == null) {
    -        if (rpcOptions_ != null) {
    -          rpcOptions_ =
    -            org.tensorflow.proto.RpcOptions.RPCOptions.newBuilder(rpcOptions_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00002000) != 0) &&
    +          rpcOptions_ != null &&
    +          rpcOptions_ != org.tensorflow.proto.RpcOptions.RPCOptions.getDefaultInstance()) {
    +          getRpcOptionsBuilder().mergeFrom(value);
             } else {
               rpcOptions_ = value;
             }
    -        onChanged();
           } else {
             rpcOptionsBuilder_.mergeFrom(value);
           }
    -
    +      if (rpcOptions_ != null) {
    +        bitField0_ |= 0x00002000;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -7291,14 +8010,13 @@ public Builder mergeRpcOptions(org.tensorflow.proto.RpcOptions.RPCOptions value)
          * .tensorflow.RPCOptions rpc_options = 13;
          */
         public Builder clearRpcOptions() {
    -      if (rpcOptionsBuilder_ == null) {
    -        rpcOptions_ = null;
    -        onChanged();
    -      } else {
    -        rpcOptions_ = null;
    +      bitField0_ = (bitField0_ & ~0x00002000);
    +      rpcOptions_ = null;
    +      if (rpcOptionsBuilder_ != null) {
    +        rpcOptionsBuilder_.dispose();
             rpcOptionsBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -7309,7 +8027,7 @@ public Builder clearRpcOptions() {
          * .tensorflow.RPCOptions rpc_options = 13;
          */
         public org.tensorflow.proto.RpcOptions.RPCOptions.Builder getRpcOptionsBuilder() {
    -      
    +      bitField0_ |= 0x00002000;
           onChanged();
           return getRpcOptionsFieldBuilder().getBuilder();
         }
    @@ -7335,11 +8053,11 @@ public org.tensorflow.proto.RpcOptions.RPCOptionsOrBuilder getRpcOptionsOrBuilde
          *
          * .tensorflow.RPCOptions rpc_options = 13;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.RpcOptions.RPCOptions, org.tensorflow.proto.RpcOptions.RPCOptions.Builder, org.tensorflow.proto.RpcOptions.RPCOptionsOrBuilder> 
             getRpcOptionsFieldBuilder() {
           if (rpcOptionsBuilder_ == null) {
    -        rpcOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        rpcOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.RpcOptions.RPCOptions, org.tensorflow.proto.RpcOptions.RPCOptions.Builder, org.tensorflow.proto.RpcOptions.RPCOptionsOrBuilder>(
                     getRpcOptions(),
                     getParentForChildren(),
    @@ -7350,7 +8068,7 @@ public org.tensorflow.proto.RpcOptions.RPCOptionsOrBuilder getRpcOptionsOrBuilde
         }
     
         private org.tensorflow.proto.ClusterDef clusterDef_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.ClusterDef, org.tensorflow.proto.ClusterDef.Builder, org.tensorflow.proto.ClusterDefOrBuilder> clusterDefBuilder_;
         /**
          * 
    @@ -7361,7 +8079,7 @@ public org.tensorflow.proto.RpcOptions.RPCOptionsOrBuilder getRpcOptionsOrBuilde
          * @return Whether the clusterDef field is set.
          */
         public boolean hasClusterDef() {
    -      return clusterDefBuilder_ != null || clusterDef_ != null;
    +      return ((bitField0_ & 0x00004000) != 0);
         }
         /**
          * 
    @@ -7391,11 +8109,11 @@ public Builder setClusterDef(org.tensorflow.proto.ClusterDef value) {
               throw new NullPointerException();
             }
             clusterDef_ = value;
    -        onChanged();
           } else {
             clusterDefBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00004000;
    +      onChanged();
           return this;
         }
         /**
    @@ -7409,11 +8127,11 @@ public Builder setClusterDef(
             org.tensorflow.proto.ClusterDef.Builder builderForValue) {
           if (clusterDefBuilder_ == null) {
             clusterDef_ = builderForValue.build();
    -        onChanged();
           } else {
             clusterDefBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00004000;
    +      onChanged();
           return this;
         }
         /**
    @@ -7425,17 +8143,20 @@ public Builder setClusterDef(
          */
         public Builder mergeClusterDef(org.tensorflow.proto.ClusterDef value) {
           if (clusterDefBuilder_ == null) {
    -        if (clusterDef_ != null) {
    -          clusterDef_ =
    -            org.tensorflow.proto.ClusterDef.newBuilder(clusterDef_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00004000) != 0) &&
    +          clusterDef_ != null &&
    +          clusterDef_ != org.tensorflow.proto.ClusterDef.getDefaultInstance()) {
    +          getClusterDefBuilder().mergeFrom(value);
             } else {
               clusterDef_ = value;
             }
    -        onChanged();
           } else {
             clusterDefBuilder_.mergeFrom(value);
           }
    -
    +      if (clusterDef_ != null) {
    +        bitField0_ |= 0x00004000;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -7446,14 +8167,13 @@ public Builder mergeClusterDef(org.tensorflow.proto.ClusterDef value) {
          * .tensorflow.ClusterDef cluster_def = 14;
          */
         public Builder clearClusterDef() {
    -      if (clusterDefBuilder_ == null) {
    -        clusterDef_ = null;
    -        onChanged();
    -      } else {
    -        clusterDef_ = null;
    +      bitField0_ = (bitField0_ & ~0x00004000);
    +      clusterDef_ = null;
    +      if (clusterDefBuilder_ != null) {
    +        clusterDefBuilder_.dispose();
             clusterDefBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -7464,7 +8184,7 @@ public Builder clearClusterDef() {
          * .tensorflow.ClusterDef cluster_def = 14;
          */
         public org.tensorflow.proto.ClusterDef.Builder getClusterDefBuilder() {
    -      
    +      bitField0_ |= 0x00004000;
           onChanged();
           return getClusterDefFieldBuilder().getBuilder();
         }
    @@ -7490,11 +8210,11 @@ public org.tensorflow.proto.ClusterDefOrBuilder getClusterDefOrBuilder() {
          *
          * .tensorflow.ClusterDef cluster_def = 14;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.ClusterDef, org.tensorflow.proto.ClusterDef.Builder, org.tensorflow.proto.ClusterDefOrBuilder> 
             getClusterDefFieldBuilder() {
           if (clusterDefBuilder_ == null) {
    -        clusterDefBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        clusterDefBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.ClusterDef, org.tensorflow.proto.ClusterDef.Builder, org.tensorflow.proto.ClusterDefOrBuilder>(
                     getClusterDef(),
                     getParentForChildren(),
    @@ -7531,8 +8251,9 @@ public boolean getIsolateSessionState() {
          * @return This builder for chaining.
          */
         public Builder setIsolateSessionState(boolean value) {
    -      
    +
           isolateSessionState_ = value;
    +      bitField0_ |= 0x00008000;
           onChanged();
           return this;
         }
    @@ -7547,7 +8268,7 @@ public Builder setIsolateSessionState(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearIsolateSessionState() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00008000);
           isolateSessionState_ = false;
           onChanged();
           return this;
    @@ -7582,8 +8303,9 @@ public boolean getShareClusterDevicesInSession() {
          * @return This builder for chaining.
          */
         public Builder setShareClusterDevicesInSession(boolean value) {
    -      
    +
           shareClusterDevicesInSession_ = value;
    +      bitField0_ |= 0x00010000;
           onChanged();
           return this;
         }
    @@ -7599,21 +8321,21 @@ public Builder setShareClusterDevicesInSession(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearShareClusterDevicesInSession() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00010000);
           shareClusterDevicesInSession_ = false;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.ConfigProto.Experimental experimental_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.ConfigProto.Experimental, org.tensorflow.proto.ConfigProto.Experimental.Builder, org.tensorflow.proto.ConfigProto.ExperimentalOrBuilder> experimentalBuilder_;
         /**
          * .tensorflow.ConfigProto.Experimental experimental = 16;
          * @return Whether the experimental field is set.
          */
         public boolean hasExperimental() {
    -      return experimentalBuilder_ != null || experimental_ != null;
    +      return ((bitField0_ & 0x00020000) != 0);
         }
         /**
          * .tensorflow.ConfigProto.Experimental experimental = 16;
    @@ -7635,11 +8357,11 @@ public Builder setExperimental(org.tensorflow.proto.ConfigProto.Experimental val
               throw new NullPointerException();
             }
             experimental_ = value;
    -        onChanged();
           } else {
             experimentalBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00020000;
    +      onChanged();
           return this;
         }
         /**
    @@ -7649,11 +8371,11 @@ public Builder setExperimental(
             org.tensorflow.proto.ConfigProto.Experimental.Builder builderForValue) {
           if (experimentalBuilder_ == null) {
             experimental_ = builderForValue.build();
    -        onChanged();
           } else {
             experimentalBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00020000;
    +      onChanged();
           return this;
         }
         /**
    @@ -7661,38 +8383,40 @@ public Builder setExperimental(
          */
         public Builder mergeExperimental(org.tensorflow.proto.ConfigProto.Experimental value) {
           if (experimentalBuilder_ == null) {
    -        if (experimental_ != null) {
    -          experimental_ =
    -            org.tensorflow.proto.ConfigProto.Experimental.newBuilder(experimental_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00020000) != 0) &&
    +          experimental_ != null &&
    +          experimental_ != org.tensorflow.proto.ConfigProto.Experimental.getDefaultInstance()) {
    +          getExperimentalBuilder().mergeFrom(value);
             } else {
               experimental_ = value;
             }
    -        onChanged();
           } else {
             experimentalBuilder_.mergeFrom(value);
           }
    -
    +      if (experimental_ != null) {
    +        bitField0_ |= 0x00020000;
    +        onChanged();
    +      }
           return this;
         }
         /**
          * .tensorflow.ConfigProto.Experimental experimental = 16;
          */
         public Builder clearExperimental() {
    -      if (experimentalBuilder_ == null) {
    -        experimental_ = null;
    -        onChanged();
    -      } else {
    -        experimental_ = null;
    +      bitField0_ = (bitField0_ & ~0x00020000);
    +      experimental_ = null;
    +      if (experimentalBuilder_ != null) {
    +        experimentalBuilder_.dispose();
             experimentalBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
          * .tensorflow.ConfigProto.Experimental experimental = 16;
          */
         public org.tensorflow.proto.ConfigProto.Experimental.Builder getExperimentalBuilder() {
    -      
    +      bitField0_ |= 0x00020000;
           onChanged();
           return getExperimentalFieldBuilder().getBuilder();
         }
    @@ -7710,11 +8434,11 @@ public org.tensorflow.proto.ConfigProto.ExperimentalOrBuilder getExperimentalOrB
         /**
          * .tensorflow.ConfigProto.Experimental experimental = 16;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.ConfigProto.Experimental, org.tensorflow.proto.ConfigProto.Experimental.Builder, org.tensorflow.proto.ConfigProto.ExperimentalOrBuilder> 
             getExperimentalFieldBuilder() {
           if (experimentalBuilder_ == null) {
    -        experimentalBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        experimentalBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.ConfigProto.Experimental, org.tensorflow.proto.ConfigProto.Experimental.Builder, org.tensorflow.proto.ConfigProto.ExperimentalOrBuilder>(
                     getExperimental(),
                     getParentForChildren(),
    @@ -7723,18 +8447,6 @@ public org.tensorflow.proto.ConfigProto.ExperimentalOrBuilder getExperimentalOrB
           }
           return experimentalBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.ConfigProto)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ConfigProtoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ConfigProtoOrBuilder.java
    index d158b44e08f..915822fff06 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ConfigProtoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ConfigProtoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -58,7 +60,6 @@ boolean containsDeviceCount(
        *
        * map<string, int32> device_count = 1;
        */
    -
       int getDeviceCountOrDefault(
           java.lang.String key,
           int defaultValue);
    @@ -72,7 +73,6 @@ int getDeviceCountOrDefault(
        *
        * map<string, int32> device_count = 1;
        */
    -
       int getDeviceCountOrThrow(
           java.lang.String key);
     
    @@ -81,15 +81,17 @@ int getDeviceCountOrThrow(
        * The execution of an individual op (for some op types) can be
        * parallelized on a pool of intra_op_parallelism_threads.
        * 0 means the system picks an appropriate number.
    +   *
        * If you create an ordinary session, e.g., from Python or C++,
        * then there is exactly one intra op thread pool per process.
        * The first session created determines the number of threads in this pool.
        * All subsequent sessions reuse/share this one global pool.
    +   *
        * There are notable exceptions to the default behavior described above:
        * 1. There is an environment variable  for overriding this thread pool,
    -   *    named TF_OVERRIDE_GLOBAL_THREADPOOL.
    +   * named TF_OVERRIDE_GLOBAL_THREADPOOL.
        * 2. When connecting to a server, such as a remote `tf.train.Server`
    -   *    instance, then this option will be ignored altogether.
    +   * instance, then this option will be ignored altogether.
        * 
    * * int32 intra_op_parallelism_threads = 2; @@ -101,8 +103,10 @@ int getDeviceCountOrThrow( *
        * Nodes that perform blocking operations are enqueued on a pool of
        * inter_op_parallelism_threads available in each process.
    +   *
        * 0 means the system picks an appropriate number.
        * Negative means all operations are performed in caller's thread.
    +   *
        * Note that the first Session created in the process sets the
        * number of threads for all future sessions unless use_per_session_threads is
        * true or session_inter_op_thread_pool is configured.
    @@ -117,8 +121,10 @@ int getDeviceCountOrThrow(
        * 
        * If true, use a new set of threads for this session rather than the global
        * pool of threads. Only supported by direct sessions.
    +   *
        * If false, use the global threads created by the first session, or the
        * per-session thread pools configured by session_inter_op_thread_pool.
    +   *
        * This option is deprecated. The same effect can be achieved by setting
        * session_inter_op_thread_pool to have one element, whose num_threads equals
        * inter_op_parallelism_threads.
    @@ -133,8 +139,10 @@ int getDeviceCountOrThrow(
        * 
        * This option is experimental - it may be replaced with a different mechanism
        * in the future.
    +   *
        * Configures session thread pools. If this is configured, then RunOptions for
        * a Run call can select the thread pool to use.
    +   *
        * The intended use is for when some session invocations need to run in a
        * background pool limited to a small number of threads:
        * - For example, a session may be configured to have one large pool (for
    @@ -158,8 +166,10 @@ int getDeviceCountOrThrow(
        * 
        * This option is experimental - it may be replaced with a different mechanism
        * in the future.
    +   *
        * Configures session thread pools. If this is configured, then RunOptions for
        * a Run call can select the thread pool to use.
    +   *
        * The intended use is for when some session invocations need to run in a
        * background pool limited to a small number of threads:
        * - For example, a session may be configured to have one large pool (for
    @@ -182,8 +192,10 @@ int getDeviceCountOrThrow(
        * 
        * This option is experimental - it may be replaced with a different mechanism
        * in the future.
    +   *
        * Configures session thread pools. If this is configured, then RunOptions for
        * a Run call can select the thread pool to use.
    +   *
        * The intended use is for when some session invocations need to run in a
        * background pool limited to a small number of threads:
        * - For example, a session may be configured to have one large pool (for
    @@ -206,8 +218,10 @@ int getDeviceCountOrThrow(
        * 
        * This option is experimental - it may be replaced with a different mechanism
        * in the future.
    +   *
        * Configures session thread pools. If this is configured, then RunOptions for
        * a Run call can select the thread pool to use.
    +   *
        * The intended use is for when some session invocations need to run in a
        * background pool limited to a small number of threads:
        * - For example, a session may be configured to have one large pool (for
    @@ -231,8 +245,10 @@ int getDeviceCountOrThrow(
        * 
        * This option is experimental - it may be replaced with a different mechanism
        * in the future.
    +   *
        * Configures session thread pools. If this is configured, then RunOptions for
        * a Run call can select the thread pool to use.
    +   *
        * The intended use is for when some session invocations need to run in a
        * background pool limited to a small number of threads:
        * - For example, a session may be configured to have one large pool (for
    @@ -341,15 +357,42 @@ org.tensorflow.proto.ThreadPoolOptionProtoOrBuilder getSessionInterOpThreadPoolO
        */
       org.tensorflow.proto.GPUOptionsOrBuilder getGpuOptionsOrBuilder();
     
    +  /**
    +   * 
    +   * Options that apply to pluggable devices.
    +   * 
    + * + * .tensorflow.GPUOptions pluggable_device_options = 18; + * @return Whether the pluggableDeviceOptions field is set. + */ + boolean hasPluggableDeviceOptions(); + /** + *
    +   * Options that apply to pluggable devices.
    +   * 
    + * + * .tensorflow.GPUOptions pluggable_device_options = 18; + * @return The pluggableDeviceOptions. + */ + org.tensorflow.proto.GPUOptions getPluggableDeviceOptions(); + /** + *
    +   * Options that apply to pluggable devices.
    +   * 
    + * + * .tensorflow.GPUOptions pluggable_device_options = 18; + */ + org.tensorflow.proto.GPUOptionsOrBuilder getPluggableDeviceOptionsOrBuilder(); + /** *
        * Whether soft placement is allowed. If allow_soft_placement is true,
        * an op will be placed on CPU if
    -   *   1. there's no GPU implementation for the OP
    +   * 1. there's no GPU implementation for the OP
        * or
    -   *   2. no GPU devices are known or registered
    +   * 2. no GPU devices are known or registered
        * or
    -   *   3. need to co-locate with reftype input(s) which are from CPU.
    +   * 3. need to co-locate with reftype input(s) which are from CPU.
        * 
    * * bool allow_soft_placement = 7; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ConfigProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ConfigProtos.java index bca6f96f8b0..63e85085fa7 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ConfigProtos.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ConfigProtos.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/config.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; public final class ConfigProtos { private ConfigProtos() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + ConfigProtos.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -17,98 +28,108 @@ public static void registerAllExtensions( static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_GPUOptions_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_GPUOptions_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_GPUOptions_Experimental_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_GPUOptions_Experimental_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_GPUOptions_Experimental_VirtualDevices_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_GPUOptions_Experimental_VirtualDevices_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_tensorflow_GPUOptions_Experimental_StreamMergeOptions_descriptor; + static final + com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_tensorflow_GPUOptions_Experimental_StreamMergeOptions_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_OptimizerOptions_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_OptimizerOptions_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_GraphOptions_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_GraphOptions_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_ThreadPoolOptionProto_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_ThreadPoolOptionProto_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_SessionMetadata_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_SessionMetadata_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_ConfigProto_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_ConfigProto_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_ConfigProto_DeviceCountEntry_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_ConfigProto_DeviceCountEntry_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_ConfigProto_Experimental_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_ConfigProto_Experimental_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_RunOptions_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_RunOptions_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_RunOptions_Experimental_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_RunOptions_Experimental_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_RunOptions_Experimental_RunHandlerPoolOptions_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_RunOptions_Experimental_RunHandlerPoolOptions_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_RunMetadata_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_RunMetadata_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_RunMetadata_FunctionGraphs_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_RunMetadata_FunctionGraphs_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_TensorConnection_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_TensorConnection_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_CallableOptions_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_CallableOptions_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_CallableOptions_FeedDevicesEntry_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_CallableOptions_FeedDevicesEntry_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_CallableOptions_FetchDevicesEntry_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_CallableOptions_FetchDevicesEntry_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_tensorflow_BatchingOptions_descriptor; + static final + com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_tensorflow_BatchingOptions_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { @@ -119,161 +140,177 @@ public static void registerAllExtensions( static { java.lang.String[] descriptorData = { "\n%tensorflow/core/protobuf/config.proto\022" + - "\ntensorflow\032*tensorflow/core/framework/c" + - "ost_graph.proto\032%tensorflow/core/framewo" + - "rk/graph.proto\032*tensorflow/core/framewor" + - "k/step_stats.proto\032&tensorflow/core/prot" + - "obuf/cluster.proto\032$tensorflow/core/prot" + - "obuf/debug.proto\032.tensorflow/core/protob" + - "uf/rewriter_config.proto\032*tensorflow/cor" + - "e/protobuf/rpc_options.proto\032&tsl/protob" + - "uf/coordination_config.proto\"\352\007\n\nGPUOpti" + - "ons\022\'\n\037per_process_gpu_memory_fraction\030\001" + - " \001(\001\022\024\n\014allow_growth\030\004 \001(\010\022\026\n\016allocator_" + - "type\030\002 \001(\t\022\037\n\027deferred_deletion_bytes\030\003 " + - "\001(\003\022\033\n\023visible_device_list\030\005 \001(\t\022\"\n\032poll" + - "ing_active_delay_usecs\030\006 \001(\005\022$\n\034polling_" + - "inactive_delay_msecs\030\007 \001(\005\022\034\n\024force_gpu_" + - "compatible\030\010 \001(\010\0229\n\014experimental\030\t \001(\0132#" + - ".tensorflow.GPUOptions.Experimental\032\243\005\n\014" + - "Experimental\022K\n\017virtual_devices\030\001 \003(\01322." + - "tensorflow.GPUOptions.Experimental.Virtu" + - "alDevices\022#\n\033num_virtual_devices_per_gpu" + - "\030\017 \001(\005\022\032\n\022use_unified_memory\030\002 \001(\010\022#\n\033nu" + - "m_dev_to_dev_copy_streams\030\003 \001(\005\022\035\n\025colle" + - "ctive_ring_order\030\004 \001(\t\022\035\n\025timestamped_al" + - "locator\030\005 \001(\010\022#\n\033kernel_tracker_max_inte" + - "rval\030\007 \001(\005\022 \n\030kernel_tracker_max_bytes\030\010" + - " \001(\005\022\"\n\032kernel_tracker_max_pending\030\t \001(\005" + - "\022\'\n\037internal_fragmentation_fraction\030\n \001(" + - "\001\022\035\n\025use_cuda_malloc_async\030\013 \001(\010\022,\n$disa" + - "llow_retry_on_allocation_failure\030\014 \001(\010\022 " + - "\n\030gpu_host_mem_limit_in_mb\030\r \001(\002\022$\n\034gpu_" + - "host_mem_disallow_growth\030\016 \001(\010\022$\n\034gpu_sy" + - "stem_memory_size_in_mb\030\020 \001(\005\032S\n\016VirtualD" + - "evices\022\027\n\017memory_limit_mb\030\001 \003(\002\022\020\n\010prior" + - "ity\030\002 \003(\005\022\026\n\016device_ordinal\030\003 \003(\005\"\235\003\n\020Op" + - "timizerOptions\022+\n#do_common_subexpressio" + - "n_elimination\030\001 \001(\010\022\033\n\023do_constant_foldi" + - "ng\030\002 \001(\010\022$\n\034max_folded_constant_in_bytes" + - "\030\006 \001(\003\022\034\n\024do_function_inlining\030\004 \001(\010\0225\n\t" + - "opt_level\030\003 \001(\0162\".tensorflow.OptimizerOp" + - "tions.Level\022E\n\020global_jit_level\030\005 \001(\0162+." + - "tensorflow.OptimizerOptions.GlobalJitLev" + - "el\022\026\n\016cpu_global_jit\030\007 \001(\010\" \n\005Level\022\006\n\002L" + - "1\020\000\022\017\n\002L0\020\377\377\377\377\377\377\377\377\377\001\"C\n\016GlobalJitLevel\022\013" + - "\n\007DEFAULT\020\000\022\020\n\003OFF\020\377\377\377\377\377\377\377\377\377\001\022\010\n\004ON_1\020\001\022" + - "\010\n\004ON_2\020\002\"\356\002\n\014GraphOptions\022\036\n\026enable_rec" + - "v_scheduling\030\002 \001(\010\0227\n\021optimizer_options\030" + - "\003 \001(\0132\034.tensorflow.OptimizerOptions\022\030\n\020b" + - "uild_cost_model\030\004 \001(\003\022\036\n\026build_cost_mode" + - "l_after\030\t \001(\003\022\024\n\014infer_shapes\030\005 \001(\010\022\032\n\022p" + - "lace_pruned_graph\030\006 \001(\010\022 \n\030enable_bfloat" + - "16_sendrecv\030\007 \001(\010\022\025\n\rtimeline_step\030\010 \001(\005" + - "\0223\n\017rewrite_options\030\n \001(\0132\032.tensorflow.R" + - "ewriterConfigJ\004\010\001\020\002R%skip_common_subexpr" + - "ession_elimination\"A\n\025ThreadPoolOptionPr" + - "oto\022\023\n\013num_threads\030\001 \001(\005\022\023\n\013global_name\030" + - "\002 \001(\t\"0\n\017SessionMetadata\022\014\n\004name\030\001 \001(\t\022\017" + - "\n\007version\030\002 \001(\003\"\225\020\n\013ConfigProto\022>\n\014devic" + - "e_count\030\001 \003(\0132(.tensorflow.ConfigProto.D" + - "eviceCountEntry\022$\n\034intra_op_parallelism_" + - "threads\030\002 \001(\005\022$\n\034inter_op_parallelism_th" + - "reads\030\005 \001(\005\022\037\n\027use_per_session_threads\030\t" + - " \001(\010\022G\n\034session_inter_op_thread_pool\030\014 \003" + - "(\0132!.tensorflow.ThreadPoolOptionProto\022\030\n" + - "\020placement_period\030\003 \001(\005\022\026\n\016device_filter" + - "s\030\004 \003(\t\022+\n\013gpu_options\030\006 \001(\0132\026.tensorflo" + - "w.GPUOptions\022\034\n\024allow_soft_placement\030\007 \001" + - "(\010\022\034\n\024log_device_placement\030\010 \001(\010\022/\n\rgrap" + - "h_options\030\n \001(\0132\030.tensorflow.GraphOption" + - "s\022\037\n\027operation_timeout_in_ms\030\013 \001(\003\022+\n\013rp" + - "c_options\030\r \001(\0132\026.tensorflow.RPCOptions\022" + - "+\n\013cluster_def\030\016 \001(\0132\026.tensorflow.Cluste" + - "rDef\022\035\n\025isolate_session_state\030\017 \001(\010\022(\n s" + - "hare_cluster_devices_in_session\030\021 \001(\010\022:\n" + - "\014experimental\030\020 \001(\0132$.tensorflow.ConfigP" + - "roto.Experimental\0322\n\020DeviceCountEntry\022\013\n" + - "\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\005:\0028\001\032\217\n\n\014Experi" + - "mental\022\037\n\027collective_group_leader\030\001 \001(\t\022" + - "\025\n\rexecutor_type\030\003 \001(\t\022\032\n\022recv_buf_max_c" + - "hunk\030\004 \001(\005\022\031\n\021use_numa_affinity\030\005 \001(\010\0225\n" + - "-collective_deterministic_sequential_exe" + - "cution\030\006 \001(\010\022\027\n\017collective_nccl\030\007 \001(\010\0226\n" + - ".share_session_state_in_clusterspec_prop" + - "agation\030\010 \001(\010\022\037\n\027disable_thread_spinning" + - "\030\t \001(\010\022(\n share_cluster_devices_in_sessi" + - "on\030\n \001(\010\0225\n\020session_metadata\030\013 \001(\0132\033.ten" + - "sorflow.SessionMetadata\022!\n\031optimize_for_" + - "static_graph\030\014 \001(\010\022\032\n\022enable_mlir_bridge" + - "\030\r \001(\010\022S\n\023mlir_bridge_rollout\030\021 \001(\01626.te" + - "nsorflow.ConfigProto.Experimental.MlirBr" + - "idgeRollout\022&\n\036enable_mlir_graph_optimiz" + - "ation\030\020 \001(\010\022\'\n\037disable_output_partition_" + - "graphs\030\016 \001(\010\022#\n\033xla_fusion_autotuner_thr" + - "esh\030\017 \001(\003\022\020\n\010use_tfrt\030\022 \001(\010\022\031\n\021enable_mu" + - "lti_host\030\033 \001(\010\022\033\n\023backend_server_port\030\034 " + - "\001(\005\022\022\n\ntarget_tpu\030\035 \001(\010\022\022\n\ntarget_gpu\030\036 " + - "\001(\010\022\036\n\026stream_merge_threshold\030\037 \001(\005\022\'\n\037d" + - "isable_functional_ops_lowering\030\025 \001(\010\022\'\n\037" + - "xla_prefer_single_graph_cluster\030\026 \001(\010\022B\n" + - "\023coordination_config\030\027 \001(\0132%.tensorflow." + - "CoordinationServiceConfig\022)\n!disable_opt" + - "imize_for_static_graph\030\030 \001(\010\0220\n(disable_" + - "eager_executor_streaming_enqueue\030\032 \001(\010\"\336" + - "\001\n\021MlirBridgeRollout\022#\n\037MLIR_BRIDGE_ROLL" + - "OUT_UNSPECIFIED\020\000\022\037\n\033MLIR_BRIDGE_ROLLOUT" + - "_ENABLED\020\001\022 \n\034MLIR_BRIDGE_ROLLOUT_DISABL" + - "ED\020\002\"\004\010\003\020\003\"\004\010\004\020\004*%MLIR_BRIDGE_ROLLOUT_SA" + - "FE_MODE_ENABLED*.MLIR_BRIDGE_ROLLOUT_SAF" + - "E_MODE_FALLBACK_ENABLEDJ\004\010\002\020\003J\004\010\023\020\024J\004\010\024\020" + - "\025J\004\010\031\020\032\"\341\004\n\nRunOptions\0226\n\013trace_level\030\001 " + - "\001(\0162!.tensorflow.RunOptions.TraceLevel\022\025" + - "\n\rtimeout_in_ms\030\002 \001(\003\022\034\n\024inter_op_thread" + - "_pool\030\003 \001(\005\022\037\n\027output_partition_graphs\030\005" + - " \001(\010\022/\n\rdebug_options\030\006 \001(\0132\030.tensorflow" + - ".DebugOptions\022*\n\"report_tensor_allocatio" + - "ns_upon_oom\030\007 \001(\010\0229\n\014experimental\030\010 \001(\0132" + - "#.tensorflow.RunOptions.Experimental\032\322\001\n" + - "\014Experimental\022\034\n\024collective_graph_key\030\001 " + - "\001(\003\022\034\n\024use_run_handler_pool\030\002 \001(\010\022[\n\030run" + - "_handler_pool_options\030\003 \001(\01329.tensorflow" + - ".RunOptions.Experimental.RunHandlerPoolO" + - "ptions\032)\n\025RunHandlerPoolOptions\022\020\n\010prior" + - "ity\030\001 \001(\003\"R\n\nTraceLevel\022\014\n\010NO_TRACE\020\000\022\022\n" + - "\016SOFTWARE_TRACE\020\001\022\022\n\016HARDWARE_TRACE\020\002\022\016\n" + - "\nFULL_TRACE\020\003J\004\010\004\020\005\"\276\003\n\013RunMetadata\022)\n\ns" + - "tep_stats\030\001 \001(\0132\025.tensorflow.StepStats\022," + - "\n\ncost_graph\030\002 \001(\0132\030.tensorflow.CostGrap" + - "hDef\022.\n\020partition_graphs\030\003 \003(\0132\024.tensorf" + - "low.GraphDef\022?\n\017function_graphs\030\004 \003(\0132&." + - "tensorflow.RunMetadata.FunctionGraphs\0225\n" + - "\020session_metadata\030\005 \001(\0132\033.tensorflow.Ses" + - "sionMetadata\032\255\001\n\016FunctionGraphs\022.\n\020parti" + - "tion_graphs\030\001 \003(\0132\024.tensorflow.GraphDef\022" + - "4\n\026pre_optimization_graph\030\002 \001(\0132\024.tensor" + - "flow.GraphDef\0225\n\027post_optimization_graph" + - "\030\003 \001(\0132\024.tensorflow.GraphDef\":\n\020TensorCo" + - "nnection\022\023\n\013from_tensor\030\001 \001(\t\022\021\n\tto_tens" + - "or\030\002 \001(\t\"\260\003\n\017CallableOptions\022\014\n\004feed\030\001 \003" + - "(\t\022\r\n\005fetch\030\002 \003(\t\022\016\n\006target\030\003 \003(\t\022+\n\013run" + - "_options\030\004 \001(\0132\026.tensorflow.RunOptions\0227" + - "\n\021tensor_connection\030\005 \003(\0132\034.tensorflow.T" + - "ensorConnection\022B\n\014feed_devices\030\006 \003(\0132,." + - "tensorflow.CallableOptions.FeedDevicesEn" + - "try\022D\n\rfetch_devices\030\007 \003(\0132-.tensorflow." + - "CallableOptions.FetchDevicesEntry\022\027\n\017fet" + - "ch_skip_sync\030\010 \001(\010\0322\n\020FeedDevicesEntry\022\013" + - "\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\0323\n\021FetchD" + - "evicesEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:" + - "\0028\001B\200\001\n\024org.tensorflow.protoB\014ConfigProt" + - "osP\001ZUgithub.com/tensorflow/tensorflow/t" + - "ensorflow/go/core/protobuf/for_core_prot" + - "os_go_proto\370\001\001b\006proto3" + "\ntensorflow\032*xla/tsl/protobuf/coordinati" + + "on_config.proto\032*tensorflow/core/framewo" + + "rk/cost_graph.proto\032%tensorflow/core/fra" + + "mework/graph.proto\032*tensorflow/core/fram" + + "ework/step_stats.proto\032&tensorflow/core/" + + "protobuf/cluster.proto\032$tensorflow/core/" + + "protobuf/debug.proto\032.tensorflow/core/pr" + + "otobuf/rewriter_config.proto\032*tensorflow" + + "/core/protobuf/rpc_options.proto\"\211\n\n\nGPU" + + "Options\022\'\n\037per_process_gpu_memory_fracti" + + "on\030\001 \001(\001\022\024\n\014allow_growth\030\004 \001(\010\022\026\n\016alloca" + + "tor_type\030\002 \001(\t\022\037\n\027deferred_deletion_byte" + + "s\030\003 \001(\003\022\033\n\023visible_device_list\030\005 \001(\t\022\"\n\032" + + "polling_active_delay_usecs\030\006 \001(\005\022$\n\034poll" + + "ing_inactive_delay_msecs\030\007 \001(\005\022\034\n\024force_" + + "gpu_compatible\030\010 \001(\010\0229\n\014experimental\030\t \001" + + "(\0132#.tensorflow.GPUOptions.Experimental\032" + + "\302\007\n\014Experimental\022K\n\017virtual_devices\030\001 \003(" + + "\01322.tensorflow.GPUOptions.Experimental.V" + + "irtualDevices\022#\n\033num_virtual_devices_per" + + "_gpu\030\017 \001(\005\022\032\n\022use_unified_memory\030\002 \001(\010\022#" + + "\n\033num_dev_to_dev_copy_streams\030\003 \001(\005\022\035\n\025c" + + "ollective_ring_order\030\004 \001(\t\022\035\n\025timestampe" + + "d_allocator\030\005 \001(\010\022#\n\033kernel_tracker_max_" + + "interval\030\007 \001(\005\022 \n\030kernel_tracker_max_byt" + + "es\030\010 \001(\005\022\"\n\032kernel_tracker_max_pending\030\t" + + " \001(\005\022\'\n\037internal_fragmentation_fraction\030" + + "\n \001(\001\022\035\n\025use_cuda_malloc_async\030\013 \001(\010\022,\n$" + + "disallow_retry_on_allocation_failure\030\014 \001" + + "(\010\022 \n\030gpu_host_mem_limit_in_mb\030\r \001(\002\022$\n\034" + + "gpu_host_mem_disallow_growth\030\016 \001(\010\022$\n\034gp" + + "u_system_memory_size_in_mb\030\020 \001(\005\022.\n&popu" + + "late_pjrt_gpu_client_creation_info\030\021 \001(\010" + + "\022\017\n\007node_id\030\022 \001(\005\022T\n\024stream_merge_option" + + "s\030\023 \001(\01326.tensorflow.GPUOptions.Experime" + + "ntal.StreamMergeOptions\032S\n\016VirtualDevice" + + "s\022\027\n\017memory_limit_mb\030\001 \003(\002\022\020\n\010priority\030\002" + + " \003(\005\022\026\n\016device_ordinal\030\003 \003(\005\032\205\001\n\022StreamM" + + "ergeOptions\022#\n\033merge_host_to_device_stre" + + "am\030\001 \001(\010\022#\n\033merge_device_to_host_stream\030" + + "\002 \001(\010\022%\n\035merge_device_to_device_stream\030\003" + + " \001(\010\"\235\003\n\020OptimizerOptions\022+\n#do_common_s" + + "ubexpression_elimination\030\001 \001(\010\022\033\n\023do_con" + + "stant_folding\030\002 \001(\010\022$\n\034max_folded_consta" + + "nt_in_bytes\030\006 \001(\003\022\034\n\024do_function_inlinin" + + "g\030\004 \001(\010\0225\n\topt_level\030\003 \001(\0162\".tensorflow." + + "OptimizerOptions.Level\022E\n\020global_jit_lev" + + "el\030\005 \001(\0162+.tensorflow.OptimizerOptions.G" + + "lobalJitLevel\022\026\n\016cpu_global_jit\030\007 \001(\010\" \n" + + "\005Level\022\006\n\002L1\020\000\022\017\n\002L0\020\377\377\377\377\377\377\377\377\377\001\"C\n\016Globa" + + "lJitLevel\022\013\n\007DEFAULT\020\000\022\020\n\003OFF\020\377\377\377\377\377\377\377\377\377\001" + + "\022\010\n\004ON_1\020\001\022\010\n\004ON_2\020\002\"\356\002\n\014GraphOptions\022\036\n" + + "\026enable_recv_scheduling\030\002 \001(\010\0227\n\021optimiz" + + "er_options\030\003 \001(\0132\034.tensorflow.OptimizerO" + + "ptions\022\030\n\020build_cost_model\030\004 \001(\003\022\036\n\026buil" + + "d_cost_model_after\030\t \001(\003\022\024\n\014infer_shapes" + + "\030\005 \001(\010\022\032\n\022place_pruned_graph\030\006 \001(\010\022 \n\030en" + + "able_bfloat16_sendrecv\030\007 \001(\010\022\025\n\rtimeline" + + "_step\030\010 \001(\005\0223\n\017rewrite_options\030\n \001(\0132\032.t" + + "ensorflow.RewriterConfigJ\004\010\001\020\002R%skip_com" + + "mon_subexpression_elimination\"A\n\025ThreadP" + + "oolOptionProto\022\023\n\013num_threads\030\001 \001(\005\022\023\n\013g" + + "lobal_name\030\002 \001(\t\"0\n\017SessionMetadata\022\014\n\004n" + + "ame\030\001 \001(\t\022\017\n\007version\030\002 \001(\003\"\264\021\n\013ConfigPro" + + "to\022>\n\014device_count\030\001 \003(\0132(.tensorflow.Co" + + "nfigProto.DeviceCountEntry\022$\n\034intra_op_p" + + "arallelism_threads\030\002 \001(\005\022$\n\034inter_op_par" + + "allelism_threads\030\005 \001(\005\022\037\n\027use_per_sessio" + + "n_threads\030\t \001(\010\022G\n\034session_inter_op_thre" + + "ad_pool\030\014 \003(\0132!.tensorflow.ThreadPoolOpt" + + "ionProto\022\030\n\020placement_period\030\003 \001(\005\022\026\n\016de" + + "vice_filters\030\004 \003(\t\022+\n\013gpu_options\030\006 \001(\0132" + + "\026.tensorflow.GPUOptions\0228\n\030pluggable_dev" + + "ice_options\030\022 \001(\0132\026.tensorflow.GPUOption" + + "s\022\034\n\024allow_soft_placement\030\007 \001(\010\022\034\n\024log_d" + + "evice_placement\030\010 \001(\010\022/\n\rgraph_options\030\n" + + " \001(\0132\030.tensorflow.GraphOptions\022\037\n\027operat" + + "ion_timeout_in_ms\030\013 \001(\003\022+\n\013rpc_options\030\r" + + " \001(\0132\026.tensorflow.RPCOptions\022+\n\013cluster_" + + "def\030\016 \001(\0132\026.tensorflow.ClusterDef\022\035\n\025iso" + + "late_session_state\030\017 \001(\010\022(\n share_cluste" + + "r_devices_in_session\030\021 \001(\010\022:\n\014experiment" + + "al\030\020 \001(\0132$.tensorflow.ConfigProto.Experi" + + "mental\0322\n\020DeviceCountEntry\022\013\n\003key\030\001 \001(\t\022" + + "\r\n\005value\030\002 \001(\005:\0028\001\032\364\n\n\014Experimental\022\037\n\027c" + + "ollective_group_leader\030\001 \001(\t\022\025\n\rexecutor" + + "_type\030\003 \001(\t\022\032\n\022recv_buf_max_chunk\030\004 \001(\005\022" + + "\031\n\021use_numa_affinity\030\005 \001(\010\0225\n-collective" + + "_deterministic_sequential_execution\030\006 \001(" + + "\010\022\027\n\017collective_nccl\030\007 \001(\010\0226\n.share_sess" + + "ion_state_in_clusterspec_propagation\030\010 \001" + + "(\010\022\037\n\027disable_thread_spinning\030\t \001(\010\022(\n s" + + "hare_cluster_devices_in_session\030\n \001(\010\0225\n" + + "\020session_metadata\030\013 \001(\0132\033.tensorflow.Ses" + + "sionMetadata\022!\n\031optimize_for_static_grap" + + "h\030\014 \001(\010\022\032\n\022enable_mlir_bridge\030\r \001(\010\022S\n\023m" + + "lir_bridge_rollout\030\021 \001(\01626.tensorflow.Co" + + "nfigProto.Experimental.MlirBridgeRollout" + + "\022&\n\036enable_mlir_graph_optimization\030\020 \001(\010" + + "\022\'\n\037disable_output_partition_graphs\030\016 \001(" + + "\010\022#\n\033xla_fusion_autotuner_thresh\030\017 \001(\003\022\020" + + "\n\010use_tfrt\030\022 \001(\010\022\031\n\021enable_multi_host\030\033 " + + "\001(\010\022\025\n\rtfrt_use_ifrt\030 \001(\010\022\033\n\023backend_se" + + "rver_port\030\034 \001(\005\022\022\n\ntarget_tpu\030\035 \001(\010\022\022\n\nt" + + "arget_gpu\030\036 \001(\010\022\036\n\026stream_merge_threshol" + + "d\030\037 \001(\005\022\'\n\037disable_functional_ops_loweri" + + "ng\030\025 \001(\010\022\'\n\037xla_prefer_single_graph_clus" + + "ter\030\026 \001(\010\022B\n\023coordination_config\030\027 \001(\0132%" + + ".tensorflow.CoordinationServiceConfig\022)\n" + + "!disable_optimize_for_static_graph\030\030 \001(\010" + + "\0220\n(disable_eager_executor_streaming_enq" + + "ueue\030\032 \001(\010\022)\n!finalize_function_library_" + + "runtime\030! \001(\010\022!\n\031finalize_resource_manag" + + "er\030\" \001(\010\"\336\001\n\021MlirBridgeRollout\022#\n\037MLIR_B" + + "RIDGE_ROLLOUT_UNSPECIFIED\020\000\022\037\n\033MLIR_BRID" + + "GE_ROLLOUT_ENABLED\020\001\022 \n\034MLIR_BRIDGE_ROLL" + + "OUT_DISABLED\020\002\"\004\010\003\020\003\"\004\010\004\020\004*%MLIR_BRIDGE_" + + "ROLLOUT_SAFE_MODE_ENABLED*.MLIR_BRIDGE_R" + + "OLLOUT_SAFE_MODE_FALLBACK_ENABLEDJ\004\010\002\020\003J" + + "\004\010\023\020\024J\004\010\024\020\025J\004\010\031\020\032\"\341\004\n\nRunOptions\0226\n\013trac" + + "e_level\030\001 \001(\0162!.tensorflow.RunOptions.Tr" + + "aceLevel\022\025\n\rtimeout_in_ms\030\002 \001(\003\022\034\n\024inter" + + "_op_thread_pool\030\003 \001(\005\022\037\n\027output_partitio" + + "n_graphs\030\005 \001(\010\022/\n\rdebug_options\030\006 \001(\0132\030." + + "tensorflow.DebugOptions\022*\n\"report_tensor" + + "_allocations_upon_oom\030\007 \001(\010\0229\n\014experimen" + + "tal\030\010 \001(\0132#.tensorflow.RunOptions.Experi" + + "mental\032\322\001\n\014Experimental\022\034\n\024collective_gr" + + "aph_key\030\001 \001(\003\022\034\n\024use_run_handler_pool\030\002 " + + "\001(\010\022[\n\030run_handler_pool_options\030\003 \001(\01329." + + "tensorflow.RunOptions.Experimental.RunHa" + + "ndlerPoolOptions\032)\n\025RunHandlerPoolOption" + + "s\022\020\n\010priority\030\001 \001(\003\"R\n\nTraceLevel\022\014\n\010NO_" + + "TRACE\020\000\022\022\n\016SOFTWARE_TRACE\020\001\022\022\n\016HARDWARE_" + + "TRACE\020\002\022\016\n\nFULL_TRACE\020\003J\004\010\004\020\005\"\276\003\n\013RunMet" + + "adata\022)\n\nstep_stats\030\001 \001(\0132\025.tensorflow.S" + + "tepStats\022,\n\ncost_graph\030\002 \001(\0132\030.tensorflo" + + "w.CostGraphDef\022.\n\020partition_graphs\030\003 \003(\013" + + "2\024.tensorflow.GraphDef\022?\n\017function_graph" + + "s\030\004 \003(\0132&.tensorflow.RunMetadata.Functio" + + "nGraphs\0225\n\020session_metadata\030\005 \001(\0132\033.tens" + + "orflow.SessionMetadata\032\255\001\n\016FunctionGraph" + + "s\022.\n\020partition_graphs\030\001 \003(\0132\024.tensorflow" + + ".GraphDef\0224\n\026pre_optimization_graph\030\002 \001(" + + "\0132\024.tensorflow.GraphDef\0225\n\027post_optimiza" + + "tion_graph\030\003 \001(\0132\024.tensorflow.GraphDef\":" + + "\n\020TensorConnection\022\023\n\013from_tensor\030\001 \001(\t\022" + + "\021\n\tto_tensor\030\002 \001(\t\"\260\003\n\017CallableOptions\022\014" + + "\n\004feed\030\001 \003(\t\022\r\n\005fetch\030\002 \003(\t\022\016\n\006target\030\003 " + + "\003(\t\022+\n\013run_options\030\004 \001(\0132\026.tensorflow.Ru" + + "nOptions\0227\n\021tensor_connection\030\005 \003(\0132\034.te" + + "nsorflow.TensorConnection\022B\n\014feed_device" + + "s\030\006 \003(\0132,.tensorflow.CallableOptions.Fee" + + "dDevicesEntry\022D\n\rfetch_devices\030\007 \003(\0132-.t" + + "ensorflow.CallableOptions.FetchDevicesEn" + + "try\022\027\n\017fetch_skip_sync\030\010 \001(\010\0322\n\020FeedDevi" + + "cesEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001" + + "\0323\n\021FetchDevicesEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005va" + + "lue\030\002 \001(\t:\0028\001\"\235\001\n\017BatchingOptions\022\031\n\021num" + + "_batch_threads\030\001 \001(\005\022\026\n\016max_batch_size\030\002" + + " \001(\005\022\034\n\024batch_timeout_micros\030\003 \001(\005\022\033\n\023al" + + "lowed_batch_sizes\030\004 \003(\005\022\034\n\024max_enqueued_" + + "batches\030\005 \001(\005B\200\001\n\024org.tensorflow.protoB\014" + + "ConfigProtosP\001ZUgithub.com/tensorflow/te" + + "nsorflow/tensorflow/go/core/protobuf/for" + + "_core_protos_go_proto\370\001\001b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, new com.google.protobuf.Descriptors.FileDescriptor[] { + org.tensorflow.proto.CoordinationConfig.getDescriptor(), org.tensorflow.proto.CostGraphProtos.getDescriptor(), org.tensorflow.proto.GraphProtos.getDescriptor(), org.tensorflow.proto.StepStatsProtos.getDescriptor(), @@ -281,122 +318,135 @@ public static void registerAllExtensions( org.tensorflow.proto.DebugProtos.getDescriptor(), org.tensorflow.proto.RewriterConfigProtos.getDescriptor(), org.tensorflow.proto.dummy.RpcOptions.getDescriptor(), - org.tensorflow.proto.CoordinationConfig.getDescriptor(), }); internal_static_tensorflow_GPUOptions_descriptor = getDescriptor().getMessageTypes().get(0); internal_static_tensorflow_GPUOptions_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_GPUOptions_descriptor, new java.lang.String[] { "PerProcessGpuMemoryFraction", "AllowGrowth", "AllocatorType", "DeferredDeletionBytes", "VisibleDeviceList", "PollingActiveDelayUsecs", "PollingInactiveDelayMsecs", "ForceGpuCompatible", "Experimental", }); internal_static_tensorflow_GPUOptions_Experimental_descriptor = internal_static_tensorflow_GPUOptions_descriptor.getNestedTypes().get(0); internal_static_tensorflow_GPUOptions_Experimental_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_GPUOptions_Experimental_descriptor, - new java.lang.String[] { "VirtualDevices", "NumVirtualDevicesPerGpu", "UseUnifiedMemory", "NumDevToDevCopyStreams", "CollectiveRingOrder", "TimestampedAllocator", "KernelTrackerMaxInterval", "KernelTrackerMaxBytes", "KernelTrackerMaxPending", "InternalFragmentationFraction", "UseCudaMallocAsync", "DisallowRetryOnAllocationFailure", "GpuHostMemLimitInMb", "GpuHostMemDisallowGrowth", "GpuSystemMemorySizeInMb", }); + new java.lang.String[] { "VirtualDevices", "NumVirtualDevicesPerGpu", "UseUnifiedMemory", "NumDevToDevCopyStreams", "CollectiveRingOrder", "TimestampedAllocator", "KernelTrackerMaxInterval", "KernelTrackerMaxBytes", "KernelTrackerMaxPending", "InternalFragmentationFraction", "UseCudaMallocAsync", "DisallowRetryOnAllocationFailure", "GpuHostMemLimitInMb", "GpuHostMemDisallowGrowth", "GpuSystemMemorySizeInMb", "PopulatePjrtGpuClientCreationInfo", "NodeId", "StreamMergeOptions", }); internal_static_tensorflow_GPUOptions_Experimental_VirtualDevices_descriptor = internal_static_tensorflow_GPUOptions_Experimental_descriptor.getNestedTypes().get(0); internal_static_tensorflow_GPUOptions_Experimental_VirtualDevices_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_GPUOptions_Experimental_VirtualDevices_descriptor, new java.lang.String[] { "MemoryLimitMb", "Priority", "DeviceOrdinal", }); + internal_static_tensorflow_GPUOptions_Experimental_StreamMergeOptions_descriptor = + internal_static_tensorflow_GPUOptions_Experimental_descriptor.getNestedTypes().get(1); + internal_static_tensorflow_GPUOptions_Experimental_StreamMergeOptions_fieldAccessorTable = new + com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_tensorflow_GPUOptions_Experimental_StreamMergeOptions_descriptor, + new java.lang.String[] { "MergeHostToDeviceStream", "MergeDeviceToHostStream", "MergeDeviceToDeviceStream", }); internal_static_tensorflow_OptimizerOptions_descriptor = getDescriptor().getMessageTypes().get(1); internal_static_tensorflow_OptimizerOptions_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_OptimizerOptions_descriptor, new java.lang.String[] { "DoCommonSubexpressionElimination", "DoConstantFolding", "MaxFoldedConstantInBytes", "DoFunctionInlining", "OptLevel", "GlobalJitLevel", "CpuGlobalJit", }); internal_static_tensorflow_GraphOptions_descriptor = getDescriptor().getMessageTypes().get(2); internal_static_tensorflow_GraphOptions_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_GraphOptions_descriptor, new java.lang.String[] { "EnableRecvScheduling", "OptimizerOptions", "BuildCostModel", "BuildCostModelAfter", "InferShapes", "PlacePrunedGraph", "EnableBfloat16Sendrecv", "TimelineStep", "RewriteOptions", }); internal_static_tensorflow_ThreadPoolOptionProto_descriptor = getDescriptor().getMessageTypes().get(3); internal_static_tensorflow_ThreadPoolOptionProto_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_ThreadPoolOptionProto_descriptor, new java.lang.String[] { "NumThreads", "GlobalName", }); internal_static_tensorflow_SessionMetadata_descriptor = getDescriptor().getMessageTypes().get(4); internal_static_tensorflow_SessionMetadata_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_SessionMetadata_descriptor, new java.lang.String[] { "Name", "Version", }); internal_static_tensorflow_ConfigProto_descriptor = getDescriptor().getMessageTypes().get(5); internal_static_tensorflow_ConfigProto_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_ConfigProto_descriptor, - new java.lang.String[] { "DeviceCount", "IntraOpParallelismThreads", "InterOpParallelismThreads", "UsePerSessionThreads", "SessionInterOpThreadPool", "PlacementPeriod", "DeviceFilters", "GpuOptions", "AllowSoftPlacement", "LogDevicePlacement", "GraphOptions", "OperationTimeoutInMs", "RpcOptions", "ClusterDef", "IsolateSessionState", "ShareClusterDevicesInSession", "Experimental", }); + new java.lang.String[] { "DeviceCount", "IntraOpParallelismThreads", "InterOpParallelismThreads", "UsePerSessionThreads", "SessionInterOpThreadPool", "PlacementPeriod", "DeviceFilters", "GpuOptions", "PluggableDeviceOptions", "AllowSoftPlacement", "LogDevicePlacement", "GraphOptions", "OperationTimeoutInMs", "RpcOptions", "ClusterDef", "IsolateSessionState", "ShareClusterDevicesInSession", "Experimental", }); internal_static_tensorflow_ConfigProto_DeviceCountEntry_descriptor = internal_static_tensorflow_ConfigProto_descriptor.getNestedTypes().get(0); internal_static_tensorflow_ConfigProto_DeviceCountEntry_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_ConfigProto_DeviceCountEntry_descriptor, new java.lang.String[] { "Key", "Value", }); internal_static_tensorflow_ConfigProto_Experimental_descriptor = internal_static_tensorflow_ConfigProto_descriptor.getNestedTypes().get(1); internal_static_tensorflow_ConfigProto_Experimental_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_ConfigProto_Experimental_descriptor, - new java.lang.String[] { "CollectiveGroupLeader", "ExecutorType", "RecvBufMaxChunk", "UseNumaAffinity", "CollectiveDeterministicSequentialExecution", "CollectiveNccl", "ShareSessionStateInClusterspecPropagation", "DisableThreadSpinning", "ShareClusterDevicesInSession", "SessionMetadata", "OptimizeForStaticGraph", "EnableMlirBridge", "MlirBridgeRollout", "EnableMlirGraphOptimization", "DisableOutputPartitionGraphs", "XlaFusionAutotunerThresh", "UseTfrt", "EnableMultiHost", "BackendServerPort", "TargetTpu", "TargetGpu", "StreamMergeThreshold", "DisableFunctionalOpsLowering", "XlaPreferSingleGraphCluster", "CoordinationConfig", "DisableOptimizeForStaticGraph", "DisableEagerExecutorStreamingEnqueue", }); + new java.lang.String[] { "CollectiveGroupLeader", "ExecutorType", "RecvBufMaxChunk", "UseNumaAffinity", "CollectiveDeterministicSequentialExecution", "CollectiveNccl", "ShareSessionStateInClusterspecPropagation", "DisableThreadSpinning", "ShareClusterDevicesInSession", "SessionMetadata", "OptimizeForStaticGraph", "EnableMlirBridge", "MlirBridgeRollout", "EnableMlirGraphOptimization", "DisableOutputPartitionGraphs", "XlaFusionAutotunerThresh", "UseTfrt", "EnableMultiHost", "TfrtUseIfrt", "BackendServerPort", "TargetTpu", "TargetGpu", "StreamMergeThreshold", "DisableFunctionalOpsLowering", "XlaPreferSingleGraphCluster", "CoordinationConfig", "DisableOptimizeForStaticGraph", "DisableEagerExecutorStreamingEnqueue", "FinalizeFunctionLibraryRuntime", "FinalizeResourceManager", }); internal_static_tensorflow_RunOptions_descriptor = getDescriptor().getMessageTypes().get(6); internal_static_tensorflow_RunOptions_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_RunOptions_descriptor, new java.lang.String[] { "TraceLevel", "TimeoutInMs", "InterOpThreadPool", "OutputPartitionGraphs", "DebugOptions", "ReportTensorAllocationsUponOom", "Experimental", }); internal_static_tensorflow_RunOptions_Experimental_descriptor = internal_static_tensorflow_RunOptions_descriptor.getNestedTypes().get(0); internal_static_tensorflow_RunOptions_Experimental_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_RunOptions_Experimental_descriptor, new java.lang.String[] { "CollectiveGraphKey", "UseRunHandlerPool", "RunHandlerPoolOptions", }); internal_static_tensorflow_RunOptions_Experimental_RunHandlerPoolOptions_descriptor = internal_static_tensorflow_RunOptions_Experimental_descriptor.getNestedTypes().get(0); internal_static_tensorflow_RunOptions_Experimental_RunHandlerPoolOptions_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_RunOptions_Experimental_RunHandlerPoolOptions_descriptor, new java.lang.String[] { "Priority", }); internal_static_tensorflow_RunMetadata_descriptor = getDescriptor().getMessageTypes().get(7); internal_static_tensorflow_RunMetadata_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_RunMetadata_descriptor, new java.lang.String[] { "StepStats", "CostGraph", "PartitionGraphs", "FunctionGraphs", "SessionMetadata", }); internal_static_tensorflow_RunMetadata_FunctionGraphs_descriptor = internal_static_tensorflow_RunMetadata_descriptor.getNestedTypes().get(0); internal_static_tensorflow_RunMetadata_FunctionGraphs_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_RunMetadata_FunctionGraphs_descriptor, new java.lang.String[] { "PartitionGraphs", "PreOptimizationGraph", "PostOptimizationGraph", }); internal_static_tensorflow_TensorConnection_descriptor = getDescriptor().getMessageTypes().get(8); internal_static_tensorflow_TensorConnection_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_TensorConnection_descriptor, new java.lang.String[] { "FromTensor", "ToTensor", }); internal_static_tensorflow_CallableOptions_descriptor = getDescriptor().getMessageTypes().get(9); internal_static_tensorflow_CallableOptions_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_CallableOptions_descriptor, new java.lang.String[] { "Feed", "Fetch", "Target", "RunOptions", "TensorConnection", "FeedDevices", "FetchDevices", "FetchSkipSync", }); internal_static_tensorflow_CallableOptions_FeedDevicesEntry_descriptor = internal_static_tensorflow_CallableOptions_descriptor.getNestedTypes().get(0); internal_static_tensorflow_CallableOptions_FeedDevicesEntry_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_CallableOptions_FeedDevicesEntry_descriptor, new java.lang.String[] { "Key", "Value", }); internal_static_tensorflow_CallableOptions_FetchDevicesEntry_descriptor = internal_static_tensorflow_CallableOptions_descriptor.getNestedTypes().get(1); internal_static_tensorflow_CallableOptions_FetchDevicesEntry_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_CallableOptions_FetchDevicesEntry_descriptor, new java.lang.String[] { "Key", "Value", }); + internal_static_tensorflow_BatchingOptions_descriptor = + getDescriptor().getMessageTypes().get(10); + internal_static_tensorflow_BatchingOptions_fieldAccessorTable = new + com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_tensorflow_BatchingOptions_descriptor, + new java.lang.String[] { "NumBatchThreads", "MaxBatchSize", "BatchTimeoutMicros", "AllowedBatchSizes", "MaxEnqueuedBatches", }); + descriptor.resolveAllFeaturesImmutable(); + org.tensorflow.proto.CoordinationConfig.getDescriptor(); org.tensorflow.proto.CostGraphProtos.getDescriptor(); org.tensorflow.proto.GraphProtos.getDescriptor(); org.tensorflow.proto.StepStatsProtos.getDescriptor(); @@ -404,7 +454,6 @@ public static void registerAllExtensions( org.tensorflow.proto.DebugProtos.getDescriptor(); org.tensorflow.proto.RewriterConfigProtos.getDescriptor(); org.tensorflow.proto.dummy.RpcOptions.getDescriptor(); - org.tensorflow.proto.CoordinationConfig.getDescriptor(); } // @@protoc_insertion_point(outer_class_scope) diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ControlFlowContextDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ControlFlowContextDef.java index ed69b95f087..94e682160fc 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ControlFlowContextDef.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ControlFlowContextDef.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/control_flow.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -12,36 +14,33 @@ * Protobuf type {@code tensorflow.ControlFlowContextDef} */ public final class ControlFlowContextDef extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.ControlFlowContextDef) ControlFlowContextDefOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + ControlFlowContextDef.class.getName()); + } // Use ControlFlowContextDef.newBuilder() to construct. - private ControlFlowContextDef(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private ControlFlowContextDef(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private ControlFlowContextDef() { } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new ControlFlowContextDef(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.ControlFlowProtos.internal_static_tensorflow_ControlFlowContextDef_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ControlFlowProtos.internal_static_tensorflow_ControlFlowContextDef_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -49,6 +48,7 @@ protected java.lang.Object newInstance( } private int ctxtCase_ = 0; + @SuppressWarnings("serial") private java.lang.Object ctxt_; public enum CtxtCase implements com.google.protobuf.Internal.EnumLite, @@ -278,39 +278,41 @@ public static org.tensorflow.proto.ControlFlowContextDef parseFrom( } public static org.tensorflow.proto.ControlFlowContextDef parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.ControlFlowContextDef parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.ControlFlowContextDef parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.ControlFlowContextDef parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.ControlFlowContextDef parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.ControlFlowContextDef parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -330,7 +332,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -343,7 +345,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.ControlFlowContextDef} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.ControlFlowContextDef) org.tensorflow.proto.ControlFlowContextDefOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -352,7 +354,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ControlFlowProtos.internal_static_tensorflow_ControlFlowContextDef_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -365,13 +367,14 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; if (condCtxtBuilder_ != null) { condCtxtBuilder_.clear(); } @@ -406,57 +409,29 @@ public org.tensorflow.proto.ControlFlowContextDef build() { @java.lang.Override public org.tensorflow.proto.ControlFlowContextDef buildPartial() { org.tensorflow.proto.ControlFlowContextDef result = new org.tensorflow.proto.ControlFlowContextDef(this); - if (ctxtCase_ == 1) { - if (condCtxtBuilder_ == null) { - result.ctxt_ = ctxt_; - } else { - result.ctxt_ = condCtxtBuilder_.build(); - } - } - if (ctxtCase_ == 2) { - if (whileCtxtBuilder_ == null) { - result.ctxt_ = ctxt_; - } else { - result.ctxt_ = whileCtxtBuilder_.build(); - } - } - result.ctxtCase_ = ctxtCase_; + if (bitField0_ != 0) { buildPartial0(result); } + buildPartialOneofs(result); onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); + private void buildPartial0(org.tensorflow.proto.ControlFlowContextDef result) { + int from_bitField0_ = bitField0_; } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + + private void buildPartialOneofs(org.tensorflow.proto.ControlFlowContextDef result) { + result.ctxtCase_ = ctxtCase_; + result.ctxt_ = this.ctxt_; + if (ctxtCase_ == 1 && + condCtxtBuilder_ != null) { + result.ctxt_ = condCtxtBuilder_.build(); + } + if (ctxtCase_ == 2 && + whileCtxtBuilder_ != null) { + result.ctxt_ = whileCtxtBuilder_.build(); + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.ControlFlowContextDef) { @@ -552,8 +527,9 @@ public Builder clearCtxt() { return this; } + private int bitField0_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.CondContextDef, org.tensorflow.proto.CondContextDef.Builder, org.tensorflow.proto.CondContextDefOrBuilder> condCtxtBuilder_; /** * .tensorflow.CondContextDef cond_ctxt = 1; @@ -676,14 +652,14 @@ public org.tensorflow.proto.CondContextDefOrBuilder getCondCtxtOrBuilder() { /** * .tensorflow.CondContextDef cond_ctxt = 1; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.CondContextDef, org.tensorflow.proto.CondContextDef.Builder, org.tensorflow.proto.CondContextDefOrBuilder> getCondCtxtFieldBuilder() { if (condCtxtBuilder_ == null) { if (!(ctxtCase_ == 1)) { ctxt_ = org.tensorflow.proto.CondContextDef.getDefaultInstance(); } - condCtxtBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + condCtxtBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.CondContextDef, org.tensorflow.proto.CondContextDef.Builder, org.tensorflow.proto.CondContextDefOrBuilder>( (org.tensorflow.proto.CondContextDef) ctxt_, getParentForChildren(), @@ -691,11 +667,11 @@ public org.tensorflow.proto.CondContextDefOrBuilder getCondCtxtOrBuilder() { ctxt_ = null; } ctxtCase_ = 1; - onChanged();; + onChanged(); return condCtxtBuilder_; } - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.WhileContextDef, org.tensorflow.proto.WhileContextDef.Builder, org.tensorflow.proto.WhileContextDefOrBuilder> whileCtxtBuilder_; /** * .tensorflow.WhileContextDef while_ctxt = 2; @@ -818,14 +794,14 @@ public org.tensorflow.proto.WhileContextDefOrBuilder getWhileCtxtOrBuilder() { /** * .tensorflow.WhileContextDef while_ctxt = 2; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.WhileContextDef, org.tensorflow.proto.WhileContextDef.Builder, org.tensorflow.proto.WhileContextDefOrBuilder> getWhileCtxtFieldBuilder() { if (whileCtxtBuilder_ == null) { if (!(ctxtCase_ == 2)) { ctxt_ = org.tensorflow.proto.WhileContextDef.getDefaultInstance(); } - whileCtxtBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + whileCtxtBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.WhileContextDef, org.tensorflow.proto.WhileContextDef.Builder, org.tensorflow.proto.WhileContextDefOrBuilder>( (org.tensorflow.proto.WhileContextDef) ctxt_, getParentForChildren(), @@ -833,21 +809,9 @@ public org.tensorflow.proto.WhileContextDefOrBuilder getWhileCtxtOrBuilder() { ctxt_ = null; } ctxtCase_ = 2; - onChanged();; + onChanged(); return whileCtxtBuilder_; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.ControlFlowContextDef) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ControlFlowContextDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ControlFlowContextDefOrBuilder.java index 39955a15626..0fba58feb04 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ControlFlowContextDefOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ControlFlowContextDefOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/control_flow.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -37,5 +39,5 @@ public interface ControlFlowContextDefOrBuilder extends */ org.tensorflow.proto.WhileContextDefOrBuilder getWhileCtxtOrBuilder(); - public org.tensorflow.proto.ControlFlowContextDef.CtxtCase getCtxtCase(); + org.tensorflow.proto.ControlFlowContextDef.CtxtCase getCtxtCase(); } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ControlFlowProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ControlFlowProtos.java index c0bc5688853..522e46a72f2 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ControlFlowProtos.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ControlFlowProtos.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/control_flow.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; public final class ControlFlowProtos { private ControlFlowProtos() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + ControlFlowProtos.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -17,27 +28,27 @@ public static void registerAllExtensions( static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_ValuesDef_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_ValuesDef_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_ValuesDef_ExternalValuesEntry_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_ValuesDef_ExternalValuesEntry_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_ControlFlowContextDef_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_ControlFlowContextDef_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_CondContextDef_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_CondContextDef_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_WhileContextDef_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_WhileContextDef_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor @@ -83,33 +94,34 @@ public static void registerAllExtensions( internal_static_tensorflow_ValuesDef_descriptor = getDescriptor().getMessageTypes().get(0); internal_static_tensorflow_ValuesDef_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_ValuesDef_descriptor, new java.lang.String[] { "Values", "ExternalValues", }); internal_static_tensorflow_ValuesDef_ExternalValuesEntry_descriptor = internal_static_tensorflow_ValuesDef_descriptor.getNestedTypes().get(0); internal_static_tensorflow_ValuesDef_ExternalValuesEntry_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_ValuesDef_ExternalValuesEntry_descriptor, new java.lang.String[] { "Key", "Value", }); internal_static_tensorflow_ControlFlowContextDef_descriptor = getDescriptor().getMessageTypes().get(1); internal_static_tensorflow_ControlFlowContextDef_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_ControlFlowContextDef_descriptor, new java.lang.String[] { "CondCtxt", "WhileCtxt", "Ctxt", }); internal_static_tensorflow_CondContextDef_descriptor = getDescriptor().getMessageTypes().get(2); internal_static_tensorflow_CondContextDef_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_CondContextDef_descriptor, new java.lang.String[] { "ContextName", "PredName", "PivotName", "Branch", "ValuesDef", "NestedContexts", }); internal_static_tensorflow_WhileContextDef_descriptor = getDescriptor().getMessageTypes().get(3); internal_static_tensorflow_WhileContextDef_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_WhileContextDef_descriptor, new java.lang.String[] { "ContextName", "ParallelIterations", "BackProp", "SwapMemory", "PivotName", "PivotForPredName", "PivotForBodyName", "LoopExitNames", "LoopEnterNames", "ValuesDef", "MaximumIterationsName", "NestedContexts", }); + descriptor.resolveAllFeaturesImmutable(); } // @@protoc_insertion_point(outer_class_scope) diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CoordinationConfig.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CoordinationConfig.java index 6c1f875d2f6..f032747ea8e 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CoordinationConfig.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CoordinationConfig.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! -// source: tsl/protobuf/coordination_config.proto +// NO CHECKED-IN PROTOBUF GENCODE +// source: xla/tsl/protobuf/coordination_config.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; public final class CoordinationConfig { private CoordinationConfig() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + CoordinationConfig.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -45,37 +56,34 @@ public interface CoordinatedJobOrBuilder extends * Protobuf type {@code tensorflow.CoordinatedJob} */ public static final class CoordinatedJob extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.CoordinatedJob) CoordinatedJobOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + CoordinatedJob.class.getName()); + } // Use CoordinatedJob.newBuilder() to construct. - private CoordinatedJob(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private CoordinatedJob(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private CoordinatedJob() { name_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new CoordinatedJob(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.CoordinationConfig.internal_static_tensorflow_CoordinatedJob_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.CoordinationConfig.internal_static_tensorflow_CoordinatedJob_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -83,7 +91,8 @@ protected java.lang.Object newInstance( } public static final int NAME_FIELD_NUMBER = 1; - private volatile java.lang.Object name_; + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; /** * string name = 1; * @return The name. @@ -121,7 +130,7 @@ public java.lang.String getName() { } public static final int NUM_TASKS_FIELD_NUMBER = 2; - private int numTasks_; + private int numTasks_ = 0; /** * int32 num_tasks = 2; * @return The numTasks. @@ -145,8 +154,8 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, name_); } if (numTasks_ != 0) { output.writeInt32(2, numTasks_); @@ -160,8 +169,8 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_); } if (numTasks_ != 0) { size += com.google.protobuf.CodedOutputStream @@ -240,39 +249,41 @@ public static org.tensorflow.proto.CoordinationConfig.CoordinatedJob parseFrom( } public static org.tensorflow.proto.CoordinationConfig.CoordinatedJob parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.CoordinationConfig.CoordinatedJob parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.CoordinationConfig.CoordinatedJob parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.CoordinationConfig.CoordinatedJob parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.CoordinationConfig.CoordinatedJob parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.CoordinationConfig.CoordinatedJob parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -292,7 +303,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -305,7 +316,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.CoordinatedJob} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.CoordinatedJob) org.tensorflow.proto.CoordinationConfig.CoordinatedJobOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -314,7 +325,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.CoordinationConfig.internal_static_tensorflow_CoordinatedJob_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -327,17 +338,16 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; name_ = ""; - numTasks_ = 0; - return this; } @@ -364,44 +374,21 @@ public org.tensorflow.proto.CoordinationConfig.CoordinatedJob build() { @java.lang.Override public org.tensorflow.proto.CoordinationConfig.CoordinatedJob buildPartial() { org.tensorflow.proto.CoordinationConfig.CoordinatedJob result = new org.tensorflow.proto.CoordinationConfig.CoordinatedJob(this); - result.name_ = name_; - result.numTasks_ = numTasks_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.CoordinationConfig.CoordinatedJob result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.numTasks_ = numTasks_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.CoordinationConfig.CoordinatedJob) { @@ -416,6 +403,7 @@ public Builder mergeFrom(org.tensorflow.proto.CoordinationConfig.CoordinatedJob if (other == org.tensorflow.proto.CoordinationConfig.CoordinatedJob.getDefaultInstance()) return this; if (!other.getName().isEmpty()) { name_ = other.name_; + bitField0_ |= 0x00000001; onChanged(); } if (other.getNumTasks() != 0) { @@ -449,12 +437,12 @@ public Builder mergeFrom( break; case 10: { name_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000001; break; } // case 10 case 16: { numTasks_ = input.readInt32(); - + bitField0_ |= 0x00000002; break; } // case 16 default: { @@ -472,6 +460,7 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private java.lang.Object name_ = ""; /** @@ -514,11 +503,9 @@ public java.lang.String getName() { */ public Builder setName( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } name_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -527,8 +514,8 @@ public Builder setName( * @return This builder for chaining. */ public Builder clearName() { - name_ = getDefaultInstance().getName(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } @@ -539,12 +526,10 @@ public Builder clearName() { */ public Builder setNameBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); name_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -564,8 +549,9 @@ public int getNumTasks() { * @return This builder for chaining. */ public Builder setNumTasks(int value) { - + numTasks_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -574,23 +560,11 @@ public Builder setNumTasks(int value) { * @return This builder for chaining. */ public Builder clearNumTasks() { - + bitField0_ = (bitField0_ & ~0x00000002); numTasks_ = 0; onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.CoordinatedJob) } @@ -713,6 +687,17 @@ public interface CoordinationServiceConfigOrBuilder extends */ long getClusterRegisterTimeoutInMs(); + /** + *
    +     * Denotes if we should synchronize the agents' register attempts by blocking
    +     * on a barrier. This is useful for synchronized restarts.
    +     * 
    + * + * bool cluster_register_with_barrier = 14; + * @return The clusterRegisterWithBarrier. + */ + boolean getClusterRegisterWithBarrier(); + /** *
          * Heartbeat timeout, if a task does not record heartbeat in this time
    @@ -853,6 +838,17 @@ org.tensorflow.proto.CoordinationConfig.CoordinatedJobOrBuilder getCoordinatedJo
          * @return The forceDisable.
          */
         boolean getForceDisable();
    +
    +    /**
    +     * 
    +     * Use long polling to get error from coordination service as the error
    +     * propagation mechanism.
    +     * 
    + * + * bool poll_for_error_from_service_at_startup = 13; + * @return The pollForErrorFromServiceAtStartup. + */ + boolean getPollForErrorFromServiceAtStartup(); } /** *
    @@ -863,40 +859,38 @@ org.tensorflow.proto.CoordinationConfig.CoordinatedJobOrBuilder getCoordinatedJo
        * Protobuf type {@code tensorflow.CoordinationServiceConfig}
        */
       public static final class CoordinationServiceConfig extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.CoordinationServiceConfig)
           CoordinationServiceConfigOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        CoordinationServiceConfig.class.getName());
    +    }
         // Use CoordinationServiceConfig.newBuilder() to construct.
    -    private CoordinationServiceConfig(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private CoordinationServiceConfig(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private CoordinationServiceConfig() {
           serviceType_ = "";
           serviceLeader_ = "";
           coordinatedJobList_ = java.util.Collections.emptyList();
    -      recoverableJobs_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -    }
    -
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new CoordinationServiceConfig();
    +      recoverableJobs_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
         }
     
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.CoordinationConfig.internal_static_tensorflow_CoordinationServiceConfig_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.CoordinationConfig.internal_static_tensorflow_CoordinationServiceConfig_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -904,7 +898,8 @@ protected java.lang.Object newInstance(
         }
     
         public static final int SERVICE_TYPE_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object serviceType_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object serviceType_ = "";
         /**
          * 
          * Type of coordination service implementation to enable.
    @@ -956,7 +951,8 @@ public java.lang.String getServiceType() {
         }
     
         public static final int SERVICE_LEADER_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object serviceLeader_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object serviceLeader_ = "";
         /**
          * 
          * Address where the coordination service instance is hosted.
    @@ -1002,7 +998,7 @@ public java.lang.String getServiceLeader() {
         }
     
         public static final int ENABLE_HEALTH_CHECK_FIELD_NUMBER = 3;
    -    private boolean enableHealthCheck_;
    +    private boolean enableHealthCheck_ = false;
         /**
          * 
          * Whether to enable the health check mechanism.
    @@ -1017,7 +1013,7 @@ public boolean getEnableHealthCheck() {
         }
     
         public static final int CLUSTER_REGISTER_TIMEOUT_IN_MS_FIELD_NUMBER = 4;
    -    private long clusterRegisterTimeoutInMs_;
    +    private long clusterRegisterTimeoutInMs_ = 0L;
         /**
          * 
          * Maximum wait time for all members in the cluster to be registered.
    @@ -1031,8 +1027,24 @@ public long getClusterRegisterTimeoutInMs() {
           return clusterRegisterTimeoutInMs_;
         }
     
    +    public static final int CLUSTER_REGISTER_WITH_BARRIER_FIELD_NUMBER = 14;
    +    private boolean clusterRegisterWithBarrier_ = false;
    +    /**
    +     * 
    +     * Denotes if we should synchronize the agents' register attempts by blocking
    +     * on a barrier. This is useful for synchronized restarts.
    +     * 
    + * + * bool cluster_register_with_barrier = 14; + * @return The clusterRegisterWithBarrier. + */ + @java.lang.Override + public boolean getClusterRegisterWithBarrier() { + return clusterRegisterWithBarrier_; + } + public static final int HEARTBEAT_TIMEOUT_IN_MS_FIELD_NUMBER = 5; - private long heartbeatTimeoutInMs_; + private long heartbeatTimeoutInMs_ = 0L; /** *
          * Heartbeat timeout, if a task does not record heartbeat in this time
    @@ -1051,6 +1063,7 @@ public long getHeartbeatTimeoutInMs() {
         }
     
         public static final int COORDINATED_JOB_LIST_FIELD_NUMBER = 10;
    +    @SuppressWarnings("serial")
         private java.util.List coordinatedJobList_;
         /**
          * repeated .tensorflow.CoordinatedJob coordinated_job_list = 10;
    @@ -1091,7 +1104,7 @@ public org.tensorflow.proto.CoordinationConfig.CoordinatedJobOrBuilder getCoordi
         }
     
         public static final int SHUTDOWN_BARRIER_TIMEOUT_IN_MS_FIELD_NUMBER = 7;
    -    private long shutdownBarrierTimeoutInMs_;
    +    private long shutdownBarrierTimeoutInMs_ = 0L;
         /**
          * 
          * Denotes how long to wait for all coordination agents to reach the barriers
    @@ -1109,7 +1122,7 @@ public long getShutdownBarrierTimeoutInMs() {
         }
     
         public static final int AGENT_DESTRUCTION_WITHOUT_SHUTDOWN_FIELD_NUMBER = 8;
    -    private boolean agentDestructionWithoutShutdown_;
    +    private boolean agentDestructionWithoutShutdown_ = false;
         /**
          * 
          * If set, agents do not make an explicit Shutdown() call. Service will only
    @@ -1126,7 +1139,9 @@ public boolean getAgentDestructionWithoutShutdown() {
         }
     
         public static final int RECOVERABLE_JOBS_FIELD_NUMBER = 9;
    -    private com.google.protobuf.LazyStringList recoverableJobs_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.LazyStringArrayList recoverableJobs_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         /**
          * 
          * The list of jobs which are recoverable. If a task in this list fails,
    @@ -1189,7 +1204,7 @@ public java.lang.String getRecoverableJobs(int index) {
         }
     
         public static final int ALLOW_NEW_INCARNATION_TO_RECONNECT_FIELD_NUMBER = 11;
    -    private boolean allowNewIncarnationToReconnect_;
    +    private boolean allowNewIncarnationToReconnect_ = false;
         /**
          * 
          * If a task restarts with a new incarnation, we may allow it to reconnect
    @@ -1206,7 +1221,7 @@ public boolean getAllowNewIncarnationToReconnect() {
         }
     
         public static final int FORCE_DISABLE_FIELD_NUMBER = 12;
    -    private boolean forceDisable_;
    +    private boolean forceDisable_ = false;
         /**
          * 
          * Disables coordination service.
    @@ -1223,6 +1238,22 @@ public boolean getForceDisable() {
           return forceDisable_;
         }
     
    +    public static final int POLL_FOR_ERROR_FROM_SERVICE_AT_STARTUP_FIELD_NUMBER = 13;
    +    private boolean pollForErrorFromServiceAtStartup_ = false;
    +    /**
    +     * 
    +     * Use long polling to get error from coordination service as the error
    +     * propagation mechanism.
    +     * 
    + * + * bool poll_for_error_from_service_at_startup = 13; + * @return The pollForErrorFromServiceAtStartup. + */ + @java.lang.Override + public boolean getPollForErrorFromServiceAtStartup() { + return pollForErrorFromServiceAtStartup_; + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -1237,11 +1268,11 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(serviceType_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, serviceType_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(serviceType_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, serviceType_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(serviceLeader_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, serviceLeader_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(serviceLeader_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, serviceLeader_); } if (enableHealthCheck_ != false) { output.writeBool(3, enableHealthCheck_); @@ -1259,7 +1290,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) output.writeBool(8, agentDestructionWithoutShutdown_); } for (int i = 0; i < recoverableJobs_.size(); i++) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 9, recoverableJobs_.getRaw(i)); + com.google.protobuf.GeneratedMessage.writeString(output, 9, recoverableJobs_.getRaw(i)); } for (int i = 0; i < coordinatedJobList_.size(); i++) { output.writeMessage(10, coordinatedJobList_.get(i)); @@ -1270,6 +1301,12 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (forceDisable_ != false) { output.writeBool(12, forceDisable_); } + if (pollForErrorFromServiceAtStartup_ != false) { + output.writeBool(13, pollForErrorFromServiceAtStartup_); + } + if (clusterRegisterWithBarrier_ != false) { + output.writeBool(14, clusterRegisterWithBarrier_); + } getUnknownFields().writeTo(output); } @@ -1279,11 +1316,11 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(serviceType_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, serviceType_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(serviceType_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, serviceType_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(serviceLeader_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, serviceLeader_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(serviceLeader_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, serviceLeader_); } if (enableHealthCheck_ != false) { size += com.google.protobuf.CodedOutputStream @@ -1325,6 +1362,14 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeBoolSize(12, forceDisable_); } + if (pollForErrorFromServiceAtStartup_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(13, pollForErrorFromServiceAtStartup_); + } + if (clusterRegisterWithBarrier_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(14, clusterRegisterWithBarrier_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -1348,6 +1393,8 @@ public boolean equals(final java.lang.Object obj) { != other.getEnableHealthCheck()) return false; if (getClusterRegisterTimeoutInMs() != other.getClusterRegisterTimeoutInMs()) return false; + if (getClusterRegisterWithBarrier() + != other.getClusterRegisterWithBarrier()) return false; if (getHeartbeatTimeoutInMs() != other.getHeartbeatTimeoutInMs()) return false; if (!getCoordinatedJobListList() @@ -1362,6 +1409,8 @@ public boolean equals(final java.lang.Object obj) { != other.getAllowNewIncarnationToReconnect()) return false; if (getForceDisable() != other.getForceDisable()) return false; + if (getPollForErrorFromServiceAtStartup() + != other.getPollForErrorFromServiceAtStartup()) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -1383,6 +1432,9 @@ public int hashCode() { hash = (37 * hash) + CLUSTER_REGISTER_TIMEOUT_IN_MS_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong( getClusterRegisterTimeoutInMs()); + hash = (37 * hash) + CLUSTER_REGISTER_WITH_BARRIER_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getClusterRegisterWithBarrier()); hash = (37 * hash) + HEARTBEAT_TIMEOUT_IN_MS_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong( getHeartbeatTimeoutInMs()); @@ -1406,6 +1458,9 @@ public int hashCode() { hash = (37 * hash) + FORCE_DISABLE_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( getForceDisable()); + hash = (37 * hash) + POLL_FOR_ERROR_FROM_SERVICE_AT_STARTUP_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getPollForErrorFromServiceAtStartup()); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -1445,39 +1500,41 @@ public static org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig } public static org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -1497,7 +1554,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -1510,7 +1567,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.CoordinationServiceConfig} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.CoordinationServiceConfig) org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfigOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -1519,7 +1576,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.CoordinationConfig.internal_static_tensorflow_CoordinationServiceConfig_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -1532,40 +1589,34 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; serviceType_ = ""; - serviceLeader_ = ""; - enableHealthCheck_ = false; - clusterRegisterTimeoutInMs_ = 0L; - + clusterRegisterWithBarrier_ = false; heartbeatTimeoutInMs_ = 0L; - if (coordinatedJobListBuilder_ == null) { coordinatedJobList_ = java.util.Collections.emptyList(); } else { coordinatedJobList_ = null; coordinatedJobListBuilder_.clear(); } - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000040); shutdownBarrierTimeoutInMs_ = 0L; - agentDestructionWithoutShutdown_ = false; - - recoverableJobs_ = com.google.protobuf.LazyStringArrayList.EMPTY; - bitField0_ = (bitField0_ & ~0x00000002); + recoverableJobs_ = + com.google.protobuf.LazyStringArrayList.emptyList(); allowNewIncarnationToReconnect_ = false; - forceDisable_ = false; - + pollForErrorFromServiceAtStartup_ = false; return this; } @@ -1592,66 +1643,65 @@ public org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig build() @java.lang.Override public org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig buildPartial() { org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig result = new org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig(this); - int from_bitField0_ = bitField0_; - result.serviceType_ = serviceType_; - result.serviceLeader_ = serviceLeader_; - result.enableHealthCheck_ = enableHealthCheck_; - result.clusterRegisterTimeoutInMs_ = clusterRegisterTimeoutInMs_; - result.heartbeatTimeoutInMs_ = heartbeatTimeoutInMs_; + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig result) { if (coordinatedJobListBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { + if (((bitField0_ & 0x00000040) != 0)) { coordinatedJobList_ = java.util.Collections.unmodifiableList(coordinatedJobList_); - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000040); } result.coordinatedJobList_ = coordinatedJobList_; } else { result.coordinatedJobList_ = coordinatedJobListBuilder_.build(); } - result.shutdownBarrierTimeoutInMs_ = shutdownBarrierTimeoutInMs_; - result.agentDestructionWithoutShutdown_ = agentDestructionWithoutShutdown_; - if (((bitField0_ & 0x00000002) != 0)) { - recoverableJobs_ = recoverableJobs_.getUnmodifiableView(); - bitField0_ = (bitField0_ & ~0x00000002); - } - result.recoverableJobs_ = recoverableJobs_; - result.allowNewIncarnationToReconnect_ = allowNewIncarnationToReconnect_; - result.forceDisable_ = forceDisable_; - onBuilt(); - return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.serviceType_ = serviceType_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.serviceLeader_ = serviceLeader_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.enableHealthCheck_ = enableHealthCheck_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.clusterRegisterTimeoutInMs_ = clusterRegisterTimeoutInMs_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.clusterRegisterWithBarrier_ = clusterRegisterWithBarrier_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.heartbeatTimeoutInMs_ = heartbeatTimeoutInMs_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.shutdownBarrierTimeoutInMs_ = shutdownBarrierTimeoutInMs_; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.agentDestructionWithoutShutdown_ = agentDestructionWithoutShutdown_; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + recoverableJobs_.makeImmutable(); + result.recoverableJobs_ = recoverableJobs_; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.allowNewIncarnationToReconnect_ = allowNewIncarnationToReconnect_; + } + if (((from_bitField0_ & 0x00000800) != 0)) { + result.forceDisable_ = forceDisable_; + } + if (((from_bitField0_ & 0x00001000) != 0)) { + result.pollForErrorFromServiceAtStartup_ = pollForErrorFromServiceAtStartup_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig) { @@ -1666,10 +1716,12 @@ public Builder mergeFrom(org.tensorflow.proto.CoordinationConfig.CoordinationSer if (other == org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig.getDefaultInstance()) return this; if (!other.getServiceType().isEmpty()) { serviceType_ = other.serviceType_; + bitField0_ |= 0x00000001; onChanged(); } if (!other.getServiceLeader().isEmpty()) { serviceLeader_ = other.serviceLeader_; + bitField0_ |= 0x00000002; onChanged(); } if (other.getEnableHealthCheck() != false) { @@ -1678,6 +1730,9 @@ public Builder mergeFrom(org.tensorflow.proto.CoordinationConfig.CoordinationSer if (other.getClusterRegisterTimeoutInMs() != 0L) { setClusterRegisterTimeoutInMs(other.getClusterRegisterTimeoutInMs()); } + if (other.getClusterRegisterWithBarrier() != false) { + setClusterRegisterWithBarrier(other.getClusterRegisterWithBarrier()); + } if (other.getHeartbeatTimeoutInMs() != 0L) { setHeartbeatTimeoutInMs(other.getHeartbeatTimeoutInMs()); } @@ -1685,7 +1740,7 @@ public Builder mergeFrom(org.tensorflow.proto.CoordinationConfig.CoordinationSer if (!other.coordinatedJobList_.isEmpty()) { if (coordinatedJobList_.isEmpty()) { coordinatedJobList_ = other.coordinatedJobList_; - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000040); } else { ensureCoordinatedJobListIsMutable(); coordinatedJobList_.addAll(other.coordinatedJobList_); @@ -1698,9 +1753,9 @@ public Builder mergeFrom(org.tensorflow.proto.CoordinationConfig.CoordinationSer coordinatedJobListBuilder_.dispose(); coordinatedJobListBuilder_ = null; coordinatedJobList_ = other.coordinatedJobList_; - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000040); coordinatedJobListBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getCoordinatedJobListFieldBuilder() : null; } else { coordinatedJobListBuilder_.addAllMessages(other.coordinatedJobList_); @@ -1716,7 +1771,7 @@ public Builder mergeFrom(org.tensorflow.proto.CoordinationConfig.CoordinationSer if (!other.recoverableJobs_.isEmpty()) { if (recoverableJobs_.isEmpty()) { recoverableJobs_ = other.recoverableJobs_; - bitField0_ = (bitField0_ & ~0x00000002); + bitField0_ |= 0x00000200; } else { ensureRecoverableJobsIsMutable(); recoverableJobs_.addAll(other.recoverableJobs_); @@ -1729,6 +1784,9 @@ public Builder mergeFrom(org.tensorflow.proto.CoordinationConfig.CoordinationSer if (other.getForceDisable() != false) { setForceDisable(other.getForceDisable()); } + if (other.getPollForErrorFromServiceAtStartup() != false) { + setPollForErrorFromServiceAtStartup(other.getPollForErrorFromServiceAtStartup()); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -1757,37 +1815,37 @@ public Builder mergeFrom( break; case 10: { serviceType_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000001; break; } // case 10 case 18: { serviceLeader_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000002; break; } // case 18 case 24: { enableHealthCheck_ = input.readBool(); - + bitField0_ |= 0x00000004; break; } // case 24 case 32: { clusterRegisterTimeoutInMs_ = input.readInt64(); - + bitField0_ |= 0x00000008; break; } // case 32 case 40: { heartbeatTimeoutInMs_ = input.readInt64(); - + bitField0_ |= 0x00000020; break; } // case 40 case 56: { shutdownBarrierTimeoutInMs_ = input.readInt64(); - + bitField0_ |= 0x00000080; break; } // case 56 case 64: { agentDestructionWithoutShutdown_ = input.readBool(); - + bitField0_ |= 0x00000100; break; } // case 64 case 74: { @@ -1811,14 +1869,24 @@ public Builder mergeFrom( } // case 82 case 88: { allowNewIncarnationToReconnect_ = input.readBool(); - + bitField0_ |= 0x00000400; break; } // case 88 case 96: { forceDisable_ = input.readBool(); - + bitField0_ |= 0x00000800; break; } // case 96 + case 104: { + pollForErrorFromServiceAtStartup_ = input.readBool(); + bitField0_ |= 0x00001000; + break; + } // case 104 + case 112: { + clusterRegisterWithBarrier_ = input.readBool(); + bitField0_ |= 0x00000010; + break; + } // case 112 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag @@ -1898,11 +1966,9 @@ public java.lang.String getServiceType() { */ public Builder setServiceType( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } serviceType_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -1918,8 +1984,8 @@ public Builder setServiceType( * @return This builder for chaining. */ public Builder clearServiceType() { - serviceType_ = getDefaultInstance().getServiceType(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } @@ -1937,12 +2003,10 @@ public Builder clearServiceType() { */ public Builder setServiceTypeBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); serviceType_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -2000,11 +2064,9 @@ public java.lang.String getServiceLeader() { */ public Builder setServiceLeader( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } serviceLeader_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -2017,8 +2079,8 @@ public Builder setServiceLeader( * @return This builder for chaining. */ public Builder clearServiceLeader() { - serviceLeader_ = getDefaultInstance().getServiceLeader(); + bitField0_ = (bitField0_ & ~0x00000002); onChanged(); return this; } @@ -2033,12 +2095,10 @@ public Builder clearServiceLeader() { */ public Builder setServiceLeaderBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); serviceLeader_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -2066,8 +2126,9 @@ public boolean getEnableHealthCheck() { * @return This builder for chaining. */ public Builder setEnableHealthCheck(boolean value) { - + enableHealthCheck_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -2080,7 +2141,7 @@ public Builder setEnableHealthCheck(boolean value) { * @return This builder for chaining. */ public Builder clearEnableHealthCheck() { - + bitField0_ = (bitField0_ & ~0x00000004); enableHealthCheck_ = false; onChanged(); return this; @@ -2109,8 +2170,9 @@ public long getClusterRegisterTimeoutInMs() { * @return This builder for chaining. */ public Builder setClusterRegisterTimeoutInMs(long value) { - + clusterRegisterTimeoutInMs_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -2123,12 +2185,59 @@ public Builder setClusterRegisterTimeoutInMs(long value) { * @return This builder for chaining. */ public Builder clearClusterRegisterTimeoutInMs() { - + bitField0_ = (bitField0_ & ~0x00000008); clusterRegisterTimeoutInMs_ = 0L; onChanged(); return this; } + private boolean clusterRegisterWithBarrier_ ; + /** + *
    +       * Denotes if we should synchronize the agents' register attempts by blocking
    +       * on a barrier. This is useful for synchronized restarts.
    +       * 
    + * + * bool cluster_register_with_barrier = 14; + * @return The clusterRegisterWithBarrier. + */ + @java.lang.Override + public boolean getClusterRegisterWithBarrier() { + return clusterRegisterWithBarrier_; + } + /** + *
    +       * Denotes if we should synchronize the agents' register attempts by blocking
    +       * on a barrier. This is useful for synchronized restarts.
    +       * 
    + * + * bool cluster_register_with_barrier = 14; + * @param value The clusterRegisterWithBarrier to set. + * @return This builder for chaining. + */ + public Builder setClusterRegisterWithBarrier(boolean value) { + + clusterRegisterWithBarrier_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + /** + *
    +       * Denotes if we should synchronize the agents' register attempts by blocking
    +       * on a barrier. This is useful for synchronized restarts.
    +       * 
    + * + * bool cluster_register_with_barrier = 14; + * @return This builder for chaining. + */ + public Builder clearClusterRegisterWithBarrier() { + bitField0_ = (bitField0_ & ~0x00000010); + clusterRegisterWithBarrier_ = false; + onChanged(); + return this; + } + private long heartbeatTimeoutInMs_ ; /** *
    @@ -2160,8 +2269,9 @@ public long getHeartbeatTimeoutInMs() {
            * @return This builder for chaining.
            */
           public Builder setHeartbeatTimeoutInMs(long value) {
    -        
    +
             heartbeatTimeoutInMs_ = value;
    +        bitField0_ |= 0x00000020;
             onChanged();
             return this;
           }
    @@ -2178,7 +2288,7 @@ public Builder setHeartbeatTimeoutInMs(long value) {
            * @return This builder for chaining.
            */
           public Builder clearHeartbeatTimeoutInMs() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000020);
             heartbeatTimeoutInMs_ = 0L;
             onChanged();
             return this;
    @@ -2187,13 +2297,13 @@ public Builder clearHeartbeatTimeoutInMs() {
           private java.util.List coordinatedJobList_ =
             java.util.Collections.emptyList();
           private void ensureCoordinatedJobListIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    +        if (!((bitField0_ & 0x00000040) != 0)) {
               coordinatedJobList_ = new java.util.ArrayList(coordinatedJobList_);
    -          bitField0_ |= 0x00000001;
    +          bitField0_ |= 0x00000040;
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.CoordinationConfig.CoordinatedJob, org.tensorflow.proto.CoordinationConfig.CoordinatedJob.Builder, org.tensorflow.proto.CoordinationConfig.CoordinatedJobOrBuilder> coordinatedJobListBuilder_;
     
           /**
    @@ -2339,7 +2449,7 @@ public Builder addAllCoordinatedJobList(
           public Builder clearCoordinatedJobList() {
             if (coordinatedJobListBuilder_ == null) {
               coordinatedJobList_ = java.util.Collections.emptyList();
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000040);
               onChanged();
             } else {
               coordinatedJobListBuilder_.clear();
    @@ -2409,14 +2519,14 @@ public org.tensorflow.proto.CoordinationConfig.CoordinatedJob.Builder addCoordin
                getCoordinatedJobListBuilderList() {
             return getCoordinatedJobListFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.CoordinationConfig.CoordinatedJob, org.tensorflow.proto.CoordinationConfig.CoordinatedJob.Builder, org.tensorflow.proto.CoordinationConfig.CoordinatedJobOrBuilder> 
               getCoordinatedJobListFieldBuilder() {
             if (coordinatedJobListBuilder_ == null) {
    -          coordinatedJobListBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          coordinatedJobListBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.CoordinationConfig.CoordinatedJob, org.tensorflow.proto.CoordinationConfig.CoordinatedJob.Builder, org.tensorflow.proto.CoordinationConfig.CoordinatedJobOrBuilder>(
                       coordinatedJobList_,
    -                  ((bitField0_ & 0x00000001) != 0),
    +                  ((bitField0_ & 0x00000040) != 0),
                       getParentForChildren(),
                       isClean());
               coordinatedJobList_ = null;
    @@ -2453,8 +2563,9 @@ public long getShutdownBarrierTimeoutInMs() {
            * @return This builder for chaining.
            */
           public Builder setShutdownBarrierTimeoutInMs(long value) {
    -        
    +
             shutdownBarrierTimeoutInMs_ = value;
    +        bitField0_ |= 0x00000080;
             onChanged();
             return this;
           }
    @@ -2470,7 +2581,7 @@ public Builder setShutdownBarrierTimeoutInMs(long value) {
            * @return This builder for chaining.
            */
           public Builder clearShutdownBarrierTimeoutInMs() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000080);
             shutdownBarrierTimeoutInMs_ = 0L;
             onChanged();
             return this;
    @@ -2503,8 +2614,9 @@ public boolean getAgentDestructionWithoutShutdown() {
            * @return This builder for chaining.
            */
           public Builder setAgentDestructionWithoutShutdown(boolean value) {
    -        
    +
             agentDestructionWithoutShutdown_ = value;
    +        bitField0_ |= 0x00000100;
             onChanged();
             return this;
           }
    @@ -2519,18 +2631,19 @@ public Builder setAgentDestructionWithoutShutdown(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearAgentDestructionWithoutShutdown() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000100);
             agentDestructionWithoutShutdown_ = false;
             onChanged();
             return this;
           }
     
    -      private com.google.protobuf.LazyStringList recoverableJobs_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +      private com.google.protobuf.LazyStringArrayList recoverableJobs_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           private void ensureRecoverableJobsIsMutable() {
    -        if (!((bitField0_ & 0x00000002) != 0)) {
    +        if (!recoverableJobs_.isModifiable()) {
               recoverableJobs_ = new com.google.protobuf.LazyStringArrayList(recoverableJobs_);
    -          bitField0_ |= 0x00000002;
    -         }
    +        }
    +        bitField0_ |= 0x00000200;
           }
           /**
            * 
    @@ -2545,7 +2658,8 @@ private void ensureRecoverableJobsIsMutable() {
            */
           public com.google.protobuf.ProtocolStringList
               getRecoverableJobsList() {
    -        return recoverableJobs_.getUnmodifiableView();
    +        recoverableJobs_.makeImmutable();
    +        return recoverableJobs_;
           }
           /**
            * 
    @@ -2607,11 +2721,10 @@ public java.lang.String getRecoverableJobs(int index) {
            */
           public Builder setRecoverableJobs(
               int index, java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureRecoverableJobsIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureRecoverableJobsIsMutable();
             recoverableJobs_.set(index, value);
    +        bitField0_ |= 0x00000200;
             onChanged();
             return this;
           }
    @@ -2629,11 +2742,10 @@ public Builder setRecoverableJobs(
            */
           public Builder addRecoverableJobs(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureRecoverableJobsIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureRecoverableJobsIsMutable();
             recoverableJobs_.add(value);
    +        bitField0_ |= 0x00000200;
             onChanged();
             return this;
           }
    @@ -2654,6 +2766,7 @@ public Builder addAllRecoverableJobs(
             ensureRecoverableJobsIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, recoverableJobs_);
    +        bitField0_ |= 0x00000200;
             onChanged();
             return this;
           }
    @@ -2669,8 +2782,9 @@ public Builder addAllRecoverableJobs(
            * @return This builder for chaining.
            */
           public Builder clearRecoverableJobs() {
    -        recoverableJobs_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        recoverableJobs_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
    +        bitField0_ = (bitField0_ & ~0x00000200);;
             onChanged();
             return this;
           }
    @@ -2688,12 +2802,11 @@ public Builder clearRecoverableJobs() {
            */
           public Builder addRecoverableJobsBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             ensureRecoverableJobsIsMutable();
             recoverableJobs_.add(value);
    +        bitField0_ |= 0x00000200;
             onChanged();
             return this;
           }
    @@ -2725,8 +2838,9 @@ public boolean getAllowNewIncarnationToReconnect() {
            * @return This builder for chaining.
            */
           public Builder setAllowNewIncarnationToReconnect(boolean value) {
    -        
    +
             allowNewIncarnationToReconnect_ = value;
    +        bitField0_ |= 0x00000400;
             onChanged();
             return this;
           }
    @@ -2741,7 +2855,7 @@ public Builder setAllowNewIncarnationToReconnect(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearAllowNewIncarnationToReconnect() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000400);
             allowNewIncarnationToReconnect_ = false;
             onChanged();
             return this;
    @@ -2776,8 +2890,9 @@ public boolean getForceDisable() {
            * @return This builder for chaining.
            */
           public Builder setForceDisable(boolean value) {
    -        
    +
             forceDisable_ = value;
    +        bitField0_ |= 0x00000800;
             onChanged();
             return this;
           }
    @@ -2793,23 +2908,58 @@ public Builder setForceDisable(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearForceDisable() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000800);
             forceDisable_ = false;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
     
    +      private boolean pollForErrorFromServiceAtStartup_ ;
    +      /**
    +       * 
    +       * Use long polling to get error from coordination service as the error
    +       * propagation mechanism.
    +       * 
    + * + * bool poll_for_error_from_service_at_startup = 13; + * @return The pollForErrorFromServiceAtStartup. + */ @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + public boolean getPollForErrorFromServiceAtStartup() { + return pollForErrorFromServiceAtStartup_; } + /** + *
    +       * Use long polling to get error from coordination service as the error
    +       * propagation mechanism.
    +       * 
    + * + * bool poll_for_error_from_service_at_startup = 13; + * @param value The pollForErrorFromServiceAtStartup to set. + * @return This builder for chaining. + */ + public Builder setPollForErrorFromServiceAtStartup(boolean value) { + pollForErrorFromServiceAtStartup_ = value; + bitField0_ |= 0x00001000; + onChanged(); + return this; + } + /** + *
    +       * Use long polling to get error from coordination service as the error
    +       * propagation mechanism.
    +       * 
    + * + * bool poll_for_error_from_service_at_startup = 13; + * @return This builder for chaining. + */ + public Builder clearPollForErrorFromServiceAtStartup() { + bitField0_ = (bitField0_ & ~0x00001000); + pollForErrorFromServiceAtStartup_ = false; + onChanged(); + return this; + } // @@protoc_insertion_point(builder_scope:tensorflow.CoordinationServiceConfig) } @@ -2865,12 +3015,12 @@ public org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig getDefa private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_CoordinatedJob_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_CoordinatedJob_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_CoordinationServiceConfig_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_CoordinationServiceConfig_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor @@ -2881,23 +3031,25 @@ public org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig getDefa descriptor; static { java.lang.String[] descriptorData = { - "\n&tsl/protobuf/coordination_config.proto" + - "\022\ntensorflow\"1\n\016CoordinatedJob\022\014\n\004name\030\001" + - " \001(\t\022\021\n\tnum_tasks\030\002 \001(\005\"\240\003\n\031Coordination" + - "ServiceConfig\022\024\n\014service_type\030\001 \001(\t\022\026\n\016s" + - "ervice_leader\030\002 \001(\t\022\033\n\023enable_health_che" + - "ck\030\003 \001(\010\022&\n\036cluster_register_timeout_in_" + - "ms\030\004 \001(\003\022\037\n\027heartbeat_timeout_in_ms\030\005 \001(" + - "\003\0228\n\024coordinated_job_list\030\n \003(\0132\032.tensor" + - "flow.CoordinatedJob\022&\n\036shutdown_barrier_" + - "timeout_in_ms\030\007 \001(\003\022*\n\"agent_destruction" + - "_without_shutdown\030\010 \001(\010\022\030\n\020recoverable_j" + - "obs\030\t \003(\t\022*\n\"allow_new_incarnation_to_re" + - "connect\030\013 \001(\010\022\025\n\rforce_disable\030\014 \001(\010J\004\010\006" + - "\020\007Bm\n\024org.tensorflow.protoZUgithub.com/t" + - "ensorflow/tensorflow/tensorflow/go/core/" + - "protobuf/for_core_protos_go_protob\006proto" + - "3" + "\n*xla/tsl/protobuf/coordination_config.p" + + "roto\022\ntensorflow\"1\n\016CoordinatedJob\022\014\n\004na" + + "me\030\001 \001(\t\022\021\n\tnum_tasks\030\002 \001(\005\"\367\003\n\031Coordina" + + "tionServiceConfig\022\024\n\014service_type\030\001 \001(\t\022" + + "\026\n\016service_leader\030\002 \001(\t\022\033\n\023enable_health" + + "_check\030\003 \001(\010\022&\n\036cluster_register_timeout" + + "_in_ms\030\004 \001(\003\022%\n\035cluster_register_with_ba" + + "rrier\030\016 \001(\010\022\037\n\027heartbeat_timeout_in_ms\030\005" + + " \001(\003\0228\n\024coordinated_job_list\030\n \003(\0132\032.ten" + + "sorflow.CoordinatedJob\022&\n\036shutdown_barri" + + "er_timeout_in_ms\030\007 \001(\003\022*\n\"agent_destruct" + + "ion_without_shutdown\030\010 \001(\010\022\030\n\020recoverabl" + + "e_jobs\030\t \003(\t\022*\n\"allow_new_incarnation_to" + + "_reconnect\030\013 \001(\010\022\025\n\rforce_disable\030\014 \001(\010\022" + + ".\n&poll_for_error_from_service_at_startu" + + "p\030\r \001(\010J\004\010\006\020\007Bm\n\024org.tensorflow.protoZUg" + + "ithub.com/tensorflow/tensorflow/tensorfl" + + "ow/go/core/protobuf/for_core_protos_go_p" + + "rotob\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, @@ -2906,15 +3058,16 @@ public org.tensorflow.proto.CoordinationConfig.CoordinationServiceConfig getDefa internal_static_tensorflow_CoordinatedJob_descriptor = getDescriptor().getMessageTypes().get(0); internal_static_tensorflow_CoordinatedJob_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_CoordinatedJob_descriptor, new java.lang.String[] { "Name", "NumTasks", }); internal_static_tensorflow_CoordinationServiceConfig_descriptor = getDescriptor().getMessageTypes().get(1); internal_static_tensorflow_CoordinationServiceConfig_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_CoordinationServiceConfig_descriptor, - new java.lang.String[] { "ServiceType", "ServiceLeader", "EnableHealthCheck", "ClusterRegisterTimeoutInMs", "HeartbeatTimeoutInMs", "CoordinatedJobList", "ShutdownBarrierTimeoutInMs", "AgentDestructionWithoutShutdown", "RecoverableJobs", "AllowNewIncarnationToReconnect", "ForceDisable", }); + new java.lang.String[] { "ServiceType", "ServiceLeader", "EnableHealthCheck", "ClusterRegisterTimeoutInMs", "ClusterRegisterWithBarrier", "HeartbeatTimeoutInMs", "CoordinatedJobList", "ShutdownBarrierTimeoutInMs", "AgentDestructionWithoutShutdown", "RecoverableJobs", "AllowNewIncarnationToReconnect", "ForceDisable", "PollForErrorFromServiceAtStartup", }); + descriptor.resolveAllFeaturesImmutable(); } // @@protoc_insertion_point(outer_class_scope) diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CostGraphDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CostGraphDef.java index 04fe7d09b27..c1b43631e02 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CostGraphDef.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CostGraphDef.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/cost_graph.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,12 +9,21 @@ * Protobuf type {@code tensorflow.CostGraphDef} */ public final class CostGraphDef extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.CostGraphDef) CostGraphDefOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + CostGraphDef.class.getName()); + } // Use CostGraphDef.newBuilder() to construct. - private CostGraphDef(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private CostGraphDef(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private CostGraphDef() { @@ -20,25 +31,13 @@ private CostGraphDef() { cost_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new CostGraphDef(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.CostGraphProtos.internal_static_tensorflow_CostGraphDef_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.CostGraphProtos.internal_static_tensorflow_CostGraphDef_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -279,12 +278,21 @@ org.tensorflow.proto.CostGraphDef.Node.OutputInfoOrBuilder getOutputInfoOrBuilde * Protobuf type {@code tensorflow.CostGraphDef.Node} */ public static final class Node extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.CostGraphDef.Node) NodeOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + Node.class.getName()); + } // Use Node.newBuilder() to construct. - private Node(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private Node(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private Node() { @@ -295,25 +303,13 @@ private Node() { controlInput_ = emptyIntList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new Node(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.CostGraphProtos.internal_static_tensorflow_CostGraphDef_Node_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.CostGraphProtos.internal_static_tensorflow_CostGraphDef_Node_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -346,36 +342,33 @@ public interface InputInfoOrBuilder extends * Protobuf type {@code tensorflow.CostGraphDef.Node.InputInfo} */ public static final class InputInfo extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.CostGraphDef.Node.InputInfo) InputInfoOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + InputInfo.class.getName()); + } // Use InputInfo.newBuilder() to construct. - private InputInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private InputInfo(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private InputInfo() { } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new InputInfo(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.CostGraphProtos.internal_static_tensorflow_CostGraphDef_Node_InputInfo_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.CostGraphProtos.internal_static_tensorflow_CostGraphDef_Node_InputInfo_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -383,7 +376,7 @@ protected java.lang.Object newInstance( } public static final int PRECEDING_NODE_FIELD_NUMBER = 1; - private int precedingNode_; + private int precedingNode_ = 0; /** * int32 preceding_node = 1; * @return The precedingNode. @@ -394,7 +387,7 @@ public int getPrecedingNode() { } public static final int PRECEDING_PORT_FIELD_NUMBER = 2; - private int precedingPort_; + private int precedingPort_ = 0; /** * int32 preceding_port = 2; * @return The precedingPort. @@ -514,39 +507,41 @@ public static org.tensorflow.proto.CostGraphDef.Node.InputInfo parseFrom( } public static org.tensorflow.proto.CostGraphDef.Node.InputInfo parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.CostGraphDef.Node.InputInfo parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.CostGraphDef.Node.InputInfo parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.CostGraphDef.Node.InputInfo parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.CostGraphDef.Node.InputInfo parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.CostGraphDef.Node.InputInfo parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -566,7 +561,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -580,7 +575,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.CostGraphDef.Node.InputInfo} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.CostGraphDef.Node.InputInfo) org.tensorflow.proto.CostGraphDef.Node.InputInfoOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -589,7 +584,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.CostGraphProtos.internal_static_tensorflow_CostGraphDef_Node_InputInfo_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -602,17 +597,16 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; precedingNode_ = 0; - precedingPort_ = 0; - return this; } @@ -639,44 +633,21 @@ public org.tensorflow.proto.CostGraphDef.Node.InputInfo build() { @java.lang.Override public org.tensorflow.proto.CostGraphDef.Node.InputInfo buildPartial() { org.tensorflow.proto.CostGraphDef.Node.InputInfo result = new org.tensorflow.proto.CostGraphDef.Node.InputInfo(this); - result.precedingNode_ = precedingNode_; - result.precedingPort_ = precedingPort_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.CostGraphDef.Node.InputInfo result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.precedingNode_ = precedingNode_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.precedingPort_ = precedingPort_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.CostGraphDef.Node.InputInfo) { @@ -723,12 +694,12 @@ public Builder mergeFrom( break; case 8: { precedingNode_ = input.readInt32(); - + bitField0_ |= 0x00000001; break; } // case 8 case 16: { precedingPort_ = input.readInt32(); - + bitField0_ |= 0x00000002; break; } // case 16 default: { @@ -746,6 +717,7 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private int precedingNode_ ; /** @@ -762,8 +734,9 @@ public int getPrecedingNode() { * @return This builder for chaining. */ public Builder setPrecedingNode(int value) { - + precedingNode_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -772,7 +745,7 @@ public Builder setPrecedingNode(int value) { * @return This builder for chaining. */ public Builder clearPrecedingNode() { - + bitField0_ = (bitField0_ & ~0x00000001); precedingNode_ = 0; onChanged(); return this; @@ -793,8 +766,9 @@ public int getPrecedingPort() { * @return This builder for chaining. */ public Builder setPrecedingPort(int value) { - + precedingPort_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -803,23 +777,11 @@ public Builder setPrecedingPort(int value) { * @return This builder for chaining. */ public Builder clearPrecedingPort() { - + bitField0_ = (bitField0_ & ~0x00000002); precedingPort_ = 0; onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.CostGraphDef.Node.InputInfo) } @@ -928,45 +890,43 @@ public interface OutputInfoOrBuilder extends * Protobuf type {@code tensorflow.CostGraphDef.Node.OutputInfo} */ public static final class OutputInfo extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.CostGraphDef.Node.OutputInfo) OutputInfoOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + OutputInfo.class.getName()); + } // Use OutputInfo.newBuilder() to construct. - private OutputInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private OutputInfo(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private OutputInfo() { dtype_ = 0; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new OutputInfo(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.CostGraphProtos.internal_static_tensorflow_CostGraphDef_Node_OutputInfo_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.CostGraphProtos.internal_static_tensorflow_CostGraphDef_Node_OutputInfo_fieldAccessorTable .ensureFieldAccessorsInitialized( org.tensorflow.proto.CostGraphDef.Node.OutputInfo.class, org.tensorflow.proto.CostGraphDef.Node.OutputInfo.Builder.class); } + private int bitField0_; public static final int SIZE_FIELD_NUMBER = 1; - private long size_; + private long size_ = 0L; /** * int64 size = 1; * @return The size. @@ -977,7 +937,7 @@ public long getSize() { } public static final int ALIAS_INPUT_PORT_FIELD_NUMBER = 2; - private long aliasInputPort_; + private long aliasInputPort_ = 0L; /** *
            * If >= 0, the output is an alias of an input. Note that an alias input
    @@ -1001,7 +961,7 @@ public long getAliasInputPort() {
            */
           @java.lang.Override
           public boolean hasShape() {
    -        return shape_ != null;
    +        return ((bitField0_ & 0x00000001) != 0);
           }
           /**
            * .tensorflow.TensorShapeProto shape = 3;
    @@ -1016,11 +976,11 @@ public org.tensorflow.proto.TensorShapeProto getShape() {
            */
           @java.lang.Override
           public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
    -        return getShape();
    +        return shape_ == null ? org.tensorflow.proto.TensorShapeProto.getDefaultInstance() : shape_;
           }
     
           public static final int DTYPE_FIELD_NUMBER = 4;
    -      private int dtype_;
    +      private int dtype_ = 0;
           /**
            * .tensorflow.DataType dtype = 4;
            * @return The enum numeric value on the wire for dtype.
    @@ -1033,8 +993,7 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
            * @return The dtype.
            */
           @java.lang.Override public org.tensorflow.proto.DataType getDtype() {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +        org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
             return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
           }
     
    @@ -1058,7 +1017,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
             if (aliasInputPort_ != 0L) {
               output.writeInt64(2, aliasInputPort_);
             }
    -        if (shape_ != null) {
    +        if (((bitField0_ & 0x00000001) != 0)) {
               output.writeMessage(3, getShape());
             }
             if (dtype_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) {
    @@ -1081,7 +1040,7 @@ public int getSerializedSize() {
               size += com.google.protobuf.CodedOutputStream
                 .computeInt64Size(2, aliasInputPort_);
             }
    -        if (shape_ != null) {
    +        if (((bitField0_ & 0x00000001) != 0)) {
               size += com.google.protobuf.CodedOutputStream
                 .computeMessageSize(3, getShape());
             }
    @@ -1176,39 +1135,41 @@ public static org.tensorflow.proto.CostGraphDef.Node.OutputInfo parseFrom(
           }
           public static org.tensorflow.proto.CostGraphDef.Node.OutputInfo parseFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.CostGraphDef.Node.OutputInfo parseFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
    +
           public static org.tensorflow.proto.CostGraphDef.Node.OutputInfo parseDelimitedFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input);
           }
    +
           public static org.tensorflow.proto.CostGraphDef.Node.OutputInfo parseDelimitedFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
           }
           public static org.tensorflow.proto.CostGraphDef.Node.OutputInfo parseFrom(
               com.google.protobuf.CodedInputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.CostGraphDef.Node.OutputInfo parseFrom(
               com.google.protobuf.CodedInputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
     
    @@ -1228,7 +1189,7 @@ public Builder toBuilder() {
     
           @java.lang.Override
           protected Builder newBuilderForType(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             Builder builder = new Builder(parent);
             return builder;
           }
    @@ -1240,7 +1201,7 @@ protected Builder newBuilderForType(
            * Protobuf type {@code tensorflow.CostGraphDef.Node.OutputInfo}
            */
           public static final class Builder extends
    -          com.google.protobuf.GeneratedMessageV3.Builder implements
    +          com.google.protobuf.GeneratedMessage.Builder implements
               // @@protoc_insertion_point(builder_implements:tensorflow.CostGraphDef.Node.OutputInfo)
               org.tensorflow.proto.CostGraphDef.Node.OutputInfoOrBuilder {
             public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1249,7 +1210,7 @@ public static final class Builder extends
             }
     
             @java.lang.Override
    -        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
                 internalGetFieldAccessorTable() {
               return org.tensorflow.proto.CostGraphProtos.internal_static_tensorflow_CostGraphDef_Node_OutputInfo_fieldAccessorTable
                   .ensureFieldAccessorsInitialized(
    @@ -1258,29 +1219,32 @@ public static final class Builder extends
     
             // Construct using org.tensorflow.proto.CostGraphDef.Node.OutputInfo.newBuilder()
             private Builder() {
    -
    +          maybeForceBuilderInitialization();
             }
     
             private Builder(
    -            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
               super(parent);
    -
    +          maybeForceBuilderInitialization();
    +        }
    +        private void maybeForceBuilderInitialization() {
    +          if (com.google.protobuf.GeneratedMessage
    +                  .alwaysUseFieldBuilders) {
    +            getShapeFieldBuilder();
    +          }
             }
             @java.lang.Override
             public Builder clear() {
               super.clear();
    +          bitField0_ = 0;
               size_ = 0L;
    -
               aliasInputPort_ = 0L;
    -
    -          if (shapeBuilder_ == null) {
    -            shape_ = null;
    -          } else {
    -            shape_ = null;
    +          shape_ = null;
    +          if (shapeBuilder_ != null) {
    +            shapeBuilder_.dispose();
                 shapeBuilder_ = null;
               }
               dtype_ = 0;
    -
               return this;
             }
     
    @@ -1307,50 +1271,32 @@ public org.tensorflow.proto.CostGraphDef.Node.OutputInfo build() {
             @java.lang.Override
             public org.tensorflow.proto.CostGraphDef.Node.OutputInfo buildPartial() {
               org.tensorflow.proto.CostGraphDef.Node.OutputInfo result = new org.tensorflow.proto.CostGraphDef.Node.OutputInfo(this);
    -          result.size_ = size_;
    -          result.aliasInputPort_ = aliasInputPort_;
    -          if (shapeBuilder_ == null) {
    -            result.shape_ = shape_;
    -          } else {
    -            result.shape_ = shapeBuilder_.build();
    -          }
    -          result.dtype_ = dtype_;
    +          if (bitField0_ != 0) { buildPartial0(result); }
               onBuilt();
               return result;
             }
     
    -        @java.lang.Override
    -        public Builder clone() {
    -          return super.clone();
    -        }
    -        @java.lang.Override
    -        public Builder setField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.setField(field, value);
    -        }
    -        @java.lang.Override
    -        public Builder clearField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field) {
    -          return super.clearField(field);
    -        }
    -        @java.lang.Override
    -        public Builder clearOneof(
    -            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -          return super.clearOneof(oneof);
    -        }
    -        @java.lang.Override
    -        public Builder setRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            int index, java.lang.Object value) {
    -          return super.setRepeatedField(field, index, value);
    -        }
    -        @java.lang.Override
    -        public Builder addRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.addRepeatedField(field, value);
    +        private void buildPartial0(org.tensorflow.proto.CostGraphDef.Node.OutputInfo result) {
    +          int from_bitField0_ = bitField0_;
    +          if (((from_bitField0_ & 0x00000001) != 0)) {
    +            result.size_ = size_;
    +          }
    +          if (((from_bitField0_ & 0x00000002) != 0)) {
    +            result.aliasInputPort_ = aliasInputPort_;
    +          }
    +          int to_bitField0_ = 0;
    +          if (((from_bitField0_ & 0x00000004) != 0)) {
    +            result.shape_ = shapeBuilder_ == null
    +                ? shape_
    +                : shapeBuilder_.build();
    +            to_bitField0_ |= 0x00000001;
    +          }
    +          if (((from_bitField0_ & 0x00000008) != 0)) {
    +            result.dtype_ = dtype_;
    +          }
    +          result.bitField0_ |= to_bitField0_;
             }
    +
             @java.lang.Override
             public Builder mergeFrom(com.google.protobuf.Message other) {
               if (other instanceof org.tensorflow.proto.CostGraphDef.Node.OutputInfo) {
    @@ -1403,24 +1349,24 @@ public Builder mergeFrom(
                       break;
                     case 8: {
                       size_ = input.readInt64();
    -
    +                  bitField0_ |= 0x00000001;
                       break;
                     } // case 8
                     case 16: {
                       aliasInputPort_ = input.readInt64();
    -
    +                  bitField0_ |= 0x00000002;
                       break;
                     } // case 16
                     case 26: {
                       input.readMessage(
                           getShapeFieldBuilder().getBuilder(),
                           extensionRegistry);
    -
    +                  bitField0_ |= 0x00000004;
                       break;
                     } // case 26
                     case 32: {
                       dtype_ = input.readEnum();
    -
    +                  bitField0_ |= 0x00000008;
                       break;
                     } // case 32
                     default: {
    @@ -1438,6 +1384,7 @@ public Builder mergeFrom(
               } // finally
               return this;
             }
    +        private int bitField0_;
     
             private long size_ ;
             /**
    @@ -1454,8 +1401,9 @@ public long getSize() {
              * @return This builder for chaining.
              */
             public Builder setSize(long value) {
    -          
    +
               size_ = value;
    +          bitField0_ |= 0x00000001;
               onChanged();
               return this;
             }
    @@ -1464,7 +1412,7 @@ public Builder setSize(long value) {
              * @return This builder for chaining.
              */
             public Builder clearSize() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000001);
               size_ = 0L;
               onChanged();
               return this;
    @@ -1497,8 +1445,9 @@ public long getAliasInputPort() {
              * @return This builder for chaining.
              */
             public Builder setAliasInputPort(long value) {
    -          
    +
               aliasInputPort_ = value;
    +          bitField0_ |= 0x00000002;
               onChanged();
               return this;
             }
    @@ -1513,21 +1462,21 @@ public Builder setAliasInputPort(long value) {
              * @return This builder for chaining.
              */
             public Builder clearAliasInputPort() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000002);
               aliasInputPort_ = 0L;
               onChanged();
               return this;
             }
     
             private org.tensorflow.proto.TensorShapeProto shape_;
    -        private com.google.protobuf.SingleFieldBuilderV3<
    +        private com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> shapeBuilder_;
             /**
              * .tensorflow.TensorShapeProto shape = 3;
              * @return Whether the shape field is set.
              */
             public boolean hasShape() {
    -          return shapeBuilder_ != null || shape_ != null;
    +          return ((bitField0_ & 0x00000004) != 0);
             }
             /**
              * .tensorflow.TensorShapeProto shape = 3;
    @@ -1549,11 +1498,11 @@ public Builder setShape(org.tensorflow.proto.TensorShapeProto value) {
                   throw new NullPointerException();
                 }
                 shape_ = value;
    -            onChanged();
               } else {
                 shapeBuilder_.setMessage(value);
               }
    -
    +          bitField0_ |= 0x00000004;
    +          onChanged();
               return this;
             }
             /**
    @@ -1563,11 +1512,11 @@ public Builder setShape(
                 org.tensorflow.proto.TensorShapeProto.Builder builderForValue) {
               if (shapeBuilder_ == null) {
                 shape_ = builderForValue.build();
    -            onChanged();
               } else {
                 shapeBuilder_.setMessage(builderForValue.build());
               }
    -
    +          bitField0_ |= 0x00000004;
    +          onChanged();
               return this;
             }
             /**
    @@ -1575,38 +1524,40 @@ public Builder setShape(
              */
             public Builder mergeShape(org.tensorflow.proto.TensorShapeProto value) {
               if (shapeBuilder_ == null) {
    -            if (shape_ != null) {
    -              shape_ =
    -                org.tensorflow.proto.TensorShapeProto.newBuilder(shape_).mergeFrom(value).buildPartial();
    +            if (((bitField0_ & 0x00000004) != 0) &&
    +              shape_ != null &&
    +              shape_ != org.tensorflow.proto.TensorShapeProto.getDefaultInstance()) {
    +              getShapeBuilder().mergeFrom(value);
                 } else {
                   shape_ = value;
                 }
    -            onChanged();
               } else {
                 shapeBuilder_.mergeFrom(value);
               }
    -
    +          if (shape_ != null) {
    +            bitField0_ |= 0x00000004;
    +            onChanged();
    +          }
               return this;
             }
             /**
              * .tensorflow.TensorShapeProto shape = 3;
              */
             public Builder clearShape() {
    -          if (shapeBuilder_ == null) {
    -            shape_ = null;
    -            onChanged();
    -          } else {
    -            shape_ = null;
    +          bitField0_ = (bitField0_ & ~0x00000004);
    +          shape_ = null;
    +          if (shapeBuilder_ != null) {
    +            shapeBuilder_.dispose();
                 shapeBuilder_ = null;
               }
    -
    +          onChanged();
               return this;
             }
             /**
              * .tensorflow.TensorShapeProto shape = 3;
              */
             public org.tensorflow.proto.TensorShapeProto.Builder getShapeBuilder() {
    -          
    +          bitField0_ |= 0x00000004;
               onChanged();
               return getShapeFieldBuilder().getBuilder();
             }
    @@ -1624,11 +1575,11 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
             /**
              * .tensorflow.TensorShapeProto shape = 3;
              */
    -        private com.google.protobuf.SingleFieldBuilderV3<
    +        private com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> 
                 getShapeFieldBuilder() {
               if (shapeBuilder_ == null) {
    -            shapeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +            shapeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                     org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>(
                         getShape(),
                         getParentForChildren(),
    @@ -1652,8 +1603,8 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
              * @return This builder for chaining.
              */
             public Builder setDtypeValue(int value) {
    -          
               dtype_ = value;
    +          bitField0_ |= 0x00000008;
               onChanged();
               return this;
             }
    @@ -1663,8 +1614,7 @@ public Builder setDtypeValue(int value) {
              */
             @java.lang.Override
             public org.tensorflow.proto.DataType getDtype() {
    -          @SuppressWarnings("deprecation")
    -          org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +          org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
               return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
             }
             /**
    @@ -1676,7 +1626,7 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
               if (value == null) {
                 throw new NullPointerException();
               }
    -          
    +          bitField0_ |= 0x00000008;
               dtype_ = value.getNumber();
               onChanged();
               return this;
    @@ -1686,23 +1636,11 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
              * @return This builder for chaining.
              */
             public Builder clearDtype() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000008);
               dtype_ = 0;
               onChanged();
               return this;
             }
    -        @java.lang.Override
    -        public final Builder setUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.setUnknownFields(unknownFields);
    -        }
    -
    -        @java.lang.Override
    -        public final Builder mergeUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.mergeUnknownFields(unknownFields);
    -        }
    -
     
             // @@protoc_insertion_point(builder_scope:tensorflow.CostGraphDef.Node.OutputInfo)
           }
    @@ -1756,7 +1694,8 @@ public org.tensorflow.proto.CostGraphDef.Node.OutputInfo getDefaultInstanceForTy
         }
     
         public static final int NAME_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object name_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object name_ = "";
         /**
          * 
          * The name of the node. Names are globally unique.
    @@ -1802,7 +1741,8 @@ public java.lang.String getName() {
         }
     
         public static final int DEVICE_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object device_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object device_ = "";
         /**
          * 
          * The device of the node. Can be empty if the node is mapped to the
    @@ -1850,7 +1790,7 @@ public java.lang.String getDevice() {
         }
     
         public static final int ID_FIELD_NUMBER = 3;
    -    private int id_;
    +    private int id_ = 0;
         /**
          * 
          * The id of the node. Node ids are only unique inside a partition.
    @@ -1865,6 +1805,7 @@ public int getId() {
         }
     
         public static final int INPUT_INFO_FIELD_NUMBER = 4;
    +    @SuppressWarnings("serial")
         private java.util.List inputInfo_;
         /**
          * repeated .tensorflow.CostGraphDef.Node.InputInfo input_info = 4;
    @@ -1905,6 +1846,7 @@ public org.tensorflow.proto.CostGraphDef.Node.InputInfoOrBuilder getInputInfoOrB
         }
     
         public static final int OUTPUT_INFO_FIELD_NUMBER = 5;
    +    @SuppressWarnings("serial")
         private java.util.List outputInfo_;
         /**
          * repeated .tensorflow.CostGraphDef.Node.OutputInfo output_info = 5;
    @@ -1945,7 +1887,7 @@ public org.tensorflow.proto.CostGraphDef.Node.OutputInfoOrBuilder getOutputInfoO
         }
     
         public static final int TEMPORARY_MEMORY_SIZE_FIELD_NUMBER = 6;
    -    private long temporaryMemorySize_;
    +    private long temporaryMemorySize_ = 0L;
         /**
          * 
          * Temporary memory used by this node.
    @@ -1960,7 +1902,7 @@ public long getTemporaryMemorySize() {
         }
     
         public static final int PERSISTENT_MEMORY_SIZE_FIELD_NUMBER = 12;
    -    private long persistentMemorySize_;
    +    private long persistentMemorySize_ = 0L;
         /**
          * 
          * Persistent memory used by this node.
    @@ -1975,7 +1917,7 @@ public long getPersistentMemorySize() {
         }
     
         public static final int HOST_TEMP_MEMORY_SIZE_FIELD_NUMBER = 10;
    -    private long hostTempMemorySize_;
    +    private long hostTempMemorySize_ = 0L;
         /**
          * int64 host_temp_memory_size = 10 [deprecated = true];
          * @deprecated tensorflow.CostGraphDef.Node.host_temp_memory_size is deprecated.
    @@ -1988,7 +1930,7 @@ public long getPersistentMemorySize() {
         }
     
         public static final int DEVICE_TEMP_MEMORY_SIZE_FIELD_NUMBER = 11;
    -    private long deviceTempMemorySize_;
    +    private long deviceTempMemorySize_ = 0L;
         /**
          * int64 device_temp_memory_size = 11 [deprecated = true];
          * @deprecated tensorflow.CostGraphDef.Node.device_temp_memory_size is deprecated.
    @@ -2001,7 +1943,7 @@ public long getPersistentMemorySize() {
         }
     
         public static final int DEVICE_PERSISTENT_MEMORY_SIZE_FIELD_NUMBER = 16;
    -    private long devicePersistentMemorySize_;
    +    private long devicePersistentMemorySize_ = 0L;
         /**
          * int64 device_persistent_memory_size = 16 [deprecated = true];
          * @deprecated tensorflow.CostGraphDef.Node.device_persistent_memory_size is deprecated.
    @@ -2014,7 +1956,7 @@ public long getPersistentMemorySize() {
         }
     
         public static final int COMPUTE_COST_FIELD_NUMBER = 9;
    -    private long computeCost_;
    +    private long computeCost_ = 0L;
         /**
          * 
          * Estimate of the computational cost of this node, in microseconds.
    @@ -2029,7 +1971,7 @@ public long getComputeCost() {
         }
     
         public static final int COMPUTE_TIME_FIELD_NUMBER = 14;
    -    private long computeTime_;
    +    private long computeTime_ = 0L;
         /**
          * 
          * Analytical estimate of the computational cost of this node, in
    @@ -2045,7 +1987,7 @@ public long getComputeTime() {
         }
     
         public static final int MEMORY_TIME_FIELD_NUMBER = 15;
    -    private long memoryTime_;
    +    private long memoryTime_ = 0L;
         /**
          * 
          * Analytical estimate of the memory access cost of this node, in
    @@ -2061,7 +2003,7 @@ public long getMemoryTime() {
         }
     
         public static final int IS_FINAL_FIELD_NUMBER = 7;
    -    private boolean isFinal_;
    +    private boolean isFinal_ = false;
         /**
          * 
          * If true, the output is permanent: it can't be discarded, because this
    @@ -2077,7 +2019,9 @@ public boolean getIsFinal() {
         }
     
         public static final int CONTROL_INPUT_FIELD_NUMBER = 8;
    -    private com.google.protobuf.Internal.IntList controlInput_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.Internal.IntList controlInput_ =
    +        emptyIntList();
         /**
          * 
          * Ids of the control inputs for this node.
    @@ -2117,7 +2061,7 @@ public int getControlInput(int index) {
         private int controlInputMemoizedSerializedSize = -1;
     
         public static final int INACCURATE_FIELD_NUMBER = 17;
    -    private boolean inaccurate_;
    +    private boolean inaccurate_ = false;
         /**
          * 
          * Are the costs inaccurate?
    @@ -2146,11 +2090,11 @@ public final boolean isInitialized() {
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
           getSerializedSize();
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(device_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, device_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(device_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, device_);
           }
           if (id_ != 0) {
             output.writeInt32(3, id_);
    @@ -2207,11 +2151,11 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(device_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, device_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(device_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, device_);
           }
           if (id_ != 0) {
             size += com.google.protobuf.CodedOutputStream
    @@ -2424,39 +2368,41 @@ public static org.tensorflow.proto.CostGraphDef.Node parseFrom(
         }
         public static org.tensorflow.proto.CostGraphDef.Node parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.CostGraphDef.Node parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.CostGraphDef.Node parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.CostGraphDef.Node parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.CostGraphDef.Node parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.CostGraphDef.Node parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -2476,7 +2422,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -2484,7 +2430,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.CostGraphDef.Node}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.CostGraphDef.Node)
             org.tensorflow.proto.CostGraphDef.NodeOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -2493,7 +2439,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.CostGraphProtos.internal_static_tensorflow_CostGraphDef_Node_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -2506,55 +2452,42 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             name_ = "";
    -
             device_ = "";
    -
             id_ = 0;
    -
             if (inputInfoBuilder_ == null) {
               inputInfo_ = java.util.Collections.emptyList();
             } else {
               inputInfo_ = null;
               inputInfoBuilder_.clear();
             }
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000008);
             if (outputInfoBuilder_ == null) {
               outputInfo_ = java.util.Collections.emptyList();
             } else {
               outputInfo_ = null;
               outputInfoBuilder_.clear();
             }
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        bitField0_ = (bitField0_ & ~0x00000010);
             temporaryMemorySize_ = 0L;
    -
             persistentMemorySize_ = 0L;
    -
             hostTempMemorySize_ = 0L;
    -
             deviceTempMemorySize_ = 0L;
    -
             devicePersistentMemorySize_ = 0L;
    -
             computeCost_ = 0L;
    -
             computeTime_ = 0L;
    -
             memoryTime_ = 0L;
    -
             isFinal_ = false;
    -
             controlInput_ = emptyIntList();
    -        bitField0_ = (bitField0_ & ~0x00000004);
             inaccurate_ = false;
    -
             return this;
           }
     
    @@ -2581,79 +2514,80 @@ public org.tensorflow.proto.CostGraphDef.Node build() {
           @java.lang.Override
           public org.tensorflow.proto.CostGraphDef.Node buildPartial() {
             org.tensorflow.proto.CostGraphDef.Node result = new org.tensorflow.proto.CostGraphDef.Node(this);
    -        int from_bitField0_ = bitField0_;
    -        result.name_ = name_;
    -        result.device_ = device_;
    -        result.id_ = id_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.CostGraphDef.Node result) {
             if (inputInfoBuilder_ == null) {
    -          if (((bitField0_ & 0x00000001) != 0)) {
    +          if (((bitField0_ & 0x00000008) != 0)) {
                 inputInfo_ = java.util.Collections.unmodifiableList(inputInfo_);
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000008);
               }
               result.inputInfo_ = inputInfo_;
             } else {
               result.inputInfo_ = inputInfoBuilder_.build();
             }
             if (outputInfoBuilder_ == null) {
    -          if (((bitField0_ & 0x00000002) != 0)) {
    +          if (((bitField0_ & 0x00000010) != 0)) {
                 outputInfo_ = java.util.Collections.unmodifiableList(outputInfo_);
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            bitField0_ = (bitField0_ & ~0x00000010);
               }
               result.outputInfo_ = outputInfo_;
             } else {
               result.outputInfo_ = outputInfoBuilder_.build();
             }
    -        result.temporaryMemorySize_ = temporaryMemorySize_;
    -        result.persistentMemorySize_ = persistentMemorySize_;
    -        result.hostTempMemorySize_ = hostTempMemorySize_;
    -        result.deviceTempMemorySize_ = deviceTempMemorySize_;
    -        result.devicePersistentMemorySize_ = devicePersistentMemorySize_;
    -        result.computeCost_ = computeCost_;
    -        result.computeTime_ = computeTime_;
    -        result.memoryTime_ = memoryTime_;
    -        result.isFinal_ = isFinal_;
    -        if (((bitField0_ & 0x00000004) != 0)) {
    +      }
    +
    +      private void buildPartial0(org.tensorflow.proto.CostGraphDef.Node result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.name_ = name_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.device_ = device_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.id_ = id_;
    +        }
    +        if (((from_bitField0_ & 0x00000020) != 0)) {
    +          result.temporaryMemorySize_ = temporaryMemorySize_;
    +        }
    +        if (((from_bitField0_ & 0x00000040) != 0)) {
    +          result.persistentMemorySize_ = persistentMemorySize_;
    +        }
    +        if (((from_bitField0_ & 0x00000080) != 0)) {
    +          result.hostTempMemorySize_ = hostTempMemorySize_;
    +        }
    +        if (((from_bitField0_ & 0x00000100) != 0)) {
    +          result.deviceTempMemorySize_ = deviceTempMemorySize_;
    +        }
    +        if (((from_bitField0_ & 0x00000200) != 0)) {
    +          result.devicePersistentMemorySize_ = devicePersistentMemorySize_;
    +        }
    +        if (((from_bitField0_ & 0x00000400) != 0)) {
    +          result.computeCost_ = computeCost_;
    +        }
    +        if (((from_bitField0_ & 0x00000800) != 0)) {
    +          result.computeTime_ = computeTime_;
    +        }
    +        if (((from_bitField0_ & 0x00001000) != 0)) {
    +          result.memoryTime_ = memoryTime_;
    +        }
    +        if (((from_bitField0_ & 0x00002000) != 0)) {
    +          result.isFinal_ = isFinal_;
    +        }
    +        if (((from_bitField0_ & 0x00004000) != 0)) {
               controlInput_.makeImmutable();
    -          bitField0_ = (bitField0_ & ~0x00000004);
    +          result.controlInput_ = controlInput_;
    +        }
    +        if (((from_bitField0_ & 0x00008000) != 0)) {
    +          result.inaccurate_ = inaccurate_;
             }
    -        result.controlInput_ = controlInput_;
    -        result.inaccurate_ = inaccurate_;
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    -      }
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.CostGraphDef.Node) {
    @@ -2668,10 +2602,12 @@ public Builder mergeFrom(org.tensorflow.proto.CostGraphDef.Node other) {
             if (other == org.tensorflow.proto.CostGraphDef.Node.getDefaultInstance()) return this;
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (!other.getDevice().isEmpty()) {
               device_ = other.device_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             if (other.getId() != 0) {
    @@ -2681,7 +2617,7 @@ public Builder mergeFrom(org.tensorflow.proto.CostGraphDef.Node other) {
               if (!other.inputInfo_.isEmpty()) {
                 if (inputInfo_.isEmpty()) {
                   inputInfo_ = other.inputInfo_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000008);
                 } else {
                   ensureInputInfoIsMutable();
                   inputInfo_.addAll(other.inputInfo_);
    @@ -2694,9 +2630,9 @@ public Builder mergeFrom(org.tensorflow.proto.CostGraphDef.Node other) {
                   inputInfoBuilder_.dispose();
                   inputInfoBuilder_ = null;
                   inputInfo_ = other.inputInfo_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000008);
                   inputInfoBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getInputInfoFieldBuilder() : null;
                 } else {
                   inputInfoBuilder_.addAllMessages(other.inputInfo_);
    @@ -2707,7 +2643,7 @@ public Builder mergeFrom(org.tensorflow.proto.CostGraphDef.Node other) {
               if (!other.outputInfo_.isEmpty()) {
                 if (outputInfo_.isEmpty()) {
                   outputInfo_ = other.outputInfo_;
    -              bitField0_ = (bitField0_ & ~0x00000002);
    +              bitField0_ = (bitField0_ & ~0x00000010);
                 } else {
                   ensureOutputInfoIsMutable();
                   outputInfo_.addAll(other.outputInfo_);
    @@ -2720,9 +2656,9 @@ public Builder mergeFrom(org.tensorflow.proto.CostGraphDef.Node other) {
                   outputInfoBuilder_.dispose();
                   outputInfoBuilder_ = null;
                   outputInfo_ = other.outputInfo_;
    -              bitField0_ = (bitField0_ & ~0x00000002);
    +              bitField0_ = (bitField0_ & ~0x00000010);
                   outputInfoBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getOutputInfoFieldBuilder() : null;
                 } else {
                   outputInfoBuilder_.addAllMessages(other.outputInfo_);
    @@ -2759,7 +2695,8 @@ public Builder mergeFrom(org.tensorflow.proto.CostGraphDef.Node other) {
             if (!other.controlInput_.isEmpty()) {
               if (controlInput_.isEmpty()) {
                 controlInput_ = other.controlInput_;
    -            bitField0_ = (bitField0_ & ~0x00000004);
    +            controlInput_.makeImmutable();
    +            bitField0_ |= 0x00004000;
               } else {
                 ensureControlInputIsMutable();
                 controlInput_.addAll(other.controlInput_);
    @@ -2797,17 +2734,17 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     device_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 24: {
                     id_ = input.readInt32();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 24
                   case 34: {
    @@ -2838,12 +2775,12 @@ public Builder mergeFrom(
                   } // case 42
                   case 48: {
                     temporaryMemorySize_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000020;
                     break;
                   } // case 48
                   case 56: {
                     isFinal_ = input.readBool();
    -
    +                bitField0_ |= 0x00002000;
                     break;
                   } // case 56
                   case 64: {
    @@ -2864,42 +2801,42 @@ public Builder mergeFrom(
                   } // case 66
                   case 72: {
                     computeCost_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000400;
                     break;
                   } // case 72
                   case 80: {
                     hostTempMemorySize_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000080;
                     break;
                   } // case 80
                   case 88: {
                     deviceTempMemorySize_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000100;
                     break;
                   } // case 88
                   case 96: {
                     persistentMemorySize_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000040;
                     break;
                   } // case 96
                   case 112: {
                     computeTime_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000800;
                     break;
                   } // case 112
                   case 120: {
                     memoryTime_ = input.readInt64();
    -
    +                bitField0_ |= 0x00001000;
                     break;
                   } // case 120
                   case 128: {
                     devicePersistentMemorySize_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000200;
                     break;
                   } // case 128
                   case 136: {
                     inaccurate_ = input.readBool();
    -
    +                bitField0_ |= 0x00008000;
                     break;
                   } // case 136
                   default: {
    @@ -2972,11 +2909,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -2989,8 +2924,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -3005,12 +2940,10 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -3071,11 +3004,9 @@ public java.lang.String getDevice() {
            */
           public Builder setDevice(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             device_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -3089,8 +3020,8 @@ public Builder setDevice(
            * @return This builder for chaining.
            */
           public Builder clearDevice() {
    -        
             device_ = getDefaultInstance().getDevice();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -3106,12 +3037,10 @@ public Builder clearDevice() {
            */
           public Builder setDeviceBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             device_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -3139,8 +3068,9 @@ public int getId() {
            * @return This builder for chaining.
            */
           public Builder setId(int value) {
    -        
    +
             id_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -3153,7 +3083,7 @@ public Builder setId(int value) {
            * @return This builder for chaining.
            */
           public Builder clearId() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000004);
             id_ = 0;
             onChanged();
             return this;
    @@ -3162,13 +3092,13 @@ public Builder clearId() {
           private java.util.List inputInfo_ =
             java.util.Collections.emptyList();
           private void ensureInputInfoIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    +        if (!((bitField0_ & 0x00000008) != 0)) {
               inputInfo_ = new java.util.ArrayList(inputInfo_);
    -          bitField0_ |= 0x00000001;
    +          bitField0_ |= 0x00000008;
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.CostGraphDef.Node.InputInfo, org.tensorflow.proto.CostGraphDef.Node.InputInfo.Builder, org.tensorflow.proto.CostGraphDef.Node.InputInfoOrBuilder> inputInfoBuilder_;
     
           /**
    @@ -3314,7 +3244,7 @@ public Builder addAllInputInfo(
           public Builder clearInputInfo() {
             if (inputInfoBuilder_ == null) {
               inputInfo_ = java.util.Collections.emptyList();
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000008);
               onChanged();
             } else {
               inputInfoBuilder_.clear();
    @@ -3384,14 +3314,14 @@ public org.tensorflow.proto.CostGraphDef.Node.InputInfo.Builder addInputInfoBuil
                getInputInfoBuilderList() {
             return getInputInfoFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.CostGraphDef.Node.InputInfo, org.tensorflow.proto.CostGraphDef.Node.InputInfo.Builder, org.tensorflow.proto.CostGraphDef.Node.InputInfoOrBuilder> 
               getInputInfoFieldBuilder() {
             if (inputInfoBuilder_ == null) {
    -          inputInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          inputInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.CostGraphDef.Node.InputInfo, org.tensorflow.proto.CostGraphDef.Node.InputInfo.Builder, org.tensorflow.proto.CostGraphDef.Node.InputInfoOrBuilder>(
                       inputInfo_,
    -                  ((bitField0_ & 0x00000001) != 0),
    +                  ((bitField0_ & 0x00000008) != 0),
                       getParentForChildren(),
                       isClean());
               inputInfo_ = null;
    @@ -3402,13 +3332,13 @@ public org.tensorflow.proto.CostGraphDef.Node.InputInfo.Builder addInputInfoBuil
           private java.util.List outputInfo_ =
             java.util.Collections.emptyList();
           private void ensureOutputInfoIsMutable() {
    -        if (!((bitField0_ & 0x00000002) != 0)) {
    +        if (!((bitField0_ & 0x00000010) != 0)) {
               outputInfo_ = new java.util.ArrayList(outputInfo_);
    -          bitField0_ |= 0x00000002;
    +          bitField0_ |= 0x00000010;
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.CostGraphDef.Node.OutputInfo, org.tensorflow.proto.CostGraphDef.Node.OutputInfo.Builder, org.tensorflow.proto.CostGraphDef.Node.OutputInfoOrBuilder> outputInfoBuilder_;
     
           /**
    @@ -3554,7 +3484,7 @@ public Builder addAllOutputInfo(
           public Builder clearOutputInfo() {
             if (outputInfoBuilder_ == null) {
               outputInfo_ = java.util.Collections.emptyList();
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          bitField0_ = (bitField0_ & ~0x00000010);
               onChanged();
             } else {
               outputInfoBuilder_.clear();
    @@ -3624,14 +3554,14 @@ public org.tensorflow.proto.CostGraphDef.Node.OutputInfo.Builder addOutputInfoBu
                getOutputInfoBuilderList() {
             return getOutputInfoFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.CostGraphDef.Node.OutputInfo, org.tensorflow.proto.CostGraphDef.Node.OutputInfo.Builder, org.tensorflow.proto.CostGraphDef.Node.OutputInfoOrBuilder> 
               getOutputInfoFieldBuilder() {
             if (outputInfoBuilder_ == null) {
    -          outputInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          outputInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.CostGraphDef.Node.OutputInfo, org.tensorflow.proto.CostGraphDef.Node.OutputInfo.Builder, org.tensorflow.proto.CostGraphDef.Node.OutputInfoOrBuilder>(
                       outputInfo_,
    -                  ((bitField0_ & 0x00000002) != 0),
    +                  ((bitField0_ & 0x00000010) != 0),
                       getParentForChildren(),
                       isClean());
               outputInfo_ = null;
    @@ -3662,8 +3592,9 @@ public long getTemporaryMemorySize() {
            * @return This builder for chaining.
            */
           public Builder setTemporaryMemorySize(long value) {
    -        
    +
             temporaryMemorySize_ = value;
    +        bitField0_ |= 0x00000020;
             onChanged();
             return this;
           }
    @@ -3676,7 +3607,7 @@ public Builder setTemporaryMemorySize(long value) {
            * @return This builder for chaining.
            */
           public Builder clearTemporaryMemorySize() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000020);
             temporaryMemorySize_ = 0L;
             onChanged();
             return this;
    @@ -3705,8 +3636,9 @@ public long getPersistentMemorySize() {
            * @return This builder for chaining.
            */
           public Builder setPersistentMemorySize(long value) {
    -        
    +
             persistentMemorySize_ = value;
    +        bitField0_ |= 0x00000040;
             onChanged();
             return this;
           }
    @@ -3719,7 +3651,7 @@ public Builder setPersistentMemorySize(long value) {
            * @return This builder for chaining.
            */
           public Builder clearPersistentMemorySize() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000040);
             persistentMemorySize_ = 0L;
             onChanged();
             return this;
    @@ -3744,8 +3676,9 @@ public Builder clearPersistentMemorySize() {
            * @return This builder for chaining.
            */
           @java.lang.Deprecated public Builder setHostTempMemorySize(long value) {
    -        
    +
             hostTempMemorySize_ = value;
    +        bitField0_ |= 0x00000080;
             onChanged();
             return this;
           }
    @@ -3756,7 +3689,7 @@ public Builder clearPersistentMemorySize() {
            * @return This builder for chaining.
            */
           @java.lang.Deprecated public Builder clearHostTempMemorySize() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000080);
             hostTempMemorySize_ = 0L;
             onChanged();
             return this;
    @@ -3781,8 +3714,9 @@ public Builder clearPersistentMemorySize() {
            * @return This builder for chaining.
            */
           @java.lang.Deprecated public Builder setDeviceTempMemorySize(long value) {
    -        
    +
             deviceTempMemorySize_ = value;
    +        bitField0_ |= 0x00000100;
             onChanged();
             return this;
           }
    @@ -3793,7 +3727,7 @@ public Builder clearPersistentMemorySize() {
            * @return This builder for chaining.
            */
           @java.lang.Deprecated public Builder clearDeviceTempMemorySize() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000100);
             deviceTempMemorySize_ = 0L;
             onChanged();
             return this;
    @@ -3818,8 +3752,9 @@ public Builder clearPersistentMemorySize() {
            * @return This builder for chaining.
            */
           @java.lang.Deprecated public Builder setDevicePersistentMemorySize(long value) {
    -        
    +
             devicePersistentMemorySize_ = value;
    +        bitField0_ |= 0x00000200;
             onChanged();
             return this;
           }
    @@ -3830,7 +3765,7 @@ public Builder clearPersistentMemorySize() {
            * @return This builder for chaining.
            */
           @java.lang.Deprecated public Builder clearDevicePersistentMemorySize() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000200);
             devicePersistentMemorySize_ = 0L;
             onChanged();
             return this;
    @@ -3859,8 +3794,9 @@ public long getComputeCost() {
            * @return This builder for chaining.
            */
           public Builder setComputeCost(long value) {
    -        
    +
             computeCost_ = value;
    +        bitField0_ |= 0x00000400;
             onChanged();
             return this;
           }
    @@ -3873,7 +3809,7 @@ public Builder setComputeCost(long value) {
            * @return This builder for chaining.
            */
           public Builder clearComputeCost() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000400);
             computeCost_ = 0L;
             onChanged();
             return this;
    @@ -3904,8 +3840,9 @@ public long getComputeTime() {
            * @return This builder for chaining.
            */
           public Builder setComputeTime(long value) {
    -        
    +
             computeTime_ = value;
    +        bitField0_ |= 0x00000800;
             onChanged();
             return this;
           }
    @@ -3919,7 +3856,7 @@ public Builder setComputeTime(long value) {
            * @return This builder for chaining.
            */
           public Builder clearComputeTime() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000800);
             computeTime_ = 0L;
             onChanged();
             return this;
    @@ -3950,8 +3887,9 @@ public long getMemoryTime() {
            * @return This builder for chaining.
            */
           public Builder setMemoryTime(long value) {
    -        
    +
             memoryTime_ = value;
    +        bitField0_ |= 0x00001000;
             onChanged();
             return this;
           }
    @@ -3965,7 +3903,7 @@ public Builder setMemoryTime(long value) {
            * @return This builder for chaining.
            */
           public Builder clearMemoryTime() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00001000);
             memoryTime_ = 0L;
             onChanged();
             return this;
    @@ -3996,8 +3934,9 @@ public boolean getIsFinal() {
            * @return This builder for chaining.
            */
           public Builder setIsFinal(boolean value) {
    -        
    +
             isFinal_ = value;
    +        bitField0_ |= 0x00002000;
             onChanged();
             return this;
           }
    @@ -4011,7 +3950,7 @@ public Builder setIsFinal(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearIsFinal() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00002000);
             isFinal_ = false;
             onChanged();
             return this;
    @@ -4019,10 +3958,10 @@ public Builder clearIsFinal() {
     
           private com.google.protobuf.Internal.IntList controlInput_ = emptyIntList();
           private void ensureControlInputIsMutable() {
    -        if (!((bitField0_ & 0x00000004) != 0)) {
    -          controlInput_ = mutableCopy(controlInput_);
    -          bitField0_ |= 0x00000004;
    -         }
    +        if (!controlInput_.isModifiable()) {
    +          controlInput_ = makeMutableCopy(controlInput_);
    +        }
    +        bitField0_ |= 0x00004000;
           }
           /**
            * 
    @@ -4034,8 +3973,8 @@ private void ensureControlInputIsMutable() {
            */
           public java.util.List
               getControlInputList() {
    -        return ((bitField0_ & 0x00000004) != 0) ?
    -                 java.util.Collections.unmodifiableList(controlInput_) : controlInput_;
    +        controlInput_.makeImmutable();
    +        return controlInput_;
           }
           /**
            * 
    @@ -4072,8 +4011,10 @@ public int getControlInput(int index) {
            */
           public Builder setControlInput(
               int index, int value) {
    +
             ensureControlInputIsMutable();
             controlInput_.setInt(index, value);
    +        bitField0_ |= 0x00004000;
             onChanged();
             return this;
           }
    @@ -4087,8 +4028,10 @@ public Builder setControlInput(
            * @return This builder for chaining.
            */
           public Builder addControlInput(int value) {
    +
             ensureControlInputIsMutable();
             controlInput_.addInt(value);
    +        bitField0_ |= 0x00004000;
             onChanged();
             return this;
           }
    @@ -4106,6 +4049,7 @@ public Builder addAllControlInput(
             ensureControlInputIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, controlInput_);
    +        bitField0_ |= 0x00004000;
             onChanged();
             return this;
           }
    @@ -4119,7 +4063,7 @@ public Builder addAllControlInput(
            */
           public Builder clearControlInput() {
             controlInput_ = emptyIntList();
    -        bitField0_ = (bitField0_ & ~0x00000004);
    +        bitField0_ = (bitField0_ & ~0x00004000);
             onChanged();
             return this;
           }
    @@ -4147,8 +4091,9 @@ public boolean getInaccurate() {
            * @return This builder for chaining.
            */
           public Builder setInaccurate(boolean value) {
    -        
    +
             inaccurate_ = value;
    +        bitField0_ |= 0x00008000;
             onChanged();
             return this;
           }
    @@ -4161,23 +4106,11 @@ public Builder setInaccurate(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearInaccurate() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00008000);
             inaccurate_ = false;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.CostGraphDef.Node)
         }
    @@ -4272,37 +4205,34 @@ public interface AggregatedCostOrBuilder extends
        * Protobuf type {@code tensorflow.CostGraphDef.AggregatedCost}
        */
       public static final class AggregatedCost extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.CostGraphDef.AggregatedCost)
           AggregatedCostOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        AggregatedCost.class.getName());
    +    }
         // Use AggregatedCost.newBuilder() to construct.
    -    private AggregatedCost(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private AggregatedCost(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private AggregatedCost() {
           dimension_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new AggregatedCost();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.CostGraphProtos.internal_static_tensorflow_CostGraphDef_AggregatedCost_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.CostGraphProtos.internal_static_tensorflow_CostGraphDef_AggregatedCost_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -4310,7 +4240,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int COST_FIELD_NUMBER = 1;
    -    private float cost_;
    +    private float cost_ = 0F;
         /**
          * 
          * Aggregated cost value.
    @@ -4325,7 +4255,8 @@ public float getCost() {
         }
     
         public static final int DIMENSION_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object dimension_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object dimension_ = "";
         /**
          * 
          * Aggregated cost dimension (e.g. 'memory', 'compute', 'network').
    @@ -4387,8 +4318,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (java.lang.Float.floatToRawIntBits(cost_) != 0) {
             output.writeFloat(1, cost_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dimension_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, dimension_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(dimension_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, dimension_);
           }
           getUnknownFields().writeTo(output);
         }
    @@ -4403,8 +4334,8 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeFloatSize(1, cost_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dimension_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, dimension_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(dimension_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, dimension_);
           }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
    @@ -4481,39 +4412,41 @@ public static org.tensorflow.proto.CostGraphDef.AggregatedCost parseFrom(
         }
         public static org.tensorflow.proto.CostGraphDef.AggregatedCost parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.CostGraphDef.AggregatedCost parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.CostGraphDef.AggregatedCost parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.CostGraphDef.AggregatedCost parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.CostGraphDef.AggregatedCost parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.CostGraphDef.AggregatedCost parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -4533,7 +4466,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -4545,7 +4478,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.CostGraphDef.AggregatedCost}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.CostGraphDef.AggregatedCost)
             org.tensorflow.proto.CostGraphDef.AggregatedCostOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -4554,7 +4487,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.CostGraphProtos.internal_static_tensorflow_CostGraphDef_AggregatedCost_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -4567,17 +4500,16 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             cost_ = 0F;
    -
             dimension_ = "";
    -
             return this;
           }
     
    @@ -4604,44 +4536,21 @@ public org.tensorflow.proto.CostGraphDef.AggregatedCost build() {
           @java.lang.Override
           public org.tensorflow.proto.CostGraphDef.AggregatedCost buildPartial() {
             org.tensorflow.proto.CostGraphDef.AggregatedCost result = new org.tensorflow.proto.CostGraphDef.AggregatedCost(this);
    -        result.cost_ = cost_;
    -        result.dimension_ = dimension_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.CostGraphDef.AggregatedCost result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.cost_ = cost_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.dimension_ = dimension_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.CostGraphDef.AggregatedCost) {
    @@ -4659,6 +4568,7 @@ public Builder mergeFrom(org.tensorflow.proto.CostGraphDef.AggregatedCost other)
             }
             if (!other.getDimension().isEmpty()) {
               dimension_ = other.dimension_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             this.mergeUnknownFields(other.getUnknownFields());
    @@ -4689,12 +4599,12 @@ public Builder mergeFrom(
                     break;
                   case 13: {
                     cost_ = input.readFloat();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 13
                   case 18: {
                     dimension_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   default: {
    @@ -4712,6 +4622,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private float cost_ ;
           /**
    @@ -4736,8 +4647,9 @@ public float getCost() {
            * @return This builder for chaining.
            */
           public Builder setCost(float value) {
    -        
    +
             cost_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -4750,7 +4662,7 @@ public Builder setCost(float value) {
            * @return This builder for chaining.
            */
           public Builder clearCost() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             cost_ = 0F;
             onChanged();
             return this;
    @@ -4809,11 +4721,9 @@ public java.lang.String getDimension() {
            */
           public Builder setDimension(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             dimension_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -4826,8 +4736,8 @@ public Builder setDimension(
            * @return This builder for chaining.
            */
           public Builder clearDimension() {
    -        
             dimension_ = getDefaultInstance().getDimension();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -4842,27 +4752,13 @@ public Builder clearDimension() {
            */
           public Builder setDimensionBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             dimension_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.CostGraphDef.AggregatedCost)
         }
    @@ -4916,6 +4812,7 @@ public org.tensorflow.proto.CostGraphDef.AggregatedCost getDefaultInstanceForTyp
       }
     
       public static final int NODE_FIELD_NUMBER = 1;
    +  @SuppressWarnings("serial")
       private java.util.List node_;
       /**
        * repeated .tensorflow.CostGraphDef.Node node = 1;
    @@ -4956,6 +4853,7 @@ public org.tensorflow.proto.CostGraphDef.NodeOrBuilder getNodeOrBuilder(
       }
     
       public static final int COST_FIELD_NUMBER = 2;
    +  @SuppressWarnings("serial")
       private java.util.List cost_;
       /**
        * repeated .tensorflow.CostGraphDef.AggregatedCost cost = 2;
    @@ -5109,39 +5007,41 @@ public static org.tensorflow.proto.CostGraphDef parseFrom(
       }
       public static org.tensorflow.proto.CostGraphDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.CostGraphDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.CostGraphDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.CostGraphDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.CostGraphDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.CostGraphDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -5161,7 +5061,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -5169,7 +5069,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.CostGraphDef}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.CostGraphDef)
           org.tensorflow.proto.CostGraphDefOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -5178,7 +5078,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.CostGraphProtos.internal_static_tensorflow_CostGraphDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -5191,13 +5091,14 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           if (nodeBuilder_ == null) {
             node_ = java.util.Collections.emptyList();
           } else {
    @@ -5238,7 +5139,13 @@ public org.tensorflow.proto.CostGraphDef build() {
         @java.lang.Override
         public org.tensorflow.proto.CostGraphDef buildPartial() {
           org.tensorflow.proto.CostGraphDef result = new org.tensorflow.proto.CostGraphDef(this);
    -      int from_bitField0_ = bitField0_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.CostGraphDef result) {
           if (nodeBuilder_ == null) {
             if (((bitField0_ & 0x00000001) != 0)) {
               node_ = java.util.Collections.unmodifiableList(node_);
    @@ -5257,42 +5164,12 @@ public org.tensorflow.proto.CostGraphDef buildPartial() {
           } else {
             result.cost_ = costBuilder_.build();
           }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.CostGraphDef result) {
    +      int from_bitField0_ = bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.CostGraphDef) {
    @@ -5324,7 +5201,7 @@ public Builder mergeFrom(org.tensorflow.proto.CostGraphDef other) {
                 node_ = other.node_;
                 bitField0_ = (bitField0_ & ~0x00000001);
                 nodeBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getNodeFieldBuilder() : null;
               } else {
                 nodeBuilder_.addAllMessages(other.node_);
    @@ -5350,7 +5227,7 @@ public Builder mergeFrom(org.tensorflow.proto.CostGraphDef other) {
                 cost_ = other.cost_;
                 bitField0_ = (bitField0_ & ~0x00000002);
                 costBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getCostFieldBuilder() : null;
               } else {
                 costBuilder_.addAllMessages(other.cost_);
    @@ -5435,7 +5312,7 @@ private void ensureNodeIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.CostGraphDef.Node, org.tensorflow.proto.CostGraphDef.Node.Builder, org.tensorflow.proto.CostGraphDef.NodeOrBuilder> nodeBuilder_;
     
         /**
    @@ -5651,11 +5528,11 @@ public org.tensorflow.proto.CostGraphDef.Node.Builder addNodeBuilder(
              getNodeBuilderList() {
           return getNodeFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.CostGraphDef.Node, org.tensorflow.proto.CostGraphDef.Node.Builder, org.tensorflow.proto.CostGraphDef.NodeOrBuilder> 
             getNodeFieldBuilder() {
           if (nodeBuilder_ == null) {
    -        nodeBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        nodeBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.CostGraphDef.Node, org.tensorflow.proto.CostGraphDef.Node.Builder, org.tensorflow.proto.CostGraphDef.NodeOrBuilder>(
                     node_,
                     ((bitField0_ & 0x00000001) != 0),
    @@ -5675,7 +5552,7 @@ private void ensureCostIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.CostGraphDef.AggregatedCost, org.tensorflow.proto.CostGraphDef.AggregatedCost.Builder, org.tensorflow.proto.CostGraphDef.AggregatedCostOrBuilder> costBuilder_;
     
         /**
    @@ -5891,11 +5768,11 @@ public org.tensorflow.proto.CostGraphDef.AggregatedCost.Builder addCostBuilder(
              getCostBuilderList() {
           return getCostFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.CostGraphDef.AggregatedCost, org.tensorflow.proto.CostGraphDef.AggregatedCost.Builder, org.tensorflow.proto.CostGraphDef.AggregatedCostOrBuilder> 
             getCostFieldBuilder() {
           if (costBuilder_ == null) {
    -        costBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        costBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.CostGraphDef.AggregatedCost, org.tensorflow.proto.CostGraphDef.AggregatedCost.Builder, org.tensorflow.proto.CostGraphDef.AggregatedCostOrBuilder>(
                     cost_,
                     ((bitField0_ & 0x00000002) != 0),
    @@ -5905,18 +5782,6 @@ public org.tensorflow.proto.CostGraphDef.AggregatedCost.Builder addCostBuilder(
           }
           return costBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.CostGraphDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CostGraphDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CostGraphDefOrBuilder.java
    index cbb8c3fdd3f..ad2f98d6283 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CostGraphDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CostGraphDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/cost_graph.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CostGraphProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CostGraphProtos.java
    index 917ad9e0f2a..b99348c8a2e 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CostGraphProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/CostGraphProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/cost_graph.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class CostGraphProtos {
       private CostGraphProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      CostGraphProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,27 +28,27 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_CostGraphDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_CostGraphDef_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_CostGraphDef_Node_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_CostGraphDef_Node_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_CostGraphDef_Node_InputInfo_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_CostGraphDef_Node_InputInfo_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_CostGraphDef_Node_OutputInfo_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_CostGraphDef_Node_OutputInfo_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_CostGraphDef_AggregatedCost_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_CostGraphDef_AggregatedCost_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -87,33 +98,34 @@ public static void registerAllExtensions(
         internal_static_tensorflow_CostGraphDef_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_CostGraphDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_CostGraphDef_descriptor,
             new java.lang.String[] { "Node", "Cost", });
         internal_static_tensorflow_CostGraphDef_Node_descriptor =
           internal_static_tensorflow_CostGraphDef_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_CostGraphDef_Node_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_CostGraphDef_Node_descriptor,
             new java.lang.String[] { "Name", "Device", "Id", "InputInfo", "OutputInfo", "TemporaryMemorySize", "PersistentMemorySize", "HostTempMemorySize", "DeviceTempMemorySize", "DevicePersistentMemorySize", "ComputeCost", "ComputeTime", "MemoryTime", "IsFinal", "ControlInput", "Inaccurate", });
         internal_static_tensorflow_CostGraphDef_Node_InputInfo_descriptor =
           internal_static_tensorflow_CostGraphDef_Node_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_CostGraphDef_Node_InputInfo_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_CostGraphDef_Node_InputInfo_descriptor,
             new java.lang.String[] { "PrecedingNode", "PrecedingPort", });
         internal_static_tensorflow_CostGraphDef_Node_OutputInfo_descriptor =
           internal_static_tensorflow_CostGraphDef_Node_descriptor.getNestedTypes().get(1);
         internal_static_tensorflow_CostGraphDef_Node_OutputInfo_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_CostGraphDef_Node_OutputInfo_descriptor,
             new java.lang.String[] { "Size", "AliasInputPort", "Shape", "Dtype", });
         internal_static_tensorflow_CostGraphDef_AggregatedCost_descriptor =
           internal_static_tensorflow_CostGraphDef_descriptor.getNestedTypes().get(1);
         internal_static_tensorflow_CostGraphDef_AggregatedCost_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_CostGraphDef_AggregatedCost_descriptor,
             new java.lang.String[] { "Cost", "Dimension", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.TensorShapeProtos.getDescriptor();
         org.tensorflow.proto.TypesProtos.getDescriptor();
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DataClass.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DataClass.java
    index 206e3647457..829ae281b70 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DataClass.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DataClass.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/summary.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -49,6 +51,15 @@ public enum DataClass
       UNRECOGNIZED(-1),
       ;
     
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      DataClass.class.getName());
    +  }
       /**
        * 
        * Unknown data class, used (implicitly) for legacy data. Will not be
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DataType.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DataType.java
    index b6148e7c600..efc05c83db4 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DataType.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DataType.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/types.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -174,12 +176,28 @@ public enum DataType
       /**
        * 
        * 2 NaNs (0bS1111111).
    -   * TODO - b/299182407: Leaving room for remaining float8 types.
    -   * DT_FLOAT8_E4M3FNUZ = 26;
    -   * DT_FLOAT8_E4M3B11FNUZ = 27;
    -   * DT_FLOAT8_E5M2FNUZ = 28;
        * 
    * + * DT_FLOAT8_E4M3FNUZ = 26; + */ + DT_FLOAT8_E4M3FNUZ(26), + /** + *
    +   * with NaN.
    +   * 
    + * + * DT_FLOAT8_E4M3B11FNUZ = 27; + */ + DT_FLOAT8_E4M3B11FNUZ(27), + /** + *
    +   * bias, finite-only, with NaNs.
    +   * 
    + * + * DT_FLOAT8_E5M2FNUZ = 28; + */ + DT_FLOAT8_E5M2FNUZ(28), + /** * DT_INT4 = 29; */ DT_INT4(29), @@ -187,6 +205,14 @@ public enum DataType * DT_UINT4 = 30; */ DT_UINT4(30), + /** + * DT_INT2 = 31; + */ + DT_INT2(31), + /** + * DT_UINT2 = 32; + */ + DT_UINT2(32), /** *
        * Do not use!  These are only for TF1's obsolete reference Variables.
    @@ -294,13 +320,18 @@ public enum DataType
        */
       DT_FLOAT8_E4M3FN_REF(125),
       /**
    -   * 
    -   * TODO - b/299182407: Leaving room for remaining float8 types.
    -   * DT_FLOAT8_E4M3FNUZ_REF = 126;
    -   * DT_FLOAT8_E4M3B11FNUZ_REF = 127;
    -   * DT_FLOAT8_E5M2FNUZ_REF = 128;
    -   * 
    - * + * DT_FLOAT8_E4M3FNUZ_REF = 126; + */ + DT_FLOAT8_E4M3FNUZ_REF(126), + /** + * DT_FLOAT8_E4M3B11FNUZ_REF = 127; + */ + DT_FLOAT8_E4M3B11FNUZ_REF(127), + /** + * DT_FLOAT8_E5M2FNUZ_REF = 128; + */ + DT_FLOAT8_E5M2FNUZ_REF(128), + /** * DT_INT4_REF = 129; */ DT_INT4_REF(129), @@ -308,9 +339,26 @@ public enum DataType * DT_UINT4_REF = 130; */ DT_UINT4_REF(130), + /** + * DT_INT2_REF = 131; + */ + DT_INT2_REF(131), + /** + * DT_UINT2_REF = 132; + */ + DT_UINT2_REF(132), UNRECOGNIZED(-1), ; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + DataType.class.getName()); + } /** *
        * Not a legal value for DataType.  Used to indicate a DataType field
    @@ -472,12 +520,28 @@ public enum DataType
       /**
        * 
        * 2 NaNs (0bS1111111).
    -   * TODO - b/299182407: Leaving room for remaining float8 types.
    -   * DT_FLOAT8_E4M3FNUZ = 26;
    -   * DT_FLOAT8_E4M3B11FNUZ = 27;
    -   * DT_FLOAT8_E5M2FNUZ = 28;
        * 
    * + * DT_FLOAT8_E4M3FNUZ = 26; + */ + public static final int DT_FLOAT8_E4M3FNUZ_VALUE = 26; + /** + *
    +   * with NaN.
    +   * 
    + * + * DT_FLOAT8_E4M3B11FNUZ = 27; + */ + public static final int DT_FLOAT8_E4M3B11FNUZ_VALUE = 27; + /** + *
    +   * bias, finite-only, with NaNs.
    +   * 
    + * + * DT_FLOAT8_E5M2FNUZ = 28; + */ + public static final int DT_FLOAT8_E5M2FNUZ_VALUE = 28; + /** * DT_INT4 = 29; */ public static final int DT_INT4_VALUE = 29; @@ -485,6 +549,14 @@ public enum DataType * DT_UINT4 = 30; */ public static final int DT_UINT4_VALUE = 30; + /** + * DT_INT2 = 31; + */ + public static final int DT_INT2_VALUE = 31; + /** + * DT_UINT2 = 32; + */ + public static final int DT_UINT2_VALUE = 32; /** *
        * Do not use!  These are only for TF1's obsolete reference Variables.
    @@ -592,13 +664,18 @@ public enum DataType
        */
       public static final int DT_FLOAT8_E4M3FN_REF_VALUE = 125;
       /**
    -   * 
    -   * TODO - b/299182407: Leaving room for remaining float8 types.
    -   * DT_FLOAT8_E4M3FNUZ_REF = 126;
    -   * DT_FLOAT8_E4M3B11FNUZ_REF = 127;
    -   * DT_FLOAT8_E5M2FNUZ_REF = 128;
    -   * 
    - * + * DT_FLOAT8_E4M3FNUZ_REF = 126; + */ + public static final int DT_FLOAT8_E4M3FNUZ_REF_VALUE = 126; + /** + * DT_FLOAT8_E4M3B11FNUZ_REF = 127; + */ + public static final int DT_FLOAT8_E4M3B11FNUZ_REF_VALUE = 127; + /** + * DT_FLOAT8_E5M2FNUZ_REF = 128; + */ + public static final int DT_FLOAT8_E5M2FNUZ_REF_VALUE = 128; + /** * DT_INT4_REF = 129; */ public static final int DT_INT4_REF_VALUE = 129; @@ -606,6 +683,14 @@ public enum DataType * DT_UINT4_REF = 130; */ public static final int DT_UINT4_REF_VALUE = 130; + /** + * DT_INT2_REF = 131; + */ + public static final int DT_INT2_REF_VALUE = 131; + /** + * DT_UINT2_REF = 132; + */ + public static final int DT_UINT2_REF_VALUE = 132; public final int getNumber() { @@ -658,8 +743,13 @@ public static DataType forNumber(int value) { case 23: return DT_UINT64; case 24: return DT_FLOAT8_E5M2; case 25: return DT_FLOAT8_E4M3FN; + case 26: return DT_FLOAT8_E4M3FNUZ; + case 27: return DT_FLOAT8_E4M3B11FNUZ; + case 28: return DT_FLOAT8_E5M2FNUZ; case 29: return DT_INT4; case 30: return DT_UINT4; + case 31: return DT_INT2; + case 32: return DT_UINT2; case 101: return DT_FLOAT_REF; case 102: return DT_DOUBLE_REF; case 103: return DT_INT32_REF; @@ -685,8 +775,13 @@ public static DataType forNumber(int value) { case 123: return DT_UINT64_REF; case 124: return DT_FLOAT8_E5M2_REF; case 125: return DT_FLOAT8_E4M3FN_REF; + case 126: return DT_FLOAT8_E4M3FNUZ_REF; + case 127: return DT_FLOAT8_E4M3B11FNUZ_REF; + case 128: return DT_FLOAT8_E5M2FNUZ_REF; case 129: return DT_INT4_REF; case 130: return DT_UINT4_REF; + case 131: return DT_INT2_REF; + case 132: return DT_UINT2_REF; default: return null; } } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugEvent.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugEvent.java index 3abf7ccad39..8b27fc51240 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugEvent.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugEvent.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/debug_event.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -11,36 +13,33 @@ * Protobuf type {@code tensorflow.DebugEvent} */ public final class DebugEvent extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.DebugEvent) DebugEventOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + DebugEvent.class.getName()); + } // Use DebugEvent.newBuilder() to construct. - private DebugEvent(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private DebugEvent(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private DebugEvent() { } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new DebugEvent(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_DebugEvent_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_DebugEvent_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -48,6 +47,7 @@ protected java.lang.Object newInstance( } private int whatCase_ = 0; + @SuppressWarnings("serial") private java.lang.Object what_; public enum WhatCase implements com.google.protobuf.Internal.EnumLite, @@ -103,7 +103,7 @@ public int getNumber() { } public static final int WALL_TIME_FIELD_NUMBER = 1; - private double wallTime_; + private double wallTime_ = 0D; /** *
        * Timestamp in seconds (with microsecond precision).
    @@ -118,7 +118,7 @@ public double getWallTime() {
       }
     
       public static final int STEP_FIELD_NUMBER = 2;
    -  private long step_;
    +  private long step_ = 0L;
       /**
        * 
        * Step of training (if available).
    @@ -594,7 +594,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           output.writeMessage(10, (org.tensorflow.proto.GraphExecutionTrace) what_);
         }
         if (whatCase_ == 11) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 11, what_);
    +      com.google.protobuf.GeneratedMessage.writeString(output, 11, what_);
         }
         if (whatCase_ == 12) {
           output.writeMessage(12, (org.tensorflow.proto.DebuggedDevice) what_);
    @@ -645,7 +645,7 @@ public int getSerializedSize() {
             .computeMessageSize(10, (org.tensorflow.proto.GraphExecutionTrace) what_);
         }
         if (whatCase_ == 11) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(11, what_);
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(11, what_);
         }
         if (whatCase_ == 12) {
           size += com.google.protobuf.CodedOutputStream
    @@ -808,39 +808,41 @@ public static org.tensorflow.proto.DebugEvent parseFrom(
       }
       public static org.tensorflow.proto.DebugEvent parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DebugEvent parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.DebugEvent parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.DebugEvent parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.DebugEvent parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DebugEvent parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -860,7 +862,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -872,7 +874,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.DebugEvent}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.DebugEvent)
           org.tensorflow.proto.DebugEventOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -881,7 +883,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_DebugEvent_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -894,17 +896,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           wallTime_ = 0D;
    -
           step_ = 0L;
    -
           if (debugMetadataBuilder_ != null) {
             debugMetadataBuilder_.clear();
           }
    @@ -957,104 +958,59 @@ public org.tensorflow.proto.DebugEvent build() {
         @java.lang.Override
         public org.tensorflow.proto.DebugEvent buildPartial() {
           org.tensorflow.proto.DebugEvent result = new org.tensorflow.proto.DebugEvent(this);
    -      result.wallTime_ = wallTime_;
    -      result.step_ = step_;
    -      if (whatCase_ == 3) {
    -        if (debugMetadataBuilder_ == null) {
    -          result.what_ = what_;
    -        } else {
    -          result.what_ = debugMetadataBuilder_.build();
    -        }
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      buildPartialOneofs(result);
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartial0(org.tensorflow.proto.DebugEvent result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.wallTime_ = wallTime_;
           }
    -      if (whatCase_ == 4) {
    -        if (sourceFileBuilder_ == null) {
    -          result.what_ = what_;
    -        } else {
    -          result.what_ = sourceFileBuilder_.build();
    -        }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.step_ = step_;
           }
    -      if (whatCase_ == 6) {
    -        if (stackFrameWithIdBuilder_ == null) {
    -          result.what_ = what_;
    -        } else {
    -          result.what_ = stackFrameWithIdBuilder_.build();
    -        }
    +    }
    +
    +    private void buildPartialOneofs(org.tensorflow.proto.DebugEvent result) {
    +      result.whatCase_ = whatCase_;
    +      result.what_ = this.what_;
    +      if (whatCase_ == 3 &&
    +          debugMetadataBuilder_ != null) {
    +        result.what_ = debugMetadataBuilder_.build();
           }
    -      if (whatCase_ == 7) {
    -        if (graphOpCreationBuilder_ == null) {
    -          result.what_ = what_;
    -        } else {
    -          result.what_ = graphOpCreationBuilder_.build();
    -        }
    +      if (whatCase_ == 4 &&
    +          sourceFileBuilder_ != null) {
    +        result.what_ = sourceFileBuilder_.build();
           }
    -      if (whatCase_ == 8) {
    -        if (debuggedGraphBuilder_ == null) {
    -          result.what_ = what_;
    -        } else {
    -          result.what_ = debuggedGraphBuilder_.build();
    -        }
    +      if (whatCase_ == 6 &&
    +          stackFrameWithIdBuilder_ != null) {
    +        result.what_ = stackFrameWithIdBuilder_.build();
           }
    -      if (whatCase_ == 9) {
    -        if (executionBuilder_ == null) {
    -          result.what_ = what_;
    -        } else {
    -          result.what_ = executionBuilder_.build();
    -        }
    +      if (whatCase_ == 7 &&
    +          graphOpCreationBuilder_ != null) {
    +        result.what_ = graphOpCreationBuilder_.build();
           }
    -      if (whatCase_ == 10) {
    -        if (graphExecutionTraceBuilder_ == null) {
    -          result.what_ = what_;
    -        } else {
    -          result.what_ = graphExecutionTraceBuilder_.build();
    -        }
    +      if (whatCase_ == 8 &&
    +          debuggedGraphBuilder_ != null) {
    +        result.what_ = debuggedGraphBuilder_.build();
           }
    -      if (whatCase_ == 11) {
    -        result.what_ = what_;
    +      if (whatCase_ == 9 &&
    +          executionBuilder_ != null) {
    +        result.what_ = executionBuilder_.build();
           }
    -      if (whatCase_ == 12) {
    -        if (debuggedDeviceBuilder_ == null) {
    -          result.what_ = what_;
    -        } else {
    -          result.what_ = debuggedDeviceBuilder_.build();
    -        }
    +      if (whatCase_ == 10 &&
    +          graphExecutionTraceBuilder_ != null) {
    +        result.what_ = graphExecutionTraceBuilder_.build();
    +      }
    +      if (whatCase_ == 12 &&
    +          debuggedDeviceBuilder_ != null) {
    +        result.what_ = debuggedDeviceBuilder_.build();
           }
    -      result.whatCase_ = whatCase_;
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    -    }
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.DebugEvent) {
    @@ -1144,12 +1100,12 @@ public Builder mergeFrom(
                   break;
                 case 9: {
                   wallTime_ = input.readDouble();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 9
                 case 16: {
                   step_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 case 26: {
    @@ -1244,6 +1200,7 @@ public Builder clearWhat() {
           return this;
         }
     
    +    private int bitField0_;
     
         private double wallTime_ ;
         /**
    @@ -1268,8 +1225,9 @@ public double getWallTime() {
          * @return This builder for chaining.
          */
         public Builder setWallTime(double value) {
    -      
    +
           wallTime_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1282,7 +1240,7 @@ public Builder setWallTime(double value) {
          * @return This builder for chaining.
          */
         public Builder clearWallTime() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           wallTime_ = 0D;
           onChanged();
           return this;
    @@ -1311,8 +1269,9 @@ public long getStep() {
          * @return This builder for chaining.
          */
         public Builder setStep(long value) {
    -      
    +
           step_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1325,13 +1284,13 @@ public Builder setStep(long value) {
          * @return This builder for chaining.
          */
         public Builder clearStep() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           step_ = 0L;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.DebugMetadata, org.tensorflow.proto.DebugMetadata.Builder, org.tensorflow.proto.DebugMetadataOrBuilder> debugMetadataBuilder_;
         /**
          * 
    @@ -1490,14 +1449,14 @@ public org.tensorflow.proto.DebugMetadataOrBuilder getDebugMetadataOrBuilder() {
          *
          * .tensorflow.DebugMetadata debug_metadata = 3;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.DebugMetadata, org.tensorflow.proto.DebugMetadata.Builder, org.tensorflow.proto.DebugMetadataOrBuilder> 
             getDebugMetadataFieldBuilder() {
           if (debugMetadataBuilder_ == null) {
             if (!(whatCase_ == 3)) {
               what_ = org.tensorflow.proto.DebugMetadata.getDefaultInstance();
             }
    -        debugMetadataBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        debugMetadataBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.DebugMetadata, org.tensorflow.proto.DebugMetadata.Builder, org.tensorflow.proto.DebugMetadataOrBuilder>(
                     (org.tensorflow.proto.DebugMetadata) what_,
                     getParentForChildren(),
    @@ -1505,11 +1464,11 @@ public org.tensorflow.proto.DebugMetadataOrBuilder getDebugMetadataOrBuilder() {
             what_ = null;
           }
           whatCase_ = 3;
    -      onChanged();;
    +      onChanged();
           return debugMetadataBuilder_;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.SourceFile, org.tensorflow.proto.SourceFile.Builder, org.tensorflow.proto.SourceFileOrBuilder> sourceFileBuilder_;
         /**
          * 
    @@ -1668,14 +1627,14 @@ public org.tensorflow.proto.SourceFileOrBuilder getSourceFileOrBuilder() {
          *
          * .tensorflow.SourceFile source_file = 4;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.SourceFile, org.tensorflow.proto.SourceFile.Builder, org.tensorflow.proto.SourceFileOrBuilder> 
             getSourceFileFieldBuilder() {
           if (sourceFileBuilder_ == null) {
             if (!(whatCase_ == 4)) {
               what_ = org.tensorflow.proto.SourceFile.getDefaultInstance();
             }
    -        sourceFileBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        sourceFileBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.SourceFile, org.tensorflow.proto.SourceFile.Builder, org.tensorflow.proto.SourceFileOrBuilder>(
                     (org.tensorflow.proto.SourceFile) what_,
                     getParentForChildren(),
    @@ -1683,11 +1642,11 @@ public org.tensorflow.proto.SourceFileOrBuilder getSourceFileOrBuilder() {
             what_ = null;
           }
           whatCase_ = 4;
    -      onChanged();;
    +      onChanged();
           return sourceFileBuilder_;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.StackFrameWithId, org.tensorflow.proto.StackFrameWithId.Builder, org.tensorflow.proto.StackFrameWithIdOrBuilder> stackFrameWithIdBuilder_;
         /**
          * 
    @@ -1855,14 +1814,14 @@ public org.tensorflow.proto.StackFrameWithIdOrBuilder getStackFrameWithIdOrBuild
          *
          * .tensorflow.StackFrameWithId stack_frame_with_id = 6;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.StackFrameWithId, org.tensorflow.proto.StackFrameWithId.Builder, org.tensorflow.proto.StackFrameWithIdOrBuilder> 
             getStackFrameWithIdFieldBuilder() {
           if (stackFrameWithIdBuilder_ == null) {
             if (!(whatCase_ == 6)) {
               what_ = org.tensorflow.proto.StackFrameWithId.getDefaultInstance();
             }
    -        stackFrameWithIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        stackFrameWithIdBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.StackFrameWithId, org.tensorflow.proto.StackFrameWithId.Builder, org.tensorflow.proto.StackFrameWithIdOrBuilder>(
                     (org.tensorflow.proto.StackFrameWithId) what_,
                     getParentForChildren(),
    @@ -1870,11 +1829,11 @@ public org.tensorflow.proto.StackFrameWithIdOrBuilder getStackFrameWithIdOrBuild
             what_ = null;
           }
           whatCase_ = 6;
    -      onChanged();;
    +      onChanged();
           return stackFrameWithIdBuilder_;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.GraphOpCreation, org.tensorflow.proto.GraphOpCreation.Builder, org.tensorflow.proto.GraphOpCreationOrBuilder> graphOpCreationBuilder_;
         /**
          * 
    @@ -2042,14 +2001,14 @@ public org.tensorflow.proto.GraphOpCreationOrBuilder getGraphOpCreationOrBuilder
          *
          * .tensorflow.GraphOpCreation graph_op_creation = 7;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.GraphOpCreation, org.tensorflow.proto.GraphOpCreation.Builder, org.tensorflow.proto.GraphOpCreationOrBuilder> 
             getGraphOpCreationFieldBuilder() {
           if (graphOpCreationBuilder_ == null) {
             if (!(whatCase_ == 7)) {
               what_ = org.tensorflow.proto.GraphOpCreation.getDefaultInstance();
             }
    -        graphOpCreationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        graphOpCreationBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.GraphOpCreation, org.tensorflow.proto.GraphOpCreation.Builder, org.tensorflow.proto.GraphOpCreationOrBuilder>(
                     (org.tensorflow.proto.GraphOpCreation) what_,
                     getParentForChildren(),
    @@ -2057,11 +2016,11 @@ public org.tensorflow.proto.GraphOpCreationOrBuilder getGraphOpCreationOrBuilder
             what_ = null;
           }
           whatCase_ = 7;
    -      onChanged();;
    +      onChanged();
           return graphOpCreationBuilder_;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.DebuggedGraph, org.tensorflow.proto.DebuggedGraph.Builder, org.tensorflow.proto.DebuggedGraphOrBuilder> debuggedGraphBuilder_;
         /**
          * 
    @@ -2220,14 +2179,14 @@ public org.tensorflow.proto.DebuggedGraphOrBuilder getDebuggedGraphOrBuilder() {
          *
          * .tensorflow.DebuggedGraph debugged_graph = 8;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.DebuggedGraph, org.tensorflow.proto.DebuggedGraph.Builder, org.tensorflow.proto.DebuggedGraphOrBuilder> 
             getDebuggedGraphFieldBuilder() {
           if (debuggedGraphBuilder_ == null) {
             if (!(whatCase_ == 8)) {
               what_ = org.tensorflow.proto.DebuggedGraph.getDefaultInstance();
             }
    -        debuggedGraphBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        debuggedGraphBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.DebuggedGraph, org.tensorflow.proto.DebuggedGraph.Builder, org.tensorflow.proto.DebuggedGraphOrBuilder>(
                     (org.tensorflow.proto.DebuggedGraph) what_,
                     getParentForChildren(),
    @@ -2235,11 +2194,11 @@ public org.tensorflow.proto.DebuggedGraphOrBuilder getDebuggedGraphOrBuilder() {
             what_ = null;
           }
           whatCase_ = 8;
    -      onChanged();;
    +      onChanged();
           return debuggedGraphBuilder_;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.Execution, org.tensorflow.proto.Execution.Builder, org.tensorflow.proto.ExecutionOrBuilder> executionBuilder_;
         /**
          * 
    @@ -2398,14 +2357,14 @@ public org.tensorflow.proto.ExecutionOrBuilder getExecutionOrBuilder() {
          *
          * .tensorflow.Execution execution = 9;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.Execution, org.tensorflow.proto.Execution.Builder, org.tensorflow.proto.ExecutionOrBuilder> 
             getExecutionFieldBuilder() {
           if (executionBuilder_ == null) {
             if (!(whatCase_ == 9)) {
               what_ = org.tensorflow.proto.Execution.getDefaultInstance();
             }
    -        executionBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        executionBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.Execution, org.tensorflow.proto.Execution.Builder, org.tensorflow.proto.ExecutionOrBuilder>(
                     (org.tensorflow.proto.Execution) what_,
                     getParentForChildren(),
    @@ -2413,11 +2372,11 @@ public org.tensorflow.proto.ExecutionOrBuilder getExecutionOrBuilder() {
             what_ = null;
           }
           whatCase_ = 9;
    -      onChanged();;
    +      onChanged();
           return executionBuilder_;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.GraphExecutionTrace, org.tensorflow.proto.GraphExecutionTrace.Builder, org.tensorflow.proto.GraphExecutionTraceOrBuilder> graphExecutionTraceBuilder_;
         /**
          * 
    @@ -2585,14 +2544,14 @@ public org.tensorflow.proto.GraphExecutionTraceOrBuilder getGraphExecutionTraceO
          *
          * .tensorflow.GraphExecutionTrace graph_execution_trace = 10;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.GraphExecutionTrace, org.tensorflow.proto.GraphExecutionTrace.Builder, org.tensorflow.proto.GraphExecutionTraceOrBuilder> 
             getGraphExecutionTraceFieldBuilder() {
           if (graphExecutionTraceBuilder_ == null) {
             if (!(whatCase_ == 10)) {
               what_ = org.tensorflow.proto.GraphExecutionTrace.getDefaultInstance();
             }
    -        graphExecutionTraceBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        graphExecutionTraceBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.GraphExecutionTrace, org.tensorflow.proto.GraphExecutionTrace.Builder, org.tensorflow.proto.GraphExecutionTraceOrBuilder>(
                     (org.tensorflow.proto.GraphExecutionTrace) what_,
                     getParentForChildren(),
    @@ -2600,7 +2559,7 @@ public org.tensorflow.proto.GraphExecutionTraceOrBuilder getGraphExecutionTraceO
             what_ = null;
           }
           whatCase_ = 10;
    -      onChanged();;
    +      onChanged();
           return graphExecutionTraceBuilder_;
         }
     
    @@ -2684,10 +2643,8 @@ public java.lang.String getGraphId() {
          */
         public Builder setGraphId(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  whatCase_ = 11;
    +      if (value == null) { throw new NullPointerException(); }
    +      whatCase_ = 11;
           what_ = value;
           onChanged();
           return this;
    @@ -2721,17 +2678,15 @@ public Builder clearGraphId() {
          */
         public Builder setGraphIdBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           whatCase_ = 11;
           what_ = value;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.DebuggedDevice, org.tensorflow.proto.DebuggedDevice.Builder, org.tensorflow.proto.DebuggedDeviceOrBuilder> debuggedDeviceBuilder_;
         /**
          * 
    @@ -2890,14 +2845,14 @@ public org.tensorflow.proto.DebuggedDeviceOrBuilder getDebuggedDeviceOrBuilder()
          *
          * .tensorflow.DebuggedDevice debugged_device = 12;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.DebuggedDevice, org.tensorflow.proto.DebuggedDevice.Builder, org.tensorflow.proto.DebuggedDeviceOrBuilder> 
             getDebuggedDeviceFieldBuilder() {
           if (debuggedDeviceBuilder_ == null) {
             if (!(whatCase_ == 12)) {
               what_ = org.tensorflow.proto.DebuggedDevice.getDefaultInstance();
             }
    -        debuggedDeviceBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        debuggedDeviceBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.DebuggedDevice, org.tensorflow.proto.DebuggedDevice.Builder, org.tensorflow.proto.DebuggedDeviceOrBuilder>(
                     (org.tensorflow.proto.DebuggedDevice) what_,
                     getParentForChildren(),
    @@ -2905,21 +2860,9 @@ public org.tensorflow.proto.DebuggedDeviceOrBuilder getDebuggedDeviceOrBuilder()
             what_ = null;
           }
           whatCase_ = 12;
    -      onChanged();;
    +      onChanged();
           return debuggedDeviceBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.DebugEvent)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugEventOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugEventOrBuilder.java
    index b50c80cb5bd..1b36f8a0ba4 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugEventOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugEventOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug_event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -284,5 +286,5 @@ public interface DebugEventOrBuilder extends
        */
       org.tensorflow.proto.DebuggedDeviceOrBuilder getDebuggedDeviceOrBuilder();
     
    -  public org.tensorflow.proto.DebugEvent.WhatCase getWhatCase();
    +  org.tensorflow.proto.DebugEvent.WhatCase getWhatCase();
     }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugEventProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugEventProtos.java
    index 76475865cbd..1c92bcac9f3 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugEventProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugEventProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug_event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class DebugEventProtos {
       private DebugEventProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      DebugEventProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,52 +28,52 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_DebugEvent_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_DebugEvent_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_DebugMetadata_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_DebugMetadata_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SourceFile_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SourceFile_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_StackFrameWithId_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_StackFrameWithId_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_CodeLocation_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_CodeLocation_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_GraphOpCreation_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_GraphOpCreation_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_DebuggedGraph_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_DebuggedGraph_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_DebuggedDevice_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_DebuggedDevice_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_Execution_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_Execution_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_GraphExecutionTrace_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_GraphExecutionTrace_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -140,63 +151,64 @@ public static void registerAllExtensions(
         internal_static_tensorflow_DebugEvent_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_DebugEvent_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_DebugEvent_descriptor,
             new java.lang.String[] { "WallTime", "Step", "DebugMetadata", "SourceFile", "StackFrameWithId", "GraphOpCreation", "DebuggedGraph", "Execution", "GraphExecutionTrace", "GraphId", "DebuggedDevice", "What", });
         internal_static_tensorflow_DebugMetadata_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_DebugMetadata_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_DebugMetadata_descriptor,
             new java.lang.String[] { "TensorflowVersion", "FileVersion", "TfdbgRunId", });
         internal_static_tensorflow_SourceFile_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_SourceFile_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SourceFile_descriptor,
             new java.lang.String[] { "FilePath", "HostName", "Lines", });
         internal_static_tensorflow_StackFrameWithId_descriptor =
           getDescriptor().getMessageTypes().get(3);
         internal_static_tensorflow_StackFrameWithId_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_StackFrameWithId_descriptor,
             new java.lang.String[] { "Id", "FileLineCol", });
         internal_static_tensorflow_CodeLocation_descriptor =
           getDescriptor().getMessageTypes().get(4);
         internal_static_tensorflow_CodeLocation_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_CodeLocation_descriptor,
             new java.lang.String[] { "HostName", "StackFrameIds", });
         internal_static_tensorflow_GraphOpCreation_descriptor =
           getDescriptor().getMessageTypes().get(5);
         internal_static_tensorflow_GraphOpCreation_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_GraphOpCreation_descriptor,
             new java.lang.String[] { "OpType", "OpName", "GraphName", "GraphId", "DeviceName", "InputNames", "NumOutputs", "CodeLocation", "OutputTensorIds", });
         internal_static_tensorflow_DebuggedGraph_descriptor =
           getDescriptor().getMessageTypes().get(6);
         internal_static_tensorflow_DebuggedGraph_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_DebuggedGraph_descriptor,
             new java.lang.String[] { "GraphId", "GraphName", "InstrumentedOps", "OriginalGraphDef", "InstrumentedGraphDef", "OuterContextId", });
         internal_static_tensorflow_DebuggedDevice_descriptor =
           getDescriptor().getMessageTypes().get(7);
         internal_static_tensorflow_DebuggedDevice_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_DebuggedDevice_descriptor,
             new java.lang.String[] { "DeviceName", "DeviceId", });
         internal_static_tensorflow_Execution_descriptor =
           getDescriptor().getMessageTypes().get(8);
         internal_static_tensorflow_Execution_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_Execution_descriptor,
             new java.lang.String[] { "OpType", "NumOutputs", "GraphId", "InputTensorIds", "OutputTensorIds", "TensorDebugMode", "TensorProtos", "CodeLocation", "OutputTensorDeviceIds", });
         internal_static_tensorflow_GraphExecutionTrace_descriptor =
           getDescriptor().getMessageTypes().get(9);
         internal_static_tensorflow_GraphExecutionTrace_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_GraphExecutionTrace_descriptor,
             new java.lang.String[] { "TfdbgContextId", "OpName", "OutputSlot", "TensorDebugMode", "TensorProto", "DeviceName", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.GraphDebugInfoProtos.getDescriptor();
         org.tensorflow.proto.TensorProtos.getDescriptor();
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugMetadata.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugMetadata.java
    index 5011c29198b..8f70d7c9067 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugMetadata.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugMetadata.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug_event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,12 +13,21 @@
      * Protobuf type {@code tensorflow.DebugMetadata}
      */
     public final class DebugMetadata extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.DebugMetadata)
         DebugMetadataOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      DebugMetadata.class.getName());
    +  }
       // Use DebugMetadata.newBuilder() to construct.
    -  private DebugMetadata(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private DebugMetadata(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private DebugMetadata() {
    @@ -25,25 +36,13 @@ private DebugMetadata() {
         tfdbgRunId_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new DebugMetadata();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_DebugMetadata_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_DebugMetadata_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -51,7 +50,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int TENSORFLOW_VERSION_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object tensorflowVersion_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object tensorflowVersion_ = "";
       /**
        * 
        * Version of TensorFlow.
    @@ -97,7 +97,8 @@ public java.lang.String getTensorflowVersion() {
       }
     
       public static final int FILE_VERSION_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object fileVersion_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object fileVersion_ = "";
       /**
        * 
        * Version of the DebugEvent file format.
    @@ -145,7 +146,8 @@ public java.lang.String getFileVersion() {
       }
     
       public static final int TFDBG_RUN_ID_FIELD_NUMBER = 3;
    -  private volatile java.lang.Object tfdbgRunId_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object tfdbgRunId_ = "";
       /**
        * 
        * A unique ID for the current run of tfdbg.
    @@ -210,14 +212,14 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tensorflowVersion_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, tensorflowVersion_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(tensorflowVersion_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, tensorflowVersion_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(fileVersion_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, fileVersion_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(fileVersion_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, fileVersion_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tfdbgRunId_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, tfdbgRunId_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(tfdbgRunId_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, tfdbgRunId_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -228,14 +230,14 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tensorflowVersion_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, tensorflowVersion_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(tensorflowVersion_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, tensorflowVersion_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(fileVersion_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, fileVersion_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(fileVersion_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, fileVersion_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tfdbgRunId_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, tfdbgRunId_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(tfdbgRunId_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, tfdbgRunId_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -314,39 +316,41 @@ public static org.tensorflow.proto.DebugMetadata parseFrom(
       }
       public static org.tensorflow.proto.DebugMetadata parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DebugMetadata parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.DebugMetadata parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.DebugMetadata parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.DebugMetadata parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DebugMetadata parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -366,7 +370,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -378,7 +382,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.DebugMetadata}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.DebugMetadata)
           org.tensorflow.proto.DebugMetadataOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -387,7 +391,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_DebugMetadata_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -400,19 +404,17 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           tensorflowVersion_ = "";
    -
           fileVersion_ = "";
    -
           tfdbgRunId_ = "";
    -
           return this;
         }
     
    @@ -439,45 +441,24 @@ public org.tensorflow.proto.DebugMetadata build() {
         @java.lang.Override
         public org.tensorflow.proto.DebugMetadata buildPartial() {
           org.tensorflow.proto.DebugMetadata result = new org.tensorflow.proto.DebugMetadata(this);
    -      result.tensorflowVersion_ = tensorflowVersion_;
    -      result.fileVersion_ = fileVersion_;
    -      result.tfdbgRunId_ = tfdbgRunId_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.DebugMetadata result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.tensorflowVersion_ = tensorflowVersion_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.fileVersion_ = fileVersion_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.tfdbgRunId_ = tfdbgRunId_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.DebugMetadata) {
    @@ -492,14 +473,17 @@ public Builder mergeFrom(org.tensorflow.proto.DebugMetadata other) {
           if (other == org.tensorflow.proto.DebugMetadata.getDefaultInstance()) return this;
           if (!other.getTensorflowVersion().isEmpty()) {
             tensorflowVersion_ = other.tensorflowVersion_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getFileVersion().isEmpty()) {
             fileVersion_ = other.fileVersion_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (!other.getTfdbgRunId().isEmpty()) {
             tfdbgRunId_ = other.tfdbgRunId_;
    +        bitField0_ |= 0x00000004;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -530,17 +514,17 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   tensorflowVersion_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   fileVersion_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
                   tfdbgRunId_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 default: {
    @@ -558,6 +542,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object tensorflowVersion_ = "";
         /**
    @@ -612,11 +597,9 @@ public java.lang.String getTensorflowVersion() {
          */
         public Builder setTensorflowVersion(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           tensorflowVersion_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -629,8 +612,8 @@ public Builder setTensorflowVersion(
          * @return This builder for chaining.
          */
         public Builder clearTensorflowVersion() {
    -      
           tensorflowVersion_ = getDefaultInstance().getTensorflowVersion();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -645,12 +628,10 @@ public Builder clearTensorflowVersion() {
          */
         public Builder setTensorflowVersionBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           tensorflowVersion_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -711,11 +692,9 @@ public java.lang.String getFileVersion() {
          */
         public Builder setFileVersion(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           fileVersion_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -729,8 +708,8 @@ public Builder setFileVersion(
          * @return This builder for chaining.
          */
         public Builder clearFileVersion() {
    -      
           fileVersion_ = getDefaultInstance().getFileVersion();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -746,12 +725,10 @@ public Builder clearFileVersion() {
          */
         public Builder setFileVersionBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           fileVersion_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -818,11 +795,9 @@ public java.lang.String getTfdbgRunId() {
          */
         public Builder setTfdbgRunId(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           tfdbgRunId_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -838,8 +813,8 @@ public Builder setTfdbgRunId(
          * @return This builder for chaining.
          */
         public Builder clearTfdbgRunId() {
    -      
           tfdbgRunId_ = getDefaultInstance().getTfdbgRunId();
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -857,27 +832,13 @@ public Builder clearTfdbgRunId() {
          */
         public Builder setTfdbgRunIdBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           tfdbgRunId_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.DebugMetadata)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugMetadataOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugMetadataOrBuilder.java
    index cc682b4fa75..20d753b7194 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugMetadataOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugMetadataOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug_event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugOptions.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugOptions.java
    index 2505c073620..2e7f0fdfeda 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugOptions.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugOptions.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,37 +13,34 @@
      * Protobuf type {@code tensorflow.DebugOptions}
      */
     public final class DebugOptions extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.DebugOptions)
         DebugOptionsOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      DebugOptions.class.getName());
    +  }
       // Use DebugOptions.newBuilder() to construct.
    -  private DebugOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private DebugOptions(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private DebugOptions() {
         debugTensorWatchOpts_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new DebugOptions();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.DebugProtos.internal_static_tensorflow_DebugOptions_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.DebugProtos.internal_static_tensorflow_DebugOptions_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -49,6 +48,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int DEBUG_TENSOR_WATCH_OPTS_FIELD_NUMBER = 4;
    +  @SuppressWarnings("serial")
       private java.util.List debugTensorWatchOpts_;
       /**
        * 
    @@ -109,7 +109,7 @@ public org.tensorflow.proto.DebugTensorWatchOrBuilder getDebugTensorWatchOptsOrB
       }
     
       public static final int GLOBAL_STEP_FIELD_NUMBER = 10;
    -  private long globalStep_;
    +  private long globalStep_ = 0L;
       /**
        * 
        * Caller-specified global step count.
    @@ -126,7 +126,7 @@ public long getGlobalStep() {
       }
     
       public static final int RESET_DISK_BYTE_USAGE_FIELD_NUMBER = 11;
    -  private boolean resetDiskByteUsage_;
    +  private boolean resetDiskByteUsage_ = false;
       /**
        * 
        * Whether the total disk usage of tfdbg is to be reset to zero
    @@ -268,39 +268,41 @@ public static org.tensorflow.proto.DebugOptions parseFrom(
       }
       public static org.tensorflow.proto.DebugOptions parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DebugOptions parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.DebugOptions parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.DebugOptions parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.DebugOptions parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DebugOptions parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -320,7 +322,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -332,7 +334,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.DebugOptions}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.DebugOptions)
           org.tensorflow.proto.DebugOptionsOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -341,7 +343,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DebugProtos.internal_static_tensorflow_DebugOptions_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -354,13 +356,14 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           if (debugTensorWatchOptsBuilder_ == null) {
             debugTensorWatchOpts_ = java.util.Collections.emptyList();
           } else {
    @@ -369,9 +372,7 @@ public Builder clear() {
           }
           bitField0_ = (bitField0_ & ~0x00000001);
           globalStep_ = 0L;
    -
           resetDiskByteUsage_ = false;
    -
           return this;
         }
     
    @@ -398,7 +399,13 @@ public org.tensorflow.proto.DebugOptions build() {
         @java.lang.Override
         public org.tensorflow.proto.DebugOptions buildPartial() {
           org.tensorflow.proto.DebugOptions result = new org.tensorflow.proto.DebugOptions(this);
    -      int from_bitField0_ = bitField0_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.DebugOptions result) {
           if (debugTensorWatchOptsBuilder_ == null) {
             if (((bitField0_ & 0x00000001) != 0)) {
               debugTensorWatchOpts_ = java.util.Collections.unmodifiableList(debugTensorWatchOpts_);
    @@ -408,44 +415,18 @@ public org.tensorflow.proto.DebugOptions buildPartial() {
           } else {
             result.debugTensorWatchOpts_ = debugTensorWatchOptsBuilder_.build();
           }
    -      result.globalStep_ = globalStep_;
    -      result.resetDiskByteUsage_ = resetDiskByteUsage_;
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.DebugOptions result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.globalStep_ = globalStep_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.resetDiskByteUsage_ = resetDiskByteUsage_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.DebugOptions) {
    @@ -477,7 +458,7 @@ public Builder mergeFrom(org.tensorflow.proto.DebugOptions other) {
                 debugTensorWatchOpts_ = other.debugTensorWatchOpts_;
                 bitField0_ = (bitField0_ & ~0x00000001);
                 debugTensorWatchOptsBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getDebugTensorWatchOptsFieldBuilder() : null;
               } else {
                 debugTensorWatchOptsBuilder_.addAllMessages(other.debugTensorWatchOpts_);
    @@ -531,12 +512,12 @@ public Builder mergeFrom(
                 } // case 34
                 case 80: {
                   globalStep_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 80
                 case 88: {
                   resetDiskByteUsage_ = input.readBool();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 88
                 default: {
    @@ -565,7 +546,7 @@ private void ensureDebugTensorWatchOptsIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.DebugTensorWatch, org.tensorflow.proto.DebugTensorWatch.Builder, org.tensorflow.proto.DebugTensorWatchOrBuilder> debugTensorWatchOptsBuilder_;
     
         /**
    @@ -853,11 +834,11 @@ public org.tensorflow.proto.DebugTensorWatch.Builder addDebugTensorWatchOptsBuil
              getDebugTensorWatchOptsBuilderList() {
           return getDebugTensorWatchOptsFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.DebugTensorWatch, org.tensorflow.proto.DebugTensorWatch.Builder, org.tensorflow.proto.DebugTensorWatchOrBuilder> 
             getDebugTensorWatchOptsFieldBuilder() {
           if (debugTensorWatchOptsBuilder_ == null) {
    -        debugTensorWatchOptsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        debugTensorWatchOptsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.DebugTensorWatch, org.tensorflow.proto.DebugTensorWatch.Builder, org.tensorflow.proto.DebugTensorWatchOrBuilder>(
                     debugTensorWatchOpts_,
                     ((bitField0_ & 0x00000001) != 0),
    @@ -895,8 +876,9 @@ public long getGlobalStep() {
          * @return This builder for chaining.
          */
         public Builder setGlobalStep(long value) {
    -      
    +
           globalStep_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -911,7 +893,7 @@ public Builder setGlobalStep(long value) {
          * @return This builder for chaining.
          */
         public Builder clearGlobalStep() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           globalStep_ = 0L;
           onChanged();
           return this;
    @@ -946,8 +928,9 @@ public boolean getResetDiskByteUsage() {
          * @return This builder for chaining.
          */
         public Builder setResetDiskByteUsage(boolean value) {
    -      
    +
           resetDiskByteUsage_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -963,23 +946,11 @@ public Builder setResetDiskByteUsage(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearResetDiskByteUsage() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           resetDiskByteUsage_ = false;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.DebugOptions)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugOptionsOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugOptionsOrBuilder.java
    index 6ab43626e54..ac859a7de1d 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugOptionsOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugOptionsOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugProtos.java
    index 59e7c11fbef..ca250aff759 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class DebugProtos {
       private DebugProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      DebugProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,22 +28,22 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_DebugTensorWatch_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_DebugTensorWatch_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_DebugOptions_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_DebugOptions_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_DebuggedSourceFile_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_DebuggedSourceFile_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_DebuggedSourceFiles_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_DebuggedSourceFiles_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -68,27 +79,28 @@ public static void registerAllExtensions(
         internal_static_tensorflow_DebugTensorWatch_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_DebugTensorWatch_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_DebugTensorWatch_descriptor,
             new java.lang.String[] { "NodeName", "OutputSlot", "DebugOps", "DebugUrls", "TolerateDebugOpCreationFailures", });
         internal_static_tensorflow_DebugOptions_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_DebugOptions_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_DebugOptions_descriptor,
             new java.lang.String[] { "DebugTensorWatchOpts", "GlobalStep", "ResetDiskByteUsage", });
         internal_static_tensorflow_DebuggedSourceFile_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_DebuggedSourceFile_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_DebuggedSourceFile_descriptor,
             new java.lang.String[] { "Host", "FilePath", "LastModified", "Bytes", "Lines", });
         internal_static_tensorflow_DebuggedSourceFiles_descriptor =
           getDescriptor().getMessageTypes().get(3);
         internal_static_tensorflow_DebuggedSourceFiles_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_DebuggedSourceFiles_descriptor,
             new java.lang.String[] { "SourceFiles", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugTensorWatch.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugTensorWatch.java
    index 660f78682c7..e1fc459a203 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugTensorWatch.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugTensorWatch.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,39 +13,38 @@
      * Protobuf type {@code tensorflow.DebugTensorWatch}
      */
     public final class DebugTensorWatch extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.DebugTensorWatch)
         DebugTensorWatchOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      DebugTensorWatch.class.getName());
    +  }
       // Use DebugTensorWatch.newBuilder() to construct.
    -  private DebugTensorWatch(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private DebugTensorWatch(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private DebugTensorWatch() {
         nodeName_ = "";
    -    debugOps_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -    debugUrls_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    debugOps_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +    debugUrls_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new DebugTensorWatch();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.DebugProtos.internal_static_tensorflow_DebugTensorWatch_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.DebugProtos.internal_static_tensorflow_DebugTensorWatch_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -51,7 +52,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int NODE_NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object nodeName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object nodeName_ = "";
       /**
        * 
        * Name of the node to watch.
    @@ -101,7 +103,7 @@ public java.lang.String getNodeName() {
       }
     
       public static final int OUTPUT_SLOT_FIELD_NUMBER = 2;
    -  private int outputSlot_;
    +  private int outputSlot_ = 0;
       /**
        * 
        * Output slot to watch.
    @@ -120,7 +122,9 @@ public int getOutputSlot() {
       }
     
       public static final int DEBUG_OPS_FIELD_NUMBER = 3;
    -  private com.google.protobuf.LazyStringList debugOps_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList debugOps_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * Name(s) of the debugging op(s).
    @@ -179,20 +183,25 @@ public java.lang.String getDebugOps(int index) {
       }
     
       public static final int DEBUG_URLS_FIELD_NUMBER = 4;
    -  private com.google.protobuf.LazyStringList debugUrls_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList debugUrls_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * URL(s) for debug targets(s).
    +   *
        * Supported URL formats are:
    -   *   - file:///foo/tfdbg_dump: Writes out Event content to file
    -   *     /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    -   *     already exist.
    -   *   - grpc://localhost:11011: Sends an RPC request to an EventListener
    -   *     service running at localhost:11011 with the event.
    -   *   - memcbk:///event_key: Routes tensors to clients using the
    -   *     callback registered with the DebugCallbackRegistry for event_key.
    +   * - file:///foo/tfdbg_dump: Writes out Event content to file
    +   * /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    +   * already exist.
    +   * - grpc://localhost:11011: Sends an RPC request to an EventListener
    +   * service running at localhost:11011 with the event.
    +   * - memcbk:///event_key: Routes tensors to clients using the
    +   * callback registered with the DebugCallbackRegistry for event_key.
    +   *
        * Each debug op listed in debug_ops will publish its output tensor (debug
        * signal) to all URLs in debug_urls.
    +   *
        * N.B. Session::Run() supports concurrent invocations of the same inputs
        * (feed keys), outputs and target nodes. If such concurrent invocations
        * are to be debugged, the callers of Session::Run() must use distinct
    @@ -211,16 +220,19 @@ public java.lang.String getDebugOps(int index) {
       /**
        * 
        * URL(s) for debug targets(s).
    +   *
        * Supported URL formats are:
    -   *   - file:///foo/tfdbg_dump: Writes out Event content to file
    -   *     /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    -   *     already exist.
    -   *   - grpc://localhost:11011: Sends an RPC request to an EventListener
    -   *     service running at localhost:11011 with the event.
    -   *   - memcbk:///event_key: Routes tensors to clients using the
    -   *     callback registered with the DebugCallbackRegistry for event_key.
    +   * - file:///foo/tfdbg_dump: Writes out Event content to file
    +   * /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    +   * already exist.
    +   * - grpc://localhost:11011: Sends an RPC request to an EventListener
    +   * service running at localhost:11011 with the event.
    +   * - memcbk:///event_key: Routes tensors to clients using the
    +   * callback registered with the DebugCallbackRegistry for event_key.
    +   *
        * Each debug op listed in debug_ops will publish its output tensor (debug
        * signal) to all URLs in debug_urls.
    +   *
        * N.B. Session::Run() supports concurrent invocations of the same inputs
        * (feed keys), outputs and target nodes. If such concurrent invocations
        * are to be debugged, the callers of Session::Run() must use distinct
    @@ -238,16 +250,19 @@ public int getDebugUrlsCount() {
       /**
        * 
        * URL(s) for debug targets(s).
    +   *
        * Supported URL formats are:
    -   *   - file:///foo/tfdbg_dump: Writes out Event content to file
    -   *     /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    -   *     already exist.
    -   *   - grpc://localhost:11011: Sends an RPC request to an EventListener
    -   *     service running at localhost:11011 with the event.
    -   *   - memcbk:///event_key: Routes tensors to clients using the
    -   *     callback registered with the DebugCallbackRegistry for event_key.
    +   * - file:///foo/tfdbg_dump: Writes out Event content to file
    +   * /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    +   * already exist.
    +   * - grpc://localhost:11011: Sends an RPC request to an EventListener
    +   * service running at localhost:11011 with the event.
    +   * - memcbk:///event_key: Routes tensors to clients using the
    +   * callback registered with the DebugCallbackRegistry for event_key.
    +   *
        * Each debug op listed in debug_ops will publish its output tensor (debug
        * signal) to all URLs in debug_urls.
    +   *
        * N.B. Session::Run() supports concurrent invocations of the same inputs
        * (feed keys), outputs and target nodes. If such concurrent invocations
        * are to be debugged, the callers of Session::Run() must use distinct
    @@ -266,16 +281,19 @@ public java.lang.String getDebugUrls(int index) {
       /**
        * 
        * URL(s) for debug targets(s).
    +   *
        * Supported URL formats are:
    -   *   - file:///foo/tfdbg_dump: Writes out Event content to file
    -   *     /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    -   *     already exist.
    -   *   - grpc://localhost:11011: Sends an RPC request to an EventListener
    -   *     service running at localhost:11011 with the event.
    -   *   - memcbk:///event_key: Routes tensors to clients using the
    -   *     callback registered with the DebugCallbackRegistry for event_key.
    +   * - file:///foo/tfdbg_dump: Writes out Event content to file
    +   * /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    +   * already exist.
    +   * - grpc://localhost:11011: Sends an RPC request to an EventListener
    +   * service running at localhost:11011 with the event.
    +   * - memcbk:///event_key: Routes tensors to clients using the
    +   * callback registered with the DebugCallbackRegistry for event_key.
    +   *
        * Each debug op listed in debug_ops will publish its output tensor (debug
        * signal) to all URLs in debug_urls.
    +   *
        * N.B. Session::Run() supports concurrent invocations of the same inputs
        * (feed keys), outputs and target nodes. If such concurrent invocations
        * are to be debugged, the callers of Session::Run() must use distinct
    @@ -294,7 +312,7 @@ public java.lang.String getDebugUrls(int index) {
       }
     
       public static final int TOLERATE_DEBUG_OP_CREATION_FAILURES_FIELD_NUMBER = 5;
    -  private boolean tolerateDebugOpCreationFailures_;
    +  private boolean tolerateDebugOpCreationFailures_ = false;
       /**
        * 
        * Do not error out if debug op creation fails (e.g., due to dtype
    @@ -323,17 +341,17 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nodeName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, nodeName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(nodeName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, nodeName_);
         }
         if (outputSlot_ != 0) {
           output.writeInt32(2, outputSlot_);
         }
         for (int i = 0; i < debugOps_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, debugOps_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, debugOps_.getRaw(i));
         }
         for (int i = 0; i < debugUrls_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 4, debugUrls_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 4, debugUrls_.getRaw(i));
         }
         if (tolerateDebugOpCreationFailures_ != false) {
           output.writeBool(5, tolerateDebugOpCreationFailures_);
    @@ -347,8 +365,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nodeName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, nodeName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(nodeName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, nodeName_);
         }
         if (outputSlot_ != 0) {
           size += com.google.protobuf.CodedOutputStream
    @@ -464,39 +482,41 @@ public static org.tensorflow.proto.DebugTensorWatch parseFrom(
       }
       public static org.tensorflow.proto.DebugTensorWatch parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DebugTensorWatch parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.DebugTensorWatch parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.DebugTensorWatch parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.DebugTensorWatch parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DebugTensorWatch parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -516,7 +536,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -528,7 +548,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.DebugTensorWatch}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.DebugTensorWatch)
           org.tensorflow.proto.DebugTensorWatchOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -537,7 +557,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DebugProtos.internal_static_tensorflow_DebugTensorWatch_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -550,23 +570,21 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           nodeName_ = "";
    -
           outputSlot_ = 0;
    -
    -      debugOps_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    -      debugUrls_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000002);
    +      debugOps_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
    +      debugUrls_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           tolerateDebugOpCreationFailures_ = false;
    -
           return this;
         }
     
    @@ -593,56 +611,32 @@ public org.tensorflow.proto.DebugTensorWatch build() {
         @java.lang.Override
         public org.tensorflow.proto.DebugTensorWatch buildPartial() {
           org.tensorflow.proto.DebugTensorWatch result = new org.tensorflow.proto.DebugTensorWatch(this);
    -      int from_bitField0_ = bitField0_;
    -      result.nodeName_ = nodeName_;
    -      result.outputSlot_ = outputSlot_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        debugOps_ = debugOps_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.debugOps_ = debugOps_;
    -      if (((bitField0_ & 0x00000002) != 0)) {
    -        debugUrls_ = debugUrls_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000002);
    -      }
    -      result.debugUrls_ = debugUrls_;
    -      result.tolerateDebugOpCreationFailures_ = tolerateDebugOpCreationFailures_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.DebugTensorWatch result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.nodeName_ = nodeName_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.outputSlot_ = outputSlot_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        debugOps_.makeImmutable();
    +        result.debugOps_ = debugOps_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        debugUrls_.makeImmutable();
    +        result.debugUrls_ = debugUrls_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.tolerateDebugOpCreationFailures_ = tolerateDebugOpCreationFailures_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.DebugTensorWatch) {
    @@ -657,6 +651,7 @@ public Builder mergeFrom(org.tensorflow.proto.DebugTensorWatch other) {
           if (other == org.tensorflow.proto.DebugTensorWatch.getDefaultInstance()) return this;
           if (!other.getNodeName().isEmpty()) {
             nodeName_ = other.nodeName_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (other.getOutputSlot() != 0) {
    @@ -665,7 +660,7 @@ public Builder mergeFrom(org.tensorflow.proto.DebugTensorWatch other) {
           if (!other.debugOps_.isEmpty()) {
             if (debugOps_.isEmpty()) {
               debugOps_ = other.debugOps_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ |= 0x00000004;
             } else {
               ensureDebugOpsIsMutable();
               debugOps_.addAll(other.debugOps_);
    @@ -675,7 +670,7 @@ public Builder mergeFrom(org.tensorflow.proto.DebugTensorWatch other) {
           if (!other.debugUrls_.isEmpty()) {
             if (debugUrls_.isEmpty()) {
               debugUrls_ = other.debugUrls_;
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          bitField0_ |= 0x00000008;
             } else {
               ensureDebugUrlsIsMutable();
               debugUrls_.addAll(other.debugUrls_);
    @@ -713,12 +708,12 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   nodeName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 16: {
                   outputSlot_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 case 26: {
    @@ -735,7 +730,7 @@ public Builder mergeFrom(
                 } // case 34
                 case 40: {
                   tolerateDebugOpCreationFailures_ = input.readBool();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 40
                 default: {
    @@ -814,11 +809,9 @@ public java.lang.String getNodeName() {
          */
         public Builder setNodeName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           nodeName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -833,8 +826,8 @@ public Builder setNodeName(
          * @return This builder for chaining.
          */
         public Builder clearNodeName() {
    -      
           nodeName_ = getDefaultInstance().getNodeName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -851,12 +844,10 @@ public Builder clearNodeName() {
          */
         public Builder setNodeNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           nodeName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -892,8 +883,9 @@ public int getOutputSlot() {
          * @return This builder for chaining.
          */
         public Builder setOutputSlot(int value) {
    -      
    +
           outputSlot_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -910,18 +902,19 @@ public Builder setOutputSlot(int value) {
          * @return This builder for chaining.
          */
         public Builder clearOutputSlot() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           outputSlot_ = 0;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.LazyStringList debugOps_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList debugOps_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureDebugOpsIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!debugOps_.isModifiable()) {
             debugOps_ = new com.google.protobuf.LazyStringArrayList(debugOps_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      }
    +      bitField0_ |= 0x00000004;
         }
         /**
          * 
    @@ -935,7 +928,8 @@ private void ensureDebugOpsIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getDebugOpsList() {
    -      return debugOps_.getUnmodifiableView();
    +      debugOps_.makeImmutable();
    +      return debugOps_;
         }
         /**
          * 
    @@ -993,11 +987,10 @@ public java.lang.String getDebugOps(int index) {
          */
         public Builder setDebugOps(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureDebugOpsIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureDebugOpsIsMutable();
           debugOps_.set(index, value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1014,11 +1007,10 @@ public Builder setDebugOps(
          */
         public Builder addDebugOps(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureDebugOpsIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureDebugOpsIsMutable();
           debugOps_.add(value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1038,6 +1030,7 @@ public Builder addAllDebugOps(
           ensureDebugOpsIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, debugOps_);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1052,8 +1045,9 @@ public Builder addAllDebugOps(
          * @return This builder for chaining.
          */
         public Builder clearDebugOps() {
    -      debugOps_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      debugOps_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000004);;
           onChanged();
           return this;
         }
    @@ -1070,36 +1064,39 @@ public Builder clearDebugOps() {
          */
         public Builder addDebugOpsBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureDebugOpsIsMutable();
           debugOps_.add(value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.LazyStringList debugUrls_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList debugUrls_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureDebugUrlsIsMutable() {
    -      if (!((bitField0_ & 0x00000002) != 0)) {
    +      if (!debugUrls_.isModifiable()) {
             debugUrls_ = new com.google.protobuf.LazyStringArrayList(debugUrls_);
    -        bitField0_ |= 0x00000002;
    -       }
    +      }
    +      bitField0_ |= 0x00000008;
         }
         /**
          * 
          * URL(s) for debug targets(s).
    +     *
          * Supported URL formats are:
    -     *   - file:///foo/tfdbg_dump: Writes out Event content to file
    -     *     /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    -     *     already exist.
    -     *   - grpc://localhost:11011: Sends an RPC request to an EventListener
    -     *     service running at localhost:11011 with the event.
    -     *   - memcbk:///event_key: Routes tensors to clients using the
    -     *     callback registered with the DebugCallbackRegistry for event_key.
    +     * - file:///foo/tfdbg_dump: Writes out Event content to file
    +     * /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    +     * already exist.
    +     * - grpc://localhost:11011: Sends an RPC request to an EventListener
    +     * service running at localhost:11011 with the event.
    +     * - memcbk:///event_key: Routes tensors to clients using the
    +     * callback registered with the DebugCallbackRegistry for event_key.
    +     *
          * Each debug op listed in debug_ops will publish its output tensor (debug
          * signal) to all URLs in debug_urls.
    +     *
          * N.B. Session::Run() supports concurrent invocations of the same inputs
          * (feed keys), outputs and target nodes. If such concurrent invocations
          * are to be debugged, the callers of Session::Run() must use distinct
    @@ -1113,21 +1110,25 @@ private void ensureDebugUrlsIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getDebugUrlsList() {
    -      return debugUrls_.getUnmodifiableView();
    +      debugUrls_.makeImmutable();
    +      return debugUrls_;
         }
         /**
          * 
          * URL(s) for debug targets(s).
    +     *
          * Supported URL formats are:
    -     *   - file:///foo/tfdbg_dump: Writes out Event content to file
    -     *     /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    -     *     already exist.
    -     *   - grpc://localhost:11011: Sends an RPC request to an EventListener
    -     *     service running at localhost:11011 with the event.
    -     *   - memcbk:///event_key: Routes tensors to clients using the
    -     *     callback registered with the DebugCallbackRegistry for event_key.
    +     * - file:///foo/tfdbg_dump: Writes out Event content to file
    +     * /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    +     * already exist.
    +     * - grpc://localhost:11011: Sends an RPC request to an EventListener
    +     * service running at localhost:11011 with the event.
    +     * - memcbk:///event_key: Routes tensors to clients using the
    +     * callback registered with the DebugCallbackRegistry for event_key.
    +     *
          * Each debug op listed in debug_ops will publish its output tensor (debug
          * signal) to all URLs in debug_urls.
    +     *
          * N.B. Session::Run() supports concurrent invocations of the same inputs
          * (feed keys), outputs and target nodes. If such concurrent invocations
          * are to be debugged, the callers of Session::Run() must use distinct
    @@ -1145,16 +1146,19 @@ public int getDebugUrlsCount() {
         /**
          * 
          * URL(s) for debug targets(s).
    +     *
          * Supported URL formats are:
    -     *   - file:///foo/tfdbg_dump: Writes out Event content to file
    -     *     /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    -     *     already exist.
    -     *   - grpc://localhost:11011: Sends an RPC request to an EventListener
    -     *     service running at localhost:11011 with the event.
    -     *   - memcbk:///event_key: Routes tensors to clients using the
    -     *     callback registered with the DebugCallbackRegistry for event_key.
    +     * - file:///foo/tfdbg_dump: Writes out Event content to file
    +     * /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    +     * already exist.
    +     * - grpc://localhost:11011: Sends an RPC request to an EventListener
    +     * service running at localhost:11011 with the event.
    +     * - memcbk:///event_key: Routes tensors to clients using the
    +     * callback registered with the DebugCallbackRegistry for event_key.
    +     *
          * Each debug op listed in debug_ops will publish its output tensor (debug
          * signal) to all URLs in debug_urls.
    +     *
          * N.B. Session::Run() supports concurrent invocations of the same inputs
          * (feed keys), outputs and target nodes. If such concurrent invocations
          * are to be debugged, the callers of Session::Run() must use distinct
    @@ -1173,16 +1177,19 @@ public java.lang.String getDebugUrls(int index) {
         /**
          * 
          * URL(s) for debug targets(s).
    +     *
          * Supported URL formats are:
    -     *   - file:///foo/tfdbg_dump: Writes out Event content to file
    -     *     /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    -     *     already exist.
    -     *   - grpc://localhost:11011: Sends an RPC request to an EventListener
    -     *     service running at localhost:11011 with the event.
    -     *   - memcbk:///event_key: Routes tensors to clients using the
    -     *     callback registered with the DebugCallbackRegistry for event_key.
    +     * - file:///foo/tfdbg_dump: Writes out Event content to file
    +     * /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    +     * already exist.
    +     * - grpc://localhost:11011: Sends an RPC request to an EventListener
    +     * service running at localhost:11011 with the event.
    +     * - memcbk:///event_key: Routes tensors to clients using the
    +     * callback registered with the DebugCallbackRegistry for event_key.
    +     *
          * Each debug op listed in debug_ops will publish its output tensor (debug
          * signal) to all URLs in debug_urls.
    +     *
          * N.B. Session::Run() supports concurrent invocations of the same inputs
          * (feed keys), outputs and target nodes. If such concurrent invocations
          * are to be debugged, the callers of Session::Run() must use distinct
    @@ -1202,16 +1209,19 @@ public java.lang.String getDebugUrls(int index) {
         /**
          * 
          * URL(s) for debug targets(s).
    +     *
          * Supported URL formats are:
    -     *   - file:///foo/tfdbg_dump: Writes out Event content to file
    -     *     /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    -     *     already exist.
    -     *   - grpc://localhost:11011: Sends an RPC request to an EventListener
    -     *     service running at localhost:11011 with the event.
    -     *   - memcbk:///event_key: Routes tensors to clients using the
    -     *     callback registered with the DebugCallbackRegistry for event_key.
    +     * - file:///foo/tfdbg_dump: Writes out Event content to file
    +     * /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    +     * already exist.
    +     * - grpc://localhost:11011: Sends an RPC request to an EventListener
    +     * service running at localhost:11011 with the event.
    +     * - memcbk:///event_key: Routes tensors to clients using the
    +     * callback registered with the DebugCallbackRegistry for event_key.
    +     *
          * Each debug op listed in debug_ops will publish its output tensor (debug
          * signal) to all URLs in debug_urls.
    +     *
          * N.B. Session::Run() supports concurrent invocations of the same inputs
          * (feed keys), outputs and target nodes. If such concurrent invocations
          * are to be debugged, the callers of Session::Run() must use distinct
    @@ -1227,27 +1237,29 @@ public java.lang.String getDebugUrls(int index) {
          */
         public Builder setDebugUrls(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureDebugUrlsIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureDebugUrlsIsMutable();
           debugUrls_.set(index, value);
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
         /**
          * 
          * URL(s) for debug targets(s).
    +     *
          * Supported URL formats are:
    -     *   - file:///foo/tfdbg_dump: Writes out Event content to file
    -     *     /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    -     *     already exist.
    -     *   - grpc://localhost:11011: Sends an RPC request to an EventListener
    -     *     service running at localhost:11011 with the event.
    -     *   - memcbk:///event_key: Routes tensors to clients using the
    -     *     callback registered with the DebugCallbackRegistry for event_key.
    +     * - file:///foo/tfdbg_dump: Writes out Event content to file
    +     * /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    +     * already exist.
    +     * - grpc://localhost:11011: Sends an RPC request to an EventListener
    +     * service running at localhost:11011 with the event.
    +     * - memcbk:///event_key: Routes tensors to clients using the
    +     * callback registered with the DebugCallbackRegistry for event_key.
    +     *
          * Each debug op listed in debug_ops will publish its output tensor (debug
          * signal) to all URLs in debug_urls.
    +     *
          * N.B. Session::Run() supports concurrent invocations of the same inputs
          * (feed keys), outputs and target nodes. If such concurrent invocations
          * are to be debugged, the callers of Session::Run() must use distinct
    @@ -1262,27 +1274,29 @@ public Builder setDebugUrls(
          */
         public Builder addDebugUrls(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureDebugUrlsIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureDebugUrlsIsMutable();
           debugUrls_.add(value);
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
         /**
          * 
          * URL(s) for debug targets(s).
    +     *
          * Supported URL formats are:
    -     *   - file:///foo/tfdbg_dump: Writes out Event content to file
    -     *     /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    -     *     already exist.
    -     *   - grpc://localhost:11011: Sends an RPC request to an EventListener
    -     *     service running at localhost:11011 with the event.
    -     *   - memcbk:///event_key: Routes tensors to clients using the
    -     *     callback registered with the DebugCallbackRegistry for event_key.
    +     * - file:///foo/tfdbg_dump: Writes out Event content to file
    +     * /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    +     * already exist.
    +     * - grpc://localhost:11011: Sends an RPC request to an EventListener
    +     * service running at localhost:11011 with the event.
    +     * - memcbk:///event_key: Routes tensors to clients using the
    +     * callback registered with the DebugCallbackRegistry for event_key.
    +     *
          * Each debug op listed in debug_ops will publish its output tensor (debug
          * signal) to all URLs in debug_urls.
    +     *
          * N.B. Session::Run() supports concurrent invocations of the same inputs
          * (feed keys), outputs and target nodes. If such concurrent invocations
          * are to be debugged, the callers of Session::Run() must use distinct
    @@ -1300,22 +1314,26 @@ public Builder addAllDebugUrls(
           ensureDebugUrlsIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, debugUrls_);
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
         /**
          * 
          * URL(s) for debug targets(s).
    +     *
          * Supported URL formats are:
    -     *   - file:///foo/tfdbg_dump: Writes out Event content to file
    -     *     /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    -     *     already exist.
    -     *   - grpc://localhost:11011: Sends an RPC request to an EventListener
    -     *     service running at localhost:11011 with the event.
    -     *   - memcbk:///event_key: Routes tensors to clients using the
    -     *     callback registered with the DebugCallbackRegistry for event_key.
    +     * - file:///foo/tfdbg_dump: Writes out Event content to file
    +     * /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    +     * already exist.
    +     * - grpc://localhost:11011: Sends an RPC request to an EventListener
    +     * service running at localhost:11011 with the event.
    +     * - memcbk:///event_key: Routes tensors to clients using the
    +     * callback registered with the DebugCallbackRegistry for event_key.
    +     *
          * Each debug op listed in debug_ops will publish its output tensor (debug
          * signal) to all URLs in debug_urls.
    +     *
          * N.B. Session::Run() supports concurrent invocations of the same inputs
          * (feed keys), outputs and target nodes. If such concurrent invocations
          * are to be debugged, the callers of Session::Run() must use distinct
    @@ -1328,24 +1346,28 @@ public Builder addAllDebugUrls(
          * @return This builder for chaining.
          */
         public Builder clearDebugUrls() {
    -      debugUrls_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000002);
    +      debugUrls_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000008);;
           onChanged();
           return this;
         }
         /**
          * 
          * URL(s) for debug targets(s).
    +     *
          * Supported URL formats are:
    -     *   - file:///foo/tfdbg_dump: Writes out Event content to file
    -     *     /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    -     *     already exist.
    -     *   - grpc://localhost:11011: Sends an RPC request to an EventListener
    -     *     service running at localhost:11011 with the event.
    -     *   - memcbk:///event_key: Routes tensors to clients using the
    -     *     callback registered with the DebugCallbackRegistry for event_key.
    +     * - file:///foo/tfdbg_dump: Writes out Event content to file
    +     * /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    +     * already exist.
    +     * - grpc://localhost:11011: Sends an RPC request to an EventListener
    +     * service running at localhost:11011 with the event.
    +     * - memcbk:///event_key: Routes tensors to clients using the
    +     * callback registered with the DebugCallbackRegistry for event_key.
    +     *
          * Each debug op listed in debug_ops will publish its output tensor (debug
          * signal) to all URLs in debug_urls.
    +     *
          * N.B. Session::Run() supports concurrent invocations of the same inputs
          * (feed keys), outputs and target nodes. If such concurrent invocations
          * are to be debugged, the callers of Session::Run() must use distinct
    @@ -1360,12 +1382,11 @@ public Builder clearDebugUrls() {
          */
         public Builder addDebugUrlsBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureDebugUrlsIsMutable();
           debugUrls_.add(value);
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1395,8 +1416,9 @@ public boolean getTolerateDebugOpCreationFailures() {
          * @return This builder for chaining.
          */
         public Builder setTolerateDebugOpCreationFailures(boolean value) {
    -      
    +
           tolerateDebugOpCreationFailures_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1410,23 +1432,11 @@ public Builder setTolerateDebugOpCreationFailures(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearTolerateDebugOpCreationFailures() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000010);
           tolerateDebugOpCreationFailures_ = false;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.DebugTensorWatch)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugTensorWatchOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugTensorWatchOrBuilder.java
    index 8d7323db209..842457cd90f 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugTensorWatchOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebugTensorWatchOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -97,16 +99,19 @@ public interface DebugTensorWatchOrBuilder extends
       /**
        * 
        * URL(s) for debug targets(s).
    +   *
        * Supported URL formats are:
    -   *   - file:///foo/tfdbg_dump: Writes out Event content to file
    -   *     /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    -   *     already exist.
    -   *   - grpc://localhost:11011: Sends an RPC request to an EventListener
    -   *     service running at localhost:11011 with the event.
    -   *   - memcbk:///event_key: Routes tensors to clients using the
    -   *     callback registered with the DebugCallbackRegistry for event_key.
    +   * - file:///foo/tfdbg_dump: Writes out Event content to file
    +   * /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    +   * already exist.
    +   * - grpc://localhost:11011: Sends an RPC request to an EventListener
    +   * service running at localhost:11011 with the event.
    +   * - memcbk:///event_key: Routes tensors to clients using the
    +   * callback registered with the DebugCallbackRegistry for event_key.
    +   *
        * Each debug op listed in debug_ops will publish its output tensor (debug
        * signal) to all URLs in debug_urls.
    +   *
        * N.B. Session::Run() supports concurrent invocations of the same inputs
        * (feed keys), outputs and target nodes. If such concurrent invocations
        * are to be debugged, the callers of Session::Run() must use distinct
    @@ -123,16 +128,19 @@ public interface DebugTensorWatchOrBuilder extends
       /**
        * 
        * URL(s) for debug targets(s).
    +   *
        * Supported URL formats are:
    -   *   - file:///foo/tfdbg_dump: Writes out Event content to file
    -   *     /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    -   *     already exist.
    -   *   - grpc://localhost:11011: Sends an RPC request to an EventListener
    -   *     service running at localhost:11011 with the event.
    -   *   - memcbk:///event_key: Routes tensors to clients using the
    -   *     callback registered with the DebugCallbackRegistry for event_key.
    +   * - file:///foo/tfdbg_dump: Writes out Event content to file
    +   * /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    +   * already exist.
    +   * - grpc://localhost:11011: Sends an RPC request to an EventListener
    +   * service running at localhost:11011 with the event.
    +   * - memcbk:///event_key: Routes tensors to clients using the
    +   * callback registered with the DebugCallbackRegistry for event_key.
    +   *
        * Each debug op listed in debug_ops will publish its output tensor (debug
        * signal) to all URLs in debug_urls.
    +   *
        * N.B. Session::Run() supports concurrent invocations of the same inputs
        * (feed keys), outputs and target nodes. If such concurrent invocations
        * are to be debugged, the callers of Session::Run() must use distinct
    @@ -148,16 +156,19 @@ public interface DebugTensorWatchOrBuilder extends
       /**
        * 
        * URL(s) for debug targets(s).
    +   *
        * Supported URL formats are:
    -   *   - file:///foo/tfdbg_dump: Writes out Event content to file
    -   *     /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    -   *     already exist.
    -   *   - grpc://localhost:11011: Sends an RPC request to an EventListener
    -   *     service running at localhost:11011 with the event.
    -   *   - memcbk:///event_key: Routes tensors to clients using the
    -   *     callback registered with the DebugCallbackRegistry for event_key.
    +   * - file:///foo/tfdbg_dump: Writes out Event content to file
    +   * /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    +   * already exist.
    +   * - grpc://localhost:11011: Sends an RPC request to an EventListener
    +   * service running at localhost:11011 with the event.
    +   * - memcbk:///event_key: Routes tensors to clients using the
    +   * callback registered with the DebugCallbackRegistry for event_key.
    +   *
        * Each debug op listed in debug_ops will publish its output tensor (debug
        * signal) to all URLs in debug_urls.
    +   *
        * N.B. Session::Run() supports concurrent invocations of the same inputs
        * (feed keys), outputs and target nodes. If such concurrent invocations
        * are to be debugged, the callers of Session::Run() must use distinct
    @@ -174,16 +185,19 @@ public interface DebugTensorWatchOrBuilder extends
       /**
        * 
        * URL(s) for debug targets(s).
    +   *
        * Supported URL formats are:
    -   *   - file:///foo/tfdbg_dump: Writes out Event content to file
    -   *     /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    -   *     already exist.
    -   *   - grpc://localhost:11011: Sends an RPC request to an EventListener
    -   *     service running at localhost:11011 with the event.
    -   *   - memcbk:///event_key: Routes tensors to clients using the
    -   *     callback registered with the DebugCallbackRegistry for event_key.
    +   * - file:///foo/tfdbg_dump: Writes out Event content to file
    +   * /foo/tfdbg_dump.  Assumes all directories can be created if they don't
    +   * already exist.
    +   * - grpc://localhost:11011: Sends an RPC request to an EventListener
    +   * service running at localhost:11011 with the event.
    +   * - memcbk:///event_key: Routes tensors to clients using the
    +   * callback registered with the DebugCallbackRegistry for event_key.
    +   *
        * Each debug op listed in debug_ops will publish its output tensor (debug
        * signal) to all URLs in debug_urls.
    +   *
        * N.B. Session::Run() supports concurrent invocations of the same inputs
        * (feed keys), outputs and target nodes. If such concurrent invocations
        * are to be debugged, the callers of Session::Run() must use distinct
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedDevice.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedDevice.java
    index c71b3e7eb99..d8d0b77e13c 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedDevice.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedDevice.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug_event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,37 +13,34 @@
      * Protobuf type {@code tensorflow.DebuggedDevice}
      */
     public final class DebuggedDevice extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.DebuggedDevice)
         DebuggedDeviceOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      DebuggedDevice.class.getName());
    +  }
       // Use DebuggedDevice.newBuilder() to construct.
    -  private DebuggedDevice(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private DebuggedDevice(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private DebuggedDevice() {
         deviceName_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new DebuggedDevice();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_DebuggedDevice_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_DebuggedDevice_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -49,7 +48,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int DEVICE_NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object deviceName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object deviceName_ = "";
       /**
        * 
        * Name of the device.
    @@ -95,7 +95,7 @@ public java.lang.String getDeviceName() {
       }
     
       public static final int DEVICE_ID_FIELD_NUMBER = 2;
    -  private int deviceId_;
    +  private int deviceId_ = 0;
       /**
        * 
        * A debugger-generated ID for the device. Guaranteed to be unique within
    @@ -126,8 +126,8 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, deviceName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, deviceName_);
         }
         if (deviceId_ != 0) {
           output.writeInt32(2, deviceId_);
    @@ -141,8 +141,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, deviceName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, deviceName_);
         }
         if (deviceId_ != 0) {
           size += com.google.protobuf.CodedOutputStream
    @@ -221,39 +221,41 @@ public static org.tensorflow.proto.DebuggedDevice parseFrom(
       }
       public static org.tensorflow.proto.DebuggedDevice parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DebuggedDevice parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.DebuggedDevice parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.DebuggedDevice parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.DebuggedDevice parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DebuggedDevice parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -273,7 +275,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -285,7 +287,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.DebuggedDevice}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.DebuggedDevice)
           org.tensorflow.proto.DebuggedDeviceOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -294,7 +296,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_DebuggedDevice_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -307,17 +309,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           deviceName_ = "";
    -
           deviceId_ = 0;
    -
           return this;
         }
     
    @@ -344,44 +345,21 @@ public org.tensorflow.proto.DebuggedDevice build() {
         @java.lang.Override
         public org.tensorflow.proto.DebuggedDevice buildPartial() {
           org.tensorflow.proto.DebuggedDevice result = new org.tensorflow.proto.DebuggedDevice(this);
    -      result.deviceName_ = deviceName_;
    -      result.deviceId_ = deviceId_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.DebuggedDevice result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.deviceName_ = deviceName_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.deviceId_ = deviceId_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.DebuggedDevice) {
    @@ -396,6 +374,7 @@ public Builder mergeFrom(org.tensorflow.proto.DebuggedDevice other) {
           if (other == org.tensorflow.proto.DebuggedDevice.getDefaultInstance()) return this;
           if (!other.getDeviceName().isEmpty()) {
             deviceName_ = other.deviceName_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (other.getDeviceId() != 0) {
    @@ -429,12 +408,12 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   deviceName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 16: {
                   deviceId_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 default: {
    @@ -452,6 +431,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object deviceName_ = "";
         /**
    @@ -506,11 +486,9 @@ public java.lang.String getDeviceName() {
          */
         public Builder setDeviceName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           deviceName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -523,8 +501,8 @@ public Builder setDeviceName(
          * @return This builder for chaining.
          */
         public Builder clearDeviceName() {
    -      
           deviceName_ = getDefaultInstance().getDeviceName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -539,12 +517,10 @@ public Builder clearDeviceName() {
          */
         public Builder setDeviceNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           deviceName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -578,8 +554,9 @@ public int getDeviceId() {
          * @return This builder for chaining.
          */
         public Builder setDeviceId(int value) {
    -      
    +
           deviceId_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -595,23 +572,11 @@ public Builder setDeviceId(int value) {
          * @return This builder for chaining.
          */
         public Builder clearDeviceId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           deviceId_ = 0;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.DebuggedDevice)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedDeviceOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedDeviceOrBuilder.java
    index 2b24df1e4df..4544692e491 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedDeviceOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedDeviceOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug_event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedGraph.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedGraph.java
    index f5fd44da761..d56c83a856d 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedGraph.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedGraph.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug_event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,42 +13,40 @@
      * Protobuf type {@code tensorflow.DebuggedGraph}
      */
     public final class DebuggedGraph extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.DebuggedGraph)
         DebuggedGraphOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      DebuggedGraph.class.getName());
    +  }
       // Use DebuggedGraph.newBuilder() to construct.
    -  private DebuggedGraph(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private DebuggedGraph(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private DebuggedGraph() {
         graphId_ = "";
         graphName_ = "";
    -    instrumentedOps_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    instrumentedOps_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         originalGraphDef_ = com.google.protobuf.ByteString.EMPTY;
         instrumentedGraphDef_ = com.google.protobuf.ByteString.EMPTY;
         outerContextId_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new DebuggedGraph();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_DebuggedGraph_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_DebuggedGraph_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -54,7 +54,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int GRAPH_ID_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object graphId_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object graphId_ = "";
       /**
        * 
        * An ID for the graph.
    @@ -102,7 +103,8 @@ public java.lang.String getGraphId() {
       }
     
       public static final int GRAPH_NAME_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object graphName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object graphName_ = "";
       /**
        * 
        * Name of the graph (if available).
    @@ -148,7 +150,9 @@ public java.lang.String getGraphName() {
       }
     
       public static final int INSTRUMENTED_OPS_FIELD_NUMBER = 3;
    -  private com.google.protobuf.LazyStringList instrumentedOps_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList instrumentedOps_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * Names of the instrumented ops. This can be used to look up op name
    @@ -203,7 +207,7 @@ public java.lang.String getInstrumentedOps(int index) {
       }
     
       public static final int ORIGINAL_GRAPH_DEF_FIELD_NUMBER = 4;
    -  private com.google.protobuf.ByteString originalGraphDef_;
    +  private com.google.protobuf.ByteString originalGraphDef_ = com.google.protobuf.ByteString.EMPTY;
       /**
        * 
        * Original (uninstrumented) GraphDef (if available).
    @@ -218,7 +222,7 @@ public com.google.protobuf.ByteString getOriginalGraphDef() {
       }
     
       public static final int INSTRUMENTED_GRAPH_DEF_FIELD_NUMBER = 5;
    -  private com.google.protobuf.ByteString instrumentedGraphDef_;
    +  private com.google.protobuf.ByteString instrumentedGraphDef_ = com.google.protobuf.ByteString.EMPTY;
       /**
        * 
        * An encoded version of a GraphDef.
    @@ -234,7 +238,8 @@ public com.google.protobuf.ByteString getInstrumentedGraphDef() {
       }
     
       public static final int OUTER_CONTEXT_ID_FIELD_NUMBER = 6;
    -  private volatile java.lang.Object outerContextId_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object outerContextId_ = "";
       /**
        * 
        * IDs of the immediate enclosing context (graph), if any.
    @@ -293,14 +298,14 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(graphId_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, graphId_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(graphId_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, graphId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(graphName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, graphName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(graphName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, graphName_);
         }
         for (int i = 0; i < instrumentedOps_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, instrumentedOps_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, instrumentedOps_.getRaw(i));
         }
         if (!originalGraphDef_.isEmpty()) {
           output.writeBytes(4, originalGraphDef_);
    @@ -308,8 +313,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (!instrumentedGraphDef_.isEmpty()) {
           output.writeBytes(5, instrumentedGraphDef_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(outerContextId_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 6, outerContextId_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(outerContextId_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 6, outerContextId_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -320,11 +325,11 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(graphId_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, graphId_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(graphId_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, graphId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(graphName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, graphName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(graphName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, graphName_);
         }
         {
           int dataSize = 0;
    @@ -342,8 +347,8 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeBytesSize(5, instrumentedGraphDef_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(outerContextId_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, outerContextId_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(outerContextId_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(6, outerContextId_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -436,39 +441,41 @@ public static org.tensorflow.proto.DebuggedGraph parseFrom(
       }
       public static org.tensorflow.proto.DebuggedGraph parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DebuggedGraph parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.DebuggedGraph parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.DebuggedGraph parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.DebuggedGraph parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DebuggedGraph parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -488,7 +495,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -500,7 +507,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.DebuggedGraph}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.DebuggedGraph)
           org.tensorflow.proto.DebuggedGraphOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -509,7 +516,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_DebuggedGraph_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -522,25 +529,21 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           graphId_ = "";
    -
           graphName_ = "";
    -
    -      instrumentedOps_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      instrumentedOps_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           originalGraphDef_ = com.google.protobuf.ByteString.EMPTY;
    -
           instrumentedGraphDef_ = com.google.protobuf.ByteString.EMPTY;
    -
           outerContextId_ = "";
    -
           return this;
         }
     
    @@ -567,53 +570,34 @@ public org.tensorflow.proto.DebuggedGraph build() {
         @java.lang.Override
         public org.tensorflow.proto.DebuggedGraph buildPartial() {
           org.tensorflow.proto.DebuggedGraph result = new org.tensorflow.proto.DebuggedGraph(this);
    -      int from_bitField0_ = bitField0_;
    -      result.graphId_ = graphId_;
    -      result.graphName_ = graphName_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        instrumentedOps_ = instrumentedOps_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.instrumentedOps_ = instrumentedOps_;
    -      result.originalGraphDef_ = originalGraphDef_;
    -      result.instrumentedGraphDef_ = instrumentedGraphDef_;
    -      result.outerContextId_ = outerContextId_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.DebuggedGraph result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.graphId_ = graphId_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.graphName_ = graphName_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        instrumentedOps_.makeImmutable();
    +        result.instrumentedOps_ = instrumentedOps_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.originalGraphDef_ = originalGraphDef_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.instrumentedGraphDef_ = instrumentedGraphDef_;
    +      }
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.outerContextId_ = outerContextId_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.DebuggedGraph) {
    @@ -628,16 +612,18 @@ public Builder mergeFrom(org.tensorflow.proto.DebuggedGraph other) {
           if (other == org.tensorflow.proto.DebuggedGraph.getDefaultInstance()) return this;
           if (!other.getGraphId().isEmpty()) {
             graphId_ = other.graphId_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getGraphName().isEmpty()) {
             graphName_ = other.graphName_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (!other.instrumentedOps_.isEmpty()) {
             if (instrumentedOps_.isEmpty()) {
               instrumentedOps_ = other.instrumentedOps_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ |= 0x00000004;
             } else {
               ensureInstrumentedOpsIsMutable();
               instrumentedOps_.addAll(other.instrumentedOps_);
    @@ -652,6 +638,7 @@ public Builder mergeFrom(org.tensorflow.proto.DebuggedGraph other) {
           }
           if (!other.getOuterContextId().isEmpty()) {
             outerContextId_ = other.outerContextId_;
    +        bitField0_ |= 0x00000020;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -682,12 +669,12 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   graphId_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   graphName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
    @@ -698,17 +685,17 @@ public Builder mergeFrom(
                 } // case 26
                 case 34: {
                   originalGraphDef_ = input.readBytes();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 34
                 case 42: {
                   instrumentedGraphDef_ = input.readBytes();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 42
                 case 50: {
                   outerContextId_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 50
                 default: {
    @@ -784,11 +771,9 @@ public java.lang.String getGraphId() {
          */
         public Builder setGraphId(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           graphId_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -802,8 +787,8 @@ public Builder setGraphId(
          * @return This builder for chaining.
          */
         public Builder clearGraphId() {
    -      
           graphId_ = getDefaultInstance().getGraphId();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -819,12 +804,10 @@ public Builder clearGraphId() {
          */
         public Builder setGraphIdBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           graphId_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -882,11 +865,9 @@ public java.lang.String getGraphName() {
          */
         public Builder setGraphName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           graphName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -899,8 +880,8 @@ public Builder setGraphName(
          * @return This builder for chaining.
          */
         public Builder clearGraphName() {
    -      
           graphName_ = getDefaultInstance().getGraphName();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -915,22 +896,21 @@ public Builder clearGraphName() {
          */
         public Builder setGraphNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           graphName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.LazyStringList instrumentedOps_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList instrumentedOps_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureInstrumentedOpsIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!instrumentedOps_.isModifiable()) {
             instrumentedOps_ = new com.google.protobuf.LazyStringArrayList(instrumentedOps_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      }
    +      bitField0_ |= 0x00000004;
         }
         /**
          * 
    @@ -943,7 +923,8 @@ private void ensureInstrumentedOpsIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getInstrumentedOpsList() {
    -      return instrumentedOps_.getUnmodifiableView();
    +      instrumentedOps_.makeImmutable();
    +      return instrumentedOps_;
         }
         /**
          * 
    @@ -997,11 +978,10 @@ public java.lang.String getInstrumentedOps(int index) {
          */
         public Builder setInstrumentedOps(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureInstrumentedOpsIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureInstrumentedOpsIsMutable();
           instrumentedOps_.set(index, value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1017,11 +997,10 @@ public Builder setInstrumentedOps(
          */
         public Builder addInstrumentedOps(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureInstrumentedOpsIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureInstrumentedOpsIsMutable();
           instrumentedOps_.add(value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1040,6 +1019,7 @@ public Builder addAllInstrumentedOps(
           ensureInstrumentedOpsIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, instrumentedOps_);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1053,8 +1033,9 @@ public Builder addAllInstrumentedOps(
          * @return This builder for chaining.
          */
         public Builder clearInstrumentedOps() {
    -      instrumentedOps_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      instrumentedOps_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000004);;
           onChanged();
           return this;
         }
    @@ -1070,12 +1051,11 @@ public Builder clearInstrumentedOps() {
          */
         public Builder addInstrumentedOpsBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureInstrumentedOpsIsMutable();
           instrumentedOps_.add(value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1103,11 +1083,9 @@ public com.google.protobuf.ByteString getOriginalGraphDef() {
          * @return This builder for chaining.
          */
         public Builder setOriginalGraphDef(com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           originalGraphDef_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1120,7 +1098,7 @@ public Builder setOriginalGraphDef(com.google.protobuf.ByteString value) {
          * @return This builder for chaining.
          */
         public Builder clearOriginalGraphDef() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           originalGraphDef_ = getDefaultInstance().getOriginalGraphDef();
           onChanged();
           return this;
    @@ -1151,11 +1129,9 @@ public com.google.protobuf.ByteString getInstrumentedGraphDef() {
          * @return This builder for chaining.
          */
         public Builder setInstrumentedGraphDef(com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           instrumentedGraphDef_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1169,7 +1145,7 @@ public Builder setInstrumentedGraphDef(com.google.protobuf.ByteString value) {
          * @return This builder for chaining.
          */
         public Builder clearInstrumentedGraphDef() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000010);
           instrumentedGraphDef_ = getDefaultInstance().getInstrumentedGraphDef();
           onChanged();
           return this;
    @@ -1228,11 +1204,9 @@ public java.lang.String getOuterContextId() {
          */
         public Builder setOuterContextId(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           outerContextId_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -1245,8 +1219,8 @@ public Builder setOuterContextId(
          * @return This builder for chaining.
          */
         public Builder clearOuterContextId() {
    -      
           outerContextId_ = getDefaultInstance().getOuterContextId();
    +      bitField0_ = (bitField0_ & ~0x00000020);
           onChanged();
           return this;
         }
    @@ -1261,27 +1235,13 @@ public Builder clearOuterContextId() {
          */
         public Builder setOuterContextIdBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           outerContextId_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.DebuggedGraph)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedGraphOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedGraphOrBuilder.java
    index 4118e356516..e4115e8f5f5 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedGraphOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedGraphOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug_event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedSourceFile.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedSourceFile.java
    index 77ac7451f3e..66704f19966 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedSourceFile.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedSourceFile.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,39 +9,37 @@
      * Protobuf type {@code tensorflow.DebuggedSourceFile}
      */
     public final class DebuggedSourceFile extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.DebuggedSourceFile)
         DebuggedSourceFileOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      DebuggedSourceFile.class.getName());
    +  }
       // Use DebuggedSourceFile.newBuilder() to construct.
    -  private DebuggedSourceFile(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private DebuggedSourceFile(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private DebuggedSourceFile() {
         host_ = "";
         filePath_ = "";
    -    lines_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -  }
    -
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new DebuggedSourceFile();
    +    lines_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
       }
     
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.DebugProtos.internal_static_tensorflow_DebuggedSourceFile_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.DebugProtos.internal_static_tensorflow_DebuggedSourceFile_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -47,7 +47,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int HOST_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object host_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object host_ = "";
       /**
        * 
        * The host name on which a source code file is located.
    @@ -93,7 +94,8 @@ public java.lang.String getHost() {
       }
     
       public static final int FILE_PATH_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object filePath_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object filePath_ = "";
       /**
        * 
        * Path to the source code file.
    @@ -139,7 +141,7 @@ public java.lang.String getFilePath() {
       }
     
       public static final int LAST_MODIFIED_FIELD_NUMBER = 3;
    -  private long lastModified_;
    +  private long lastModified_ = 0L;
       /**
        * 
        * The timestamp at which the source code file is last modified.
    @@ -154,7 +156,7 @@ public long getLastModified() {
       }
     
       public static final int BYTES_FIELD_NUMBER = 4;
    -  private long bytes_;
    +  private long bytes_ = 0L;
       /**
        * 
        * Byte size of the file.
    @@ -169,7 +171,9 @@ public long getBytes() {
       }
     
       public static final int LINES_FIELD_NUMBER = 5;
    -  private com.google.protobuf.LazyStringList lines_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList lines_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * Line-by-line content of the source code file.
    @@ -233,11 +237,11 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(host_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, host_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(host_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, host_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filePath_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, filePath_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filePath_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, filePath_);
         }
         if (lastModified_ != 0L) {
           output.writeInt64(3, lastModified_);
    @@ -246,7 +250,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           output.writeInt64(4, bytes_);
         }
         for (int i = 0; i < lines_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 5, lines_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 5, lines_.getRaw(i));
         }
         getUnknownFields().writeTo(output);
       }
    @@ -257,11 +261,11 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(host_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, host_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(host_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, host_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filePath_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, filePath_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filePath_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, filePath_);
         }
         if (lastModified_ != 0L) {
           size += com.google.protobuf.CodedOutputStream
    @@ -368,39 +372,41 @@ public static org.tensorflow.proto.DebuggedSourceFile parseFrom(
       }
       public static org.tensorflow.proto.DebuggedSourceFile parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DebuggedSourceFile parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.DebuggedSourceFile parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.DebuggedSourceFile parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.DebuggedSourceFile parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DebuggedSourceFile parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -420,7 +426,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -428,7 +434,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.DebuggedSourceFile}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.DebuggedSourceFile)
           org.tensorflow.proto.DebuggedSourceFileOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -437,7 +443,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DebugProtos.internal_static_tensorflow_DebuggedSourceFile_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -450,23 +456,20 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           host_ = "";
    -
           filePath_ = "";
    -
           lastModified_ = 0L;
    -
           bytes_ = 0L;
    -
    -      lines_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      lines_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           return this;
         }
     
    @@ -493,52 +496,31 @@ public org.tensorflow.proto.DebuggedSourceFile build() {
         @java.lang.Override
         public org.tensorflow.proto.DebuggedSourceFile buildPartial() {
           org.tensorflow.proto.DebuggedSourceFile result = new org.tensorflow.proto.DebuggedSourceFile(this);
    -      int from_bitField0_ = bitField0_;
    -      result.host_ = host_;
    -      result.filePath_ = filePath_;
    -      result.lastModified_ = lastModified_;
    -      result.bytes_ = bytes_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        lines_ = lines_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.lines_ = lines_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.DebuggedSourceFile result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.host_ = host_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.filePath_ = filePath_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.lastModified_ = lastModified_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.bytes_ = bytes_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        lines_.makeImmutable();
    +        result.lines_ = lines_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.DebuggedSourceFile) {
    @@ -553,10 +535,12 @@ public Builder mergeFrom(org.tensorflow.proto.DebuggedSourceFile other) {
           if (other == org.tensorflow.proto.DebuggedSourceFile.getDefaultInstance()) return this;
           if (!other.getHost().isEmpty()) {
             host_ = other.host_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getFilePath().isEmpty()) {
             filePath_ = other.filePath_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (other.getLastModified() != 0L) {
    @@ -568,7 +552,7 @@ public Builder mergeFrom(org.tensorflow.proto.DebuggedSourceFile other) {
           if (!other.lines_.isEmpty()) {
             if (lines_.isEmpty()) {
               lines_ = other.lines_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ |= 0x00000010;
             } else {
               ensureLinesIsMutable();
               lines_.addAll(other.lines_);
    @@ -603,22 +587,22 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   host_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   filePath_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 24: {
                   lastModified_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 24
                 case 32: {
                   bytes_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 32
                 case 42: {
    @@ -697,11 +681,9 @@ public java.lang.String getHost() {
          */
         public Builder setHost(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           host_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -714,8 +696,8 @@ public Builder setHost(
          * @return This builder for chaining.
          */
         public Builder clearHost() {
    -      
           host_ = getDefaultInstance().getHost();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -730,12 +712,10 @@ public Builder clearHost() {
          */
         public Builder setHostBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           host_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -793,11 +773,9 @@ public java.lang.String getFilePath() {
          */
         public Builder setFilePath(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           filePath_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -810,8 +788,8 @@ public Builder setFilePath(
          * @return This builder for chaining.
          */
         public Builder clearFilePath() {
    -      
           filePath_ = getDefaultInstance().getFilePath();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -826,12 +804,10 @@ public Builder clearFilePath() {
          */
         public Builder setFilePathBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           filePath_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -859,8 +835,9 @@ public long getLastModified() {
          * @return This builder for chaining.
          */
         public Builder setLastModified(long value) {
    -      
    +
           lastModified_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -873,7 +850,7 @@ public Builder setLastModified(long value) {
          * @return This builder for chaining.
          */
         public Builder clearLastModified() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           lastModified_ = 0L;
           onChanged();
           return this;
    @@ -902,8 +879,9 @@ public long getBytes() {
          * @return This builder for chaining.
          */
         public Builder setBytes(long value) {
    -      
    +
           bytes_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -916,18 +894,19 @@ public Builder setBytes(long value) {
          * @return This builder for chaining.
          */
         public Builder clearBytes() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           bytes_ = 0L;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.LazyStringList lines_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList lines_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureLinesIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!lines_.isModifiable()) {
             lines_ = new com.google.protobuf.LazyStringArrayList(lines_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      }
    +      bitField0_ |= 0x00000010;
         }
         /**
          * 
    @@ -939,7 +918,8 @@ private void ensureLinesIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getLinesList() {
    -      return lines_.getUnmodifiableView();
    +      lines_.makeImmutable();
    +      return lines_;
         }
         /**
          * 
    @@ -989,11 +969,10 @@ public java.lang.String getLines(int index) {
          */
         public Builder setLines(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureLinesIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureLinesIsMutable();
           lines_.set(index, value);
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1008,11 +987,10 @@ public Builder setLines(
          */
         public Builder addLines(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureLinesIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureLinesIsMutable();
           lines_.add(value);
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1030,6 +1008,7 @@ public Builder addAllLines(
           ensureLinesIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, lines_);
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1042,8 +1021,9 @@ public Builder addAllLines(
          * @return This builder for chaining.
          */
         public Builder clearLines() {
    -      lines_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      lines_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000010);;
           onChanged();
           return this;
         }
    @@ -1058,27 +1038,14 @@ public Builder clearLines() {
          */
         public Builder addLinesBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureLinesIsMutable();
           lines_.add(value);
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.DebuggedSourceFile)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedSourceFileOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedSourceFileOrBuilder.java
    index dd46e4ec55d..7ef7f4bae46 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedSourceFileOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedSourceFileOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedSourceFiles.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedSourceFiles.java
    index e4591aba13f..878ca2718a3 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedSourceFiles.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedSourceFiles.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,37 +9,34 @@
      * Protobuf type {@code tensorflow.DebuggedSourceFiles}
      */
     public final class DebuggedSourceFiles extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.DebuggedSourceFiles)
         DebuggedSourceFilesOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      DebuggedSourceFiles.class.getName());
    +  }
       // Use DebuggedSourceFiles.newBuilder() to construct.
    -  private DebuggedSourceFiles(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private DebuggedSourceFiles(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private DebuggedSourceFiles() {
         sourceFiles_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new DebuggedSourceFiles();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.DebugProtos.internal_static_tensorflow_DebuggedSourceFiles_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.DebugProtos.internal_static_tensorflow_DebuggedSourceFiles_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -45,6 +44,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int SOURCE_FILES_FIELD_NUMBER = 1;
    +  @SuppressWarnings("serial")
       private java.util.List sourceFiles_;
       /**
        * 
    @@ -205,39 +205,41 @@ public static org.tensorflow.proto.DebuggedSourceFiles parseFrom(
       }
       public static org.tensorflow.proto.DebuggedSourceFiles parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DebuggedSourceFiles parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.DebuggedSourceFiles parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.DebuggedSourceFiles parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.DebuggedSourceFiles parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DebuggedSourceFiles parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -257,7 +259,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -265,7 +267,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.DebuggedSourceFiles}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.DebuggedSourceFiles)
           org.tensorflow.proto.DebuggedSourceFilesOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -274,7 +276,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DebugProtos.internal_static_tensorflow_DebuggedSourceFiles_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -287,13 +289,14 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           if (sourceFilesBuilder_ == null) {
             sourceFiles_ = java.util.Collections.emptyList();
           } else {
    @@ -327,7 +330,13 @@ public org.tensorflow.proto.DebuggedSourceFiles build() {
         @java.lang.Override
         public org.tensorflow.proto.DebuggedSourceFiles buildPartial() {
           org.tensorflow.proto.DebuggedSourceFiles result = new org.tensorflow.proto.DebuggedSourceFiles(this);
    -      int from_bitField0_ = bitField0_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.DebuggedSourceFiles result) {
           if (sourceFilesBuilder_ == null) {
             if (((bitField0_ & 0x00000001) != 0)) {
               sourceFiles_ = java.util.Collections.unmodifiableList(sourceFiles_);
    @@ -337,42 +346,12 @@ public org.tensorflow.proto.DebuggedSourceFiles buildPartial() {
           } else {
             result.sourceFiles_ = sourceFilesBuilder_.build();
           }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.DebuggedSourceFiles result) {
    +      int from_bitField0_ = bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.DebuggedSourceFiles) {
    @@ -404,7 +383,7 @@ public Builder mergeFrom(org.tensorflow.proto.DebuggedSourceFiles other) {
                 sourceFiles_ = other.sourceFiles_;
                 bitField0_ = (bitField0_ & ~0x00000001);
                 sourceFilesBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getSourceFilesFieldBuilder() : null;
               } else {
                 sourceFilesBuilder_.addAllMessages(other.sourceFiles_);
    @@ -476,7 +455,7 @@ private void ensureSourceFilesIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.DebuggedSourceFile, org.tensorflow.proto.DebuggedSourceFile.Builder, org.tensorflow.proto.DebuggedSourceFileOrBuilder> sourceFilesBuilder_;
     
         /**
    @@ -764,11 +743,11 @@ public org.tensorflow.proto.DebuggedSourceFile.Builder addSourceFilesBuilder(
              getSourceFilesBuilderList() {
           return getSourceFilesFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.DebuggedSourceFile, org.tensorflow.proto.DebuggedSourceFile.Builder, org.tensorflow.proto.DebuggedSourceFileOrBuilder> 
             getSourceFilesFieldBuilder() {
           if (sourceFilesBuilder_ == null) {
    -        sourceFilesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        sourceFilesBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.DebuggedSourceFile, org.tensorflow.proto.DebuggedSourceFile.Builder, org.tensorflow.proto.DebuggedSourceFileOrBuilder>(
                     sourceFiles_,
                     ((bitField0_ & 0x00000001) != 0),
    @@ -778,18 +757,6 @@ public org.tensorflow.proto.DebuggedSourceFile.Builder addSourceFilesBuilder(
           }
           return sourceFilesBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.DebuggedSourceFiles)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedSourceFilesOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedSourceFilesOrBuilder.java
    index d1371fa0576..143f2983d0f 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedSourceFilesOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DebuggedSourceFilesOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceAttributes.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceAttributes.java
    index 44e03666490..47dfd9b5b6f 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceAttributes.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceAttributes.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/device_attributes.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,12 +9,21 @@
      * Protobuf type {@code tensorflow.DeviceAttributes}
      */
     public final class DeviceAttributes extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.DeviceAttributes)
         DeviceAttributesOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      DeviceAttributes.class.getName());
    +  }
       // Use DeviceAttributes.newBuilder() to construct.
    -  private DeviceAttributes(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private DeviceAttributes(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private DeviceAttributes() {
    @@ -21,33 +32,23 @@ private DeviceAttributes() {
         physicalDeviceDesc_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new DeviceAttributes();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.DeviceAttributesProtos.internal_static_tensorflow_DeviceAttributes_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.DeviceAttributesProtos.internal_static_tensorflow_DeviceAttributes_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.DeviceAttributes.class, org.tensorflow.proto.DeviceAttributes.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object name_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object name_ = "";
       /**
        * 
        * Fully specified name of the device within a cluster.
    @@ -93,7 +94,8 @@ public java.lang.String getName() {
       }
     
       public static final int DEVICE_TYPE_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object deviceType_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object deviceType_ = "";
       /**
        * 
        * String representation of device_type.
    @@ -139,7 +141,7 @@ public java.lang.String getDeviceType() {
       }
     
       public static final int MEMORY_LIMIT_FIELD_NUMBER = 4;
    -  private long memoryLimit_;
    +  private long memoryLimit_ = 0L;
       /**
        * 
        * Memory capacity of device in bytes.
    @@ -166,7 +168,7 @@ public long getMemoryLimit() {
        */
       @java.lang.Override
       public boolean hasLocality() {
    -    return locality_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -191,11 +193,11 @@ public org.tensorflow.proto.DeviceLocality getLocality() {
        */
       @java.lang.Override
       public org.tensorflow.proto.DeviceLocalityOrBuilder getLocalityOrBuilder() {
    -    return getLocality();
    +    return locality_ == null ? org.tensorflow.proto.DeviceLocality.getDefaultInstance() : locality_;
       }
     
       public static final int INCARNATION_FIELD_NUMBER = 6;
    -  private long incarnation_;
    +  private long incarnation_ = 0L;
       /**
        * 
        * A device is assigned a global unique number each time it is
    @@ -211,7 +213,8 @@ public long getIncarnation() {
       }
     
       public static final int PHYSICAL_DEVICE_DESC_FIELD_NUMBER = 7;
    -  private volatile java.lang.Object physicalDeviceDesc_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object physicalDeviceDesc_ = "";
       /**
        * 
        * String representation of the physical device that this device maps to.
    @@ -257,7 +260,7 @@ public java.lang.String getPhysicalDeviceDesc() {
       }
     
       public static final int XLA_GLOBAL_ID_FIELD_NUMBER = 8;
    -  private long xlaGlobalId_;
    +  private long xlaGlobalId_ = 0L;
       /**
        * 
        * A physical device ID for use in XLA DeviceAssignments, unique across
    @@ -287,23 +290,23 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceType_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, deviceType_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceType_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, deviceType_);
         }
         if (memoryLimit_ != 0L) {
           output.writeInt64(4, memoryLimit_);
         }
    -    if (locality_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(5, getLocality());
         }
         if (incarnation_ != 0L) {
           output.writeFixed64(6, incarnation_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(physicalDeviceDesc_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 7, physicalDeviceDesc_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(physicalDeviceDesc_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 7, physicalDeviceDesc_);
         }
         if (xlaGlobalId_ != 0L) {
           output.writeInt64(8, xlaGlobalId_);
    @@ -317,17 +320,17 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceType_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, deviceType_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceType_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, deviceType_);
         }
         if (memoryLimit_ != 0L) {
           size += com.google.protobuf.CodedOutputStream
             .computeInt64Size(4, memoryLimit_);
         }
    -    if (locality_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(5, getLocality());
         }
    @@ -335,8 +338,8 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeFixed64Size(6, incarnation_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(physicalDeviceDesc_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, physicalDeviceDesc_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(physicalDeviceDesc_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(7, physicalDeviceDesc_);
         }
         if (xlaGlobalId_ != 0L) {
           size += com.google.protobuf.CodedOutputStream
    @@ -443,39 +446,41 @@ public static org.tensorflow.proto.DeviceAttributes parseFrom(
       }
       public static org.tensorflow.proto.DeviceAttributes parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DeviceAttributes parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.DeviceAttributes parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.DeviceAttributes parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.DeviceAttributes parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DeviceAttributes parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -495,7 +500,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -503,7 +508,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.DeviceAttributes}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.DeviceAttributes)
           org.tensorflow.proto.DeviceAttributesOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -512,7 +517,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DeviceAttributesProtos.internal_static_tensorflow_DeviceAttributes_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -521,35 +526,35 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.DeviceAttributes.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getLocalityFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           name_ = "";
    -
           deviceType_ = "";
    -
           memoryLimit_ = 0L;
    -
    -      if (localityBuilder_ == null) {
    -        locality_ = null;
    -      } else {
    -        locality_ = null;
    +      locality_ = null;
    +      if (localityBuilder_ != null) {
    +        localityBuilder_.dispose();
             localityBuilder_ = null;
           }
           incarnation_ = 0L;
    -
           physicalDeviceDesc_ = "";
    -
           xlaGlobalId_ = 0L;
    -
           return this;
         }
     
    @@ -576,53 +581,41 @@ public org.tensorflow.proto.DeviceAttributes build() {
         @java.lang.Override
         public org.tensorflow.proto.DeviceAttributes buildPartial() {
           org.tensorflow.proto.DeviceAttributes result = new org.tensorflow.proto.DeviceAttributes(this);
    -      result.name_ = name_;
    -      result.deviceType_ = deviceType_;
    -      result.memoryLimit_ = memoryLimit_;
    -      if (localityBuilder_ == null) {
    -        result.locality_ = locality_;
    -      } else {
    -        result.locality_ = localityBuilder_.build();
    -      }
    -      result.incarnation_ = incarnation_;
    -      result.physicalDeviceDesc_ = physicalDeviceDesc_;
    -      result.xlaGlobalId_ = xlaGlobalId_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.DeviceAttributes result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.name_ = name_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.deviceType_ = deviceType_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.memoryLimit_ = memoryLimit_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.locality_ = localityBuilder_ == null
    +            ? locality_
    +            : localityBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.incarnation_ = incarnation_;
    +      }
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.physicalDeviceDesc_ = physicalDeviceDesc_;
    +      }
    +      if (((from_bitField0_ & 0x00000040) != 0)) {
    +        result.xlaGlobalId_ = xlaGlobalId_;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.DeviceAttributes) {
    @@ -637,10 +630,12 @@ public Builder mergeFrom(org.tensorflow.proto.DeviceAttributes other) {
           if (other == org.tensorflow.proto.DeviceAttributes.getDefaultInstance()) return this;
           if (!other.getName().isEmpty()) {
             name_ = other.name_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getDeviceType().isEmpty()) {
             deviceType_ = other.deviceType_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (other.getMemoryLimit() != 0L) {
    @@ -654,6 +649,7 @@ public Builder mergeFrom(org.tensorflow.proto.DeviceAttributes other) {
           }
           if (!other.getPhysicalDeviceDesc().isEmpty()) {
             physicalDeviceDesc_ = other.physicalDeviceDesc_;
    +        bitField0_ |= 0x00000020;
             onChanged();
           }
           if (other.getXlaGlobalId() != 0L) {
    @@ -687,39 +683,39 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   name_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   deviceType_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 32: {
                   memoryLimit_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 32
                 case 42: {
                   input.readMessage(
                       getLocalityFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 42
                 case 49: {
                   incarnation_ = input.readFixed64();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 49
                 case 58: {
                   physicalDeviceDesc_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 58
                 case 64: {
                   xlaGlobalId_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000040;
                   break;
                 } // case 64
                 default: {
    @@ -737,6 +733,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object name_ = "";
         /**
    @@ -791,11 +788,9 @@ public java.lang.String getName() {
          */
         public Builder setName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -808,8 +803,8 @@ public Builder setName(
          * @return This builder for chaining.
          */
         public Builder clearName() {
    -      
           name_ = getDefaultInstance().getName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -824,12 +819,10 @@ public Builder clearName() {
          */
         public Builder setNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -887,11 +880,9 @@ public java.lang.String getDeviceType() {
          */
         public Builder setDeviceType(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           deviceType_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -904,8 +895,8 @@ public Builder setDeviceType(
          * @return This builder for chaining.
          */
         public Builder clearDeviceType() {
    -      
           deviceType_ = getDefaultInstance().getDeviceType();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -920,12 +911,10 @@ public Builder clearDeviceType() {
          */
         public Builder setDeviceTypeBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           deviceType_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -953,8 +942,9 @@ public long getMemoryLimit() {
          * @return This builder for chaining.
          */
         public Builder setMemoryLimit(long value) {
    -      
    +
           memoryLimit_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -967,14 +957,14 @@ public Builder setMemoryLimit(long value) {
          * @return This builder for chaining.
          */
         public Builder clearMemoryLimit() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           memoryLimit_ = 0L;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.DeviceLocality locality_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.DeviceLocality, org.tensorflow.proto.DeviceLocality.Builder, org.tensorflow.proto.DeviceLocalityOrBuilder> localityBuilder_;
         /**
          * 
    @@ -986,7 +976,7 @@ public Builder clearMemoryLimit() {
          * @return Whether the locality field is set.
          */
         public boolean hasLocality() {
    -      return localityBuilder_ != null || locality_ != null;
    +      return ((bitField0_ & 0x00000008) != 0);
         }
         /**
          * 
    @@ -1018,11 +1008,11 @@ public Builder setLocality(org.tensorflow.proto.DeviceLocality value) {
               throw new NullPointerException();
             }
             locality_ = value;
    -        onChanged();
           } else {
             localityBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000008;
    +      onChanged();
           return this;
         }
         /**
    @@ -1037,11 +1027,11 @@ public Builder setLocality(
             org.tensorflow.proto.DeviceLocality.Builder builderForValue) {
           if (localityBuilder_ == null) {
             locality_ = builderForValue.build();
    -        onChanged();
           } else {
             localityBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000008;
    +      onChanged();
           return this;
         }
         /**
    @@ -1054,17 +1044,20 @@ public Builder setLocality(
          */
         public Builder mergeLocality(org.tensorflow.proto.DeviceLocality value) {
           if (localityBuilder_ == null) {
    -        if (locality_ != null) {
    -          locality_ =
    -            org.tensorflow.proto.DeviceLocality.newBuilder(locality_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000008) != 0) &&
    +          locality_ != null &&
    +          locality_ != org.tensorflow.proto.DeviceLocality.getDefaultInstance()) {
    +          getLocalityBuilder().mergeFrom(value);
             } else {
               locality_ = value;
             }
    -        onChanged();
           } else {
             localityBuilder_.mergeFrom(value);
           }
    -
    +      if (locality_ != null) {
    +        bitField0_ |= 0x00000008;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -1076,14 +1069,13 @@ public Builder mergeLocality(org.tensorflow.proto.DeviceLocality value) {
          * .tensorflow.DeviceLocality locality = 5;
          */
         public Builder clearLocality() {
    -      if (localityBuilder_ == null) {
    -        locality_ = null;
    -        onChanged();
    -      } else {
    -        locality_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000008);
    +      locality_ = null;
    +      if (localityBuilder_ != null) {
    +        localityBuilder_.dispose();
             localityBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -1095,7 +1087,7 @@ public Builder clearLocality() {
          * .tensorflow.DeviceLocality locality = 5;
          */
         public org.tensorflow.proto.DeviceLocality.Builder getLocalityBuilder() {
    -      
    +      bitField0_ |= 0x00000008;
           onChanged();
           return getLocalityFieldBuilder().getBuilder();
         }
    @@ -1123,11 +1115,11 @@ public org.tensorflow.proto.DeviceLocalityOrBuilder getLocalityOrBuilder() {
          *
          * .tensorflow.DeviceLocality locality = 5;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.DeviceLocality, org.tensorflow.proto.DeviceLocality.Builder, org.tensorflow.proto.DeviceLocalityOrBuilder> 
             getLocalityFieldBuilder() {
           if (localityBuilder_ == null) {
    -        localityBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        localityBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.DeviceLocality, org.tensorflow.proto.DeviceLocality.Builder, org.tensorflow.proto.DeviceLocalityOrBuilder>(
                     getLocality(),
                     getParentForChildren(),
    @@ -1162,8 +1154,9 @@ public long getIncarnation() {
          * @return This builder for chaining.
          */
         public Builder setIncarnation(long value) {
    -      
    +
           incarnation_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1177,7 +1170,7 @@ public Builder setIncarnation(long value) {
          * @return This builder for chaining.
          */
         public Builder clearIncarnation() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000010);
           incarnation_ = 0L;
           onChanged();
           return this;
    @@ -1236,11 +1229,9 @@ public java.lang.String getPhysicalDeviceDesc() {
          */
         public Builder setPhysicalDeviceDesc(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           physicalDeviceDesc_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -1253,8 +1244,8 @@ public Builder setPhysicalDeviceDesc(
          * @return This builder for chaining.
          */
         public Builder clearPhysicalDeviceDesc() {
    -      
           physicalDeviceDesc_ = getDefaultInstance().getPhysicalDeviceDesc();
    +      bitField0_ = (bitField0_ & ~0x00000020);
           onChanged();
           return this;
         }
    @@ -1269,12 +1260,10 @@ public Builder clearPhysicalDeviceDesc() {
          */
         public Builder setPhysicalDeviceDescBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           physicalDeviceDesc_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -1306,8 +1295,9 @@ public long getXlaGlobalId() {
          * @return This builder for chaining.
          */
         public Builder setXlaGlobalId(long value) {
    -      
    +
           xlaGlobalId_ = value;
    +      bitField0_ |= 0x00000040;
           onChanged();
           return this;
         }
    @@ -1322,23 +1312,11 @@ public Builder setXlaGlobalId(long value) {
          * @return This builder for chaining.
          */
         public Builder clearXlaGlobalId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000040);
           xlaGlobalId_ = 0L;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.DeviceAttributes)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceAttributesOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceAttributesOrBuilder.java
    index df70f5dc31d..4215a2a77bf 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceAttributesOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceAttributesOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/device_attributes.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceAttributesProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceAttributesProtos.java
    index 235a1bc6bed..fcfebe652af 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceAttributesProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceAttributesProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/device_attributes.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class DeviceAttributesProtos {
       private DeviceAttributesProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      DeviceAttributesProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,22 +28,22 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_InterconnectLink_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_InterconnectLink_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_LocalLinks_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_LocalLinks_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_DeviceLocality_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_DeviceLocality_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_DeviceAttributes_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_DeviceAttributes_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -67,27 +78,28 @@ public static void registerAllExtensions(
         internal_static_tensorflow_InterconnectLink_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_InterconnectLink_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_InterconnectLink_descriptor,
             new java.lang.String[] { "DeviceId", "Type", "Strength", });
         internal_static_tensorflow_LocalLinks_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_LocalLinks_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_LocalLinks_descriptor,
             new java.lang.String[] { "Link", });
         internal_static_tensorflow_DeviceLocality_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_DeviceLocality_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_DeviceLocality_descriptor,
             new java.lang.String[] { "BusId", "NumaNode", "Links", });
         internal_static_tensorflow_DeviceAttributes_descriptor =
           getDescriptor().getMessageTypes().get(3);
         internal_static_tensorflow_DeviceAttributes_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_DeviceAttributes_descriptor,
             new java.lang.String[] { "Name", "DeviceType", "MemoryLimit", "Locality", "Incarnation", "PhysicalDeviceDesc", "XlaGlobalId", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceFiltersProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceFiltersProtos.java
    index a3c1b43b4df..c8e12f949a0 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceFiltersProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceFiltersProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/device_filters.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class DeviceFiltersProtos {
       private DeviceFiltersProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      DeviceFiltersProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,22 +28,22 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_TaskDeviceFilters_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_TaskDeviceFilters_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_JobDeviceFilters_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_JobDeviceFilters_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_JobDeviceFilters_TasksEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_JobDeviceFilters_TasksEntry_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_ClusterDeviceFilters_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_ClusterDeviceFilters_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -64,27 +75,28 @@ public static void registerAllExtensions(
         internal_static_tensorflow_TaskDeviceFilters_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_TaskDeviceFilters_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_TaskDeviceFilters_descriptor,
             new java.lang.String[] { "DeviceFilters", });
         internal_static_tensorflow_JobDeviceFilters_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_JobDeviceFilters_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_JobDeviceFilters_descriptor,
             new java.lang.String[] { "Name", "Tasks", });
         internal_static_tensorflow_JobDeviceFilters_TasksEntry_descriptor =
           internal_static_tensorflow_JobDeviceFilters_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_JobDeviceFilters_TasksEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_JobDeviceFilters_TasksEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_ClusterDeviceFilters_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_ClusterDeviceFilters_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_ClusterDeviceFilters_descriptor,
             new java.lang.String[] { "Jobs", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceLocality.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceLocality.java
    index 3634671971a..518cc8fd33b 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceLocality.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceLocality.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/device_attributes.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,44 +9,42 @@
      * Protobuf type {@code tensorflow.DeviceLocality}
      */
     public final class DeviceLocality extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.DeviceLocality)
         DeviceLocalityOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      DeviceLocality.class.getName());
    +  }
       // Use DeviceLocality.newBuilder() to construct.
    -  private DeviceLocality(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private DeviceLocality(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private DeviceLocality() {
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new DeviceLocality();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.DeviceAttributesProtos.internal_static_tensorflow_DeviceLocality_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.DeviceAttributesProtos.internal_static_tensorflow_DeviceLocality_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.DeviceLocality.class, org.tensorflow.proto.DeviceLocality.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int BUS_ID_FIELD_NUMBER = 1;
    -  private int busId_;
    +  private int busId_ = 0;
       /**
        * 
        * Optional bus locality of device.  Default value of 0 means
    @@ -60,7 +60,7 @@ public int getBusId() {
       }
     
       public static final int NUMA_NODE_FIELD_NUMBER = 2;
    -  private int numaNode_;
    +  private int numaNode_ = 0;
       /**
        * 
        * Optional NUMA locality of device.
    @@ -86,7 +86,7 @@ public int getNumaNode() {
        */
       @java.lang.Override
       public boolean hasLinks() {
    -    return links_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -109,7 +109,7 @@ public org.tensorflow.proto.LocalLinks getLinks() {
        */
       @java.lang.Override
       public org.tensorflow.proto.LocalLinksOrBuilder getLinksOrBuilder() {
    -    return getLinks();
    +    return links_ == null ? org.tensorflow.proto.LocalLinks.getDefaultInstance() : links_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -132,7 +132,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (numaNode_ != 0) {
           output.writeInt32(2, numaNode_);
         }
    -    if (links_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(3, getLinks());
         }
         getUnknownFields().writeTo(output);
    @@ -152,7 +152,7 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeInt32Size(2, numaNode_);
         }
    -    if (links_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(3, getLinks());
         }
    @@ -238,39 +238,41 @@ public static org.tensorflow.proto.DeviceLocality parseFrom(
       }
       public static org.tensorflow.proto.DeviceLocality parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DeviceLocality parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.DeviceLocality parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.DeviceLocality parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.DeviceLocality parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DeviceLocality parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -290,7 +292,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -298,7 +300,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.DeviceLocality}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.DeviceLocality)
           org.tensorflow.proto.DeviceLocalityOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -307,7 +309,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DeviceAttributesProtos.internal_static_tensorflow_DeviceLocality_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -316,25 +318,29 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.DeviceLocality.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getLinksFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           busId_ = 0;
    -
           numaNode_ = 0;
    -
    -      if (linksBuilder_ == null) {
    -        links_ = null;
    -      } else {
    -        links_ = null;
    +      links_ = null;
    +      if (linksBuilder_ != null) {
    +        linksBuilder_.dispose();
             linksBuilder_ = null;
           }
           return this;
    @@ -363,49 +369,29 @@ public org.tensorflow.proto.DeviceLocality build() {
         @java.lang.Override
         public org.tensorflow.proto.DeviceLocality buildPartial() {
           org.tensorflow.proto.DeviceLocality result = new org.tensorflow.proto.DeviceLocality(this);
    -      result.busId_ = busId_;
    -      result.numaNode_ = numaNode_;
    -      if (linksBuilder_ == null) {
    -        result.links_ = links_;
    -      } else {
    -        result.links_ = linksBuilder_.build();
    -      }
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.DeviceLocality result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.busId_ = busId_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.numaNode_ = numaNode_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.links_ = linksBuilder_ == null
    +            ? links_
    +            : linksBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.DeviceLocality) {
    @@ -455,19 +441,19 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   busId_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 16: {
                   numaNode_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 case 26: {
                   input.readMessage(
                       getLinksFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 default: {
    @@ -485,6 +471,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private int busId_ ;
         /**
    @@ -511,8 +498,9 @@ public int getBusId() {
          * @return This builder for chaining.
          */
         public Builder setBusId(int value) {
    -      
    +
           busId_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -526,7 +514,7 @@ public Builder setBusId(int value) {
          * @return This builder for chaining.
          */
         public Builder clearBusId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           busId_ = 0;
           onChanged();
           return this;
    @@ -555,8 +543,9 @@ public int getNumaNode() {
          * @return This builder for chaining.
          */
         public Builder setNumaNode(int value) {
    -      
    +
           numaNode_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -569,14 +558,14 @@ public Builder setNumaNode(int value) {
          * @return This builder for chaining.
          */
         public Builder clearNumaNode() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           numaNode_ = 0;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.LocalLinks links_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.LocalLinks, org.tensorflow.proto.LocalLinks.Builder, org.tensorflow.proto.LocalLinksOrBuilder> linksBuilder_;
         /**
          * 
    @@ -587,7 +576,7 @@ public Builder clearNumaNode() {
          * @return Whether the links field is set.
          */
         public boolean hasLinks() {
    -      return linksBuilder_ != null || links_ != null;
    +      return ((bitField0_ & 0x00000004) != 0);
         }
         /**
          * 
    @@ -617,11 +606,11 @@ public Builder setLinks(org.tensorflow.proto.LocalLinks value) {
               throw new NullPointerException();
             }
             links_ = value;
    -        onChanged();
           } else {
             linksBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -635,11 +624,11 @@ public Builder setLinks(
             org.tensorflow.proto.LocalLinks.Builder builderForValue) {
           if (linksBuilder_ == null) {
             links_ = builderForValue.build();
    -        onChanged();
           } else {
             linksBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -651,17 +640,20 @@ public Builder setLinks(
          */
         public Builder mergeLinks(org.tensorflow.proto.LocalLinks value) {
           if (linksBuilder_ == null) {
    -        if (links_ != null) {
    -          links_ =
    -            org.tensorflow.proto.LocalLinks.newBuilder(links_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000004) != 0) &&
    +          links_ != null &&
    +          links_ != org.tensorflow.proto.LocalLinks.getDefaultInstance()) {
    +          getLinksBuilder().mergeFrom(value);
             } else {
               links_ = value;
             }
    -        onChanged();
           } else {
             linksBuilder_.mergeFrom(value);
           }
    -
    +      if (links_ != null) {
    +        bitField0_ |= 0x00000004;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -672,14 +664,13 @@ public Builder mergeLinks(org.tensorflow.proto.LocalLinks value) {
          * .tensorflow.LocalLinks links = 3;
          */
         public Builder clearLinks() {
    -      if (linksBuilder_ == null) {
    -        links_ = null;
    -        onChanged();
    -      } else {
    -        links_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000004);
    +      links_ = null;
    +      if (linksBuilder_ != null) {
    +        linksBuilder_.dispose();
             linksBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -690,7 +681,7 @@ public Builder clearLinks() {
          * .tensorflow.LocalLinks links = 3;
          */
         public org.tensorflow.proto.LocalLinks.Builder getLinksBuilder() {
    -      
    +      bitField0_ |= 0x00000004;
           onChanged();
           return getLinksFieldBuilder().getBuilder();
         }
    @@ -716,11 +707,11 @@ public org.tensorflow.proto.LocalLinksOrBuilder getLinksOrBuilder() {
          *
          * .tensorflow.LocalLinks links = 3;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.LocalLinks, org.tensorflow.proto.LocalLinks.Builder, org.tensorflow.proto.LocalLinksOrBuilder> 
             getLinksFieldBuilder() {
           if (linksBuilder_ == null) {
    -        linksBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        linksBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.LocalLinks, org.tensorflow.proto.LocalLinks.Builder, org.tensorflow.proto.LocalLinksOrBuilder>(
                     getLinks(),
                     getParentForChildren(),
    @@ -729,18 +720,6 @@ public org.tensorflow.proto.LocalLinksOrBuilder getLinksOrBuilder() {
           }
           return linksBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.DeviceLocality)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceLocalityOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceLocalityOrBuilder.java
    index 5f5e16d0ee1..b236260b347 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceLocalityOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceLocalityOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/device_attributes.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DevicePropertiesProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DevicePropertiesProtos.java
    index 2ab281f964d..c02de359e02 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DevicePropertiesProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DevicePropertiesProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/device_properties.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class DevicePropertiesProtos {
       private DevicePropertiesProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      DevicePropertiesProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -141,7 +152,6 @@ boolean containsEnvironment(
          *
          * map<string, string> environment = 6;
          */
    -
         /* nullable */
     java.lang.String getEnvironmentOrDefault(
             java.lang.String key,
    @@ -155,7 +165,6 @@ java.lang.String getEnvironmentOrDefault(
          *
          * map<string, string> environment = 6;
          */
    -
         java.lang.String getEnvironmentOrThrow(
             java.lang.String key);
     
    @@ -234,12 +243,21 @@ java.lang.String getEnvironmentOrThrow(
        * Protobuf type {@code tensorflow.DeviceProperties}
        */
       public static final class DeviceProperties extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.DeviceProperties)
           DevicePropertiesOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        DeviceProperties.class.getName());
    +    }
         // Use DeviceProperties.newBuilder() to construct.
    -    private DeviceProperties(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private DeviceProperties(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private DeviceProperties() {
    @@ -248,18 +266,6 @@ private DeviceProperties() {
           model_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new DeviceProperties();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.DevicePropertiesProtos.internal_static_tensorflow_DeviceProperties_descriptor;
    @@ -267,7 +273,7 @@ protected java.lang.Object newInstance(
     
         @SuppressWarnings({"rawtypes"})
         @java.lang.Override
    -    protected com.google.protobuf.MapField internalGetMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
             int number) {
           switch (number) {
             case 6:
    @@ -278,7 +284,7 @@ protected com.google.protobuf.MapField internalGetMapField(
           }
         }
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DevicePropertiesProtos.internal_static_tensorflow_DeviceProperties_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -286,7 +292,8 @@ protected com.google.protobuf.MapField internalGetMapField(
         }
     
         public static final int TYPE_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object type_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object type_ = "";
         /**
          * 
          * Device type (CPU, GPU, ...)
    @@ -332,7 +339,8 @@ public java.lang.String getType() {
         }
     
         public static final int VENDOR_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object vendor_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object vendor_ = "";
         /**
          * 
          * Vendor (Intel, nvidia, ...)
    @@ -378,7 +386,8 @@ public java.lang.String getVendor() {
         }
     
         public static final int MODEL_FIELD_NUMBER = 3;
    -    private volatile java.lang.Object model_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object model_ = "";
         /**
          * 
          * Model (Haswell, K40, ...)
    @@ -424,7 +433,7 @@ public java.lang.String getModel() {
         }
     
         public static final int FREQUENCY_FIELD_NUMBER = 4;
    -    private long frequency_;
    +    private long frequency_ = 0L;
         /**
          * 
          * Core Frequency in Mhz
    @@ -439,7 +448,7 @@ public long getFrequency() {
         }
     
         public static final int NUM_CORES_FIELD_NUMBER = 5;
    -    private long numCores_;
    +    private long numCores_ = 0L;
         /**
          * 
          * Number of cores
    @@ -465,6 +474,7 @@ private static final class EnvironmentDefaultEntryHolder {
                       com.google.protobuf.WireFormat.FieldType.STRING,
                       "");
         }
    +    @SuppressWarnings("serial")
         private com.google.protobuf.MapField<
             java.lang.String, java.lang.String> environment_;
         private com.google.protobuf.MapField
    @@ -475,7 +485,6 @@ private static final class EnvironmentDefaultEntryHolder {
           }
           return environment_;
         }
    -
         public int getEnvironmentCount() {
           return internalGetEnvironment().getMap().size();
         }
    @@ -487,7 +496,6 @@ public int getEnvironmentCount() {
          *
          * map<string, string> environment = 6;
          */
    -
         @java.lang.Override
         public boolean containsEnvironment(
             java.lang.String key) {
    @@ -511,7 +519,6 @@ public java.util.Map getEnvironment() {
          * map<string, string> environment = 6;
          */
         @java.lang.Override
    -
         public java.util.Map getEnvironmentMap() {
           return internalGetEnvironment().getMap();
         }
    @@ -524,10 +531,11 @@ public java.util.Map getEnvironmentMap() {
          * map<string, string> environment = 6;
          */
         @java.lang.Override
    -
    -    public java.lang.String getEnvironmentOrDefault(
    +    public /* nullable */
    +java.lang.String getEnvironmentOrDefault(
             java.lang.String key,
    -        java.lang.String defaultValue) {
    +        /* nullable */
    +java.lang.String defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
           java.util.Map map =
               internalGetEnvironment().getMap();
    @@ -542,7 +550,6 @@ public java.lang.String getEnvironmentOrDefault(
          * map<string, string> environment = 6;
          */
         @java.lang.Override
    -
         public java.lang.String getEnvironmentOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -555,7 +562,7 @@ public java.lang.String getEnvironmentOrThrow(
         }
     
         public static final int NUM_REGISTERS_FIELD_NUMBER = 7;
    -    private long numRegisters_;
    +    private long numRegisters_ = 0L;
         /**
          * 
          * Number of registers per core.
    @@ -570,7 +577,7 @@ public long getNumRegisters() {
         }
     
         public static final int L1_CACHE_SIZE_FIELD_NUMBER = 8;
    -    private long l1CacheSize_;
    +    private long l1CacheSize_ = 0L;
         /**
          * 
          * L1 cache size in bytes
    @@ -585,7 +592,7 @@ public long getL1CacheSize() {
         }
     
         public static final int L2_CACHE_SIZE_FIELD_NUMBER = 9;
    -    private long l2CacheSize_;
    +    private long l2CacheSize_ = 0L;
         /**
          * 
          * L2 cache size in bytes
    @@ -600,7 +607,7 @@ public long getL2CacheSize() {
         }
     
         public static final int L3_CACHE_SIZE_FIELD_NUMBER = 10;
    -    private long l3CacheSize_;
    +    private long l3CacheSize_ = 0L;
         /**
          * 
          * L3 cache size in bytes
    @@ -615,7 +622,7 @@ public long getL3CacheSize() {
         }
     
         public static final int SHARED_MEMORY_SIZE_PER_MULTIPROCESSOR_FIELD_NUMBER = 11;
    -    private long sharedMemorySizePerMultiprocessor_;
    +    private long sharedMemorySizePerMultiprocessor_ = 0L;
         /**
          * 
          * Shared memory size per multiprocessor in bytes. This field is
    @@ -631,7 +638,7 @@ public long getSharedMemorySizePerMultiprocessor() {
         }
     
         public static final int MEMORY_SIZE_FIELD_NUMBER = 12;
    -    private long memorySize_;
    +    private long memorySize_ = 0L;
         /**
          * 
          * Memory size in bytes
    @@ -646,7 +653,7 @@ public long getMemorySize() {
         }
     
         public static final int BANDWIDTH_FIELD_NUMBER = 13;
    -    private long bandwidth_;
    +    private long bandwidth_ = 0L;
         /**
          * 
          * Memory bandwidth in KB/s
    @@ -674,14 +681,14 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(type_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, type_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(type_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, type_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(vendor_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, vendor_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(vendor_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, vendor_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(model_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, model_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(model_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 3, model_);
           }
           if (frequency_ != 0L) {
             output.writeInt64(4, frequency_);
    @@ -689,7 +696,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (numCores_ != 0L) {
             output.writeInt64(5, numCores_);
           }
    -      com.google.protobuf.GeneratedMessageV3
    +      com.google.protobuf.GeneratedMessage
             .serializeStringMapTo(
               output,
               internalGetEnvironment(),
    @@ -725,14 +732,14 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(type_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, type_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(type_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, type_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(vendor_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, vendor_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(vendor_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, vendor_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(model_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, model_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(model_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(3, model_);
           }
           if (frequency_ != 0L) {
             size += com.google.protobuf.CodedOutputStream
    @@ -908,39 +915,41 @@ public static org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties parse
         }
         public static org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -960,7 +969,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -968,7 +977,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.DeviceProperties}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.DeviceProperties)
             org.tensorflow.proto.DevicePropertiesProtos.DevicePropertiesOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -977,7 +986,7 @@ public static final class Builder extends
           }
     
           @SuppressWarnings({"rawtypes"})
    -      protected com.google.protobuf.MapField internalGetMapField(
    +      protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
               int number) {
             switch (number) {
               case 6:
    @@ -988,7 +997,7 @@ protected com.google.protobuf.MapField internalGetMapField(
             }
           }
           @SuppressWarnings({"rawtypes"})
    -      protected com.google.protobuf.MapField internalGetMutableMapField(
    +      protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(
               int number) {
             switch (number) {
               case 6:
    @@ -999,7 +1008,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
             }
           }
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.DevicePropertiesProtos.internal_static_tensorflow_DeviceProperties_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -1012,38 +1021,27 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             type_ = "";
    -
             vendor_ = "";
    -
             model_ = "";
    -
             frequency_ = 0L;
    -
             numCores_ = 0L;
    -
             internalGetMutableEnvironment().clear();
             numRegisters_ = 0L;
    -
             l1CacheSize_ = 0L;
    -
             l2CacheSize_ = 0L;
    -
             l3CacheSize_ = 0L;
    -
             sharedMemorySizePerMultiprocessor_ = 0L;
    -
             memorySize_ = 0L;
    -
             bandwidth_ = 0L;
    -
             return this;
           }
     
    @@ -1070,57 +1068,55 @@ public org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties build() {
           @java.lang.Override
           public org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties buildPartial() {
             org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties result = new org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties(this);
    -        int from_bitField0_ = bitField0_;
    -        result.type_ = type_;
    -        result.vendor_ = vendor_;
    -        result.model_ = model_;
    -        result.frequency_ = frequency_;
    -        result.numCores_ = numCores_;
    -        result.environment_ = internalGetEnvironment();
    -        result.environment_.makeImmutable();
    -        result.numRegisters_ = numRegisters_;
    -        result.l1CacheSize_ = l1CacheSize_;
    -        result.l2CacheSize_ = l2CacheSize_;
    -        result.l3CacheSize_ = l3CacheSize_;
    -        result.sharedMemorySizePerMultiprocessor_ = sharedMemorySizePerMultiprocessor_;
    -        result.memorySize_ = memorySize_;
    -        result.bandwidth_ = bandwidth_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.type_ = type_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.vendor_ = vendor_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.model_ = model_;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.frequency_ = frequency_;
    +        }
    +        if (((from_bitField0_ & 0x00000010) != 0)) {
    +          result.numCores_ = numCores_;
    +        }
    +        if (((from_bitField0_ & 0x00000020) != 0)) {
    +          result.environment_ = internalGetEnvironment();
    +          result.environment_.makeImmutable();
    +        }
    +        if (((from_bitField0_ & 0x00000040) != 0)) {
    +          result.numRegisters_ = numRegisters_;
    +        }
    +        if (((from_bitField0_ & 0x00000080) != 0)) {
    +          result.l1CacheSize_ = l1CacheSize_;
    +        }
    +        if (((from_bitField0_ & 0x00000100) != 0)) {
    +          result.l2CacheSize_ = l2CacheSize_;
    +        }
    +        if (((from_bitField0_ & 0x00000200) != 0)) {
    +          result.l3CacheSize_ = l3CacheSize_;
    +        }
    +        if (((from_bitField0_ & 0x00000400) != 0)) {
    +          result.sharedMemorySizePerMultiprocessor_ = sharedMemorySizePerMultiprocessor_;
    +        }
    +        if (((from_bitField0_ & 0x00000800) != 0)) {
    +          result.memorySize_ = memorySize_;
    +        }
    +        if (((from_bitField0_ & 0x00001000) != 0)) {
    +          result.bandwidth_ = bandwidth_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties) {
    @@ -1135,14 +1131,17 @@ public Builder mergeFrom(org.tensorflow.proto.DevicePropertiesProtos.DevicePrope
             if (other == org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties.getDefaultInstance()) return this;
             if (!other.getType().isEmpty()) {
               type_ = other.type_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (!other.getVendor().isEmpty()) {
               vendor_ = other.vendor_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             if (!other.getModel().isEmpty()) {
               model_ = other.model_;
    +          bitField0_ |= 0x00000004;
               onChanged();
             }
             if (other.getFrequency() != 0L) {
    @@ -1153,6 +1152,7 @@ public Builder mergeFrom(org.tensorflow.proto.DevicePropertiesProtos.DevicePrope
             }
             internalGetMutableEnvironment().mergeFrom(
                 other.internalGetEnvironment());
    +        bitField0_ |= 0x00000020;
             if (other.getNumRegisters() != 0L) {
               setNumRegisters(other.getNumRegisters());
             }
    @@ -1202,27 +1202,27 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     type_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     vendor_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 26: {
                     model_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 26
                   case 32: {
                     frequency_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 32
                   case 40: {
                     numCores_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000010;
                     break;
                   } // case 40
                   case 50: {
    @@ -1231,41 +1231,42 @@ public Builder mergeFrom(
                         EnvironmentDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                     internalGetMutableEnvironment().getMutableMap().put(
                         environment__.getKey(), environment__.getValue());
    +                bitField0_ |= 0x00000020;
                     break;
                   } // case 50
                   case 56: {
                     numRegisters_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000040;
                     break;
                   } // case 56
                   case 64: {
                     l1CacheSize_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000080;
                     break;
                   } // case 64
                   case 72: {
                     l2CacheSize_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000100;
                     break;
                   } // case 72
                   case 80: {
                     l3CacheSize_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000200;
                     break;
                   } // case 80
                   case 88: {
                     sharedMemorySizePerMultiprocessor_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000400;
                     break;
                   } // case 88
                   case 96: {
                     memorySize_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000800;
                     break;
                   } // case 96
                   case 104: {
                     bandwidth_ = input.readInt64();
    -
    +                bitField0_ |= 0x00001000;
                     break;
                   } // case 104
                   default: {
    @@ -1338,11 +1339,9 @@ public java.lang.String getType() {
            */
           public Builder setType(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             type_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -1355,8 +1354,8 @@ public Builder setType(
            * @return This builder for chaining.
            */
           public Builder clearType() {
    -        
             type_ = getDefaultInstance().getType();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -1371,12 +1370,10 @@ public Builder clearType() {
            */
           public Builder setTypeBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             type_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -1434,11 +1431,9 @@ public java.lang.String getVendor() {
            */
           public Builder setVendor(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             vendor_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1451,8 +1446,8 @@ public Builder setVendor(
            * @return This builder for chaining.
            */
           public Builder clearVendor() {
    -        
             vendor_ = getDefaultInstance().getVendor();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -1467,12 +1462,10 @@ public Builder clearVendor() {
            */
           public Builder setVendorBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             vendor_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1530,11 +1523,9 @@ public java.lang.String getModel() {
            */
           public Builder setModel(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             model_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1547,8 +1538,8 @@ public Builder setModel(
            * @return This builder for chaining.
            */
           public Builder clearModel() {
    -        
             model_ = getDefaultInstance().getModel();
    +        bitField0_ = (bitField0_ & ~0x00000004);
             onChanged();
             return this;
           }
    @@ -1563,12 +1554,10 @@ public Builder clearModel() {
            */
           public Builder setModelBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             model_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1596,8 +1585,9 @@ public long getFrequency() {
            * @return This builder for chaining.
            */
           public Builder setFrequency(long value) {
    -        
    +
             frequency_ = value;
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -1610,7 +1600,7 @@ public Builder setFrequency(long value) {
            * @return This builder for chaining.
            */
           public Builder clearFrequency() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000008);
             frequency_ = 0L;
             onChanged();
             return this;
    @@ -1639,8 +1629,9 @@ public long getNumCores() {
            * @return This builder for chaining.
            */
           public Builder setNumCores(long value) {
    -        
    +
             numCores_ = value;
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -1653,7 +1644,7 @@ public Builder setNumCores(long value) {
            * @return This builder for chaining.
            */
           public Builder clearNumCores() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000010);
             numCores_ = 0L;
             onChanged();
             return this;
    @@ -1662,7 +1653,7 @@ public Builder clearNumCores() {
           private com.google.protobuf.MapField<
               java.lang.String, java.lang.String> environment_;
           private com.google.protobuf.MapField
    -      internalGetEnvironment() {
    +          internalGetEnvironment() {
             if (environment_ == null) {
               return com.google.protobuf.MapField.emptyMapField(
                   EnvironmentDefaultEntryHolder.defaultEntry);
    @@ -1670,8 +1661,7 @@ public Builder clearNumCores() {
             return environment_;
           }
           private com.google.protobuf.MapField
    -      internalGetMutableEnvironment() {
    -        onChanged();;
    +          internalGetMutableEnvironment() {
             if (environment_ == null) {
               environment_ = com.google.protobuf.MapField.newMapField(
                   EnvironmentDefaultEntryHolder.defaultEntry);
    @@ -1679,9 +1669,10 @@ public Builder clearNumCores() {
             if (!environment_.isMutable()) {
               environment_ = environment_.copy();
             }
    +        bitField0_ |= 0x00000020;
    +        onChanged();
             return environment_;
           }
    -
           public int getEnvironmentCount() {
             return internalGetEnvironment().getMap().size();
           }
    @@ -1693,7 +1684,6 @@ public int getEnvironmentCount() {
            *
            * map<string, string> environment = 6;
            */
    -
           @java.lang.Override
           public boolean containsEnvironment(
               java.lang.String key) {
    @@ -1717,7 +1707,6 @@ public java.util.Map getEnvironment() {
            * map<string, string> environment = 6;
            */
           @java.lang.Override
    -
           public java.util.Map getEnvironmentMap() {
             return internalGetEnvironment().getMap();
           }
    @@ -1730,10 +1719,11 @@ public java.util.Map getEnvironmentMap() {
            * map<string, string> environment = 6;
            */
           @java.lang.Override
    -
    -      public java.lang.String getEnvironmentOrDefault(
    +      public /* nullable */
    +java.lang.String getEnvironmentOrDefault(
               java.lang.String key,
    -          java.lang.String defaultValue) {
    +          /* nullable */
    +java.lang.String defaultValue) {
             if (key == null) { throw new NullPointerException("map key"); }
             java.util.Map map =
                 internalGetEnvironment().getMap();
    @@ -1748,7 +1738,6 @@ public java.lang.String getEnvironmentOrDefault(
            * map<string, string> environment = 6;
            */
           @java.lang.Override
    -
           public java.lang.String getEnvironmentOrThrow(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    @@ -1759,8 +1748,8 @@ public java.lang.String getEnvironmentOrThrow(
             }
             return map.get(key);
           }
    -
           public Builder clearEnvironment() {
    +        bitField0_ = (bitField0_ & ~0x00000020);
             internalGetMutableEnvironment().getMutableMap()
                 .clear();
             return this;
    @@ -1773,7 +1762,6 @@ public Builder clearEnvironment() {
            *
            * map<string, string> environment = 6;
            */
    -
           public Builder removeEnvironment(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    @@ -1786,7 +1774,8 @@ public Builder removeEnvironment(
            */
           @java.lang.Deprecated
           public java.util.Map
    -      getMutableEnvironment() {
    +          getMutableEnvironment() {
    +        bitField0_ |= 0x00000020;
             return internalGetMutableEnvironment().getMutableMap();
           }
           /**
    @@ -1801,12 +1790,10 @@ public Builder putEnvironment(
               java.lang.String key,
               java.lang.String value) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    +        if (value == null) { throw new NullPointerException("map value"); }
             internalGetMutableEnvironment().getMutableMap()
                 .put(key, value);
    +        bitField0_ |= 0x00000020;
             return this;
           }
           /**
    @@ -1817,11 +1804,11 @@ public Builder putEnvironment(
            *
            * map<string, string> environment = 6;
            */
    -
           public Builder putAllEnvironment(
               java.util.Map values) {
             internalGetMutableEnvironment().getMutableMap()
                 .putAll(values);
    +        bitField0_ |= 0x00000020;
             return this;
           }
     
    @@ -1848,8 +1835,9 @@ public long getNumRegisters() {
            * @return This builder for chaining.
            */
           public Builder setNumRegisters(long value) {
    -        
    +
             numRegisters_ = value;
    +        bitField0_ |= 0x00000040;
             onChanged();
             return this;
           }
    @@ -1862,7 +1850,7 @@ public Builder setNumRegisters(long value) {
            * @return This builder for chaining.
            */
           public Builder clearNumRegisters() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000040);
             numRegisters_ = 0L;
             onChanged();
             return this;
    @@ -1891,8 +1879,9 @@ public long getL1CacheSize() {
            * @return This builder for chaining.
            */
           public Builder setL1CacheSize(long value) {
    -        
    +
             l1CacheSize_ = value;
    +        bitField0_ |= 0x00000080;
             onChanged();
             return this;
           }
    @@ -1905,7 +1894,7 @@ public Builder setL1CacheSize(long value) {
            * @return This builder for chaining.
            */
           public Builder clearL1CacheSize() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000080);
             l1CacheSize_ = 0L;
             onChanged();
             return this;
    @@ -1934,8 +1923,9 @@ public long getL2CacheSize() {
            * @return This builder for chaining.
            */
           public Builder setL2CacheSize(long value) {
    -        
    +
             l2CacheSize_ = value;
    +        bitField0_ |= 0x00000100;
             onChanged();
             return this;
           }
    @@ -1948,7 +1938,7 @@ public Builder setL2CacheSize(long value) {
            * @return This builder for chaining.
            */
           public Builder clearL2CacheSize() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000100);
             l2CacheSize_ = 0L;
             onChanged();
             return this;
    @@ -1977,8 +1967,9 @@ public long getL3CacheSize() {
            * @return This builder for chaining.
            */
           public Builder setL3CacheSize(long value) {
    -        
    +
             l3CacheSize_ = value;
    +        bitField0_ |= 0x00000200;
             onChanged();
             return this;
           }
    @@ -1991,7 +1982,7 @@ public Builder setL3CacheSize(long value) {
            * @return This builder for chaining.
            */
           public Builder clearL3CacheSize() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000200);
             l3CacheSize_ = 0L;
             onChanged();
             return this;
    @@ -2022,8 +2013,9 @@ public long getSharedMemorySizePerMultiprocessor() {
            * @return This builder for chaining.
            */
           public Builder setSharedMemorySizePerMultiprocessor(long value) {
    -        
    +
             sharedMemorySizePerMultiprocessor_ = value;
    +        bitField0_ |= 0x00000400;
             onChanged();
             return this;
           }
    @@ -2037,7 +2029,7 @@ public Builder setSharedMemorySizePerMultiprocessor(long value) {
            * @return This builder for chaining.
            */
           public Builder clearSharedMemorySizePerMultiprocessor() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000400);
             sharedMemorySizePerMultiprocessor_ = 0L;
             onChanged();
             return this;
    @@ -2066,8 +2058,9 @@ public long getMemorySize() {
            * @return This builder for chaining.
            */
           public Builder setMemorySize(long value) {
    -        
    +
             memorySize_ = value;
    +        bitField0_ |= 0x00000800;
             onChanged();
             return this;
           }
    @@ -2080,7 +2073,7 @@ public Builder setMemorySize(long value) {
            * @return This builder for chaining.
            */
           public Builder clearMemorySize() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000800);
             memorySize_ = 0L;
             onChanged();
             return this;
    @@ -2109,8 +2102,9 @@ public long getBandwidth() {
            * @return This builder for chaining.
            */
           public Builder setBandwidth(long value) {
    -        
    +
             bandwidth_ = value;
    +        bitField0_ |= 0x00001000;
             onChanged();
             return this;
           }
    @@ -2123,23 +2117,11 @@ public Builder setBandwidth(long value) {
            * @return This builder for chaining.
            */
           public Builder clearBandwidth() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00001000);
             bandwidth_ = 0L;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.DeviceProperties)
         }
    @@ -2227,45 +2209,44 @@ public interface NamedDeviceOrBuilder extends
        * Protobuf type {@code tensorflow.NamedDevice}
        */
       public static final class NamedDevice extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.NamedDevice)
           NamedDeviceOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        NamedDevice.class.getName());
    +    }
         // Use NamedDevice.newBuilder() to construct.
    -    private NamedDevice(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private NamedDevice(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private NamedDevice() {
           name_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new NamedDevice();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.DevicePropertiesProtos.internal_static_tensorflow_NamedDevice_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DevicePropertiesProtos.internal_static_tensorflow_NamedDevice_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
                   org.tensorflow.proto.DevicePropertiesProtos.NamedDevice.class, org.tensorflow.proto.DevicePropertiesProtos.NamedDevice.Builder.class);
         }
     
    +    private int bitField0_;
         public static final int NAME_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object name_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object name_ = "";
         /**
          * string name = 1;
          * @return The name.
    @@ -2310,7 +2291,7 @@ public java.lang.String getName() {
          */
         @java.lang.Override
         public boolean hasProperties() {
    -      return properties_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * .tensorflow.DeviceProperties properties = 2;
    @@ -2325,7 +2306,7 @@ public org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties getPropertie
          */
         @java.lang.Override
         public org.tensorflow.proto.DevicePropertiesProtos.DevicePropertiesOrBuilder getPropertiesOrBuilder() {
    -      return getProperties();
    +      return properties_ == null ? org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties.getDefaultInstance() : properties_;
         }
     
         private byte memoizedIsInitialized = -1;
    @@ -2342,10 +2323,10 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
           }
    -      if (properties_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(2, getProperties());
           }
           getUnknownFields().writeTo(output);
    @@ -2357,10 +2338,10 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
           }
    -      if (properties_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(2, getProperties());
           }
    @@ -2442,39 +2423,41 @@ public static org.tensorflow.proto.DevicePropertiesProtos.NamedDevice parseFrom(
         }
         public static org.tensorflow.proto.DevicePropertiesProtos.NamedDevice parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.DevicePropertiesProtos.NamedDevice parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.DevicePropertiesProtos.NamedDevice parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.DevicePropertiesProtos.NamedDevice parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.DevicePropertiesProtos.NamedDevice parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.DevicePropertiesProtos.NamedDevice parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -2494,7 +2477,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -2502,7 +2485,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.NamedDevice}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.NamedDevice)
             org.tensorflow.proto.DevicePropertiesProtos.NamedDeviceOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -2511,7 +2494,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.DevicePropertiesProtos.internal_static_tensorflow_NamedDevice_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -2520,23 +2503,28 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.DevicePropertiesProtos.NamedDevice.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getPropertiesFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             name_ = "";
    -
    -        if (propertiesBuilder_ == null) {
    -          properties_ = null;
    -        } else {
    -          properties_ = null;
    +        properties_ = null;
    +        if (propertiesBuilder_ != null) {
    +          propertiesBuilder_.dispose();
               propertiesBuilder_ = null;
             }
             return this;
    @@ -2565,48 +2553,26 @@ public org.tensorflow.proto.DevicePropertiesProtos.NamedDevice build() {
           @java.lang.Override
           public org.tensorflow.proto.DevicePropertiesProtos.NamedDevice buildPartial() {
             org.tensorflow.proto.DevicePropertiesProtos.NamedDevice result = new org.tensorflow.proto.DevicePropertiesProtos.NamedDevice(this);
    -        result.name_ = name_;
    -        if (propertiesBuilder_ == null) {
    -          result.properties_ = properties_;
    -        } else {
    -          result.properties_ = propertiesBuilder_.build();
    -        }
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.DevicePropertiesProtos.NamedDevice result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.name_ = name_;
    +        }
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.properties_ = propertiesBuilder_ == null
    +              ? properties_
    +              : propertiesBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.DevicePropertiesProtos.NamedDevice) {
    @@ -2621,6 +2587,7 @@ public Builder mergeFrom(org.tensorflow.proto.DevicePropertiesProtos.NamedDevice
             if (other == org.tensorflow.proto.DevicePropertiesProtos.NamedDevice.getDefaultInstance()) return this;
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (other.hasProperties()) {
    @@ -2654,14 +2621,14 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     input.readMessage(
                         getPropertiesFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   default: {
    @@ -2679,6 +2646,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private java.lang.Object name_ = "";
           /**
    @@ -2721,11 +2689,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -2734,8 +2700,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -2746,25 +2712,23 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
     
           private org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties properties_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties, org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties.Builder, org.tensorflow.proto.DevicePropertiesProtos.DevicePropertiesOrBuilder> propertiesBuilder_;
           /**
            * .tensorflow.DeviceProperties properties = 2;
            * @return Whether the properties field is set.
            */
           public boolean hasProperties() {
    -        return propertiesBuilder_ != null || properties_ != null;
    +        return ((bitField0_ & 0x00000002) != 0);
           }
           /**
            * .tensorflow.DeviceProperties properties = 2;
    @@ -2786,11 +2750,11 @@ public Builder setProperties(org.tensorflow.proto.DevicePropertiesProtos.DeviceP
                 throw new NullPointerException();
               }
               properties_ = value;
    -          onChanged();
             } else {
               propertiesBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -2800,11 +2764,11 @@ public Builder setProperties(
               org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties.Builder builderForValue) {
             if (propertiesBuilder_ == null) {
               properties_ = builderForValue.build();
    -          onChanged();
             } else {
               propertiesBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -2812,38 +2776,40 @@ public Builder setProperties(
            */
           public Builder mergeProperties(org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties value) {
             if (propertiesBuilder_ == null) {
    -          if (properties_ != null) {
    -            properties_ =
    -              org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties.newBuilder(properties_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000002) != 0) &&
    +            properties_ != null &&
    +            properties_ != org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties.getDefaultInstance()) {
    +            getPropertiesBuilder().mergeFrom(value);
               } else {
                 properties_ = value;
               }
    -          onChanged();
             } else {
               propertiesBuilder_.mergeFrom(value);
             }
    -
    +        if (properties_ != null) {
    +          bitField0_ |= 0x00000002;
    +          onChanged();
    +        }
             return this;
           }
           /**
            * .tensorflow.DeviceProperties properties = 2;
            */
           public Builder clearProperties() {
    -        if (propertiesBuilder_ == null) {
    -          properties_ = null;
    -          onChanged();
    -        } else {
    -          properties_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000002);
    +        properties_ = null;
    +        if (propertiesBuilder_ != null) {
    +          propertiesBuilder_.dispose();
               propertiesBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
            * .tensorflow.DeviceProperties properties = 2;
            */
           public org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties.Builder getPropertiesBuilder() {
    -        
    +        bitField0_ |= 0x00000002;
             onChanged();
             return getPropertiesFieldBuilder().getBuilder();
           }
    @@ -2861,11 +2827,11 @@ public org.tensorflow.proto.DevicePropertiesProtos.DevicePropertiesOrBuilder get
           /**
            * .tensorflow.DeviceProperties properties = 2;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties, org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties.Builder, org.tensorflow.proto.DevicePropertiesProtos.DevicePropertiesOrBuilder> 
               getPropertiesFieldBuilder() {
             if (propertiesBuilder_ == null) {
    -          propertiesBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          propertiesBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties, org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties.Builder, org.tensorflow.proto.DevicePropertiesProtos.DevicePropertiesOrBuilder>(
                       getProperties(),
                       getParentForChildren(),
    @@ -2874,18 +2840,6 @@ public org.tensorflow.proto.DevicePropertiesProtos.DevicePropertiesOrBuilder get
             }
             return propertiesBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.NamedDevice)
         }
    @@ -2941,17 +2895,17 @@ public org.tensorflow.proto.DevicePropertiesProtos.NamedDevice getDefaultInstanc
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_DeviceProperties_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_DeviceProperties_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_DeviceProperties_EnvironmentEntry_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_DeviceProperties_EnvironmentEntry_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_NamedDevice_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_NamedDevice_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -2988,21 +2942,22 @@ public org.tensorflow.proto.DevicePropertiesProtos.NamedDevice getDefaultInstanc
         internal_static_tensorflow_DeviceProperties_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_DeviceProperties_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_DeviceProperties_descriptor,
             new java.lang.String[] { "Type", "Vendor", "Model", "Frequency", "NumCores", "Environment", "NumRegisters", "L1CacheSize", "L2CacheSize", "L3CacheSize", "SharedMemorySizePerMultiprocessor", "MemorySize", "Bandwidth", });
         internal_static_tensorflow_DeviceProperties_EnvironmentEntry_descriptor =
           internal_static_tensorflow_DeviceProperties_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_DeviceProperties_EnvironmentEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_DeviceProperties_EnvironmentEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_NamedDevice_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_NamedDevice_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_NamedDevice_descriptor,
             new java.lang.String[] { "Name", "Properties", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceStepStats.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceStepStats.java
    index 9a419a9c426..5796f59a3a5 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceStepStats.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceStepStats.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/step_stats.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,12 +9,21 @@
      * Protobuf type {@code tensorflow.DeviceStepStats}
      */
     public final class DeviceStepStats extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.DeviceStepStats)
         DeviceStepStatsOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      DeviceStepStats.class.getName());
    +  }
       // Use DeviceStepStats.newBuilder() to construct.
    -  private DeviceStepStats(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private DeviceStepStats(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private DeviceStepStats() {
    @@ -20,18 +31,6 @@ private DeviceStepStats() {
         nodeStats_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new DeviceStepStats();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_DeviceStepStats_descriptor;
    @@ -39,7 +38,7 @@ protected java.lang.Object newInstance(
     
       @SuppressWarnings({"rawtypes"})
       @java.lang.Override
    -  protected com.google.protobuf.MapField internalGetMapField(
    +  protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
           int number) {
         switch (number) {
           case 3:
    @@ -50,7 +49,7 @@ protected com.google.protobuf.MapField internalGetMapField(
         }
       }
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_DeviceStepStats_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -58,7 +57,8 @@ protected com.google.protobuf.MapField internalGetMapField(
       }
     
       public static final int DEVICE_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object device_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object device_ = "";
       /**
        * string device = 1;
        * @return The device.
    @@ -96,6 +96,7 @@ public java.lang.String getDevice() {
       }
     
       public static final int NODE_STATS_FIELD_NUMBER = 2;
    +  @SuppressWarnings("serial")
       private java.util.List nodeStats_;
       /**
        * repeated .tensorflow.NodeExecStats node_stats = 2;
    @@ -147,6 +148,7 @@ private static final class ThreadNamesDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.STRING,
                     "");
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.Integer, java.lang.String> threadNames_;
       private com.google.protobuf.MapField
    @@ -157,7 +159,6 @@ private static final class ThreadNamesDefaultEntryHolder {
         }
         return threadNames_;
       }
    -
       public int getThreadNamesCount() {
         return internalGetThreadNames().getMap().size();
       }
    @@ -168,11 +169,10 @@ public int getThreadNamesCount() {
        *
        * map<uint32, string> thread_names = 3;
        */
    -
       @java.lang.Override
       public boolean containsThreadNames(
           int key) {
    -    
    +
         return internalGetThreadNames().getMap().containsKey(key);
       }
       /**
    @@ -191,7 +191,6 @@ public java.util.Map getThreadNames() {
        * map<uint32, string> thread_names = 3;
        */
       @java.lang.Override
    -
       public java.util.Map getThreadNamesMap() {
         return internalGetThreadNames().getMap();
       }
    @@ -203,11 +202,12 @@ public java.util.Map getThreadNamesMap() {
        * map<uint32, string> thread_names = 3;
        */
       @java.lang.Override
    -
    -  public java.lang.String getThreadNamesOrDefault(
    +  public /* nullable */
    +java.lang.String getThreadNamesOrDefault(
           int key,
    -      java.lang.String defaultValue) {
    -    
    +      /* nullable */
    +java.lang.String defaultValue) {
    +
         java.util.Map map =
             internalGetThreadNames().getMap();
         return map.containsKey(key) ? map.get(key) : defaultValue;
    @@ -220,10 +220,9 @@ public java.lang.String getThreadNamesOrDefault(
        * map<uint32, string> thread_names = 3;
        */
       @java.lang.Override
    -
       public java.lang.String getThreadNamesOrThrow(
           int key) {
    -    
    +
         java.util.Map map =
             internalGetThreadNames().getMap();
         if (!map.containsKey(key)) {
    @@ -246,13 +245,13 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(device_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, device_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(device_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, device_);
         }
         for (int i = 0; i < nodeStats_.size(); i++) {
           output.writeMessage(2, nodeStats_.get(i));
         }
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeIntegerMapTo(
             output,
             internalGetThreadNames(),
    @@ -267,8 +266,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(device_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, device_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(device_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, device_);
         }
         for (int i = 0; i < nodeStats_.size(); i++) {
           size += com.google.protobuf.CodedOutputStream
    @@ -365,39 +364,41 @@ public static org.tensorflow.proto.DeviceStepStats parseFrom(
       }
       public static org.tensorflow.proto.DeviceStepStats parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DeviceStepStats parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.DeviceStepStats parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.DeviceStepStats parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.DeviceStepStats parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.DeviceStepStats parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -417,7 +418,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -425,7 +426,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.DeviceStepStats}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.DeviceStepStats)
           org.tensorflow.proto.DeviceStepStatsOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -434,7 +435,7 @@ public static final class Builder extends
         }
     
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
             int number) {
           switch (number) {
             case 3:
    @@ -445,7 +446,7 @@ protected com.google.protobuf.MapField internalGetMapField(
           }
         }
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMutableMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(
             int number) {
           switch (number) {
             case 3:
    @@ -456,7 +457,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
           }
         }
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_DeviceStepStats_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -469,22 +470,22 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           device_ = "";
    -
           if (nodeStatsBuilder_ == null) {
             nodeStats_ = java.util.Collections.emptyList();
           } else {
             nodeStats_ = null;
             nodeStatsBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000002);
           internalGetMutableThreadNames().clear();
           return this;
         }
    @@ -512,55 +513,35 @@ public org.tensorflow.proto.DeviceStepStats build() {
         @java.lang.Override
         public org.tensorflow.proto.DeviceStepStats buildPartial() {
           org.tensorflow.proto.DeviceStepStats result = new org.tensorflow.proto.DeviceStepStats(this);
    -      int from_bitField0_ = bitField0_;
    -      result.device_ = device_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.DeviceStepStats result) {
           if (nodeStatsBuilder_ == null) {
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((bitField0_ & 0x00000002) != 0)) {
               nodeStats_ = java.util.Collections.unmodifiableList(nodeStats_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000002);
             }
             result.nodeStats_ = nodeStats_;
           } else {
             result.nodeStats_ = nodeStatsBuilder_.build();
           }
    -      result.threadNames_ = internalGetThreadNames();
    -      result.threadNames_.makeImmutable();
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.DeviceStepStats result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.device_ = device_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.threadNames_ = internalGetThreadNames();
    +        result.threadNames_.makeImmutable();
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.DeviceStepStats) {
    @@ -575,13 +556,14 @@ public Builder mergeFrom(org.tensorflow.proto.DeviceStepStats other) {
           if (other == org.tensorflow.proto.DeviceStepStats.getDefaultInstance()) return this;
           if (!other.getDevice().isEmpty()) {
             device_ = other.device_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (nodeStatsBuilder_ == null) {
             if (!other.nodeStats_.isEmpty()) {
               if (nodeStats_.isEmpty()) {
                 nodeStats_ = other.nodeStats_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000002);
               } else {
                 ensureNodeStatsIsMutable();
                 nodeStats_.addAll(other.nodeStats_);
    @@ -594,9 +576,9 @@ public Builder mergeFrom(org.tensorflow.proto.DeviceStepStats other) {
                 nodeStatsBuilder_.dispose();
                 nodeStatsBuilder_ = null;
                 nodeStats_ = other.nodeStats_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000002);
                 nodeStatsBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getNodeStatsFieldBuilder() : null;
               } else {
                 nodeStatsBuilder_.addAllMessages(other.nodeStats_);
    @@ -605,6 +587,7 @@ public Builder mergeFrom(org.tensorflow.proto.DeviceStepStats other) {
           }
           internalGetMutableThreadNames().mergeFrom(
               other.internalGetThreadNames());
    +      bitField0_ |= 0x00000004;
           this.mergeUnknownFields(other.getUnknownFields());
           onChanged();
           return this;
    @@ -633,7 +616,7 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   device_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
    @@ -655,6 +638,7 @@ public Builder mergeFrom(
                       ThreadNamesDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                   internalGetMutableThreadNames().getMutableMap().put(
                       threadNames__.getKey(), threadNames__.getValue());
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 default: {
    @@ -715,11 +699,9 @@ public java.lang.String getDevice() {
          */
         public Builder setDevice(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           device_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -728,8 +710,8 @@ public Builder setDevice(
          * @return This builder for chaining.
          */
         public Builder clearDevice() {
    -      
           device_ = getDefaultInstance().getDevice();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -740,12 +722,10 @@ public Builder clearDevice() {
          */
         public Builder setDeviceBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           device_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -753,13 +733,13 @@ public Builder setDeviceBytes(
         private java.util.List nodeStats_ =
           java.util.Collections.emptyList();
         private void ensureNodeStatsIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!((bitField0_ & 0x00000002) != 0)) {
             nodeStats_ = new java.util.ArrayList(nodeStats_);
    -        bitField0_ |= 0x00000001;
    +        bitField0_ |= 0x00000002;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.NodeExecStats, org.tensorflow.proto.NodeExecStats.Builder, org.tensorflow.proto.NodeExecStatsOrBuilder> nodeStatsBuilder_;
     
         /**
    @@ -905,7 +885,7 @@ public Builder addAllNodeStats(
         public Builder clearNodeStats() {
           if (nodeStatsBuilder_ == null) {
             nodeStats_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
           } else {
             nodeStatsBuilder_.clear();
    @@ -975,14 +955,14 @@ public org.tensorflow.proto.NodeExecStats.Builder addNodeStatsBuilder(
              getNodeStatsBuilderList() {
           return getNodeStatsFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.NodeExecStats, org.tensorflow.proto.NodeExecStats.Builder, org.tensorflow.proto.NodeExecStatsOrBuilder> 
             getNodeStatsFieldBuilder() {
           if (nodeStatsBuilder_ == null) {
    -        nodeStatsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        nodeStatsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.NodeExecStats, org.tensorflow.proto.NodeExecStats.Builder, org.tensorflow.proto.NodeExecStatsOrBuilder>(
                     nodeStats_,
    -                ((bitField0_ & 0x00000001) != 0),
    +                ((bitField0_ & 0x00000002) != 0),
                     getParentForChildren(),
                     isClean());
             nodeStats_ = null;
    @@ -993,7 +973,7 @@ public org.tensorflow.proto.NodeExecStats.Builder addNodeStatsBuilder(
         private com.google.protobuf.MapField<
             java.lang.Integer, java.lang.String> threadNames_;
         private com.google.protobuf.MapField
    -    internalGetThreadNames() {
    +        internalGetThreadNames() {
           if (threadNames_ == null) {
             return com.google.protobuf.MapField.emptyMapField(
                 ThreadNamesDefaultEntryHolder.defaultEntry);
    @@ -1001,8 +981,7 @@ public org.tensorflow.proto.NodeExecStats.Builder addNodeStatsBuilder(
           return threadNames_;
         }
         private com.google.protobuf.MapField
    -    internalGetMutableThreadNames() {
    -      onChanged();;
    +        internalGetMutableThreadNames() {
           if (threadNames_ == null) {
             threadNames_ = com.google.protobuf.MapField.newMapField(
                 ThreadNamesDefaultEntryHolder.defaultEntry);
    @@ -1010,9 +989,10 @@ public org.tensorflow.proto.NodeExecStats.Builder addNodeStatsBuilder(
           if (!threadNames_.isMutable()) {
             threadNames_ = threadNames_.copy();
           }
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return threadNames_;
         }
    -
         public int getThreadNamesCount() {
           return internalGetThreadNames().getMap().size();
         }
    @@ -1023,11 +1003,10 @@ public int getThreadNamesCount() {
          *
          * map<uint32, string> thread_names = 3;
          */
    -
         @java.lang.Override
         public boolean containsThreadNames(
             int key) {
    -      
    +
           return internalGetThreadNames().getMap().containsKey(key);
         }
         /**
    @@ -1046,7 +1025,6 @@ public java.util.Map getThreadNames() {
          * map<uint32, string> thread_names = 3;
          */
         @java.lang.Override
    -
         public java.util.Map getThreadNamesMap() {
           return internalGetThreadNames().getMap();
         }
    @@ -1058,11 +1036,12 @@ public java.util.Map getThreadNamesMap() {
          * map<uint32, string> thread_names = 3;
          */
         @java.lang.Override
    -
    -    public java.lang.String getThreadNamesOrDefault(
    +    public /* nullable */
    +java.lang.String getThreadNamesOrDefault(
             int key,
    -        java.lang.String defaultValue) {
    -      
    +        /* nullable */
    +java.lang.String defaultValue) {
    +
           java.util.Map map =
               internalGetThreadNames().getMap();
           return map.containsKey(key) ? map.get(key) : defaultValue;
    @@ -1075,10 +1054,9 @@ public java.lang.String getThreadNamesOrDefault(
          * map<uint32, string> thread_names = 3;
          */
         @java.lang.Override
    -
         public java.lang.String getThreadNamesOrThrow(
             int key) {
    -      
    +
           java.util.Map map =
               internalGetThreadNames().getMap();
           if (!map.containsKey(key)) {
    @@ -1086,8 +1064,8 @@ public java.lang.String getThreadNamesOrThrow(
           }
           return map.get(key);
         }
    -
         public Builder clearThreadNames() {
    +      bitField0_ = (bitField0_ & ~0x00000004);
           internalGetMutableThreadNames().getMutableMap()
               .clear();
           return this;
    @@ -1099,10 +1077,9 @@ public Builder clearThreadNames() {
          *
          * map<uint32, string> thread_names = 3;
          */
    -
         public Builder removeThreadNames(
             int key) {
    -      
    +
           internalGetMutableThreadNames().getMutableMap()
               .remove(key);
           return this;
    @@ -1112,7 +1089,8 @@ public Builder removeThreadNames(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableThreadNames() {
    +        getMutableThreadNames() {
    +      bitField0_ |= 0x00000004;
           return internalGetMutableThreadNames().getMutableMap();
         }
         /**
    @@ -1125,13 +1103,11 @@ public Builder removeThreadNames(
         public Builder putThreadNames(
             int key,
             java.lang.String value) {
    -      
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
     
    +      if (value == null) { throw new NullPointerException("map value"); }
           internalGetMutableThreadNames().getMutableMap()
               .put(key, value);
    +      bitField0_ |= 0x00000004;
           return this;
         }
         /**
    @@ -1141,25 +1117,13 @@ public Builder putThreadNames(
          *
          * map<uint32, string> thread_names = 3;
          */
    -
         public Builder putAllThreadNames(
             java.util.Map values) {
           internalGetMutableThreadNames().getMutableMap()
               .putAll(values);
    +      bitField0_ |= 0x00000004;
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.DeviceStepStats)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceStepStatsOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceStepStatsOrBuilder.java
    index e96f3715f39..40b250d1ab8 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceStepStatsOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/DeviceStepStatsOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/step_stats.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -82,7 +84,6 @@ boolean containsThreadNames(
        *
        * map<uint32, string> thread_names = 3;
        */
    -
       /* nullable */
     java.lang.String getThreadNamesOrDefault(
           int key,
    @@ -95,7 +96,6 @@ java.lang.String getThreadNamesOrDefault(
        *
        * map<uint32, string> thread_names = 3;
        */
    -
       java.lang.String getThreadNamesOrThrow(
           int key);
     }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/EntryValue.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/EntryValue.java
    index 44deff4cb4d..95d9ec9af7c 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/EntryValue.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/EntryValue.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,36 +9,33 @@
      * Protobuf type {@code tensorflow.EntryValue}
      */
     public final class EntryValue extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.EntryValue)
         EntryValueOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      EntryValue.class.getName());
    +  }
       // Use EntryValue.newBuilder() to construct.
    -  private EntryValue(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private EntryValue(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private EntryValue() {
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new EntryValue();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_EntryValue_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_EntryValue_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -44,6 +43,7 @@ protected java.lang.Object newInstance(
       }
     
       private int kindCase_ = 0;
    +  @SuppressWarnings("serial")
       private java.lang.Object kind_;
       public enum KindCase
           implements com.google.protobuf.Internal.EnumLite,
    @@ -176,7 +176,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
               1, (double)((java.lang.Double) kind_));
         }
         if (kindCase_ == 2) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, kind_);
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, kind_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -193,7 +193,7 @@ public int getSerializedSize() {
                 1, (double)((java.lang.Double) kind_));
         }
         if (kindCase_ == 2) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, kind_);
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, kind_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -287,39 +287,41 @@ public static org.tensorflow.proto.EntryValue parseFrom(
       }
       public static org.tensorflow.proto.EntryValue parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.EntryValue parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.EntryValue parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.EntryValue parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.EntryValue parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.EntryValue parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -339,7 +341,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -347,7 +349,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.EntryValue}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.EntryValue)
           org.tensorflow.proto.EntryValueOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -356,7 +358,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_EntryValue_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -369,13 +371,14 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           kindCase_ = 0;
           kind_ = null;
           return this;
    @@ -404,49 +407,21 @@ public org.tensorflow.proto.EntryValue build() {
         @java.lang.Override
         public org.tensorflow.proto.EntryValue buildPartial() {
           org.tensorflow.proto.EntryValue result = new org.tensorflow.proto.EntryValue(this);
    -      if (kindCase_ == 1) {
    -        result.kind_ = kind_;
    -      }
    -      if (kindCase_ == 2) {
    -        result.kind_ = kind_;
    -      }
    -      result.kindCase_ = kindCase_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      buildPartialOneofs(result);
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    +    private void buildPartial0(org.tensorflow.proto.EntryValue result) {
    +      int from_bitField0_ = bitField0_;
         }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +
    +    private void buildPartialOneofs(org.tensorflow.proto.EntryValue result) {
    +      result.kindCase_ = kindCase_;
    +      result.kind_ = this.kind_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.EntryValue) {
    @@ -541,6 +516,7 @@ public Builder clearKind() {
           return this;
         }
     
    +    private int bitField0_;
     
         /**
          * double double_value = 1;
    @@ -565,6 +541,7 @@ public double getDoubleValue() {
          * @return This builder for chaining.
          */
         public Builder setDoubleValue(double value) {
    +
           kindCase_ = 1;
           kind_ = value;
           onChanged();
    @@ -643,10 +620,8 @@ public java.lang.String getStringValue() {
          */
         public Builder setStringValue(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  kindCase_ = 2;
    +      if (value == null) { throw new NullPointerException(); }
    +      kindCase_ = 2;
           kind_ = value;
           onChanged();
           return this;
    @@ -670,27 +645,13 @@ public Builder clearStringValue() {
          */
         public Builder setStringValueBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           kindCase_ = 2;
           kind_ = value;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.EntryValue)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/EntryValueOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/EntryValueOrBuilder.java
    index 525dfd70275..19578965697 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/EntryValueOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/EntryValueOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -35,5 +37,5 @@ public interface EntryValueOrBuilder extends
       com.google.protobuf.ByteString
           getStringValueBytes();
     
    -  public org.tensorflow.proto.EntryValue.KindCase getKindCase();
    +  org.tensorflow.proto.EntryValue.KindCase getKindCase();
     }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ErrorCodes.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ErrorCodes.java
    index d7c465c4194..c717a8b23e5 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ErrorCodes.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ErrorCodes.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/lib/core/error_codes.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class ErrorCodes {
       private ErrorCodes() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ErrorCodes.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -24,15 +35,16 @@ public static void registerAllExtensions(
       static {
         java.lang.String[] descriptorData = {
           "\n*tensorflow/core/lib/core/error_codes.p" +
    -      "roto\022\ntensorflow\032\036tsl/protobuf/error_cod" +
    -      "es.protoB\026\n\024org.tensorflow.protoP\000b\006prot" +
    -      "o3"
    +      "roto\022\ntensorflow\032\"xla/tsl/protobuf/error" +
    +      "_codes.protoB\026\n\024org.tensorflow.protoP\000b\006" +
    +      "proto3"
         };
         descriptor = com.google.protobuf.Descriptors.FileDescriptor
           .internalBuildGeneratedFileFrom(descriptorData,
             new com.google.protobuf.Descriptors.FileDescriptor[] {
               org.tensorflow.proto.error.ErrorCodesProtos.getDescriptor(),
             });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.error.ErrorCodesProtos.getDescriptor();
       }
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Event.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Event.java
    index 9ceb8a3cc15..f8700f4727a 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Event.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Event.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -12,43 +14,42 @@
      * Protobuf type {@code tensorflow.Event}
      */
     public final class Event extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.Event)
         EventOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      Event.class.getName());
    +  }
       // Use Event.newBuilder() to construct.
    -  private Event(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private Event(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private Event() {
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new Event();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.EventProtos.internal_static_tensorflow_Event_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.EventProtos.internal_static_tensorflow_Event_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.Event.class, org.tensorflow.proto.Event.Builder.class);
       }
     
    +  private int bitField0_;
       private int whatCase_ = 0;
    +  @SuppressWarnings("serial")
       private java.lang.Object what_;
       public enum WhatCase
           implements com.google.protobuf.Internal.EnumLite,
    @@ -100,7 +101,7 @@ public int getNumber() {
       }
     
       public static final int WALL_TIME_FIELD_NUMBER = 1;
    -  private double wallTime_;
    +  private double wallTime_ = 0D;
       /**
        * 
        * Timestamp of the event.
    @@ -115,7 +116,7 @@ public double getWallTime() {
       }
     
       public static final int STEP_FIELD_NUMBER = 2;
    -  private long step_;
    +  private long step_ = 0L;
       /**
        * 
        * Global step of the event.
    @@ -455,7 +456,7 @@ public com.google.protobuf.ByteString getMetaGraphDef() {
        */
       @java.lang.Override
       public boolean hasSourceMetadata() {
    -    return sourceMetadata_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -480,7 +481,7 @@ public org.tensorflow.proto.SourceMetadata getSourceMetadata() {
        */
       @java.lang.Override
       public org.tensorflow.proto.SourceMetadataOrBuilder getSourceMetadataOrBuilder() {
    -    return getSourceMetadata();
    +    return sourceMetadata_ == null ? org.tensorflow.proto.SourceMetadata.getDefaultInstance() : sourceMetadata_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -504,7 +505,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           output.writeInt64(2, step_);
         }
         if (whatCase_ == 3) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, what_);
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, what_);
         }
         if (whatCase_ == 4) {
           output.writeBytes(
    @@ -526,7 +527,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           output.writeBytes(
               9, (com.google.protobuf.ByteString) what_);
         }
    -    if (sourceMetadata_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(10, getSourceMetadata());
         }
         getUnknownFields().writeTo(output);
    @@ -547,7 +548,7 @@ public int getSerializedSize() {
             .computeInt64Size(2, step_);
         }
         if (whatCase_ == 3) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, what_);
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, what_);
         }
         if (whatCase_ == 4) {
           size += com.google.protobuf.CodedOutputStream
    @@ -575,7 +576,7 @@ public int getSerializedSize() {
             .computeBytesSize(
                 9, (com.google.protobuf.ByteString) what_);
         }
    -    if (sourceMetadata_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(10, getSourceMetadata());
         }
    @@ -729,39 +730,41 @@ public static org.tensorflow.proto.Event parseFrom(
       }
       public static org.tensorflow.proto.Event parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.Event parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.Event parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.Event parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.Event parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.Event parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -781,7 +784,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -794,7 +797,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.Event}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.Event)
           org.tensorflow.proto.EventOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -803,7 +806,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.EventProtos.internal_static_tensorflow_Event_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -812,21 +815,26 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.Event.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getSourceMetadataFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           wallTime_ = 0D;
    -
           step_ = 0L;
    -
           if (summaryBuilder_ != null) {
             summaryBuilder_.clear();
           }
    @@ -839,10 +847,9 @@ public Builder clear() {
           if (taggedRunMetadataBuilder_ != null) {
             taggedRunMetadataBuilder_.clear();
           }
    -      if (sourceMetadataBuilder_ == null) {
    -        sourceMetadata_ = null;
    -      } else {
    -        sourceMetadata_ = null;
    +      sourceMetadata_ = null;
    +      if (sourceMetadataBuilder_ != null) {
    +        sourceMetadataBuilder_.dispose();
             sourceMetadataBuilder_ = null;
           }
           whatCase_ = 0;
    @@ -873,87 +880,51 @@ public org.tensorflow.proto.Event build() {
         @java.lang.Override
         public org.tensorflow.proto.Event buildPartial() {
           org.tensorflow.proto.Event result = new org.tensorflow.proto.Event(this);
    -      result.wallTime_ = wallTime_;
    -      result.step_ = step_;
    -      if (whatCase_ == 3) {
    -        result.what_ = what_;
    -      }
    -      if (whatCase_ == 4) {
    -        result.what_ = what_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      buildPartialOneofs(result);
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartial0(org.tensorflow.proto.Event result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.wallTime_ = wallTime_;
           }
    -      if (whatCase_ == 5) {
    -        if (summaryBuilder_ == null) {
    -          result.what_ = what_;
    -        } else {
    -          result.what_ = summaryBuilder_.build();
    -        }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.step_ = step_;
           }
    -      if (whatCase_ == 6) {
    -        if (logMessageBuilder_ == null) {
    -          result.what_ = what_;
    -        } else {
    -          result.what_ = logMessageBuilder_.build();
    -        }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000200) != 0)) {
    +        result.sourceMetadata_ = sourceMetadataBuilder_ == null
    +            ? sourceMetadata_
    +            : sourceMetadataBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
           }
    -      if (whatCase_ == 7) {
    -        if (sessionLogBuilder_ == null) {
    -          result.what_ = what_;
    -        } else {
    -          result.what_ = sessionLogBuilder_.build();
    -        }
    +      result.bitField0_ |= to_bitField0_;
    +    }
    +
    +    private void buildPartialOneofs(org.tensorflow.proto.Event result) {
    +      result.whatCase_ = whatCase_;
    +      result.what_ = this.what_;
    +      if (whatCase_ == 5 &&
    +          summaryBuilder_ != null) {
    +        result.what_ = summaryBuilder_.build();
           }
    -      if (whatCase_ == 8) {
    -        if (taggedRunMetadataBuilder_ == null) {
    -          result.what_ = what_;
    -        } else {
    -          result.what_ = taggedRunMetadataBuilder_.build();
    -        }
    +      if (whatCase_ == 6 &&
    +          logMessageBuilder_ != null) {
    +        result.what_ = logMessageBuilder_.build();
           }
    -      if (whatCase_ == 9) {
    -        result.what_ = what_;
    +      if (whatCase_ == 7 &&
    +          sessionLogBuilder_ != null) {
    +        result.what_ = sessionLogBuilder_.build();
           }
    -      if (sourceMetadataBuilder_ == null) {
    -        result.sourceMetadata_ = sourceMetadata_;
    -      } else {
    -        result.sourceMetadata_ = sourceMetadataBuilder_.build();
    +      if (whatCase_ == 8 &&
    +          taggedRunMetadataBuilder_ != null) {
    +        result.what_ = taggedRunMetadataBuilder_.build();
           }
    -      result.whatCase_ = whatCase_;
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    -    }
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.Event) {
    @@ -1038,12 +1009,12 @@ public Builder mergeFrom(
                   break;
                 case 9: {
                   wallTime_ = input.readDouble();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 9
                 case 16: {
                   step_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 case 26: {
    @@ -1094,7 +1065,7 @@ public Builder mergeFrom(
                   input.readMessage(
                       getSourceMetadataFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000200;
                   break;
                 } // case 82
                 default: {
    @@ -1127,6 +1098,7 @@ public Builder clearWhat() {
           return this;
         }
     
    +    private int bitField0_;
     
         private double wallTime_ ;
         /**
    @@ -1151,8 +1123,9 @@ public double getWallTime() {
          * @return This builder for chaining.
          */
         public Builder setWallTime(double value) {
    -      
    +
           wallTime_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1165,7 +1138,7 @@ public Builder setWallTime(double value) {
          * @return This builder for chaining.
          */
         public Builder clearWallTime() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           wallTime_ = 0D;
           onChanged();
           return this;
    @@ -1194,8 +1167,9 @@ public long getStep() {
          * @return This builder for chaining.
          */
         public Builder setStep(long value) {
    -      
    +
           step_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1208,7 +1182,7 @@ public Builder setStep(long value) {
          * @return This builder for chaining.
          */
         public Builder clearStep() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           step_ = 0L;
           onChanged();
           return this;
    @@ -1302,10 +1276,8 @@ public java.lang.String getFileVersion() {
          */
         public Builder setFileVersion(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  whatCase_ = 3;
    +      if (value == null) { throw new NullPointerException(); }
    +      whatCase_ = 3;
           what_ = value;
           onChanged();
           return this;
    @@ -1343,10 +1315,8 @@ public Builder clearFileVersion() {
          */
         public Builder setFileVersionBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           whatCase_ = 3;
           what_ = value;
           onChanged();
    @@ -1388,10 +1358,8 @@ public com.google.protobuf.ByteString getGraphDef() {
          * @return This builder for chaining.
          */
         public Builder setGraphDef(com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  whatCase_ = 4;
    +      if (value == null) { throw new NullPointerException(); }
    +      whatCase_ = 4;
           what_ = value;
           onChanged();
           return this;
    @@ -1413,7 +1381,7 @@ public Builder clearGraphDef() {
           return this;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.Summary, org.tensorflow.proto.Summary.Builder, org.tensorflow.proto.SummaryOrBuilder> summaryBuilder_;
         /**
          * 
    @@ -1572,14 +1540,14 @@ public org.tensorflow.proto.SummaryOrBuilder getSummaryOrBuilder() {
          *
          * .tensorflow.Summary summary = 5;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.Summary, org.tensorflow.proto.Summary.Builder, org.tensorflow.proto.SummaryOrBuilder> 
             getSummaryFieldBuilder() {
           if (summaryBuilder_ == null) {
             if (!(whatCase_ == 5)) {
               what_ = org.tensorflow.proto.Summary.getDefaultInstance();
             }
    -        summaryBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        summaryBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.Summary, org.tensorflow.proto.Summary.Builder, org.tensorflow.proto.SummaryOrBuilder>(
                     (org.tensorflow.proto.Summary) what_,
                     getParentForChildren(),
    @@ -1587,11 +1555,11 @@ public org.tensorflow.proto.SummaryOrBuilder getSummaryOrBuilder() {
             what_ = null;
           }
           whatCase_ = 5;
    -      onChanged();;
    +      onChanged();
           return summaryBuilder_;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.LogMessage, org.tensorflow.proto.LogMessage.Builder, org.tensorflow.proto.LogMessageOrBuilder> logMessageBuilder_;
         /**
          * 
    @@ -1772,14 +1740,14 @@ public org.tensorflow.proto.SummaryOrBuilder getSummaryOrBuilder() {
          *
          * .tensorflow.LogMessage log_message = 6 [deprecated = true];
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.LogMessage, org.tensorflow.proto.LogMessage.Builder, org.tensorflow.proto.LogMessageOrBuilder> 
             getLogMessageFieldBuilder() {
           if (logMessageBuilder_ == null) {
             if (!(whatCase_ == 6)) {
               what_ = org.tensorflow.proto.LogMessage.getDefaultInstance();
             }
    -        logMessageBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        logMessageBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.LogMessage, org.tensorflow.proto.LogMessage.Builder, org.tensorflow.proto.LogMessageOrBuilder>(
                     (org.tensorflow.proto.LogMessage) what_,
                     getParentForChildren(),
    @@ -1787,11 +1755,11 @@ public org.tensorflow.proto.SummaryOrBuilder getSummaryOrBuilder() {
             what_ = null;
           }
           whatCase_ = 6;
    -      onChanged();;
    +      onChanged();
           return logMessageBuilder_;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.SessionLog, org.tensorflow.proto.SessionLog.Builder, org.tensorflow.proto.SessionLogOrBuilder> sessionLogBuilder_;
         /**
          * 
    @@ -1950,14 +1918,14 @@ public org.tensorflow.proto.SessionLogOrBuilder getSessionLogOrBuilder() {
          *
          * .tensorflow.SessionLog session_log = 7;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.SessionLog, org.tensorflow.proto.SessionLog.Builder, org.tensorflow.proto.SessionLogOrBuilder> 
             getSessionLogFieldBuilder() {
           if (sessionLogBuilder_ == null) {
             if (!(whatCase_ == 7)) {
               what_ = org.tensorflow.proto.SessionLog.getDefaultInstance();
             }
    -        sessionLogBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        sessionLogBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.SessionLog, org.tensorflow.proto.SessionLog.Builder, org.tensorflow.proto.SessionLogOrBuilder>(
                     (org.tensorflow.proto.SessionLog) what_,
                     getParentForChildren(),
    @@ -1965,11 +1933,11 @@ public org.tensorflow.proto.SessionLogOrBuilder getSessionLogOrBuilder() {
             what_ = null;
           }
           whatCase_ = 7;
    -      onChanged();;
    +      onChanged();
           return sessionLogBuilder_;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TaggedRunMetadata, org.tensorflow.proto.TaggedRunMetadata.Builder, org.tensorflow.proto.TaggedRunMetadataOrBuilder> taggedRunMetadataBuilder_;
         /**
          * 
    @@ -2128,14 +2096,14 @@ public org.tensorflow.proto.TaggedRunMetadataOrBuilder getTaggedRunMetadataOrBui
          *
          * .tensorflow.TaggedRunMetadata tagged_run_metadata = 8;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TaggedRunMetadata, org.tensorflow.proto.TaggedRunMetadata.Builder, org.tensorflow.proto.TaggedRunMetadataOrBuilder> 
             getTaggedRunMetadataFieldBuilder() {
           if (taggedRunMetadataBuilder_ == null) {
             if (!(whatCase_ == 8)) {
               what_ = org.tensorflow.proto.TaggedRunMetadata.getDefaultInstance();
             }
    -        taggedRunMetadataBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        taggedRunMetadataBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TaggedRunMetadata, org.tensorflow.proto.TaggedRunMetadata.Builder, org.tensorflow.proto.TaggedRunMetadataOrBuilder>(
                     (org.tensorflow.proto.TaggedRunMetadata) what_,
                     getParentForChildren(),
    @@ -2143,7 +2111,7 @@ public org.tensorflow.proto.TaggedRunMetadataOrBuilder getTaggedRunMetadataOrBui
             what_ = null;
           }
           whatCase_ = 8;
    -      onChanged();;
    +      onChanged();
           return taggedRunMetadataBuilder_;
         }
     
    @@ -2182,10 +2150,8 @@ public com.google.protobuf.ByteString getMetaGraphDef() {
          * @return This builder for chaining.
          */
         public Builder setMetaGraphDef(com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  whatCase_ = 9;
    +      if (value == null) { throw new NullPointerException(); }
    +      whatCase_ = 9;
           what_ = value;
           onChanged();
           return this;
    @@ -2208,7 +2174,7 @@ public Builder clearMetaGraphDef() {
         }
     
         private org.tensorflow.proto.SourceMetadata sourceMetadata_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.SourceMetadata, org.tensorflow.proto.SourceMetadata.Builder, org.tensorflow.proto.SourceMetadataOrBuilder> sourceMetadataBuilder_;
         /**
          * 
    @@ -2220,7 +2186,7 @@ public Builder clearMetaGraphDef() {
          * @return Whether the sourceMetadata field is set.
          */
         public boolean hasSourceMetadata() {
    -      return sourceMetadataBuilder_ != null || sourceMetadata_ != null;
    +      return ((bitField0_ & 0x00000200) != 0);
         }
         /**
          * 
    @@ -2252,11 +2218,11 @@ public Builder setSourceMetadata(org.tensorflow.proto.SourceMetadata value) {
               throw new NullPointerException();
             }
             sourceMetadata_ = value;
    -        onChanged();
           } else {
             sourceMetadataBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000200;
    +      onChanged();
           return this;
         }
         /**
    @@ -2271,11 +2237,11 @@ public Builder setSourceMetadata(
             org.tensorflow.proto.SourceMetadata.Builder builderForValue) {
           if (sourceMetadataBuilder_ == null) {
             sourceMetadata_ = builderForValue.build();
    -        onChanged();
           } else {
             sourceMetadataBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000200;
    +      onChanged();
           return this;
         }
         /**
    @@ -2288,17 +2254,20 @@ public Builder setSourceMetadata(
          */
         public Builder mergeSourceMetadata(org.tensorflow.proto.SourceMetadata value) {
           if (sourceMetadataBuilder_ == null) {
    -        if (sourceMetadata_ != null) {
    -          sourceMetadata_ =
    -            org.tensorflow.proto.SourceMetadata.newBuilder(sourceMetadata_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000200) != 0) &&
    +          sourceMetadata_ != null &&
    +          sourceMetadata_ != org.tensorflow.proto.SourceMetadata.getDefaultInstance()) {
    +          getSourceMetadataBuilder().mergeFrom(value);
             } else {
               sourceMetadata_ = value;
             }
    -        onChanged();
           } else {
             sourceMetadataBuilder_.mergeFrom(value);
           }
    -
    +      if (sourceMetadata_ != null) {
    +        bitField0_ |= 0x00000200;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -2310,14 +2279,13 @@ public Builder mergeSourceMetadata(org.tensorflow.proto.SourceMetadata value) {
          * .tensorflow.SourceMetadata source_metadata = 10;
          */
         public Builder clearSourceMetadata() {
    -      if (sourceMetadataBuilder_ == null) {
    -        sourceMetadata_ = null;
    -        onChanged();
    -      } else {
    -        sourceMetadata_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000200);
    +      sourceMetadata_ = null;
    +      if (sourceMetadataBuilder_ != null) {
    +        sourceMetadataBuilder_.dispose();
             sourceMetadataBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -2329,7 +2297,7 @@ public Builder clearSourceMetadata() {
          * .tensorflow.SourceMetadata source_metadata = 10;
          */
         public org.tensorflow.proto.SourceMetadata.Builder getSourceMetadataBuilder() {
    -      
    +      bitField0_ |= 0x00000200;
           onChanged();
           return getSourceMetadataFieldBuilder().getBuilder();
         }
    @@ -2357,11 +2325,11 @@ public org.tensorflow.proto.SourceMetadataOrBuilder getSourceMetadataOrBuilder()
          *
          * .tensorflow.SourceMetadata source_metadata = 10;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.SourceMetadata, org.tensorflow.proto.SourceMetadata.Builder, org.tensorflow.proto.SourceMetadataOrBuilder> 
             getSourceMetadataFieldBuilder() {
           if (sourceMetadataBuilder_ == null) {
    -        sourceMetadataBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        sourceMetadataBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.SourceMetadata, org.tensorflow.proto.SourceMetadata.Builder, org.tensorflow.proto.SourceMetadataOrBuilder>(
                     getSourceMetadata(),
                     getParentForChildren(),
    @@ -2370,18 +2338,6 @@ public org.tensorflow.proto.SourceMetadataOrBuilder getSourceMetadataOrBuilder()
           }
           return sourceMetadataBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.Event)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/EventOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/EventOrBuilder.java
    index da3bf5e5619..61a590cfd66 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/EventOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/EventOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -251,5 +253,5 @@ public interface EventOrBuilder extends
        */
       org.tensorflow.proto.SourceMetadataOrBuilder getSourceMetadataOrBuilder();
     
    -  public org.tensorflow.proto.Event.WhatCase getWhatCase();
    +  org.tensorflow.proto.Event.WhatCase getWhatCase();
     }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/EventProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/EventProtos.java
    index d6e4f4e9898..ec026ec2e7f 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/EventProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/EventProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class EventProtos {
       private EventProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      EventProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,47 +28,47 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_Event_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_Event_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SourceMetadata_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SourceMetadata_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_LogMessage_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_LogMessage_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SessionLog_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SessionLog_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_TaggedRunMetadata_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_TaggedRunMetadata_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_WatchdogConfig_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_WatchdogConfig_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_RequestedExitCode_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_RequestedExitCode_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_WorkerHeartbeatRequest_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_WorkerHeartbeatRequest_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_WorkerHeartbeatResponse_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_WorkerHeartbeatResponse_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -118,57 +129,58 @@ public static void registerAllExtensions(
         internal_static_tensorflow_Event_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_Event_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_Event_descriptor,
             new java.lang.String[] { "WallTime", "Step", "FileVersion", "GraphDef", "Summary", "LogMessage", "SessionLog", "TaggedRunMetadata", "MetaGraphDef", "SourceMetadata", "What", });
         internal_static_tensorflow_SourceMetadata_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_SourceMetadata_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SourceMetadata_descriptor,
             new java.lang.String[] { "Writer", });
         internal_static_tensorflow_LogMessage_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_LogMessage_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_LogMessage_descriptor,
             new java.lang.String[] { "Level", "Message", });
         internal_static_tensorflow_SessionLog_descriptor =
           getDescriptor().getMessageTypes().get(3);
         internal_static_tensorflow_SessionLog_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SessionLog_descriptor,
             new java.lang.String[] { "Status", "CheckpointPath", "Msg", });
         internal_static_tensorflow_TaggedRunMetadata_descriptor =
           getDescriptor().getMessageTypes().get(4);
         internal_static_tensorflow_TaggedRunMetadata_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_TaggedRunMetadata_descriptor,
             new java.lang.String[] { "Tag", "RunMetadata", });
         internal_static_tensorflow_WatchdogConfig_descriptor =
           getDescriptor().getMessageTypes().get(5);
         internal_static_tensorflow_WatchdogConfig_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_WatchdogConfig_descriptor,
             new java.lang.String[] { "TimeoutMs", });
         internal_static_tensorflow_RequestedExitCode_descriptor =
           getDescriptor().getMessageTypes().get(6);
         internal_static_tensorflow_RequestedExitCode_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_RequestedExitCode_descriptor,
             new java.lang.String[] { "ExitCode", });
         internal_static_tensorflow_WorkerHeartbeatRequest_descriptor =
           getDescriptor().getMessageTypes().get(7);
         internal_static_tensorflow_WorkerHeartbeatRequest_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_WorkerHeartbeatRequest_descriptor,
             new java.lang.String[] { "ShutdownMode", "WatchdogConfig", "ExitCode", });
         internal_static_tensorflow_WorkerHeartbeatResponse_descriptor =
           getDescriptor().getMessageTypes().get(8);
         internal_static_tensorflow_WorkerHeartbeatResponse_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_WorkerHeartbeatResponse_descriptor,
             new java.lang.String[] { "HealthStatus", "WorkerLog", "Hostname", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.SummaryProtos.getDescriptor();
       }
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Example.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Example.java
    index 914933575bb..4f1f03853ec 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Example.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Example.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/example.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,42 +9,40 @@
      * Protobuf type {@code tensorflow.Example}
      */
     public final class Example extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.Example)
         ExampleOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      Example.class.getName());
    +  }
       // Use Example.newBuilder() to construct.
    -  private Example(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private Example(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private Example() {
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new Example();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ExampleProtos.internal_static_tensorflow_Example_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ExampleProtos.internal_static_tensorflow_Example_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.Example.class, org.tensorflow.proto.Example.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int FEATURES_FIELD_NUMBER = 1;
       private org.tensorflow.proto.Features features_;
       /**
    @@ -51,7 +51,7 @@ protected java.lang.Object newInstance(
        */
       @java.lang.Override
       public boolean hasFeatures() {
    -    return features_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * .tensorflow.Features features = 1;
    @@ -66,7 +66,7 @@ public org.tensorflow.proto.Features getFeatures() {
        */
       @java.lang.Override
       public org.tensorflow.proto.FeaturesOrBuilder getFeaturesOrBuilder() {
    -    return getFeatures();
    +    return features_ == null ? org.tensorflow.proto.Features.getDefaultInstance() : features_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -83,7 +83,7 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (features_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(1, getFeatures());
         }
         getUnknownFields().writeTo(output);
    @@ -95,7 +95,7 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (features_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(1, getFeatures());
         }
    @@ -173,39 +173,41 @@ public static org.tensorflow.proto.Example parseFrom(
       }
       public static org.tensorflow.proto.Example parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.Example parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.Example parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.Example parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.Example parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.Example parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -225,7 +227,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -233,7 +235,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.Example}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.Example)
           org.tensorflow.proto.ExampleOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -242,7 +244,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ExampleProtos.internal_static_tensorflow_Example_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -251,21 +253,27 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.Example.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getFeaturesFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    -      if (featuresBuilder_ == null) {
    -        features_ = null;
    -      } else {
    -        features_ = null;
    +      bitField0_ = 0;
    +      features_ = null;
    +      if (featuresBuilder_ != null) {
    +        featuresBuilder_.dispose();
             featuresBuilder_ = null;
           }
           return this;
    @@ -294,47 +302,23 @@ public org.tensorflow.proto.Example build() {
         @java.lang.Override
         public org.tensorflow.proto.Example buildPartial() {
           org.tensorflow.proto.Example result = new org.tensorflow.proto.Example(this);
    -      if (featuresBuilder_ == null) {
    -        result.features_ = features_;
    -      } else {
    -        result.features_ = featuresBuilder_.build();
    -      }
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.Example result) {
    +      int from_bitField0_ = bitField0_;
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.features_ = featuresBuilder_ == null
    +            ? features_
    +            : featuresBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.Example) {
    @@ -380,7 +364,7 @@ public Builder mergeFrom(
                   input.readMessage(
                       getFeaturesFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 default: {
    @@ -398,16 +382,17 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private org.tensorflow.proto.Features features_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.Features, org.tensorflow.proto.Features.Builder, org.tensorflow.proto.FeaturesOrBuilder> featuresBuilder_;
         /**
          * .tensorflow.Features features = 1;
          * @return Whether the features field is set.
          */
         public boolean hasFeatures() {
    -      return featuresBuilder_ != null || features_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * .tensorflow.Features features = 1;
    @@ -429,11 +414,11 @@ public Builder setFeatures(org.tensorflow.proto.Features value) {
               throw new NullPointerException();
             }
             features_ = value;
    -        onChanged();
           } else {
             featuresBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000001;
    +      onChanged();
           return this;
         }
         /**
    @@ -443,11 +428,11 @@ public Builder setFeatures(
             org.tensorflow.proto.Features.Builder builderForValue) {
           if (featuresBuilder_ == null) {
             features_ = builderForValue.build();
    -        onChanged();
           } else {
             featuresBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000001;
    +      onChanged();
           return this;
         }
         /**
    @@ -455,38 +440,40 @@ public Builder setFeatures(
          */
         public Builder mergeFeatures(org.tensorflow.proto.Features value) {
           if (featuresBuilder_ == null) {
    -        if (features_ != null) {
    -          features_ =
    -            org.tensorflow.proto.Features.newBuilder(features_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000001) != 0) &&
    +          features_ != null &&
    +          features_ != org.tensorflow.proto.Features.getDefaultInstance()) {
    +          getFeaturesBuilder().mergeFrom(value);
             } else {
               features_ = value;
             }
    -        onChanged();
           } else {
             featuresBuilder_.mergeFrom(value);
           }
    -
    +      if (features_ != null) {
    +        bitField0_ |= 0x00000001;
    +        onChanged();
    +      }
           return this;
         }
         /**
          * .tensorflow.Features features = 1;
          */
         public Builder clearFeatures() {
    -      if (featuresBuilder_ == null) {
    -        features_ = null;
    -        onChanged();
    -      } else {
    -        features_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000001);
    +      features_ = null;
    +      if (featuresBuilder_ != null) {
    +        featuresBuilder_.dispose();
             featuresBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
          * .tensorflow.Features features = 1;
          */
         public org.tensorflow.proto.Features.Builder getFeaturesBuilder() {
    -      
    +      bitField0_ |= 0x00000001;
           onChanged();
           return getFeaturesFieldBuilder().getBuilder();
         }
    @@ -504,11 +491,11 @@ public org.tensorflow.proto.FeaturesOrBuilder getFeaturesOrBuilder() {
         /**
          * .tensorflow.Features features = 1;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.Features, org.tensorflow.proto.Features.Builder, org.tensorflow.proto.FeaturesOrBuilder> 
             getFeaturesFieldBuilder() {
           if (featuresBuilder_ == null) {
    -        featuresBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        featuresBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.Features, org.tensorflow.proto.Features.Builder, org.tensorflow.proto.FeaturesOrBuilder>(
                     getFeatures(),
                     getParentForChildren(),
    @@ -517,18 +504,6 @@ public org.tensorflow.proto.FeaturesOrBuilder getFeaturesOrBuilder() {
           }
           return featuresBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.Example)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleOrBuilder.java
    index d886f35527c..090e50da446 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/example.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleParserConfiguration.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleParserConfiguration.java
    index 9a9e5a51d51..a74f6f6df59 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleParserConfiguration.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleParserConfiguration.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/example_parser_configuration.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,29 +9,26 @@
      * Protobuf type {@code tensorflow.ExampleParserConfiguration}
      */
     public final class ExampleParserConfiguration extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.ExampleParserConfiguration)
         ExampleParserConfigurationOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ExampleParserConfiguration.class.getName());
    +  }
       // Use ExampleParserConfiguration.newBuilder() to construct.
    -  private ExampleParserConfiguration(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private ExampleParserConfiguration(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private ExampleParserConfiguration() {
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new ExampleParserConfiguration();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ExampleParserConfigurationProtos.internal_static_tensorflow_ExampleParserConfiguration_descriptor;
    @@ -37,7 +36,7 @@ protected java.lang.Object newInstance(
     
       @SuppressWarnings({"rawtypes"})
       @java.lang.Override
    -  protected com.google.protobuf.MapField internalGetMapField(
    +  protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
           int number) {
         switch (number) {
           case 1:
    @@ -48,7 +47,7 @@ protected com.google.protobuf.MapField internalGetMapField(
         }
       }
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ExampleParserConfigurationProtos.internal_static_tensorflow_ExampleParserConfiguration_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -67,6 +66,7 @@ private static final class FeatureMapDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.MESSAGE,
                     org.tensorflow.proto.FeatureConfiguration.getDefaultInstance());
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.String, org.tensorflow.proto.FeatureConfiguration> featureMap_;
       private com.google.protobuf.MapField
    @@ -77,14 +77,12 @@ private static final class FeatureMapDefaultEntryHolder {
         }
         return featureMap_;
       }
    -
       public int getFeatureMapCount() {
         return internalGetFeatureMap().getMap().size();
       }
       /**
        * map<string, .tensorflow.FeatureConfiguration> feature_map = 1;
        */
    -
       @java.lang.Override
       public boolean containsFeatureMap(
           java.lang.String key) {
    @@ -103,7 +101,6 @@ public java.util.Mapmap<string, .tensorflow.FeatureConfiguration> feature_map = 1;
        */
       @java.lang.Override
    -
       public java.util.Map getFeatureMapMap() {
         return internalGetFeatureMap().getMap();
       }
    @@ -111,10 +108,11 @@ public java.util.Mapmap<string, .tensorflow.FeatureConfiguration> feature_map = 1;
        */
       @java.lang.Override
    -
    -  public org.tensorflow.proto.FeatureConfiguration getFeatureMapOrDefault(
    +  public /* nullable */
    +org.tensorflow.proto.FeatureConfiguration getFeatureMapOrDefault(
           java.lang.String key,
    -      org.tensorflow.proto.FeatureConfiguration defaultValue) {
    +      /* nullable */
    +org.tensorflow.proto.FeatureConfiguration defaultValue) {
         if (key == null) { throw new NullPointerException("map key"); }
         java.util.Map map =
             internalGetFeatureMap().getMap();
    @@ -124,7 +122,6 @@ public org.tensorflow.proto.FeatureConfiguration getFeatureMapOrDefault(
        * map<string, .tensorflow.FeatureConfiguration> feature_map = 1;
        */
       @java.lang.Override
    -
       public org.tensorflow.proto.FeatureConfiguration getFeatureMapOrThrow(
           java.lang.String key) {
         if (key == null) { throw new NullPointerException("map key"); }
    @@ -150,7 +147,7 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeStringMapTo(
             output,
             internalGetFeatureMap(),
    @@ -246,39 +243,41 @@ public static org.tensorflow.proto.ExampleParserConfiguration parseFrom(
       }
       public static org.tensorflow.proto.ExampleParserConfiguration parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ExampleParserConfiguration parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.ExampleParserConfiguration parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.ExampleParserConfiguration parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.ExampleParserConfiguration parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ExampleParserConfiguration parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -298,7 +297,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -306,7 +305,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.ExampleParserConfiguration}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.ExampleParserConfiguration)
           org.tensorflow.proto.ExampleParserConfigurationOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -315,7 +314,7 @@ public static final class Builder extends
         }
     
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
             int number) {
           switch (number) {
             case 1:
    @@ -326,7 +325,7 @@ protected com.google.protobuf.MapField internalGetMapField(
           }
         }
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMutableMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(
             int number) {
           switch (number) {
             case 1:
    @@ -337,7 +336,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
           }
         }
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ExampleParserConfigurationProtos.internal_static_tensorflow_ExampleParserConfiguration_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -350,13 +349,14 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           internalGetMutableFeatureMap().clear();
           return this;
         }
    @@ -384,45 +384,18 @@ public org.tensorflow.proto.ExampleParserConfiguration build() {
         @java.lang.Override
         public org.tensorflow.proto.ExampleParserConfiguration buildPartial() {
           org.tensorflow.proto.ExampleParserConfiguration result = new org.tensorflow.proto.ExampleParserConfiguration(this);
    -      int from_bitField0_ = bitField0_;
    -      result.featureMap_ = internalGetFeatureMap();
    -      result.featureMap_.makeImmutable();
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.ExampleParserConfiguration result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.featureMap_ = internalGetFeatureMap().build(FeatureMapDefaultEntryHolder.defaultEntry);
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.ExampleParserConfiguration) {
    @@ -437,6 +410,7 @@ public Builder mergeFrom(org.tensorflow.proto.ExampleParserConfiguration other)
           if (other == org.tensorflow.proto.ExampleParserConfiguration.getDefaultInstance()) return this;
           internalGetMutableFeatureMap().mergeFrom(
               other.internalGetFeatureMap());
    +      bitField0_ |= 0x00000001;
           this.mergeUnknownFields(other.getUnknownFields());
           onChanged();
           return this;
    @@ -467,8 +441,9 @@ public Builder mergeFrom(
                   com.google.protobuf.MapEntry
                   featureMap__ = input.readMessage(
                       FeatureMapDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
    -              internalGetMutableFeatureMap().getMutableMap().put(
    +              internalGetMutableFeatureMap().ensureBuilderMap().put(
                       featureMap__.getKey(), featureMap__.getValue());
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 default: {
    @@ -488,41 +463,49 @@ public Builder mergeFrom(
         }
         private int bitField0_;
     
    -    private com.google.protobuf.MapField<
    -        java.lang.String, org.tensorflow.proto.FeatureConfiguration> featureMap_;
    -    private com.google.protobuf.MapField
    -    internalGetFeatureMap() {
    +    private static final class FeatureMapConverter implements com.google.protobuf.MapFieldBuilder.Converter {
    +      @java.lang.Override
    +      public org.tensorflow.proto.FeatureConfiguration build(org.tensorflow.proto.FeatureConfigurationOrBuilder val) {
    +        if (val instanceof org.tensorflow.proto.FeatureConfiguration) { return (org.tensorflow.proto.FeatureConfiguration) val; }
    +        return ((org.tensorflow.proto.FeatureConfiguration.Builder) val).build();
    +      }
    +
    +      @java.lang.Override
    +      public com.google.protobuf.MapEntry defaultEntry() {
    +        return FeatureMapDefaultEntryHolder.defaultEntry;
    +      }
    +    };
    +    private static final FeatureMapConverter featureMapConverter = new FeatureMapConverter();
    +
    +    private com.google.protobuf.MapFieldBuilder<
    +        java.lang.String, org.tensorflow.proto.FeatureConfigurationOrBuilder, org.tensorflow.proto.FeatureConfiguration, org.tensorflow.proto.FeatureConfiguration.Builder> featureMap_;
    +    private com.google.protobuf.MapFieldBuilder
    +        internalGetFeatureMap() {
           if (featureMap_ == null) {
    -        return com.google.protobuf.MapField.emptyMapField(
    -            FeatureMapDefaultEntryHolder.defaultEntry);
    +        return new com.google.protobuf.MapFieldBuilder<>(featureMapConverter);
           }
           return featureMap_;
         }
    -    private com.google.protobuf.MapField
    -    internalGetMutableFeatureMap() {
    -      onChanged();;
    +    private com.google.protobuf.MapFieldBuilder
    +        internalGetMutableFeatureMap() {
           if (featureMap_ == null) {
    -        featureMap_ = com.google.protobuf.MapField.newMapField(
    -            FeatureMapDefaultEntryHolder.defaultEntry);
    -      }
    -      if (!featureMap_.isMutable()) {
    -        featureMap_ = featureMap_.copy();
    +        featureMap_ = new com.google.protobuf.MapFieldBuilder<>(featureMapConverter);
           }
    +      bitField0_ |= 0x00000001;
    +      onChanged();
           return featureMap_;
         }
    -
         public int getFeatureMapCount() {
    -      return internalGetFeatureMap().getMap().size();
    +      return internalGetFeatureMap().ensureBuilderMap().size();
         }
         /**
          * map<string, .tensorflow.FeatureConfiguration> feature_map = 1;
          */
    -
         @java.lang.Override
         public boolean containsFeatureMap(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      return internalGetFeatureMap().getMap().containsKey(key);
    +      return internalGetFeatureMap().ensureBuilderMap().containsKey(key);
         }
         /**
          * Use {@link #getFeatureMapMap()} instead.
    @@ -536,52 +519,47 @@ public java.util.Mapmap<string, .tensorflow.FeatureConfiguration> feature_map = 1;
          */
         @java.lang.Override
    -
         public java.util.Map getFeatureMapMap() {
    -      return internalGetFeatureMap().getMap();
    +      return internalGetFeatureMap().getImmutableMap();
         }
         /**
          * map<string, .tensorflow.FeatureConfiguration> feature_map = 1;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.FeatureConfiguration getFeatureMapOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.FeatureConfiguration getFeatureMapOrDefault(
             java.lang.String key,
    -        org.tensorflow.proto.FeatureConfiguration defaultValue) {
    +        /* nullable */
    +org.tensorflow.proto.FeatureConfiguration defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetFeatureMap().getMap();
    -      return map.containsKey(key) ? map.get(key) : defaultValue;
    +      java.util.Map map = internalGetMutableFeatureMap().ensureBuilderMap();
    +      return map.containsKey(key) ? featureMapConverter.build(map.get(key)) : defaultValue;
         }
         /**
          * map<string, .tensorflow.FeatureConfiguration> feature_map = 1;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.FeatureConfiguration getFeatureMapOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetFeatureMap().getMap();
    +      java.util.Map map = internalGetMutableFeatureMap().ensureBuilderMap();
           if (!map.containsKey(key)) {
             throw new java.lang.IllegalArgumentException();
           }
    -      return map.get(key);
    +      return featureMapConverter.build(map.get(key));
         }
    -
         public Builder clearFeatureMap() {
    -      internalGetMutableFeatureMap().getMutableMap()
    -          .clear();
    +      bitField0_ = (bitField0_ & ~0x00000001);
    +      internalGetMutableFeatureMap().clear();
           return this;
         }
         /**
          * map<string, .tensorflow.FeatureConfiguration> feature_map = 1;
          */
    -
         public Builder removeFeatureMap(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      internalGetMutableFeatureMap().getMutableMap()
    +      internalGetMutableFeatureMap().ensureBuilderMap()
               .remove(key);
           return this;
         }
    @@ -590,8 +568,9 @@ public Builder removeFeatureMap(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableFeatureMap() {
    -      return internalGetMutableFeatureMap().getMutableMap();
    +        getMutableFeatureMap() {
    +      bitField0_ |= 0x00000001;
    +      return internalGetMutableFeatureMap().ensureMessageMap();
         }
         /**
          * map<string, .tensorflow.FeatureConfiguration> feature_map = 1;
    @@ -600,37 +579,45 @@ public Builder putFeatureMap(
             java.lang.String key,
             org.tensorflow.proto.FeatureConfiguration value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    -      internalGetMutableFeatureMap().getMutableMap()
    +      if (value == null) { throw new NullPointerException("map value"); }
    +      internalGetMutableFeatureMap().ensureBuilderMap()
               .put(key, value);
    +      bitField0_ |= 0x00000001;
           return this;
         }
         /**
          * map<string, .tensorflow.FeatureConfiguration> feature_map = 1;
          */
    -
         public Builder putAllFeatureMap(
             java.util.Map values) {
    -      internalGetMutableFeatureMap().getMutableMap()
    +      for (java.util.Map.Entry e : values.entrySet()) {
    +        if (e.getKey() == null || e.getValue() == null) {
    +          throw new NullPointerException();
    +        }
    +      }
    +      internalGetMutableFeatureMap().ensureBuilderMap()
               .putAll(values);
    +      bitField0_ |= 0x00000001;
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    +    /**
    +     * map<string, .tensorflow.FeatureConfiguration> feature_map = 1;
    +     */
    +    public org.tensorflow.proto.FeatureConfiguration.Builder putFeatureMapBuilderIfAbsent(
    +        java.lang.String key) {
    +      java.util.Map builderMap = internalGetMutableFeatureMap().ensureBuilderMap();
    +      org.tensorflow.proto.FeatureConfigurationOrBuilder entry = builderMap.get(key);
    +      if (entry == null) {
    +        entry = org.tensorflow.proto.FeatureConfiguration.newBuilder();
    +        builderMap.put(key, entry);
    +      }
    +      if (entry instanceof org.tensorflow.proto.FeatureConfiguration) {
    +        entry = ((org.tensorflow.proto.FeatureConfiguration) entry).toBuilder();
    +        builderMap.put(key, entry);
    +      }
    +      return (org.tensorflow.proto.FeatureConfiguration.Builder) entry;
         }
     
    -
         // @@protoc_insertion_point(builder_scope:tensorflow.ExampleParserConfiguration)
       }
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleParserConfigurationOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleParserConfigurationOrBuilder.java
    index 07a67ef3560..1f35e0642bc 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleParserConfigurationOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleParserConfigurationOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/example_parser_configuration.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -30,7 +32,6 @@ boolean containsFeatureMap(
       /**
        * map<string, .tensorflow.FeatureConfiguration> feature_map = 1;
        */
    -
       /* nullable */
     org.tensorflow.proto.FeatureConfiguration getFeatureMapOrDefault(
           java.lang.String key,
    @@ -39,7 +40,6 @@ org.tensorflow.proto.FeatureConfiguration getFeatureMapOrDefault(
       /**
        * map<string, .tensorflow.FeatureConfiguration> feature_map = 1;
        */
    -
       org.tensorflow.proto.FeatureConfiguration getFeatureMapOrThrow(
           java.lang.String key);
     }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleParserConfigurationProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleParserConfigurationProtos.java
    index 19c580bf65a..4d14ee3d4b8 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleParserConfigurationProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleParserConfigurationProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/example_parser_configuration.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class ExampleParserConfigurationProtos {
       private ExampleParserConfigurationProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ExampleParserConfigurationProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,27 +28,27 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_VarLenFeatureProto_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_VarLenFeatureProto_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_FixedLenFeatureProto_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_FixedLenFeatureProto_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_FeatureConfiguration_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_FeatureConfiguration_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_ExampleParserConfiguration_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_ExampleParserConfiguration_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_ExampleParserConfiguration_FeatureMapEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_ExampleParserConfiguration_FeatureMapEntry_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -86,33 +97,34 @@ public static void registerAllExtensions(
         internal_static_tensorflow_VarLenFeatureProto_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_VarLenFeatureProto_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_VarLenFeatureProto_descriptor,
             new java.lang.String[] { "Dtype", "ValuesOutputTensorName", "IndicesOutputTensorName", "ShapesOutputTensorName", });
         internal_static_tensorflow_FixedLenFeatureProto_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_FixedLenFeatureProto_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_FixedLenFeatureProto_descriptor,
             new java.lang.String[] { "Dtype", "Shape", "DefaultValue", "ValuesOutputTensorName", });
         internal_static_tensorflow_FeatureConfiguration_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_FeatureConfiguration_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_FeatureConfiguration_descriptor,
             new java.lang.String[] { "FixedLenFeature", "VarLenFeature", "Config", });
         internal_static_tensorflow_ExampleParserConfiguration_descriptor =
           getDescriptor().getMessageTypes().get(3);
         internal_static_tensorflow_ExampleParserConfiguration_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_ExampleParserConfiguration_descriptor,
             new java.lang.String[] { "FeatureMap", });
         internal_static_tensorflow_ExampleParserConfiguration_FeatureMapEntry_descriptor =
           internal_static_tensorflow_ExampleParserConfiguration_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_ExampleParserConfiguration_FeatureMapEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_ExampleParserConfiguration_FeatureMapEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.TensorProtos.getDescriptor();
         org.tensorflow.proto.TensorShapeProtos.getDescriptor();
         org.tensorflow.proto.TypesProtos.getDescriptor();
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleProtos.java
    index 116f1ee7100..46f3017c277 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExampleProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/example.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class ExampleProtos {
       private ExampleProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ExampleProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,12 +28,12 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_Example_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_Example_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SequenceExample_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SequenceExample_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -52,15 +63,16 @@ public static void registerAllExtensions(
         internal_static_tensorflow_Example_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_Example_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_Example_descriptor,
             new java.lang.String[] { "Features", });
         internal_static_tensorflow_SequenceExample_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_SequenceExample_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SequenceExample_descriptor,
             new java.lang.String[] { "Context", "FeatureLists", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.FeatureProtos.getDescriptor();
       }
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Execution.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Execution.java
    index 0d61fd97501..46793096670 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Execution.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Execution.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug_event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -13,12 +15,21 @@
      * Protobuf type {@code tensorflow.Execution}
      */
     public final class Execution extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.Execution)
         ExecutionOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      Execution.class.getName());
    +  }
       // Use Execution.newBuilder() to construct.
    -  private Execution(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private Execution(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private Execution() {
    @@ -31,33 +42,23 @@ private Execution() {
         outputTensorDeviceIds_ = emptyIntList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new Execution();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_Execution_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_Execution_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.Execution.class, org.tensorflow.proto.Execution.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int OP_TYPE_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object opType_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object opType_ = "";
       /**
        * 
        * Op type (e.g., "MatMul").
    @@ -105,7 +106,7 @@ public java.lang.String getOpType() {
       }
     
       public static final int NUM_OUTPUTS_FIELD_NUMBER = 2;
    -  private int numOutputs_;
    +  private int numOutputs_ = 0;
       /**
        * 
        * Number of output tensors.
    @@ -120,7 +121,8 @@ public int getNumOutputs() {
       }
     
       public static final int GRAPH_ID_FIELD_NUMBER = 3;
    -  private volatile java.lang.Object graphId_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object graphId_ = "";
       /**
        * 
        * The graph that's executed: applicable only to the eager
    @@ -168,7 +170,9 @@ public java.lang.String getGraphId() {
       }
     
       public static final int INPUT_TENSOR_IDS_FIELD_NUMBER = 4;
    -  private com.google.protobuf.Internal.LongList inputTensorIds_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.LongList inputTensorIds_ =
    +      emptyLongList();
       /**
        * 
        * IDs of the input tensors (if available).
    @@ -208,7 +212,9 @@ public long getInputTensorIds(int index) {
       private int inputTensorIdsMemoizedSerializedSize = -1;
     
       public static final int OUTPUT_TENSOR_IDS_FIELD_NUMBER = 5;
    -  private com.google.protobuf.Internal.LongList outputTensorIds_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.LongList outputTensorIds_ =
    +      emptyLongList();
       /**
        * 
        * IDs of the output tensors (if availbable).
    @@ -251,7 +257,7 @@ public long getOutputTensorIds(int index) {
       private int outputTensorIdsMemoizedSerializedSize = -1;
     
       public static final int TENSOR_DEBUG_MODE_FIELD_NUMBER = 6;
    -  private int tensorDebugMode_;
    +  private int tensorDebugMode_ = 0;
       /**
        * 
        * Type of the tensor value encapsulated in this proto.
    @@ -272,12 +278,12 @@ public long getOutputTensorIds(int index) {
        * @return The tensorDebugMode.
        */
       @java.lang.Override public org.tensorflow.proto.TensorDebugMode getTensorDebugMode() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.TensorDebugMode result = org.tensorflow.proto.TensorDebugMode.valueOf(tensorDebugMode_);
    +    org.tensorflow.proto.TensorDebugMode result = org.tensorflow.proto.TensorDebugMode.forNumber(tensorDebugMode_);
         return result == null ? org.tensorflow.proto.TensorDebugMode.UNRECOGNIZED : result;
       }
     
       public static final int TENSOR_PROTOS_FIELD_NUMBER = 7;
    +  @SuppressWarnings("serial")
       private java.util.List tensorProtos_;
       /**
        * 
    @@ -354,7 +360,7 @@ public org.tensorflow.proto.TensorProtoOrBuilder getTensorProtosOrBuilder(
        */
       @java.lang.Override
       public boolean hasCodeLocation() {
    -    return codeLocation_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -377,11 +383,13 @@ public org.tensorflow.proto.CodeLocation getCodeLocation() {
        */
       @java.lang.Override
       public org.tensorflow.proto.CodeLocationOrBuilder getCodeLocationOrBuilder() {
    -    return getCodeLocation();
    +    return codeLocation_ == null ? org.tensorflow.proto.CodeLocation.getDefaultInstance() : codeLocation_;
       }
     
       public static final int OUTPUT_TENSOR_DEVICE_IDS_FIELD_NUMBER = 9;
    -  private com.google.protobuf.Internal.IntList outputTensorDeviceIds_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.IntList outputTensorDeviceIds_ =
    +      emptyIntList();
       /**
        * 
        * Debugged-generated IDs of the devices on which the output tensors reside.
    @@ -441,14 +449,14 @@ public final boolean isInitialized() {
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
         getSerializedSize();
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(opType_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, opType_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(opType_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, opType_);
         }
         if (numOutputs_ != 0) {
           output.writeInt32(2, numOutputs_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(graphId_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, graphId_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(graphId_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, graphId_);
         }
         if (getInputTensorIdsList().size() > 0) {
           output.writeUInt32NoTag(34);
    @@ -470,7 +478,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         for (int i = 0; i < tensorProtos_.size(); i++) {
           output.writeMessage(7, tensorProtos_.get(i));
         }
    -    if (codeLocation_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(8, getCodeLocation());
         }
         if (getOutputTensorDeviceIdsList().size() > 0) {
    @@ -489,15 +497,15 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(opType_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, opType_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(opType_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, opType_);
         }
         if (numOutputs_ != 0) {
           size += com.google.protobuf.CodedOutputStream
             .computeInt32Size(2, numOutputs_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(graphId_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, graphId_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(graphId_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, graphId_);
         }
         {
           int dataSize = 0;
    @@ -535,7 +543,7 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(7, tensorProtos_.get(i));
         }
    -    if (codeLocation_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(8, getCodeLocation());
         }
    @@ -666,39 +674,41 @@ public static org.tensorflow.proto.Execution parseFrom(
       }
       public static org.tensorflow.proto.Execution parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.Execution parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.Execution parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.Execution parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.Execution parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.Execution parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -718,7 +728,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -732,7 +742,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.Execution}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.Execution)
           org.tensorflow.proto.ExecutionOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -741,7 +751,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_Execution_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -750,44 +760,44 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.Execution.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getTensorProtosFieldBuilder();
    +        getCodeLocationFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           opType_ = "";
    -
           numOutputs_ = 0;
    -
           graphId_ = "";
    -
           inputTensorIds_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000001);
           outputTensorIds_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000002);
           tensorDebugMode_ = 0;
    -
           if (tensorProtosBuilder_ == null) {
             tensorProtos_ = java.util.Collections.emptyList();
           } else {
             tensorProtos_ = null;
             tensorProtosBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000004);
    -      if (codeLocationBuilder_ == null) {
    -        codeLocation_ = null;
    -      } else {
    -        codeLocation_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000040);
    +      codeLocation_ = null;
    +      if (codeLocationBuilder_ != null) {
    +        codeLocationBuilder_.dispose();
             codeLocationBuilder_ = null;
           }
           outputTensorDeviceIds_ = emptyIntList();
    -      bitField0_ = (bitField0_ & ~0x00000008);
           return this;
         }
     
    @@ -814,76 +824,60 @@ public org.tensorflow.proto.Execution build() {
         @java.lang.Override
         public org.tensorflow.proto.Execution buildPartial() {
           org.tensorflow.proto.Execution result = new org.tensorflow.proto.Execution(this);
    -      int from_bitField0_ = bitField0_;
    -      result.opType_ = opType_;
    -      result.numOutputs_ = numOutputs_;
    -      result.graphId_ = graphId_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        inputTensorIds_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.inputTensorIds_ = inputTensorIds_;
    -      if (((bitField0_ & 0x00000002) != 0)) {
    -        outputTensorIds_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000002);
    -      }
    -      result.outputTensorIds_ = outputTensorIds_;
    -      result.tensorDebugMode_ = tensorDebugMode_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.Execution result) {
           if (tensorProtosBuilder_ == null) {
    -        if (((bitField0_ & 0x00000004) != 0)) {
    +        if (((bitField0_ & 0x00000040) != 0)) {
               tensorProtos_ = java.util.Collections.unmodifiableList(tensorProtos_);
    -          bitField0_ = (bitField0_ & ~0x00000004);
    +          bitField0_ = (bitField0_ & ~0x00000040);
             }
             result.tensorProtos_ = tensorProtos_;
           } else {
             result.tensorProtos_ = tensorProtosBuilder_.build();
           }
    -      if (codeLocationBuilder_ == null) {
    -        result.codeLocation_ = codeLocation_;
    -      } else {
    -        result.codeLocation_ = codeLocationBuilder_.build();
    +    }
    +
    +    private void buildPartial0(org.tensorflow.proto.Execution result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.opType_ = opType_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.numOutputs_ = numOutputs_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.graphId_ = graphId_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        inputTensorIds_.makeImmutable();
    +        result.inputTensorIds_ = inputTensorIds_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        outputTensorIds_.makeImmutable();
    +        result.outputTensorIds_ = outputTensorIds_;
           }
    -      if (((bitField0_ & 0x00000008) != 0)) {
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.tensorDebugMode_ = tensorDebugMode_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000080) != 0)) {
    +        result.codeLocation_ = codeLocationBuilder_ == null
    +            ? codeLocation_
    +            : codeLocationBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000100) != 0)) {
             outputTensorDeviceIds_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000008);
    +        result.outputTensorDeviceIds_ = outputTensorDeviceIds_;
           }
    -      result.outputTensorDeviceIds_ = outputTensorDeviceIds_;
    -      onBuilt();
    -      return result;
    +      result.bitField0_ |= to_bitField0_;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    -    }
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.Execution) {
    @@ -898,6 +892,7 @@ public Builder mergeFrom(org.tensorflow.proto.Execution other) {
           if (other == org.tensorflow.proto.Execution.getDefaultInstance()) return this;
           if (!other.getOpType().isEmpty()) {
             opType_ = other.opType_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (other.getNumOutputs() != 0) {
    @@ -905,12 +900,14 @@ public Builder mergeFrom(org.tensorflow.proto.Execution other) {
           }
           if (!other.getGraphId().isEmpty()) {
             graphId_ = other.graphId_;
    +        bitField0_ |= 0x00000004;
             onChanged();
           }
           if (!other.inputTensorIds_.isEmpty()) {
             if (inputTensorIds_.isEmpty()) {
               inputTensorIds_ = other.inputTensorIds_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          inputTensorIds_.makeImmutable();
    +          bitField0_ |= 0x00000008;
             } else {
               ensureInputTensorIdsIsMutable();
               inputTensorIds_.addAll(other.inputTensorIds_);
    @@ -920,7 +917,8 @@ public Builder mergeFrom(org.tensorflow.proto.Execution other) {
           if (!other.outputTensorIds_.isEmpty()) {
             if (outputTensorIds_.isEmpty()) {
               outputTensorIds_ = other.outputTensorIds_;
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          outputTensorIds_.makeImmutable();
    +          bitField0_ |= 0x00000010;
             } else {
               ensureOutputTensorIdsIsMutable();
               outputTensorIds_.addAll(other.outputTensorIds_);
    @@ -934,7 +932,7 @@ public Builder mergeFrom(org.tensorflow.proto.Execution other) {
             if (!other.tensorProtos_.isEmpty()) {
               if (tensorProtos_.isEmpty()) {
                 tensorProtos_ = other.tensorProtos_;
    -            bitField0_ = (bitField0_ & ~0x00000004);
    +            bitField0_ = (bitField0_ & ~0x00000040);
               } else {
                 ensureTensorProtosIsMutable();
                 tensorProtos_.addAll(other.tensorProtos_);
    @@ -947,9 +945,9 @@ public Builder mergeFrom(org.tensorflow.proto.Execution other) {
                 tensorProtosBuilder_.dispose();
                 tensorProtosBuilder_ = null;
                 tensorProtos_ = other.tensorProtos_;
    -            bitField0_ = (bitField0_ & ~0x00000004);
    +            bitField0_ = (bitField0_ & ~0x00000040);
                 tensorProtosBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getTensorProtosFieldBuilder() : null;
               } else {
                 tensorProtosBuilder_.addAllMessages(other.tensorProtos_);
    @@ -962,7 +960,8 @@ public Builder mergeFrom(org.tensorflow.proto.Execution other) {
           if (!other.outputTensorDeviceIds_.isEmpty()) {
             if (outputTensorDeviceIds_.isEmpty()) {
               outputTensorDeviceIds_ = other.outputTensorDeviceIds_;
    -          bitField0_ = (bitField0_ & ~0x00000008);
    +          outputTensorDeviceIds_.makeImmutable();
    +          bitField0_ |= 0x00000100;
             } else {
               ensureOutputTensorDeviceIdsIsMutable();
               outputTensorDeviceIds_.addAll(other.outputTensorDeviceIds_);
    @@ -997,17 +996,17 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   opType_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 16: {
                   numOutputs_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 case 26: {
                   graphId_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 case 32: {
    @@ -1044,7 +1043,7 @@ public Builder mergeFrom(
                 } // case 42
                 case 48: {
                   tensorDebugMode_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 48
                 case 58: {
    @@ -1064,7 +1063,7 @@ public Builder mergeFrom(
                   input.readMessage(
                       getCodeLocationFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000080;
                   break;
                 } // case 66
                 case 72: {
    @@ -1156,11 +1155,9 @@ public java.lang.String getOpType() {
          */
         public Builder setOpType(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           opType_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1174,8 +1171,8 @@ public Builder setOpType(
          * @return This builder for chaining.
          */
         public Builder clearOpType() {
    -      
           opType_ = getDefaultInstance().getOpType();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -1191,12 +1188,10 @@ public Builder clearOpType() {
          */
         public Builder setOpTypeBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           opType_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1224,8 +1219,9 @@ public int getNumOutputs() {
          * @return This builder for chaining.
          */
         public Builder setNumOutputs(int value) {
    -      
    +
           numOutputs_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1238,7 +1234,7 @@ public Builder setNumOutputs(int value) {
          * @return This builder for chaining.
          */
         public Builder clearNumOutputs() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           numOutputs_ = 0;
           onChanged();
           return this;
    @@ -1300,11 +1296,9 @@ public java.lang.String getGraphId() {
          */
         public Builder setGraphId(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           graphId_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1318,8 +1312,8 @@ public Builder setGraphId(
          * @return This builder for chaining.
          */
         public Builder clearGraphId() {
    -      
           graphId_ = getDefaultInstance().getGraphId();
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -1335,22 +1329,20 @@ public Builder clearGraphId() {
          */
         public Builder setGraphIdBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           graphId_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
     
         private com.google.protobuf.Internal.LongList inputTensorIds_ = emptyLongList();
         private void ensureInputTensorIdsIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    -        inputTensorIds_ = mutableCopy(inputTensorIds_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      if (!inputTensorIds_.isModifiable()) {
    +        inputTensorIds_ = makeMutableCopy(inputTensorIds_);
    +      }
    +      bitField0_ |= 0x00000008;
         }
         /**
          * 
    @@ -1362,8 +1354,8 @@ private void ensureInputTensorIdsIsMutable() {
          */
         public java.util.List
             getInputTensorIdsList() {
    -      return ((bitField0_ & 0x00000001) != 0) ?
    -               java.util.Collections.unmodifiableList(inputTensorIds_) : inputTensorIds_;
    +      inputTensorIds_.makeImmutable();
    +      return inputTensorIds_;
         }
         /**
          * 
    @@ -1400,8 +1392,10 @@ public long getInputTensorIds(int index) {
          */
         public Builder setInputTensorIds(
             int index, long value) {
    +
           ensureInputTensorIdsIsMutable();
           inputTensorIds_.setLong(index, value);
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1415,8 +1409,10 @@ public Builder setInputTensorIds(
          * @return This builder for chaining.
          */
         public Builder addInputTensorIds(long value) {
    +
           ensureInputTensorIdsIsMutable();
           inputTensorIds_.addLong(value);
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1434,6 +1430,7 @@ public Builder addAllInputTensorIds(
           ensureInputTensorIdsIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, inputTensorIds_);
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1447,17 +1444,17 @@ public Builder addAllInputTensorIds(
          */
         public Builder clearInputTensorIds() {
           inputTensorIds_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000008);
           onChanged();
           return this;
         }
     
         private com.google.protobuf.Internal.LongList outputTensorIds_ = emptyLongList();
         private void ensureOutputTensorIdsIsMutable() {
    -      if (!((bitField0_ & 0x00000002) != 0)) {
    -        outputTensorIds_ = mutableCopy(outputTensorIds_);
    -        bitField0_ |= 0x00000002;
    -       }
    +      if (!outputTensorIds_.isModifiable()) {
    +        outputTensorIds_ = makeMutableCopy(outputTensorIds_);
    +      }
    +      bitField0_ |= 0x00000010;
         }
         /**
          * 
    @@ -1470,8 +1467,8 @@ private void ensureOutputTensorIdsIsMutable() {
          */
         public java.util.List
             getOutputTensorIdsList() {
    -      return ((bitField0_ & 0x00000002) != 0) ?
    -               java.util.Collections.unmodifiableList(outputTensorIds_) : outputTensorIds_;
    +      outputTensorIds_.makeImmutable();
    +      return outputTensorIds_;
         }
         /**
          * 
    @@ -1511,8 +1508,10 @@ public long getOutputTensorIds(int index) {
          */
         public Builder setOutputTensorIds(
             int index, long value) {
    +
           ensureOutputTensorIdsIsMutable();
           outputTensorIds_.setLong(index, value);
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1527,8 +1526,10 @@ public Builder setOutputTensorIds(
          * @return This builder for chaining.
          */
         public Builder addOutputTensorIds(long value) {
    +
           ensureOutputTensorIdsIsMutable();
           outputTensorIds_.addLong(value);
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1547,6 +1548,7 @@ public Builder addAllOutputTensorIds(
           ensureOutputTensorIdsIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, outputTensorIds_);
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1561,7 +1563,7 @@ public Builder addAllOutputTensorIds(
          */
         public Builder clearOutputTensorIds() {
           outputTensorIds_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000002);
    +      bitField0_ = (bitField0_ & ~0x00000010);
           onChanged();
           return this;
         }
    @@ -1588,8 +1590,8 @@ public Builder clearOutputTensorIds() {
          * @return This builder for chaining.
          */
         public Builder setTensorDebugModeValue(int value) {
    -      
           tensorDebugMode_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -1603,8 +1605,7 @@ public Builder setTensorDebugModeValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.TensorDebugMode getTensorDebugMode() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.TensorDebugMode result = org.tensorflow.proto.TensorDebugMode.valueOf(tensorDebugMode_);
    +      org.tensorflow.proto.TensorDebugMode result = org.tensorflow.proto.TensorDebugMode.forNumber(tensorDebugMode_);
           return result == null ? org.tensorflow.proto.TensorDebugMode.UNRECOGNIZED : result;
         }
         /**
    @@ -1620,7 +1621,7 @@ public Builder setTensorDebugMode(org.tensorflow.proto.TensorDebugMode value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000020;
           tensorDebugMode_ = value.getNumber();
           onChanged();
           return this;
    @@ -1634,7 +1635,7 @@ public Builder setTensorDebugMode(org.tensorflow.proto.TensorDebugMode value) {
          * @return This builder for chaining.
          */
         public Builder clearTensorDebugMode() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000020);
           tensorDebugMode_ = 0;
           onChanged();
           return this;
    @@ -1643,13 +1644,13 @@ public Builder clearTensorDebugMode() {
         private java.util.List tensorProtos_ =
           java.util.Collections.emptyList();
         private void ensureTensorProtosIsMutable() {
    -      if (!((bitField0_ & 0x00000004) != 0)) {
    +      if (!((bitField0_ & 0x00000040) != 0)) {
             tensorProtos_ = new java.util.ArrayList(tensorProtos_);
    -        bitField0_ |= 0x00000004;
    +        bitField0_ |= 0x00000040;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> tensorProtosBuilder_;
     
         /**
    @@ -1850,7 +1851,7 @@ public Builder addAllTensorProtos(
         public Builder clearTensorProtos() {
           if (tensorProtosBuilder_ == null) {
             tensorProtos_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000004);
    +        bitField0_ = (bitField0_ & ~0x00000040);
             onChanged();
           } else {
             tensorProtosBuilder_.clear();
    @@ -1955,14 +1956,14 @@ public org.tensorflow.proto.TensorProto.Builder addTensorProtosBuilder(
              getTensorProtosBuilderList() {
           return getTensorProtosFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> 
             getTensorProtosFieldBuilder() {
           if (tensorProtosBuilder_ == null) {
    -        tensorProtosBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        tensorProtosBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder>(
                     tensorProtos_,
    -                ((bitField0_ & 0x00000004) != 0),
    +                ((bitField0_ & 0x00000040) != 0),
                     getParentForChildren(),
                     isClean());
             tensorProtos_ = null;
    @@ -1971,7 +1972,7 @@ public org.tensorflow.proto.TensorProto.Builder addTensorProtosBuilder(
         }
     
         private org.tensorflow.proto.CodeLocation codeLocation_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.CodeLocation, org.tensorflow.proto.CodeLocation.Builder, org.tensorflow.proto.CodeLocationOrBuilder> codeLocationBuilder_;
         /**
          * 
    @@ -1982,7 +1983,7 @@ public org.tensorflow.proto.TensorProto.Builder addTensorProtosBuilder(
          * @return Whether the codeLocation field is set.
          */
         public boolean hasCodeLocation() {
    -      return codeLocationBuilder_ != null || codeLocation_ != null;
    +      return ((bitField0_ & 0x00000080) != 0);
         }
         /**
          * 
    @@ -2012,11 +2013,11 @@ public Builder setCodeLocation(org.tensorflow.proto.CodeLocation value) {
               throw new NullPointerException();
             }
             codeLocation_ = value;
    -        onChanged();
           } else {
             codeLocationBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000080;
    +      onChanged();
           return this;
         }
         /**
    @@ -2030,11 +2031,11 @@ public Builder setCodeLocation(
             org.tensorflow.proto.CodeLocation.Builder builderForValue) {
           if (codeLocationBuilder_ == null) {
             codeLocation_ = builderForValue.build();
    -        onChanged();
           } else {
             codeLocationBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000080;
    +      onChanged();
           return this;
         }
         /**
    @@ -2046,17 +2047,20 @@ public Builder setCodeLocation(
          */
         public Builder mergeCodeLocation(org.tensorflow.proto.CodeLocation value) {
           if (codeLocationBuilder_ == null) {
    -        if (codeLocation_ != null) {
    -          codeLocation_ =
    -            org.tensorflow.proto.CodeLocation.newBuilder(codeLocation_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000080) != 0) &&
    +          codeLocation_ != null &&
    +          codeLocation_ != org.tensorflow.proto.CodeLocation.getDefaultInstance()) {
    +          getCodeLocationBuilder().mergeFrom(value);
             } else {
               codeLocation_ = value;
             }
    -        onChanged();
           } else {
             codeLocationBuilder_.mergeFrom(value);
           }
    -
    +      if (codeLocation_ != null) {
    +        bitField0_ |= 0x00000080;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -2067,14 +2071,13 @@ public Builder mergeCodeLocation(org.tensorflow.proto.CodeLocation value) {
          * .tensorflow.CodeLocation code_location = 8;
          */
         public Builder clearCodeLocation() {
    -      if (codeLocationBuilder_ == null) {
    -        codeLocation_ = null;
    -        onChanged();
    -      } else {
    -        codeLocation_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000080);
    +      codeLocation_ = null;
    +      if (codeLocationBuilder_ != null) {
    +        codeLocationBuilder_.dispose();
             codeLocationBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -2085,7 +2088,7 @@ public Builder clearCodeLocation() {
          * .tensorflow.CodeLocation code_location = 8;
          */
         public org.tensorflow.proto.CodeLocation.Builder getCodeLocationBuilder() {
    -      
    +      bitField0_ |= 0x00000080;
           onChanged();
           return getCodeLocationFieldBuilder().getBuilder();
         }
    @@ -2111,11 +2114,11 @@ public org.tensorflow.proto.CodeLocationOrBuilder getCodeLocationOrBuilder() {
          *
          * .tensorflow.CodeLocation code_location = 8;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.CodeLocation, org.tensorflow.proto.CodeLocation.Builder, org.tensorflow.proto.CodeLocationOrBuilder> 
             getCodeLocationFieldBuilder() {
           if (codeLocationBuilder_ == null) {
    -        codeLocationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        codeLocationBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.CodeLocation, org.tensorflow.proto.CodeLocation.Builder, org.tensorflow.proto.CodeLocationOrBuilder>(
                     getCodeLocation(),
                     getParentForChildren(),
    @@ -2127,10 +2130,10 @@ public org.tensorflow.proto.CodeLocationOrBuilder getCodeLocationOrBuilder() {
     
         private com.google.protobuf.Internal.IntList outputTensorDeviceIds_ = emptyIntList();
         private void ensureOutputTensorDeviceIdsIsMutable() {
    -      if (!((bitField0_ & 0x00000008) != 0)) {
    -        outputTensorDeviceIds_ = mutableCopy(outputTensorDeviceIds_);
    -        bitField0_ |= 0x00000008;
    -       }
    +      if (!outputTensorDeviceIds_.isModifiable()) {
    +        outputTensorDeviceIds_ = makeMutableCopy(outputTensorDeviceIds_);
    +      }
    +      bitField0_ |= 0x00000100;
         }
         /**
          * 
    @@ -2144,8 +2147,8 @@ private void ensureOutputTensorDeviceIdsIsMutable() {
          */
         public java.util.List
             getOutputTensorDeviceIdsList() {
    -      return ((bitField0_ & 0x00000008) != 0) ?
    -               java.util.Collections.unmodifiableList(outputTensorDeviceIds_) : outputTensorDeviceIds_;
    +      outputTensorDeviceIds_.makeImmutable();
    +      return outputTensorDeviceIds_;
         }
         /**
          * 
    @@ -2188,8 +2191,10 @@ public int getOutputTensorDeviceIds(int index) {
          */
         public Builder setOutputTensorDeviceIds(
             int index, int value) {
    +
           ensureOutputTensorDeviceIdsIsMutable();
           outputTensorDeviceIds_.setInt(index, value);
    +      bitField0_ |= 0x00000100;
           onChanged();
           return this;
         }
    @@ -2205,8 +2210,10 @@ public Builder setOutputTensorDeviceIds(
          * @return This builder for chaining.
          */
         public Builder addOutputTensorDeviceIds(int value) {
    +
           ensureOutputTensorDeviceIdsIsMutable();
           outputTensorDeviceIds_.addInt(value);
    +      bitField0_ |= 0x00000100;
           onChanged();
           return this;
         }
    @@ -2226,6 +2233,7 @@ public Builder addAllOutputTensorDeviceIds(
           ensureOutputTensorDeviceIdsIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, outputTensorDeviceIds_);
    +      bitField0_ |= 0x00000100;
           onChanged();
           return this;
         }
    @@ -2241,22 +2249,10 @@ public Builder addAllOutputTensorDeviceIds(
          */
         public Builder clearOutputTensorDeviceIds() {
           outputTensorDeviceIds_ = emptyIntList();
    -      bitField0_ = (bitField0_ & ~0x00000008);
    +      bitField0_ = (bitField0_ & ~0x00000100);
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.Execution)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExecutionOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExecutionOrBuilder.java
    index e9cf43ad319..1e95b376148 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExecutionOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ExecutionOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug_event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Feature.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Feature.java
    index 7f22afd33dc..000c9bda934 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Feature.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Feature.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/feature.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,36 +13,33 @@
      * Protobuf type {@code tensorflow.Feature}
      */
     public final class Feature extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.Feature)
         FeatureOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      Feature.class.getName());
    +  }
       // Use Feature.newBuilder() to construct.
    -  private Feature(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private Feature(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private Feature() {
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new Feature();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_Feature_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_Feature_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -48,6 +47,7 @@ protected java.lang.Object newInstance(
       }
     
       private int kindCase_ = 0;
    +  @SuppressWarnings("serial")
       private java.lang.Object kind_;
       public enum KindCase
           implements com.google.protobuf.Internal.EnumLite,
    @@ -325,39 +325,41 @@ public static org.tensorflow.proto.Feature parseFrom(
       }
       public static org.tensorflow.proto.Feature parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.Feature parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.Feature parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.Feature parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.Feature parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.Feature parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -377,7 +379,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -389,7 +391,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.Feature}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.Feature)
           org.tensorflow.proto.FeatureOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -398,7 +400,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_Feature_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -411,13 +413,14 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           if (bytesListBuilder_ != null) {
             bytesListBuilder_.clear();
           }
    @@ -455,64 +458,33 @@ public org.tensorflow.proto.Feature build() {
         @java.lang.Override
         public org.tensorflow.proto.Feature buildPartial() {
           org.tensorflow.proto.Feature result = new org.tensorflow.proto.Feature(this);
    -      if (kindCase_ == 1) {
    -        if (bytesListBuilder_ == null) {
    -          result.kind_ = kind_;
    -        } else {
    -          result.kind_ = bytesListBuilder_.build();
    -        }
    -      }
    -      if (kindCase_ == 2) {
    -        if (floatListBuilder_ == null) {
    -          result.kind_ = kind_;
    -        } else {
    -          result.kind_ = floatListBuilder_.build();
    -        }
    -      }
    -      if (kindCase_ == 3) {
    -        if (int64ListBuilder_ == null) {
    -          result.kind_ = kind_;
    -        } else {
    -          result.kind_ = int64ListBuilder_.build();
    -        }
    -      }
    -      result.kindCase_ = kindCase_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      buildPartialOneofs(result);
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.Feature result) {
    +      int from_bitField0_ = bitField0_;
         }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +
    +    private void buildPartialOneofs(org.tensorflow.proto.Feature result) {
    +      result.kindCase_ = kindCase_;
    +      result.kind_ = this.kind_;
    +      if (kindCase_ == 1 &&
    +          bytesListBuilder_ != null) {
    +        result.kind_ = bytesListBuilder_.build();
    +      }
    +      if (kindCase_ == 2 &&
    +          floatListBuilder_ != null) {
    +        result.kind_ = floatListBuilder_.build();
    +      }
    +      if (kindCase_ == 3 &&
    +          int64ListBuilder_ != null) {
    +        result.kind_ = int64ListBuilder_.build();
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.Feature) {
    @@ -619,8 +591,9 @@ public Builder clearKind() {
           return this;
         }
     
    +    private int bitField0_;
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.BytesList, org.tensorflow.proto.BytesList.Builder, org.tensorflow.proto.BytesListOrBuilder> bytesListBuilder_;
         /**
          * .tensorflow.BytesList bytes_list = 1;
    @@ -743,14 +716,14 @@ public org.tensorflow.proto.BytesListOrBuilder getBytesListOrBuilder() {
         /**
          * .tensorflow.BytesList bytes_list = 1;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.BytesList, org.tensorflow.proto.BytesList.Builder, org.tensorflow.proto.BytesListOrBuilder> 
             getBytesListFieldBuilder() {
           if (bytesListBuilder_ == null) {
             if (!(kindCase_ == 1)) {
               kind_ = org.tensorflow.proto.BytesList.getDefaultInstance();
             }
    -        bytesListBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        bytesListBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.BytesList, org.tensorflow.proto.BytesList.Builder, org.tensorflow.proto.BytesListOrBuilder>(
                     (org.tensorflow.proto.BytesList) kind_,
                     getParentForChildren(),
    @@ -758,11 +731,11 @@ public org.tensorflow.proto.BytesListOrBuilder getBytesListOrBuilder() {
             kind_ = null;
           }
           kindCase_ = 1;
    -      onChanged();;
    +      onChanged();
           return bytesListBuilder_;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.FloatList, org.tensorflow.proto.FloatList.Builder, org.tensorflow.proto.FloatListOrBuilder> floatListBuilder_;
         /**
          * .tensorflow.FloatList float_list = 2;
    @@ -885,14 +858,14 @@ public org.tensorflow.proto.FloatListOrBuilder getFloatListOrBuilder() {
         /**
          * .tensorflow.FloatList float_list = 2;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.FloatList, org.tensorflow.proto.FloatList.Builder, org.tensorflow.proto.FloatListOrBuilder> 
             getFloatListFieldBuilder() {
           if (floatListBuilder_ == null) {
             if (!(kindCase_ == 2)) {
               kind_ = org.tensorflow.proto.FloatList.getDefaultInstance();
             }
    -        floatListBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        floatListBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.FloatList, org.tensorflow.proto.FloatList.Builder, org.tensorflow.proto.FloatListOrBuilder>(
                     (org.tensorflow.proto.FloatList) kind_,
                     getParentForChildren(),
    @@ -900,11 +873,11 @@ public org.tensorflow.proto.FloatListOrBuilder getFloatListOrBuilder() {
             kind_ = null;
           }
           kindCase_ = 2;
    -      onChanged();;
    +      onChanged();
           return floatListBuilder_;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.Int64List, org.tensorflow.proto.Int64List.Builder, org.tensorflow.proto.Int64ListOrBuilder> int64ListBuilder_;
         /**
          * .tensorflow.Int64List int64_list = 3;
    @@ -1027,14 +1000,14 @@ public org.tensorflow.proto.Int64ListOrBuilder getInt64ListOrBuilder() {
         /**
          * .tensorflow.Int64List int64_list = 3;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.Int64List, org.tensorflow.proto.Int64List.Builder, org.tensorflow.proto.Int64ListOrBuilder> 
             getInt64ListFieldBuilder() {
           if (int64ListBuilder_ == null) {
             if (!(kindCase_ == 3)) {
               kind_ = org.tensorflow.proto.Int64List.getDefaultInstance();
             }
    -        int64ListBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        int64ListBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.Int64List, org.tensorflow.proto.Int64List.Builder, org.tensorflow.proto.Int64ListOrBuilder>(
                     (org.tensorflow.proto.Int64List) kind_,
                     getParentForChildren(),
    @@ -1042,21 +1015,9 @@ public org.tensorflow.proto.Int64ListOrBuilder getInt64ListOrBuilder() {
             kind_ = null;
           }
           kindCase_ = 3;
    -      onChanged();;
    +      onChanged();
           return int64ListBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.Feature)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureConfiguration.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureConfiguration.java
    index 38420c8b98e..98a591ecedb 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureConfiguration.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureConfiguration.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/example_parser_configuration.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,36 +9,33 @@
      * Protobuf type {@code tensorflow.FeatureConfiguration}
      */
     public final class FeatureConfiguration extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.FeatureConfiguration)
         FeatureConfigurationOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      FeatureConfiguration.class.getName());
    +  }
       // Use FeatureConfiguration.newBuilder() to construct.
    -  private FeatureConfiguration(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private FeatureConfiguration(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private FeatureConfiguration() {
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new FeatureConfiguration();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ExampleParserConfigurationProtos.internal_static_tensorflow_FeatureConfiguration_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ExampleParserConfigurationProtos.internal_static_tensorflow_FeatureConfiguration_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -44,6 +43,7 @@ protected java.lang.Object newInstance(
       }
     
       private int configCase_ = 0;
    +  @SuppressWarnings("serial")
       private java.lang.Object config_;
       public enum ConfigCase
           implements com.google.protobuf.Internal.EnumLite,
    @@ -273,39 +273,41 @@ public static org.tensorflow.proto.FeatureConfiguration parseFrom(
       }
       public static org.tensorflow.proto.FeatureConfiguration parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.FeatureConfiguration parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.FeatureConfiguration parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.FeatureConfiguration parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.FeatureConfiguration parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.FeatureConfiguration parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -325,7 +327,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -333,7 +335,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.FeatureConfiguration}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.FeatureConfiguration)
           org.tensorflow.proto.FeatureConfigurationOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -342,7 +344,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ExampleParserConfigurationProtos.internal_static_tensorflow_FeatureConfiguration_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -355,13 +357,14 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           if (fixedLenFeatureBuilder_ != null) {
             fixedLenFeatureBuilder_.clear();
           }
    @@ -396,57 +399,29 @@ public org.tensorflow.proto.FeatureConfiguration build() {
         @java.lang.Override
         public org.tensorflow.proto.FeatureConfiguration buildPartial() {
           org.tensorflow.proto.FeatureConfiguration result = new org.tensorflow.proto.FeatureConfiguration(this);
    -      if (configCase_ == 1) {
    -        if (fixedLenFeatureBuilder_ == null) {
    -          result.config_ = config_;
    -        } else {
    -          result.config_ = fixedLenFeatureBuilder_.build();
    -        }
    -      }
    -      if (configCase_ == 2) {
    -        if (varLenFeatureBuilder_ == null) {
    -          result.config_ = config_;
    -        } else {
    -          result.config_ = varLenFeatureBuilder_.build();
    -        }
    -      }
    -      result.configCase_ = configCase_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      buildPartialOneofs(result);
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    +    private void buildPartial0(org.tensorflow.proto.FeatureConfiguration result) {
    +      int from_bitField0_ = bitField0_;
         }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +
    +    private void buildPartialOneofs(org.tensorflow.proto.FeatureConfiguration result) {
    +      result.configCase_ = configCase_;
    +      result.config_ = this.config_;
    +      if (configCase_ == 1 &&
    +          fixedLenFeatureBuilder_ != null) {
    +        result.config_ = fixedLenFeatureBuilder_.build();
    +      }
    +      if (configCase_ == 2 &&
    +          varLenFeatureBuilder_ != null) {
    +        result.config_ = varLenFeatureBuilder_.build();
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.FeatureConfiguration) {
    @@ -542,8 +517,9 @@ public Builder clearConfig() {
           return this;
         }
     
    +    private int bitField0_;
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.FixedLenFeatureProto, org.tensorflow.proto.FixedLenFeatureProto.Builder, org.tensorflow.proto.FixedLenFeatureProtoOrBuilder> fixedLenFeatureBuilder_;
         /**
          * .tensorflow.FixedLenFeatureProto fixed_len_feature = 1;
    @@ -666,14 +642,14 @@ public org.tensorflow.proto.FixedLenFeatureProtoOrBuilder getFixedLenFeatureOrBu
         /**
          * .tensorflow.FixedLenFeatureProto fixed_len_feature = 1;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.FixedLenFeatureProto, org.tensorflow.proto.FixedLenFeatureProto.Builder, org.tensorflow.proto.FixedLenFeatureProtoOrBuilder> 
             getFixedLenFeatureFieldBuilder() {
           if (fixedLenFeatureBuilder_ == null) {
             if (!(configCase_ == 1)) {
               config_ = org.tensorflow.proto.FixedLenFeatureProto.getDefaultInstance();
             }
    -        fixedLenFeatureBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        fixedLenFeatureBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.FixedLenFeatureProto, org.tensorflow.proto.FixedLenFeatureProto.Builder, org.tensorflow.proto.FixedLenFeatureProtoOrBuilder>(
                     (org.tensorflow.proto.FixedLenFeatureProto) config_,
                     getParentForChildren(),
    @@ -681,11 +657,11 @@ public org.tensorflow.proto.FixedLenFeatureProtoOrBuilder getFixedLenFeatureOrBu
             config_ = null;
           }
           configCase_ = 1;
    -      onChanged();;
    +      onChanged();
           return fixedLenFeatureBuilder_;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.VarLenFeatureProto, org.tensorflow.proto.VarLenFeatureProto.Builder, org.tensorflow.proto.VarLenFeatureProtoOrBuilder> varLenFeatureBuilder_;
         /**
          * .tensorflow.VarLenFeatureProto var_len_feature = 2;
    @@ -808,14 +784,14 @@ public org.tensorflow.proto.VarLenFeatureProtoOrBuilder getVarLenFeatureOrBuilde
         /**
          * .tensorflow.VarLenFeatureProto var_len_feature = 2;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.VarLenFeatureProto, org.tensorflow.proto.VarLenFeatureProto.Builder, org.tensorflow.proto.VarLenFeatureProtoOrBuilder> 
             getVarLenFeatureFieldBuilder() {
           if (varLenFeatureBuilder_ == null) {
             if (!(configCase_ == 2)) {
               config_ = org.tensorflow.proto.VarLenFeatureProto.getDefaultInstance();
             }
    -        varLenFeatureBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        varLenFeatureBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.VarLenFeatureProto, org.tensorflow.proto.VarLenFeatureProto.Builder, org.tensorflow.proto.VarLenFeatureProtoOrBuilder>(
                     (org.tensorflow.proto.VarLenFeatureProto) config_,
                     getParentForChildren(),
    @@ -823,21 +799,9 @@ public org.tensorflow.proto.VarLenFeatureProtoOrBuilder getVarLenFeatureOrBuilde
             config_ = null;
           }
           configCase_ = 2;
    -      onChanged();;
    +      onChanged();
           return varLenFeatureBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.FeatureConfiguration)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureConfigurationOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureConfigurationOrBuilder.java
    index f3e2b27d97e..7b6b97b7815 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureConfigurationOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureConfigurationOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/example_parser_configuration.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -37,5 +39,5 @@ public interface FeatureConfigurationOrBuilder extends
        */
       org.tensorflow.proto.VarLenFeatureProtoOrBuilder getVarLenFeatureOrBuilder();
     
    -  public org.tensorflow.proto.FeatureConfiguration.ConfigCase getConfigCase();
    +  org.tensorflow.proto.FeatureConfiguration.ConfigCase getConfigCase();
     }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureList.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureList.java
    index 82149e169c5..ee7c362045d 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureList.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureList.java
    @@ -1,13 +1,17 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/feature.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     /**
      * 
      * Containers for sequential data.
    + *
      * A FeatureList contains lists of Features.  These may hold zero or more
      * Feature values.
    + *
      * FeatureLists are organized into categories by name.  The FeatureLists message
      * contains the mapping from name to FeatureList.
      * 
    @@ -15,37 +19,34 @@ * Protobuf type {@code tensorflow.FeatureList} */ public final class FeatureList extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.FeatureList) FeatureListOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + FeatureList.class.getName()); + } // Use FeatureList.newBuilder() to construct. - private FeatureList(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private FeatureList(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private FeatureList() { feature_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new FeatureList(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_FeatureList_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_FeatureList_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -53,6 +54,7 @@ protected java.lang.Object newInstance( } public static final int FEATURE_FIELD_NUMBER = 1; + @SuppressWarnings("serial") private java.util.List feature_; /** * repeated .tensorflow.Feature feature = 1; @@ -193,39 +195,41 @@ public static org.tensorflow.proto.FeatureList parseFrom( } public static org.tensorflow.proto.FeatureList parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.FeatureList parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.FeatureList parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.FeatureList parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.FeatureList parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.FeatureList parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -245,15 +249,17 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
        * Containers for sequential data.
    +   *
        * A FeatureList contains lists of Features.  These may hold zero or more
        * Feature values.
    +   *
        * FeatureLists are organized into categories by name.  The FeatureLists message
        * contains the mapping from name to FeatureList.
        * 
    @@ -261,7 +267,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.FeatureList} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.FeatureList) org.tensorflow.proto.FeatureListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -270,7 +276,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_FeatureList_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -283,13 +289,14 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; if (featureBuilder_ == null) { feature_ = java.util.Collections.emptyList(); } else { @@ -323,7 +330,13 @@ public org.tensorflow.proto.FeatureList build() { @java.lang.Override public org.tensorflow.proto.FeatureList buildPartial() { org.tensorflow.proto.FeatureList result = new org.tensorflow.proto.FeatureList(this); - int from_bitField0_ = bitField0_; + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(org.tensorflow.proto.FeatureList result) { if (featureBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { feature_ = java.util.Collections.unmodifiableList(feature_); @@ -333,42 +346,12 @@ public org.tensorflow.proto.FeatureList buildPartial() { } else { result.feature_ = featureBuilder_.build(); } - onBuilt(); - return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.FeatureList result) { + int from_bitField0_ = bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.FeatureList) { @@ -400,7 +383,7 @@ public Builder mergeFrom(org.tensorflow.proto.FeatureList other) { feature_ = other.feature_; bitField0_ = (bitField0_ & ~0x00000001); featureBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getFeatureFieldBuilder() : null; } else { featureBuilder_.addAllMessages(other.feature_); @@ -472,7 +455,7 @@ private void ensureFeatureIsMutable() { } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.Feature, org.tensorflow.proto.Feature.Builder, org.tensorflow.proto.FeatureOrBuilder> featureBuilder_; /** @@ -688,11 +671,11 @@ public org.tensorflow.proto.Feature.Builder addFeatureBuilder( getFeatureBuilderList() { return getFeatureFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.Feature, org.tensorflow.proto.Feature.Builder, org.tensorflow.proto.FeatureOrBuilder> getFeatureFieldBuilder() { if (featureBuilder_ == null) { - featureBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + featureBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.Feature, org.tensorflow.proto.Feature.Builder, org.tensorflow.proto.FeatureOrBuilder>( feature_, ((bitField0_ & 0x00000001) != 0), @@ -702,18 +685,6 @@ public org.tensorflow.proto.Feature.Builder addFeatureBuilder( } return featureBuilder_; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.FeatureList) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureListOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureListOrBuilder.java index 240b746c891..c777d2f0a4d 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureListOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureListOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/example/feature.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureLists.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureLists.java index 4130356123b..f69d92ebbcb 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureLists.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureLists.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/example/feature.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,29 +9,26 @@ * Protobuf type {@code tensorflow.FeatureLists} */ public final class FeatureLists extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.FeatureLists) FeatureListsOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + FeatureLists.class.getName()); + } // Use FeatureLists.newBuilder() to construct. - private FeatureLists(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private FeatureLists(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private FeatureLists() { } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new FeatureLists(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_FeatureLists_descriptor; @@ -37,7 +36,7 @@ protected java.lang.Object newInstance( @SuppressWarnings({"rawtypes"}) @java.lang.Override - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 1: @@ -48,7 +47,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_FeatureLists_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -67,6 +66,7 @@ private static final class FeatureListDefaultEntryHolder { com.google.protobuf.WireFormat.FieldType.MESSAGE, org.tensorflow.proto.FeatureList.getDefaultInstance()); } + @SuppressWarnings("serial") private com.google.protobuf.MapField< java.lang.String, org.tensorflow.proto.FeatureList> featureList_; private com.google.protobuf.MapField @@ -77,7 +77,6 @@ private static final class FeatureListDefaultEntryHolder { } return featureList_; } - public int getFeatureListCount() { return internalGetFeatureList().getMap().size(); } @@ -88,7 +87,6 @@ public int getFeatureListCount() { * * map<string, .tensorflow.FeatureList> feature_list = 1; */ - @java.lang.Override public boolean containsFeatureList( java.lang.String key) { @@ -111,7 +109,6 @@ public java.util.Map getFeat * map<string, .tensorflow.FeatureList> feature_list = 1; */ @java.lang.Override - public java.util.Map getFeatureListMap() { return internalGetFeatureList().getMap(); } @@ -123,10 +120,11 @@ public java.util.Map getFeat * map<string, .tensorflow.FeatureList> feature_list = 1; */ @java.lang.Override - - public org.tensorflow.proto.FeatureList getFeatureListOrDefault( + public /* nullable */ +org.tensorflow.proto.FeatureList getFeatureListOrDefault( java.lang.String key, - org.tensorflow.proto.FeatureList defaultValue) { + /* nullable */ +org.tensorflow.proto.FeatureList defaultValue) { if (key == null) { throw new NullPointerException("map key"); } java.util.Map map = internalGetFeatureList().getMap(); @@ -140,7 +138,6 @@ public org.tensorflow.proto.FeatureList getFeatureListOrDefault( * map<string, .tensorflow.FeatureList> feature_list = 1; */ @java.lang.Override - public org.tensorflow.proto.FeatureList getFeatureListOrThrow( java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } @@ -166,7 +163,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - com.google.protobuf.GeneratedMessageV3 + com.google.protobuf.GeneratedMessage .serializeStringMapTo( output, internalGetFeatureList(), @@ -262,39 +259,41 @@ public static org.tensorflow.proto.FeatureLists parseFrom( } public static org.tensorflow.proto.FeatureLists parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.FeatureLists parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.FeatureLists parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.FeatureLists parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.FeatureLists parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.FeatureLists parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -314,7 +313,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -322,7 +321,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.FeatureLists} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.FeatureLists) org.tensorflow.proto.FeatureListsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -331,7 +330,7 @@ public static final class Builder extends } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 1: @@ -342,7 +341,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMutableMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( int number) { switch (number) { case 1: @@ -353,7 +352,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_FeatureLists_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -366,13 +365,14 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; internalGetMutableFeatureList().clear(); return this; } @@ -400,45 +400,18 @@ public org.tensorflow.proto.FeatureLists build() { @java.lang.Override public org.tensorflow.proto.FeatureLists buildPartial() { org.tensorflow.proto.FeatureLists result = new org.tensorflow.proto.FeatureLists(this); - int from_bitField0_ = bitField0_; - result.featureList_ = internalGetFeatureList(); - result.featureList_.makeImmutable(); + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.FeatureLists result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.featureList_ = internalGetFeatureList().build(FeatureListDefaultEntryHolder.defaultEntry); + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.FeatureLists) { @@ -453,6 +426,7 @@ public Builder mergeFrom(org.tensorflow.proto.FeatureLists other) { if (other == org.tensorflow.proto.FeatureLists.getDefaultInstance()) return this; internalGetMutableFeatureList().mergeFrom( other.internalGetFeatureList()); + bitField0_ |= 0x00000001; this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -483,8 +457,9 @@ public Builder mergeFrom( com.google.protobuf.MapEntry featureList__ = input.readMessage( FeatureListDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); - internalGetMutableFeatureList().getMutableMap().put( + internalGetMutableFeatureList().ensureBuilderMap().put( featureList__.getKey(), featureList__.getValue()); + bitField0_ |= 0x00000001; break; } // case 10 default: { @@ -504,31 +479,40 @@ public Builder mergeFrom( } private int bitField0_; - private com.google.protobuf.MapField< - java.lang.String, org.tensorflow.proto.FeatureList> featureList_; - private com.google.protobuf.MapField - internalGetFeatureList() { + private static final class FeatureListConverter implements com.google.protobuf.MapFieldBuilder.Converter { + @java.lang.Override + public org.tensorflow.proto.FeatureList build(org.tensorflow.proto.FeatureListOrBuilder val) { + if (val instanceof org.tensorflow.proto.FeatureList) { return (org.tensorflow.proto.FeatureList) val; } + return ((org.tensorflow.proto.FeatureList.Builder) val).build(); + } + + @java.lang.Override + public com.google.protobuf.MapEntry defaultEntry() { + return FeatureListDefaultEntryHolder.defaultEntry; + } + }; + private static final FeatureListConverter featureListConverter = new FeatureListConverter(); + + private com.google.protobuf.MapFieldBuilder< + java.lang.String, org.tensorflow.proto.FeatureListOrBuilder, org.tensorflow.proto.FeatureList, org.tensorflow.proto.FeatureList.Builder> featureList_; + private com.google.protobuf.MapFieldBuilder + internalGetFeatureList() { if (featureList_ == null) { - return com.google.protobuf.MapField.emptyMapField( - FeatureListDefaultEntryHolder.defaultEntry); + return new com.google.protobuf.MapFieldBuilder<>(featureListConverter); } return featureList_; } - private com.google.protobuf.MapField - internalGetMutableFeatureList() { - onChanged();; + private com.google.protobuf.MapFieldBuilder + internalGetMutableFeatureList() { if (featureList_ == null) { - featureList_ = com.google.protobuf.MapField.newMapField( - FeatureListDefaultEntryHolder.defaultEntry); - } - if (!featureList_.isMutable()) { - featureList_ = featureList_.copy(); + featureList_ = new com.google.protobuf.MapFieldBuilder<>(featureListConverter); } + bitField0_ |= 0x00000001; + onChanged(); return featureList_; } - public int getFeatureListCount() { - return internalGetFeatureList().getMap().size(); + return internalGetFeatureList().ensureBuilderMap().size(); } /** *
    @@ -537,12 +521,11 @@ public int getFeatureListCount() {
          *
          * map<string, .tensorflow.FeatureList> feature_list = 1;
          */
    -
         @java.lang.Override
         public boolean containsFeatureList(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      return internalGetFeatureList().getMap().containsKey(key);
    +      return internalGetFeatureList().ensureBuilderMap().containsKey(key);
         }
         /**
          * Use {@link #getFeatureListMap()} instead.
    @@ -560,9 +543,8 @@ public java.util.Map getFeat
          * map<string, .tensorflow.FeatureList> feature_list = 1;
          */
         @java.lang.Override
    -
         public java.util.Map getFeatureListMap() {
    -      return internalGetFeatureList().getMap();
    +      return internalGetFeatureList().getImmutableMap();
         }
         /**
          * 
    @@ -572,14 +554,14 @@ public java.util.Map getFeat
          * map<string, .tensorflow.FeatureList> feature_list = 1;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.FeatureList getFeatureListOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.FeatureList getFeatureListOrDefault(
             java.lang.String key,
    -        org.tensorflow.proto.FeatureList defaultValue) {
    +        /* nullable */
    +org.tensorflow.proto.FeatureList defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetFeatureList().getMap();
    -      return map.containsKey(key) ? map.get(key) : defaultValue;
    +      java.util.Map map = internalGetMutableFeatureList().ensureBuilderMap();
    +      return map.containsKey(key) ? featureListConverter.build(map.get(key)) : defaultValue;
         }
         /**
          * 
    @@ -589,21 +571,18 @@ public org.tensorflow.proto.FeatureList getFeatureListOrDefault(
          * map<string, .tensorflow.FeatureList> feature_list = 1;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.FeatureList getFeatureListOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetFeatureList().getMap();
    +      java.util.Map map = internalGetMutableFeatureList().ensureBuilderMap();
           if (!map.containsKey(key)) {
             throw new java.lang.IllegalArgumentException();
           }
    -      return map.get(key);
    +      return featureListConverter.build(map.get(key));
         }
    -
         public Builder clearFeatureList() {
    -      internalGetMutableFeatureList().getMutableMap()
    -          .clear();
    +      bitField0_ = (bitField0_ & ~0x00000001);
    +      internalGetMutableFeatureList().clear();
           return this;
         }
         /**
    @@ -613,11 +592,10 @@ public Builder clearFeatureList() {
          *
          * map<string, .tensorflow.FeatureList> feature_list = 1;
          */
    -
         public Builder removeFeatureList(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      internalGetMutableFeatureList().getMutableMap()
    +      internalGetMutableFeatureList().ensureBuilderMap()
               .remove(key);
           return this;
         }
    @@ -626,8 +604,9 @@ public Builder removeFeatureList(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableFeatureList() {
    -      return internalGetMutableFeatureList().getMutableMap();
    +        getMutableFeatureList() {
    +      bitField0_ |= 0x00000001;
    +      return internalGetMutableFeatureList().ensureMessageMap();
         }
         /**
          * 
    @@ -640,12 +619,10 @@ public Builder putFeatureList(
             java.lang.String key,
             org.tensorflow.proto.FeatureList value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    -      internalGetMutableFeatureList().getMutableMap()
    +      if (value == null) { throw new NullPointerException("map value"); }
    +      internalGetMutableFeatureList().ensureBuilderMap()
               .put(key, value);
    +      bitField0_ |= 0x00000001;
           return this;
         }
         /**
    @@ -655,26 +632,40 @@ public Builder putFeatureList(
          *
          * map<string, .tensorflow.FeatureList> feature_list = 1;
          */
    -
         public Builder putAllFeatureList(
             java.util.Map values) {
    -      internalGetMutableFeatureList().getMutableMap()
    +      for (java.util.Map.Entry e : values.entrySet()) {
    +        if (e.getKey() == null || e.getValue() == null) {
    +          throw new NullPointerException();
    +        }
    +      }
    +      internalGetMutableFeatureList().ensureBuilderMap()
               .putAll(values);
    +      bitField0_ |= 0x00000001;
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    +    /**
    +     * 
    +     * Map from feature name to feature list.
    +     * 
    + * + * map<string, .tensorflow.FeatureList> feature_list = 1; + */ + public org.tensorflow.proto.FeatureList.Builder putFeatureListBuilderIfAbsent( + java.lang.String key) { + java.util.Map builderMap = internalGetMutableFeatureList().ensureBuilderMap(); + org.tensorflow.proto.FeatureListOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.FeatureList.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.FeatureList) { + entry = ((org.tensorflow.proto.FeatureList) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.FeatureList.Builder) entry; } - // @@protoc_insertion_point(builder_scope:tensorflow.FeatureLists) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureListsOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureListsOrBuilder.java index 45212b0e47b..d42e63918ef 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureListsOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureListsOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/example/feature.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -46,7 +48,6 @@ boolean containsFeatureList( * * map<string, .tensorflow.FeatureList> feature_list = 1; */ - /* nullable */ org.tensorflow.proto.FeatureList getFeatureListOrDefault( java.lang.String key, @@ -59,7 +60,6 @@ org.tensorflow.proto.FeatureList getFeatureListOrDefault( * * map<string, .tensorflow.FeatureList> feature_list = 1; */ - org.tensorflow.proto.FeatureList getFeatureListOrThrow( java.lang.String key); } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureOrBuilder.java index c8a3567848b..04375d60edf 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/example/feature.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -52,5 +54,5 @@ public interface FeatureOrBuilder extends */ org.tensorflow.proto.Int64ListOrBuilder getInt64ListOrBuilder(); - public org.tensorflow.proto.Feature.KindCase getKindCase(); + org.tensorflow.proto.Feature.KindCase getKindCase(); } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureProtos.java index 386f7bcd035..056432bdb1a 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureProtos.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeatureProtos.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/example/feature.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; public final class FeatureProtos { private FeatureProtos() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + FeatureProtos.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -17,47 +28,47 @@ public static void registerAllExtensions( static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_BytesList_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_BytesList_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_FloatList_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_FloatList_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_Int64List_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_Int64List_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_Feature_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_Feature_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_Features_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_Features_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_Features_FeatureEntry_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_Features_FeatureEntry_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_FeatureList_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_FeatureList_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_FeatureLists_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_FeatureLists_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_FeatureLists_FeatureListEntry_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_FeatureLists_FeatureListEntry_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor @@ -70,24 +81,24 @@ public static void registerAllExtensions( java.lang.String[] descriptorData = { "\n%tensorflow/core/example/feature.proto\022" + "\ntensorflow\"\032\n\tBytesList\022\r\n\005value\030\001 \003(\014\"" + - "\036\n\tFloatList\022\021\n\005value\030\001 \003(\002B\002\020\001\"\036\n\tInt64" + - "List\022\021\n\005value\030\001 \003(\003B\002\020\001\"\230\001\n\007Feature\022+\n\nb" + - "ytes_list\030\001 \001(\0132\025.tensorflow.BytesListH\000" + - "\022+\n\nfloat_list\030\002 \001(\0132\025.tensorflow.FloatL" + - "istH\000\022+\n\nint64_list\030\003 \001(\0132\025.tensorflow.I" + - "nt64ListH\000B\006\n\004kind\"\203\001\n\010Features\0222\n\007featu" + - "re\030\001 \003(\0132!.tensorflow.Features.FeatureEn" + - "try\032C\n\014FeatureEntry\022\013\n\003key\030\001 \001(\t\022\"\n\005valu" + - "e\030\002 \001(\0132\023.tensorflow.Feature:\0028\001\"3\n\013Feat" + - "ureList\022$\n\007feature\030\001 \003(\0132\023.tensorflow.Fe" + - "ature\"\234\001\n\014FeatureLists\022?\n\014feature_list\030\001" + - " \003(\0132).tensorflow.FeatureLists.FeatureLi" + - "stEntry\032K\n\020FeatureListEntry\022\013\n\003key\030\001 \001(\t" + - "\022&\n\005value\030\002 \001(\0132\027.tensorflow.FeatureList" + - ":\0028\001B\177\n\024org.tensorflow.protoB\rFeaturePro" + - "tosP\001ZSgithub.com/tensorflow/tensorflow/" + - "tensorflow/go/core/example/example_proto" + - "s_go_proto\370\001\001b\006proto3" + "\036\n\tFloatList\022\021\n\005value\030\001 \003(\002B\002\020\001\" \n\tInt64" + + "List\022\023\n\005value\030\001 \003(\003B\004\020\0010\001\"\230\001\n\007Feature\022+\n" + + "\nbytes_list\030\001 \001(\0132\025.tensorflow.BytesList" + + "H\000\022+\n\nfloat_list\030\002 \001(\0132\025.tensorflow.Floa" + + "tListH\000\022+\n\nint64_list\030\003 \001(\0132\025.tensorflow" + + ".Int64ListH\000B\006\n\004kind\"\203\001\n\010Features\0222\n\007fea" + + "ture\030\001 \003(\0132!.tensorflow.Features.Feature" + + "Entry\032C\n\014FeatureEntry\022\013\n\003key\030\001 \001(\t\022\"\n\005va" + + "lue\030\002 \001(\0132\023.tensorflow.Feature:\0028\001\"3\n\013Fe" + + "atureList\022$\n\007feature\030\001 \003(\0132\023.tensorflow." + + "Feature\"\234\001\n\014FeatureLists\022?\n\014feature_list" + + "\030\001 \003(\0132).tensorflow.FeatureLists.Feature" + + "ListEntry\032K\n\020FeatureListEntry\022\013\n\003key\030\001 \001" + + "(\t\022&\n\005value\030\002 \001(\0132\027.tensorflow.FeatureLi" + + "st:\0028\001B\177\n\024org.tensorflow.protoB\rFeatureP" + + "rotosP\001ZSgithub.com/tensorflow/tensorflo" + + "w/tensorflow/go/core/example/example_pro" + + "tos_go_proto\370\001\001b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, @@ -96,57 +107,58 @@ public static void registerAllExtensions( internal_static_tensorflow_BytesList_descriptor = getDescriptor().getMessageTypes().get(0); internal_static_tensorflow_BytesList_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_BytesList_descriptor, new java.lang.String[] { "Value", }); internal_static_tensorflow_FloatList_descriptor = getDescriptor().getMessageTypes().get(1); internal_static_tensorflow_FloatList_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_FloatList_descriptor, new java.lang.String[] { "Value", }); internal_static_tensorflow_Int64List_descriptor = getDescriptor().getMessageTypes().get(2); internal_static_tensorflow_Int64List_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_Int64List_descriptor, new java.lang.String[] { "Value", }); internal_static_tensorflow_Feature_descriptor = getDescriptor().getMessageTypes().get(3); internal_static_tensorflow_Feature_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_Feature_descriptor, new java.lang.String[] { "BytesList", "FloatList", "Int64List", "Kind", }); internal_static_tensorflow_Features_descriptor = getDescriptor().getMessageTypes().get(4); internal_static_tensorflow_Features_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_Features_descriptor, new java.lang.String[] { "Feature", }); internal_static_tensorflow_Features_FeatureEntry_descriptor = internal_static_tensorflow_Features_descriptor.getNestedTypes().get(0); internal_static_tensorflow_Features_FeatureEntry_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_Features_FeatureEntry_descriptor, new java.lang.String[] { "Key", "Value", }); internal_static_tensorflow_FeatureList_descriptor = getDescriptor().getMessageTypes().get(5); internal_static_tensorflow_FeatureList_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_FeatureList_descriptor, new java.lang.String[] { "Feature", }); internal_static_tensorflow_FeatureLists_descriptor = getDescriptor().getMessageTypes().get(6); internal_static_tensorflow_FeatureLists_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_FeatureLists_descriptor, new java.lang.String[] { "FeatureList", }); internal_static_tensorflow_FeatureLists_FeatureListEntry_descriptor = internal_static_tensorflow_FeatureLists_descriptor.getNestedTypes().get(0); internal_static_tensorflow_FeatureLists_FeatureListEntry_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_FeatureLists_FeatureListEntry_descriptor, new java.lang.String[] { "Key", "Value", }); + descriptor.resolveAllFeaturesImmutable(); } // @@protoc_insertion_point(outer_class_scope) diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Features.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Features.java index a61b72f897e..09565c43a05 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Features.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Features.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/example/feature.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,29 +9,26 @@ * Protobuf type {@code tensorflow.Features} */ public final class Features extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.Features) FeaturesOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + Features.class.getName()); + } // Use Features.newBuilder() to construct. - private Features(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private Features(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private Features() { } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new Features(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_Features_descriptor; @@ -37,7 +36,7 @@ protected java.lang.Object newInstance( @SuppressWarnings({"rawtypes"}) @java.lang.Override - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 1: @@ -48,7 +47,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_Features_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -67,6 +66,7 @@ private static final class FeatureDefaultEntryHolder { com.google.protobuf.WireFormat.FieldType.MESSAGE, org.tensorflow.proto.Feature.getDefaultInstance()); } + @SuppressWarnings("serial") private com.google.protobuf.MapField< java.lang.String, org.tensorflow.proto.Feature> feature_; private com.google.protobuf.MapField @@ -77,7 +77,6 @@ private static final class FeatureDefaultEntryHolder { } return feature_; } - public int getFeatureCount() { return internalGetFeature().getMap().size(); } @@ -88,7 +87,6 @@ public int getFeatureCount() { * * map<string, .tensorflow.Feature> feature = 1; */ - @java.lang.Override public boolean containsFeature( java.lang.String key) { @@ -111,7 +109,6 @@ public java.util.Map getFeature( * map<string, .tensorflow.Feature> feature = 1; */ @java.lang.Override - public java.util.Map getFeatureMap() { return internalGetFeature().getMap(); } @@ -123,10 +120,11 @@ public java.util.Map getFeatureM * map<string, .tensorflow.Feature> feature = 1; */ @java.lang.Override - - public org.tensorflow.proto.Feature getFeatureOrDefault( + public /* nullable */ +org.tensorflow.proto.Feature getFeatureOrDefault( java.lang.String key, - org.tensorflow.proto.Feature defaultValue) { + /* nullable */ +org.tensorflow.proto.Feature defaultValue) { if (key == null) { throw new NullPointerException("map key"); } java.util.Map map = internalGetFeature().getMap(); @@ -140,7 +138,6 @@ public org.tensorflow.proto.Feature getFeatureOrDefault( * map<string, .tensorflow.Feature> feature = 1; */ @java.lang.Override - public org.tensorflow.proto.Feature getFeatureOrThrow( java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } @@ -166,7 +163,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - com.google.protobuf.GeneratedMessageV3 + com.google.protobuf.GeneratedMessage .serializeStringMapTo( output, internalGetFeature(), @@ -262,39 +259,41 @@ public static org.tensorflow.proto.Features parseFrom( } public static org.tensorflow.proto.Features parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.Features parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.Features parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.Features parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.Features parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.Features parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -314,7 +313,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -322,7 +321,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.Features} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.Features) org.tensorflow.proto.FeaturesOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -331,7 +330,7 @@ public static final class Builder extends } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 1: @@ -342,7 +341,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMutableMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( int number) { switch (number) { case 1: @@ -353,7 +352,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_Features_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -366,13 +365,14 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; internalGetMutableFeature().clear(); return this; } @@ -400,45 +400,18 @@ public org.tensorflow.proto.Features build() { @java.lang.Override public org.tensorflow.proto.Features buildPartial() { org.tensorflow.proto.Features result = new org.tensorflow.proto.Features(this); - int from_bitField0_ = bitField0_; - result.feature_ = internalGetFeature(); - result.feature_.makeImmutable(); + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.Features result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.feature_ = internalGetFeature().build(FeatureDefaultEntryHolder.defaultEntry); + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.Features) { @@ -453,6 +426,7 @@ public Builder mergeFrom(org.tensorflow.proto.Features other) { if (other == org.tensorflow.proto.Features.getDefaultInstance()) return this; internalGetMutableFeature().mergeFrom( other.internalGetFeature()); + bitField0_ |= 0x00000001; this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -483,8 +457,9 @@ public Builder mergeFrom( com.google.protobuf.MapEntry feature__ = input.readMessage( FeatureDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); - internalGetMutableFeature().getMutableMap().put( + internalGetMutableFeature().ensureBuilderMap().put( feature__.getKey(), feature__.getValue()); + bitField0_ |= 0x00000001; break; } // case 10 default: { @@ -504,31 +479,40 @@ public Builder mergeFrom( } private int bitField0_; - private com.google.protobuf.MapField< - java.lang.String, org.tensorflow.proto.Feature> feature_; - private com.google.protobuf.MapField - internalGetFeature() { + private static final class FeatureConverter implements com.google.protobuf.MapFieldBuilder.Converter { + @java.lang.Override + public org.tensorflow.proto.Feature build(org.tensorflow.proto.FeatureOrBuilder val) { + if (val instanceof org.tensorflow.proto.Feature) { return (org.tensorflow.proto.Feature) val; } + return ((org.tensorflow.proto.Feature.Builder) val).build(); + } + + @java.lang.Override + public com.google.protobuf.MapEntry defaultEntry() { + return FeatureDefaultEntryHolder.defaultEntry; + } + }; + private static final FeatureConverter featureConverter = new FeatureConverter(); + + private com.google.protobuf.MapFieldBuilder< + java.lang.String, org.tensorflow.proto.FeatureOrBuilder, org.tensorflow.proto.Feature, org.tensorflow.proto.Feature.Builder> feature_; + private com.google.protobuf.MapFieldBuilder + internalGetFeature() { if (feature_ == null) { - return com.google.protobuf.MapField.emptyMapField( - FeatureDefaultEntryHolder.defaultEntry); + return new com.google.protobuf.MapFieldBuilder<>(featureConverter); } return feature_; } - private com.google.protobuf.MapField - internalGetMutableFeature() { - onChanged();; + private com.google.protobuf.MapFieldBuilder + internalGetMutableFeature() { if (feature_ == null) { - feature_ = com.google.protobuf.MapField.newMapField( - FeatureDefaultEntryHolder.defaultEntry); - } - if (!feature_.isMutable()) { - feature_ = feature_.copy(); + feature_ = new com.google.protobuf.MapFieldBuilder<>(featureConverter); } + bitField0_ |= 0x00000001; + onChanged(); return feature_; } - public int getFeatureCount() { - return internalGetFeature().getMap().size(); + return internalGetFeature().ensureBuilderMap().size(); } /** *
    @@ -537,12 +521,11 @@ public int getFeatureCount() {
          *
          * map<string, .tensorflow.Feature> feature = 1;
          */
    -
         @java.lang.Override
         public boolean containsFeature(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      return internalGetFeature().getMap().containsKey(key);
    +      return internalGetFeature().ensureBuilderMap().containsKey(key);
         }
         /**
          * Use {@link #getFeatureMap()} instead.
    @@ -560,9 +543,8 @@ public java.util.Map getFeature(
          * map<string, .tensorflow.Feature> feature = 1;
          */
         @java.lang.Override
    -
         public java.util.Map getFeatureMap() {
    -      return internalGetFeature().getMap();
    +      return internalGetFeature().getImmutableMap();
         }
         /**
          * 
    @@ -572,14 +554,14 @@ public java.util.Map getFeatureM
          * map<string, .tensorflow.Feature> feature = 1;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.Feature getFeatureOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.Feature getFeatureOrDefault(
             java.lang.String key,
    -        org.tensorflow.proto.Feature defaultValue) {
    +        /* nullable */
    +org.tensorflow.proto.Feature defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetFeature().getMap();
    -      return map.containsKey(key) ? map.get(key) : defaultValue;
    +      java.util.Map map = internalGetMutableFeature().ensureBuilderMap();
    +      return map.containsKey(key) ? featureConverter.build(map.get(key)) : defaultValue;
         }
         /**
          * 
    @@ -589,21 +571,18 @@ public org.tensorflow.proto.Feature getFeatureOrDefault(
          * map<string, .tensorflow.Feature> feature = 1;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.Feature getFeatureOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetFeature().getMap();
    +      java.util.Map map = internalGetMutableFeature().ensureBuilderMap();
           if (!map.containsKey(key)) {
             throw new java.lang.IllegalArgumentException();
           }
    -      return map.get(key);
    +      return featureConverter.build(map.get(key));
         }
    -
         public Builder clearFeature() {
    -      internalGetMutableFeature().getMutableMap()
    -          .clear();
    +      bitField0_ = (bitField0_ & ~0x00000001);
    +      internalGetMutableFeature().clear();
           return this;
         }
         /**
    @@ -613,11 +592,10 @@ public Builder clearFeature() {
          *
          * map<string, .tensorflow.Feature> feature = 1;
          */
    -
         public Builder removeFeature(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      internalGetMutableFeature().getMutableMap()
    +      internalGetMutableFeature().ensureBuilderMap()
               .remove(key);
           return this;
         }
    @@ -626,8 +604,9 @@ public Builder removeFeature(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableFeature() {
    -      return internalGetMutableFeature().getMutableMap();
    +        getMutableFeature() {
    +      bitField0_ |= 0x00000001;
    +      return internalGetMutableFeature().ensureMessageMap();
         }
         /**
          * 
    @@ -640,12 +619,10 @@ public Builder putFeature(
             java.lang.String key,
             org.tensorflow.proto.Feature value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    -      internalGetMutableFeature().getMutableMap()
    +      if (value == null) { throw new NullPointerException("map value"); }
    +      internalGetMutableFeature().ensureBuilderMap()
               .put(key, value);
    +      bitField0_ |= 0x00000001;
           return this;
         }
         /**
    @@ -655,26 +632,40 @@ public Builder putFeature(
          *
          * map<string, .tensorflow.Feature> feature = 1;
          */
    -
         public Builder putAllFeature(
             java.util.Map values) {
    -      internalGetMutableFeature().getMutableMap()
    +      for (java.util.Map.Entry e : values.entrySet()) {
    +        if (e.getKey() == null || e.getValue() == null) {
    +          throw new NullPointerException();
    +        }
    +      }
    +      internalGetMutableFeature().ensureBuilderMap()
               .putAll(values);
    +      bitField0_ |= 0x00000001;
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    +    /**
    +     * 
    +     * Map from feature name to feature.
    +     * 
    + * + * map<string, .tensorflow.Feature> feature = 1; + */ + public org.tensorflow.proto.Feature.Builder putFeatureBuilderIfAbsent( + java.lang.String key) { + java.util.Map builderMap = internalGetMutableFeature().ensureBuilderMap(); + org.tensorflow.proto.FeatureOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.Feature.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.Feature) { + entry = ((org.tensorflow.proto.Feature) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.Feature.Builder) entry; } - // @@protoc_insertion_point(builder_scope:tensorflow.Features) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeaturesOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeaturesOrBuilder.java index 0d436b3ecba..ccc86b2da95 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeaturesOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FeaturesOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/example/feature.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -46,7 +48,6 @@ boolean containsFeature( * * map<string, .tensorflow.Feature> feature = 1; */ - /* nullable */ org.tensorflow.proto.Feature getFeatureOrDefault( java.lang.String key, @@ -59,7 +60,6 @@ org.tensorflow.proto.Feature getFeatureOrDefault( * * map<string, .tensorflow.Feature> feature = 1; */ - org.tensorflow.proto.Feature getFeatureOrThrow( java.lang.String key); } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FingerprintDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FingerprintDef.java index b44f9065acb..d26cf3ac830 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FingerprintDef.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FingerprintDef.java @@ -1,11 +1,14 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/fingerprint.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; /** *
      * Protocol buffer representing a SavedModel Fingerprint.
    + *
      * If there are multiple MetaGraphDefs in the SavedModel, the FingerprintDef
      * corresponds to the first one.
      * 
    @@ -13,44 +16,43 @@ * Protobuf type {@code tensorflow.FingerprintDef} */ public final class FingerprintDef extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.FingerprintDef) FingerprintDefOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + FingerprintDef.class.getName()); + } // Use FingerprintDef.newBuilder() to construct. - private FingerprintDef(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private FingerprintDef(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private FingerprintDef() { + uuid_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new FingerprintDef(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.FingerprintProtos.internal_static_tensorflow_FingerprintDef_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.FingerprintProtos.internal_static_tensorflow_FingerprintDef_fieldAccessorTable .ensureFieldAccessorsInitialized( org.tensorflow.proto.FingerprintDef.class, org.tensorflow.proto.FingerprintDef.Builder.class); } + private int bitField0_; public static final int SAVED_MODEL_CHECKSUM_FIELD_NUMBER = 1; - private long savedModelChecksum_; + private long savedModelChecksum_ = 0L; /** *
        * Hash of the saved_model.pb, referred to as a "checksum".
    @@ -65,7 +67,7 @@ public long getSavedModelChecksum() {
       }
     
       public static final int GRAPH_DEF_PROGRAM_HASH_FIELD_NUMBER = 2;
    -  private long graphDefProgramHash_;
    +  private long graphDefProgramHash_ = 0L;
       /**
        * 
        * Hash of regularized graph_def.
    @@ -80,7 +82,7 @@ public long getGraphDefProgramHash() {
       }
     
       public static final int SIGNATURE_DEF_HASH_FIELD_NUMBER = 3;
    -  private long signatureDefHash_;
    +  private long signatureDefHash_ = 0L;
       /**
        * 
        * Hash of the regularized (sorted) SignatureDefs.
    @@ -95,7 +97,7 @@ public long getSignatureDefHash() {
       }
     
       public static final int SAVED_OBJECT_GRAPH_HASH_FIELD_NUMBER = 4;
    -  private long savedObjectGraphHash_;
    +  private long savedObjectGraphHash_ = 0L;
       /**
        * 
        * Hash of the regularized SavedObjectGraph.
    @@ -110,7 +112,7 @@ public long getSavedObjectGraphHash() {
       }
     
       public static final int CHECKPOINT_HASH_FIELD_NUMBER = 5;
    -  private long checkpointHash_;
    +  private long checkpointHash_ = 0L;
       /**
        * 
        * Hash of the checkpoint.
    @@ -124,6 +126,53 @@ public long getCheckpointHash() {
         return checkpointHash_;
       }
     
    +  public static final int UUID_FIELD_NUMBER = 7;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object uuid_ = "";
    +  /**
    +   * 
    +   * An UUID for the model, chosen at random, not related to the hashes.
    +   * 
    + * + * string uuid = 7; + * @return The uuid. + */ + @java.lang.Override + public java.lang.String getUuid() { + java.lang.Object ref = uuid_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + uuid_ = s; + return s; + } + } + /** + *
    +   * An UUID for the model, chosen at random, not related to the hashes.
    +   * 
    + * + * string uuid = 7; + * @return The bytes for uuid. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getUuidBytes() { + java.lang.Object ref = uuid_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + uuid_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + public static final int VERSION_FIELD_NUMBER = 6; private org.tensorflow.proto.VersionDef version_; /** @@ -136,7 +185,7 @@ public long getCheckpointHash() { */ @java.lang.Override public boolean hasVersion() { - return version_ != null; + return ((bitField0_ & 0x00000001) != 0); } /** *
    @@ -159,7 +208,7 @@ public org.tensorflow.proto.VersionDef getVersion() {
        */
       @java.lang.Override
       public org.tensorflow.proto.VersionDefOrBuilder getVersionOrBuilder() {
    -    return getVersion();
    +    return version_ == null ? org.tensorflow.proto.VersionDef.getDefaultInstance() : version_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -191,9 +240,12 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (checkpointHash_ != 0L) {
           output.writeUInt64(5, checkpointHash_);
         }
    -    if (version_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(6, getVersion());
         }
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uuid_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 7, uuid_);
    +    }
         getUnknownFields().writeTo(output);
       }
     
    @@ -223,10 +275,13 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeUInt64Size(5, checkpointHash_);
         }
    -    if (version_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(6, getVersion());
         }
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uuid_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(7, uuid_);
    +    }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
         return size;
    @@ -252,6 +307,8 @@ public boolean equals(final java.lang.Object obj) {
             != other.getSavedObjectGraphHash()) return false;
         if (getCheckpointHash()
             != other.getCheckpointHash()) return false;
    +    if (!getUuid()
    +        .equals(other.getUuid())) return false;
         if (hasVersion() != other.hasVersion()) return false;
         if (hasVersion()) {
           if (!getVersion()
    @@ -283,6 +340,8 @@ public int hashCode() {
         hash = (37 * hash) + CHECKPOINT_HASH_FIELD_NUMBER;
         hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
             getCheckpointHash());
    +    hash = (37 * hash) + UUID_FIELD_NUMBER;
    +    hash = (53 * hash) + getUuid().hashCode();
         if (hasVersion()) {
           hash = (37 * hash) + VERSION_FIELD_NUMBER;
           hash = (53 * hash) + getVersion().hashCode();
    @@ -326,39 +385,41 @@ public static org.tensorflow.proto.FingerprintDef parseFrom(
       }
       public static org.tensorflow.proto.FingerprintDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.FingerprintDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.FingerprintDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.FingerprintDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.FingerprintDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.FingerprintDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -378,13 +439,14 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
       /**
        * 
        * Protocol buffer representing a SavedModel Fingerprint.
    +   *
        * If there are multiple MetaGraphDefs in the SavedModel, the FingerprintDef
        * corresponds to the first one.
        * 
    @@ -392,7 +454,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.FingerprintDef} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.FingerprintDef) org.tensorflow.proto.FingerprintDefOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -401,7 +463,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.FingerprintProtos.internal_static_tensorflow_FingerprintDef_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -410,31 +472,33 @@ public static final class Builder extends // Construct using org.tensorflow.proto.FingerprintDef.newBuilder() private Builder() { - + maybeForceBuilderInitialization(); } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); - + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage + .alwaysUseFieldBuilders) { + getVersionFieldBuilder(); + } } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; savedModelChecksum_ = 0L; - graphDefProgramHash_ = 0L; - signatureDefHash_ = 0L; - savedObjectGraphHash_ = 0L; - checkpointHash_ = 0L; - - if (versionBuilder_ == null) { - version_ = null; - } else { - version_ = null; + uuid_ = ""; + version_ = null; + if (versionBuilder_ != null) { + versionBuilder_.dispose(); versionBuilder_ = null; } return this; @@ -463,52 +527,41 @@ public org.tensorflow.proto.FingerprintDef build() { @java.lang.Override public org.tensorflow.proto.FingerprintDef buildPartial() { org.tensorflow.proto.FingerprintDef result = new org.tensorflow.proto.FingerprintDef(this); - result.savedModelChecksum_ = savedModelChecksum_; - result.graphDefProgramHash_ = graphDefProgramHash_; - result.signatureDefHash_ = signatureDefHash_; - result.savedObjectGraphHash_ = savedObjectGraphHash_; - result.checkpointHash_ = checkpointHash_; - if (versionBuilder_ == null) { - result.version_ = version_; - } else { - result.version_ = versionBuilder_.build(); - } + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.FingerprintDef result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.savedModelChecksum_ = savedModelChecksum_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.graphDefProgramHash_ = graphDefProgramHash_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.signatureDefHash_ = signatureDefHash_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.savedObjectGraphHash_ = savedObjectGraphHash_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.checkpointHash_ = checkpointHash_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.uuid_ = uuid_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000040) != 0)) { + result.version_ = versionBuilder_ == null + ? version_ + : versionBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.FingerprintDef) { @@ -536,6 +589,11 @@ public Builder mergeFrom(org.tensorflow.proto.FingerprintDef other) { if (other.getCheckpointHash() != 0L) { setCheckpointHash(other.getCheckpointHash()); } + if (!other.getUuid().isEmpty()) { + uuid_ = other.uuid_; + bitField0_ |= 0x00000020; + onChanged(); + } if (other.hasVersion()) { mergeVersion(other.getVersion()); } @@ -567,36 +625,41 @@ public Builder mergeFrom( break; case 8: { savedModelChecksum_ = input.readUInt64(); - + bitField0_ |= 0x00000001; break; } // case 8 case 16: { graphDefProgramHash_ = input.readUInt64(); - + bitField0_ |= 0x00000002; break; } // case 16 case 24: { signatureDefHash_ = input.readUInt64(); - + bitField0_ |= 0x00000004; break; } // case 24 case 32: { savedObjectGraphHash_ = input.readUInt64(); - + bitField0_ |= 0x00000008; break; } // case 32 case 40: { checkpointHash_ = input.readUInt64(); - + bitField0_ |= 0x00000010; break; } // case 40 case 50: { input.readMessage( getVersionFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000040; break; } // case 50 + case 58: { + uuid_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000020; + break; + } // case 58 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag @@ -612,6 +675,7 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private long savedModelChecksum_ ; /** @@ -636,8 +700,9 @@ public long getSavedModelChecksum() { * @return This builder for chaining. */ public Builder setSavedModelChecksum(long value) { - + savedModelChecksum_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -650,7 +715,7 @@ public Builder setSavedModelChecksum(long value) { * @return This builder for chaining. */ public Builder clearSavedModelChecksum() { - + bitField0_ = (bitField0_ & ~0x00000001); savedModelChecksum_ = 0L; onChanged(); return this; @@ -679,8 +744,9 @@ public long getGraphDefProgramHash() { * @return This builder for chaining. */ public Builder setGraphDefProgramHash(long value) { - + graphDefProgramHash_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -693,7 +759,7 @@ public Builder setGraphDefProgramHash(long value) { * @return This builder for chaining. */ public Builder clearGraphDefProgramHash() { - + bitField0_ = (bitField0_ & ~0x00000002); graphDefProgramHash_ = 0L; onChanged(); return this; @@ -722,8 +788,9 @@ public long getSignatureDefHash() { * @return This builder for chaining. */ public Builder setSignatureDefHash(long value) { - + signatureDefHash_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -736,7 +803,7 @@ public Builder setSignatureDefHash(long value) { * @return This builder for chaining. */ public Builder clearSignatureDefHash() { - + bitField0_ = (bitField0_ & ~0x00000004); signatureDefHash_ = 0L; onChanged(); return this; @@ -765,8 +832,9 @@ public long getSavedObjectGraphHash() { * @return This builder for chaining. */ public Builder setSavedObjectGraphHash(long value) { - + savedObjectGraphHash_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -779,7 +847,7 @@ public Builder setSavedObjectGraphHash(long value) { * @return This builder for chaining. */ public Builder clearSavedObjectGraphHash() { - + bitField0_ = (bitField0_ & ~0x00000008); savedObjectGraphHash_ = 0L; onChanged(); return this; @@ -808,8 +876,9 @@ public long getCheckpointHash() { * @return This builder for chaining. */ public Builder setCheckpointHash(long value) { - + checkpointHash_ = value; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -822,14 +891,106 @@ public Builder setCheckpointHash(long value) { * @return This builder for chaining. */ public Builder clearCheckpointHash() { - + bitField0_ = (bitField0_ & ~0x00000010); checkpointHash_ = 0L; onChanged(); return this; } + private java.lang.Object uuid_ = ""; + /** + *
    +     * An UUID for the model, chosen at random, not related to the hashes.
    +     * 
    + * + * string uuid = 7; + * @return The uuid. + */ + public java.lang.String getUuid() { + java.lang.Object ref = uuid_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + uuid_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + *
    +     * An UUID for the model, chosen at random, not related to the hashes.
    +     * 
    + * + * string uuid = 7; + * @return The bytes for uuid. + */ + public com.google.protobuf.ByteString + getUuidBytes() { + java.lang.Object ref = uuid_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + uuid_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + *
    +     * An UUID for the model, chosen at random, not related to the hashes.
    +     * 
    + * + * string uuid = 7; + * @param value The uuid to set. + * @return This builder for chaining. + */ + public Builder setUuid( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + uuid_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + /** + *
    +     * An UUID for the model, chosen at random, not related to the hashes.
    +     * 
    + * + * string uuid = 7; + * @return This builder for chaining. + */ + public Builder clearUuid() { + uuid_ = getDefaultInstance().getUuid(); + bitField0_ = (bitField0_ & ~0x00000020); + onChanged(); + return this; + } + /** + *
    +     * An UUID for the model, chosen at random, not related to the hashes.
    +     * 
    + * + * string uuid = 7; + * @param value The bytes for uuid to set. + * @return This builder for chaining. + */ + public Builder setUuidBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + uuid_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + private org.tensorflow.proto.VersionDef version_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.VersionDef, org.tensorflow.proto.VersionDef.Builder, org.tensorflow.proto.VersionDefOrBuilder> versionBuilder_; /** *
    @@ -840,7 +1001,7 @@ public Builder clearCheckpointHash() {
          * @return Whether the version field is set.
          */
         public boolean hasVersion() {
    -      return versionBuilder_ != null || version_ != null;
    +      return ((bitField0_ & 0x00000040) != 0);
         }
         /**
          * 
    @@ -870,11 +1031,11 @@ public Builder setVersion(org.tensorflow.proto.VersionDef value) {
               throw new NullPointerException();
             }
             version_ = value;
    -        onChanged();
           } else {
             versionBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000040;
    +      onChanged();
           return this;
         }
         /**
    @@ -888,11 +1049,11 @@ public Builder setVersion(
             org.tensorflow.proto.VersionDef.Builder builderForValue) {
           if (versionBuilder_ == null) {
             version_ = builderForValue.build();
    -        onChanged();
           } else {
             versionBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000040;
    +      onChanged();
           return this;
         }
         /**
    @@ -904,17 +1065,20 @@ public Builder setVersion(
          */
         public Builder mergeVersion(org.tensorflow.proto.VersionDef value) {
           if (versionBuilder_ == null) {
    -        if (version_ != null) {
    -          version_ =
    -            org.tensorflow.proto.VersionDef.newBuilder(version_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000040) != 0) &&
    +          version_ != null &&
    +          version_ != org.tensorflow.proto.VersionDef.getDefaultInstance()) {
    +          getVersionBuilder().mergeFrom(value);
             } else {
               version_ = value;
             }
    -        onChanged();
           } else {
             versionBuilder_.mergeFrom(value);
           }
    -
    +      if (version_ != null) {
    +        bitField0_ |= 0x00000040;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -925,14 +1089,13 @@ public Builder mergeVersion(org.tensorflow.proto.VersionDef value) {
          * .tensorflow.VersionDef version = 6;
          */
         public Builder clearVersion() {
    -      if (versionBuilder_ == null) {
    -        version_ = null;
    -        onChanged();
    -      } else {
    -        version_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000040);
    +      version_ = null;
    +      if (versionBuilder_ != null) {
    +        versionBuilder_.dispose();
             versionBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -943,7 +1106,7 @@ public Builder clearVersion() {
          * .tensorflow.VersionDef version = 6;
          */
         public org.tensorflow.proto.VersionDef.Builder getVersionBuilder() {
    -      
    +      bitField0_ |= 0x00000040;
           onChanged();
           return getVersionFieldBuilder().getBuilder();
         }
    @@ -969,11 +1132,11 @@ public org.tensorflow.proto.VersionDefOrBuilder getVersionOrBuilder() {
          *
          * .tensorflow.VersionDef version = 6;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.VersionDef, org.tensorflow.proto.VersionDef.Builder, org.tensorflow.proto.VersionDefOrBuilder> 
             getVersionFieldBuilder() {
           if (versionBuilder_ == null) {
    -        versionBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        versionBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.VersionDef, org.tensorflow.proto.VersionDef.Builder, org.tensorflow.proto.VersionDefOrBuilder>(
                     getVersion(),
                     getParentForChildren(),
    @@ -982,18 +1145,6 @@ public org.tensorflow.proto.VersionDefOrBuilder getVersionOrBuilder() {
           }
           return versionBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.FingerprintDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FingerprintDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FingerprintDefOrBuilder.java
    index d5741560102..1dc0c870f7d 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FingerprintDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FingerprintDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/fingerprint.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -57,6 +59,26 @@ public interface FingerprintDefOrBuilder extends
        */
       long getCheckpointHash();
     
    +  /**
    +   * 
    +   * An UUID for the model, chosen at random, not related to the hashes.
    +   * 
    + * + * string uuid = 7; + * @return The uuid. + */ + java.lang.String getUuid(); + /** + *
    +   * An UUID for the model, chosen at random, not related to the hashes.
    +   * 
    + * + * string uuid = 7; + * @return The bytes for uuid. + */ + com.google.protobuf.ByteString + getUuidBytes(); + /** *
        * Version specification of the fingerprint.
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FingerprintProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FingerprintProtos.java
    index 4d072ef3eef..734b9b30e63 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FingerprintProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FingerprintProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/fingerprint.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class FingerprintProtos {
       private FingerprintProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      FingerprintProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,7 +28,7 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_FingerprintDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_FingerprintDef_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -30,16 +41,16 @@ public static void registerAllExtensions(
         java.lang.String[] descriptorData = {
           "\n*tensorflow/core/protobuf/fingerprint.p" +
           "roto\022\ntensorflow\032(tensorflow/core/framew" +
    -      "ork/versions.proto\"\315\001\n\016FingerprintDef\022\034\n" +
    +      "ork/versions.proto\"\333\001\n\016FingerprintDef\022\034\n" +
           "\024saved_model_checksum\030\001 \001(\004\022\036\n\026graph_def" +
           "_program_hash\030\002 \001(\004\022\032\n\022signature_def_has" +
           "h\030\003 \001(\004\022\037\n\027saved_object_graph_hash\030\004 \001(\004" +
    -      "\022\027\n\017checkpoint_hash\030\005 \001(\004\022\'\n\007version\030\006 \001" +
    -      "(\0132\026.tensorflow.VersionDefB\205\001\n\024org.tenso" +
    -      "rflow.protoB\021FingerprintProtosP\001ZUgithub" +
    -      ".com/tensorflow/tensorflow/tensorflow/go" +
    -      "/core/protobuf/for_core_protos_go_proto\370" +
    -      "\001\001b\006proto3"
    +      "\022\027\n\017checkpoint_hash\030\005 \001(\004\022\014\n\004uuid\030\007 \001(\t\022" +
    +      "\'\n\007version\030\006 \001(\0132\026.tensorflow.VersionDef" +
    +      "B\205\001\n\024org.tensorflow.protoB\021FingerprintPr" +
    +      "otosP\001ZUgithub.com/tensorflow/tensorflow" +
    +      "/tensorflow/go/core/protobuf/for_core_pr" +
    +      "otos_go_proto\370\001\001b\006proto3"
         };
         descriptor = com.google.protobuf.Descriptors.FileDescriptor
           .internalBuildGeneratedFileFrom(descriptorData,
    @@ -49,9 +60,10 @@ public static void registerAllExtensions(
         internal_static_tensorflow_FingerprintDef_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_FingerprintDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_FingerprintDef_descriptor,
    -        new java.lang.String[] { "SavedModelChecksum", "GraphDefProgramHash", "SignatureDefHash", "SavedObjectGraphHash", "CheckpointHash", "Version", });
    +        new java.lang.String[] { "SavedModelChecksum", "GraphDefProgramHash", "SignatureDefHash", "SavedObjectGraphHash", "CheckpointHash", "Uuid", "Version", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.VersionsProtos.getDescriptor();
       }
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FixedLenFeatureProto.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FixedLenFeatureProto.java
    index 6972509cda3..70708dadbba 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FixedLenFeatureProto.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FixedLenFeatureProto.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/example_parser_configuration.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,12 +9,21 @@
      * Protobuf type {@code tensorflow.FixedLenFeatureProto}
      */
     public final class FixedLenFeatureProto extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.FixedLenFeatureProto)
         FixedLenFeatureProtoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      FixedLenFeatureProto.class.getName());
    +  }
       // Use FixedLenFeatureProto.newBuilder() to construct.
    -  private FixedLenFeatureProto(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private FixedLenFeatureProto(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private FixedLenFeatureProto() {
    @@ -20,33 +31,22 @@ private FixedLenFeatureProto() {
         valuesOutputTensorName_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new FixedLenFeatureProto();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ExampleParserConfigurationProtos.internal_static_tensorflow_FixedLenFeatureProto_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ExampleParserConfigurationProtos.internal_static_tensorflow_FixedLenFeatureProto_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.FixedLenFeatureProto.class, org.tensorflow.proto.FixedLenFeatureProto.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int DTYPE_FIELD_NUMBER = 1;
    -  private int dtype_;
    +  private int dtype_ = 0;
       /**
        * .tensorflow.DataType dtype = 1;
        * @return The enum numeric value on the wire for dtype.
    @@ -59,8 +59,7 @@ protected java.lang.Object newInstance(
        * @return The dtype.
        */
       @java.lang.Override public org.tensorflow.proto.DataType getDtype() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
         return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
       }
     
    @@ -72,7 +71,7 @@ protected java.lang.Object newInstance(
        */
       @java.lang.Override
       public boolean hasShape() {
    -    return shape_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * .tensorflow.TensorShapeProto shape = 2;
    @@ -87,7 +86,7 @@ public org.tensorflow.proto.TensorShapeProto getShape() {
        */
       @java.lang.Override
       public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
    -    return getShape();
    +    return shape_ == null ? org.tensorflow.proto.TensorShapeProto.getDefaultInstance() : shape_;
       }
     
       public static final int DEFAULT_VALUE_FIELD_NUMBER = 3;
    @@ -98,7 +97,7 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
        */
       @java.lang.Override
       public boolean hasDefaultValue() {
    -    return defaultValue_ != null;
    +    return ((bitField0_ & 0x00000002) != 0);
       }
       /**
        * .tensorflow.TensorProto default_value = 3;
    @@ -113,11 +112,12 @@ public org.tensorflow.proto.TensorProto getDefaultValue() {
        */
       @java.lang.Override
       public org.tensorflow.proto.TensorProtoOrBuilder getDefaultValueOrBuilder() {
    -    return getDefaultValue();
    +    return defaultValue_ == null ? org.tensorflow.proto.TensorProto.getDefaultInstance() : defaultValue_;
       }
     
       public static final int VALUES_OUTPUT_TENSOR_NAME_FIELD_NUMBER = 4;
    -  private volatile java.lang.Object valuesOutputTensorName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object valuesOutputTensorName_ = "";
       /**
        * string values_output_tensor_name = 4;
        * @return The valuesOutputTensorName.
    @@ -171,14 +171,14 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (dtype_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) {
           output.writeEnum(1, dtype_);
         }
    -    if (shape_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(2, getShape());
         }
    -    if (defaultValue_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           output.writeMessage(3, getDefaultValue());
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(valuesOutputTensorName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 4, valuesOutputTensorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(valuesOutputTensorName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 4, valuesOutputTensorName_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -193,16 +193,16 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeEnumSize(1, dtype_);
         }
    -    if (shape_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(2, getShape());
         }
    -    if (defaultValue_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(3, getDefaultValue());
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(valuesOutputTensorName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, valuesOutputTensorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(valuesOutputTensorName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(4, valuesOutputTensorName_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -294,39 +294,41 @@ public static org.tensorflow.proto.FixedLenFeatureProto parseFrom(
       }
       public static org.tensorflow.proto.FixedLenFeatureProto parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.FixedLenFeatureProto parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.FixedLenFeatureProto parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.FixedLenFeatureProto parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.FixedLenFeatureProto parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.FixedLenFeatureProto parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -346,7 +348,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -354,7 +356,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.FixedLenFeatureProto}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.FixedLenFeatureProto)
           org.tensorflow.proto.FixedLenFeatureProtoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -363,7 +365,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ExampleParserConfigurationProtos.internal_static_tensorflow_FixedLenFeatureProto_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -372,33 +374,37 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.FixedLenFeatureProto.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getShapeFieldBuilder();
    +        getDefaultValueFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           dtype_ = 0;
    -
    -      if (shapeBuilder_ == null) {
    -        shape_ = null;
    -      } else {
    -        shape_ = null;
    +      shape_ = null;
    +      if (shapeBuilder_ != null) {
    +        shapeBuilder_.dispose();
             shapeBuilder_ = null;
           }
    -      if (defaultValueBuilder_ == null) {
    -        defaultValue_ = null;
    -      } else {
    -        defaultValue_ = null;
    +      defaultValue_ = null;
    +      if (defaultValueBuilder_ != null) {
    +        defaultValueBuilder_.dispose();
             defaultValueBuilder_ = null;
           }
           valuesOutputTensorName_ = "";
    -
           return this;
         }
     
    @@ -425,54 +431,35 @@ public org.tensorflow.proto.FixedLenFeatureProto build() {
         @java.lang.Override
         public org.tensorflow.proto.FixedLenFeatureProto buildPartial() {
           org.tensorflow.proto.FixedLenFeatureProto result = new org.tensorflow.proto.FixedLenFeatureProto(this);
    -      result.dtype_ = dtype_;
    -      if (shapeBuilder_ == null) {
    -        result.shape_ = shape_;
    -      } else {
    -        result.shape_ = shapeBuilder_.build();
    -      }
    -      if (defaultValueBuilder_ == null) {
    -        result.defaultValue_ = defaultValue_;
    -      } else {
    -        result.defaultValue_ = defaultValueBuilder_.build();
    -      }
    -      result.valuesOutputTensorName_ = valuesOutputTensorName_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.FixedLenFeatureProto result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.dtype_ = dtype_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.shape_ = shapeBuilder_ == null
    +            ? shape_
    +            : shapeBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.defaultValue_ = defaultValueBuilder_ == null
    +            ? defaultValue_
    +            : defaultValueBuilder_.build();
    +        to_bitField0_ |= 0x00000002;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.valuesOutputTensorName_ = valuesOutputTensorName_;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.FixedLenFeatureProto) {
    @@ -496,6 +483,7 @@ public Builder mergeFrom(org.tensorflow.proto.FixedLenFeatureProto other) {
           }
           if (!other.getValuesOutputTensorName().isEmpty()) {
             valuesOutputTensorName_ = other.valuesOutputTensorName_;
    +        bitField0_ |= 0x00000008;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -526,26 +514,26 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   dtype_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 18: {
                   input.readMessage(
                       getShapeFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
                   input.readMessage(
                       getDefaultValueFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 case 34: {
                   valuesOutputTensorName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 34
                 default: {
    @@ -563,6 +551,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private int dtype_ = 0;
         /**
    @@ -578,8 +567,8 @@ public Builder mergeFrom(
          * @return This builder for chaining.
          */
         public Builder setDtypeValue(int value) {
    -      
           dtype_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -589,8 +578,7 @@ public Builder setDtypeValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.DataType getDtype() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
           return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
         }
         /**
    @@ -602,7 +590,7 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000001;
           dtype_ = value.getNumber();
           onChanged();
           return this;
    @@ -612,21 +600,21 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
          * @return This builder for chaining.
          */
         public Builder clearDtype() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           dtype_ = 0;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.TensorShapeProto shape_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> shapeBuilder_;
         /**
          * .tensorflow.TensorShapeProto shape = 2;
          * @return Whether the shape field is set.
          */
         public boolean hasShape() {
    -      return shapeBuilder_ != null || shape_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * .tensorflow.TensorShapeProto shape = 2;
    @@ -648,11 +636,11 @@ public Builder setShape(org.tensorflow.proto.TensorShapeProto value) {
               throw new NullPointerException();
             }
             shape_ = value;
    -        onChanged();
           } else {
             shapeBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -662,11 +650,11 @@ public Builder setShape(
             org.tensorflow.proto.TensorShapeProto.Builder builderForValue) {
           if (shapeBuilder_ == null) {
             shape_ = builderForValue.build();
    -        onChanged();
           } else {
             shapeBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -674,38 +662,40 @@ public Builder setShape(
          */
         public Builder mergeShape(org.tensorflow.proto.TensorShapeProto value) {
           if (shapeBuilder_ == null) {
    -        if (shape_ != null) {
    -          shape_ =
    -            org.tensorflow.proto.TensorShapeProto.newBuilder(shape_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000002) != 0) &&
    +          shape_ != null &&
    +          shape_ != org.tensorflow.proto.TensorShapeProto.getDefaultInstance()) {
    +          getShapeBuilder().mergeFrom(value);
             } else {
               shape_ = value;
             }
    -        onChanged();
           } else {
             shapeBuilder_.mergeFrom(value);
           }
    -
    +      if (shape_ != null) {
    +        bitField0_ |= 0x00000002;
    +        onChanged();
    +      }
           return this;
         }
         /**
          * .tensorflow.TensorShapeProto shape = 2;
          */
         public Builder clearShape() {
    -      if (shapeBuilder_ == null) {
    -        shape_ = null;
    -        onChanged();
    -      } else {
    -        shape_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      shape_ = null;
    +      if (shapeBuilder_ != null) {
    +        shapeBuilder_.dispose();
             shapeBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
          * .tensorflow.TensorShapeProto shape = 2;
          */
         public org.tensorflow.proto.TensorShapeProto.Builder getShapeBuilder() {
    -      
    +      bitField0_ |= 0x00000002;
           onChanged();
           return getShapeFieldBuilder().getBuilder();
         }
    @@ -723,11 +713,11 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
         /**
          * .tensorflow.TensorShapeProto shape = 2;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> 
             getShapeFieldBuilder() {
           if (shapeBuilder_ == null) {
    -        shapeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        shapeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>(
                     getShape(),
                     getParentForChildren(),
    @@ -738,14 +728,14 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
         }
     
         private org.tensorflow.proto.TensorProto defaultValue_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> defaultValueBuilder_;
         /**
          * .tensorflow.TensorProto default_value = 3;
          * @return Whether the defaultValue field is set.
          */
         public boolean hasDefaultValue() {
    -      return defaultValueBuilder_ != null || defaultValue_ != null;
    +      return ((bitField0_ & 0x00000004) != 0);
         }
         /**
          * .tensorflow.TensorProto default_value = 3;
    @@ -767,11 +757,11 @@ public Builder setDefaultValue(org.tensorflow.proto.TensorProto value) {
               throw new NullPointerException();
             }
             defaultValue_ = value;
    -        onChanged();
           } else {
             defaultValueBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -781,11 +771,11 @@ public Builder setDefaultValue(
             org.tensorflow.proto.TensorProto.Builder builderForValue) {
           if (defaultValueBuilder_ == null) {
             defaultValue_ = builderForValue.build();
    -        onChanged();
           } else {
             defaultValueBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -793,38 +783,40 @@ public Builder setDefaultValue(
          */
         public Builder mergeDefaultValue(org.tensorflow.proto.TensorProto value) {
           if (defaultValueBuilder_ == null) {
    -        if (defaultValue_ != null) {
    -          defaultValue_ =
    -            org.tensorflow.proto.TensorProto.newBuilder(defaultValue_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000004) != 0) &&
    +          defaultValue_ != null &&
    +          defaultValue_ != org.tensorflow.proto.TensorProto.getDefaultInstance()) {
    +          getDefaultValueBuilder().mergeFrom(value);
             } else {
               defaultValue_ = value;
             }
    -        onChanged();
           } else {
             defaultValueBuilder_.mergeFrom(value);
           }
    -
    +      if (defaultValue_ != null) {
    +        bitField0_ |= 0x00000004;
    +        onChanged();
    +      }
           return this;
         }
         /**
          * .tensorflow.TensorProto default_value = 3;
          */
         public Builder clearDefaultValue() {
    -      if (defaultValueBuilder_ == null) {
    -        defaultValue_ = null;
    -        onChanged();
    -      } else {
    -        defaultValue_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000004);
    +      defaultValue_ = null;
    +      if (defaultValueBuilder_ != null) {
    +        defaultValueBuilder_.dispose();
             defaultValueBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
          * .tensorflow.TensorProto default_value = 3;
          */
         public org.tensorflow.proto.TensorProto.Builder getDefaultValueBuilder() {
    -      
    +      bitField0_ |= 0x00000004;
           onChanged();
           return getDefaultValueFieldBuilder().getBuilder();
         }
    @@ -842,11 +834,11 @@ public org.tensorflow.proto.TensorProtoOrBuilder getDefaultValueOrBuilder() {
         /**
          * .tensorflow.TensorProto default_value = 3;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> 
             getDefaultValueFieldBuilder() {
           if (defaultValueBuilder_ == null) {
    -        defaultValueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        defaultValueBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder>(
                     getDefaultValue(),
                     getParentForChildren(),
    @@ -897,11 +889,9 @@ public java.lang.String getValuesOutputTensorName() {
          */
         public Builder setValuesOutputTensorName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           valuesOutputTensorName_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -910,8 +900,8 @@ public Builder setValuesOutputTensorName(
          * @return This builder for chaining.
          */
         public Builder clearValuesOutputTensorName() {
    -      
           valuesOutputTensorName_ = getDefaultInstance().getValuesOutputTensorName();
    +      bitField0_ = (bitField0_ & ~0x00000008);
           onChanged();
           return this;
         }
    @@ -922,27 +912,13 @@ public Builder clearValuesOutputTensorName() {
          */
         public Builder setValuesOutputTensorNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           valuesOutputTensorName_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.FixedLenFeatureProto)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FixedLenFeatureProtoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FixedLenFeatureProtoOrBuilder.java
    index c2ce843870f..e49042cfcae 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FixedLenFeatureProtoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FixedLenFeatureProtoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/example_parser_configuration.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FloatList.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FloatList.java
    index 859bdd63349..5997a988c59 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FloatList.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FloatList.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/feature.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,37 +9,34 @@
      * Protobuf type {@code tensorflow.FloatList}
      */
     public final class FloatList extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.FloatList)
         FloatListOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      FloatList.class.getName());
    +  }
       // Use FloatList.newBuilder() to construct.
    -  private FloatList(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private FloatList(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private FloatList() {
         value_ = emptyFloatList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new FloatList();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_FloatList_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_FloatList_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -45,7 +44,9 @@ protected java.lang.Object newInstance(
       }
     
       public static final int VALUE_FIELD_NUMBER = 1;
    -  private com.google.protobuf.Internal.FloatList value_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.FloatList value_ =
    +      emptyFloatList();
       /**
        * repeated float value = 1 [packed = true];
        * @return A list containing the value.
    @@ -185,39 +186,41 @@ public static org.tensorflow.proto.FloatList parseFrom(
       }
       public static org.tensorflow.proto.FloatList parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.FloatList parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.FloatList parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.FloatList parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.FloatList parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.FloatList parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -237,7 +240,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -245,7 +248,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.FloatList}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.FloatList)
           org.tensorflow.proto.FloatListOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -254,7 +257,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_FloatList_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -267,15 +270,15 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           value_ = emptyFloatList();
    -      bitField0_ = (bitField0_ & ~0x00000001);
           return this;
         }
     
    @@ -302,48 +305,19 @@ public org.tensorflow.proto.FloatList build() {
         @java.lang.Override
         public org.tensorflow.proto.FloatList buildPartial() {
           org.tensorflow.proto.FloatList result = new org.tensorflow.proto.FloatList(this);
    -      int from_bitField0_ = bitField0_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        value_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.value_ = value_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.FloatList result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        value_.makeImmutable();
    +        result.value_ = value_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.FloatList) {
    @@ -359,7 +333,8 @@ public Builder mergeFrom(org.tensorflow.proto.FloatList other) {
           if (!other.value_.isEmpty()) {
             if (value_.isEmpty()) {
               value_ = other.value_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          value_.makeImmutable();
    +          bitField0_ |= 0x00000001;
             } else {
               ensureValueIsMutable();
               value_.addAll(other.value_);
    @@ -401,7 +376,8 @@ public Builder mergeFrom(
                 case 10: {
                   int length = input.readRawVarint32();
                   int limit = input.pushLimit(length);
    -              ensureValueIsMutable();
    +              int alloc = length > 4096 ? 4096 : length;
    +              ensureValueIsMutable(alloc / 4);
                   while (input.getBytesUntilLimit() > 0) {
                     value_.addFloat(input.readFloat());
                   }
    @@ -427,10 +403,16 @@ public Builder mergeFrom(
     
         private com.google.protobuf.Internal.FloatList value_ = emptyFloatList();
         private void ensureValueIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    -        value_ = mutableCopy(value_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      if (!value_.isModifiable()) {
    +        value_ = makeMutableCopy(value_);
    +      }
    +      bitField0_ |= 0x00000001;
    +    }
    +    private void ensureValueIsMutable(int capacity) {
    +      if (!value_.isModifiable()) {
    +        value_ = makeMutableCopy(value_, capacity);
    +      }
    +      bitField0_ |= 0x00000001;
         }
         /**
          * repeated float value = 1 [packed = true];
    @@ -438,8 +420,8 @@ private void ensureValueIsMutable() {
          */
         public java.util.List
             getValueList() {
    -      return ((bitField0_ & 0x00000001) != 0) ?
    -               java.util.Collections.unmodifiableList(value_) : value_;
    +      value_.makeImmutable();
    +      return value_;
         }
         /**
          * repeated float value = 1 [packed = true];
    @@ -464,8 +446,10 @@ public float getValue(int index) {
          */
         public Builder setValue(
             int index, float value) {
    +
           ensureValueIsMutable();
           value_.setFloat(index, value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -475,8 +459,10 @@ public Builder setValue(
          * @return This builder for chaining.
          */
         public Builder addValue(float value) {
    +
           ensureValueIsMutable();
           value_.addFloat(value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -490,6 +476,7 @@ public Builder addAllValue(
           ensureValueIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, value_);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -503,18 +490,6 @@ public Builder clearValue() {
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.FloatList)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FloatListOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FloatListOrBuilder.java
    index 31a18866d89..3a09beb22bb 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FloatListOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FloatListOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/feature.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FullTypeDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FullTypeDef.java
    index 67347340a9f..52b9cac7116 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FullTypeDef.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FullTypeDef.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/full_type.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -14,12 +16,21 @@
      * Protobuf type {@code tensorflow.FullTypeDef}
      */
     public final class FullTypeDef extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.FullTypeDef)
         FullTypeDefOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      FullTypeDef.class.getName());
    +  }
       // Use FullTypeDef.newBuilder() to construct.
    -  private FullTypeDef(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private FullTypeDef(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private FullTypeDef() {
    @@ -27,25 +38,13 @@ private FullTypeDef() {
         args_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new FullTypeDef();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.FullTypeProtos.internal_static_tensorflow_FullTypeDef_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.FullTypeProtos.internal_static_tensorflow_FullTypeDef_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -53,6 +52,7 @@ protected java.lang.Object newInstance(
       }
     
       private int attrCase_ = 0;
    +  @SuppressWarnings("serial")
       private java.lang.Object attr_;
       public enum AttrCase
           implements com.google.protobuf.Internal.EnumLite,
    @@ -94,7 +94,7 @@ public int getNumber() {
       }
     
       public static final int TYPE_ID_FIELD_NUMBER = 1;
    -  private int typeId_;
    +  private int typeId_ = 0;
       /**
        * 
        * The principal type represented by this object. This may be a concrete type
    @@ -119,12 +119,12 @@ public int getNumber() {
        * @return The typeId.
        */
       @java.lang.Override public org.tensorflow.proto.FullTypeId getTypeId() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.FullTypeId result = org.tensorflow.proto.FullTypeId.valueOf(typeId_);
    +    org.tensorflow.proto.FullTypeId result = org.tensorflow.proto.FullTypeId.forNumber(typeId_);
         return result == null ? org.tensorflow.proto.FullTypeId.UNRECOGNIZED : result;
       }
     
       public static final int ARGS_FIELD_NUMBER = 2;
    +  @SuppressWarnings("serial")
       private java.util.List args_;
       /**
        * repeated .tensorflow.FullTypeDef args = 2;
    @@ -266,7 +266,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           output.writeMessage(2, args_.get(i));
         }
         if (attrCase_ == 3) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, attr_);
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, attr_);
         }
         if (attrCase_ == 4) {
           output.writeInt64(
    @@ -290,7 +290,7 @@ public int getSerializedSize() {
             .computeMessageSize(2, args_.get(i));
         }
         if (attrCase_ == 3) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, attr_);
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, attr_);
         }
         if (attrCase_ == 4) {
           size += com.google.protobuf.CodedOutputStream
    @@ -397,39 +397,41 @@ public static org.tensorflow.proto.FullTypeDef parseFrom(
       }
       public static org.tensorflow.proto.FullTypeDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.FullTypeDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.FullTypeDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.FullTypeDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.FullTypeDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.FullTypeDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -449,7 +451,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -464,7 +466,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.FullTypeDef}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.FullTypeDef)
           org.tensorflow.proto.FullTypeDefOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -473,7 +475,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.FullTypeProtos.internal_static_tensorflow_FullTypeDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -486,22 +488,22 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           typeId_ = 0;
    -
           if (argsBuilder_ == null) {
             args_ = java.util.Collections.emptyList();
           } else {
             args_ = null;
             argsBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000002);
           attrCase_ = 0;
           attr_ = null;
           return this;
    @@ -530,60 +532,37 @@ public org.tensorflow.proto.FullTypeDef build() {
         @java.lang.Override
         public org.tensorflow.proto.FullTypeDef buildPartial() {
           org.tensorflow.proto.FullTypeDef result = new org.tensorflow.proto.FullTypeDef(this);
    -      int from_bitField0_ = bitField0_;
    -      result.typeId_ = typeId_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      buildPartialOneofs(result);
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.FullTypeDef result) {
           if (argsBuilder_ == null) {
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((bitField0_ & 0x00000002) != 0)) {
               args_ = java.util.Collections.unmodifiableList(args_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000002);
             }
             result.args_ = args_;
           } else {
             result.args_ = argsBuilder_.build();
           }
    -      if (attrCase_ == 3) {
    -        result.attr_ = attr_;
    -      }
    -      if (attrCase_ == 4) {
    -        result.attr_ = attr_;
    -      }
    -      result.attrCase_ = attrCase_;
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    +    private void buildPartial0(org.tensorflow.proto.FullTypeDef result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.typeId_ = typeId_;
    +      }
         }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +
    +    private void buildPartialOneofs(org.tensorflow.proto.FullTypeDef result) {
    +      result.attrCase_ = attrCase_;
    +      result.attr_ = this.attr_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.FullTypeDef) {
    @@ -603,7 +582,7 @@ public Builder mergeFrom(org.tensorflow.proto.FullTypeDef other) {
             if (!other.args_.isEmpty()) {
               if (args_.isEmpty()) {
                 args_ = other.args_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000002);
               } else {
                 ensureArgsIsMutable();
                 args_.addAll(other.args_);
    @@ -616,9 +595,9 @@ public Builder mergeFrom(org.tensorflow.proto.FullTypeDef other) {
                 argsBuilder_.dispose();
                 argsBuilder_ = null;
                 args_ = other.args_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000002);
                 argsBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getArgsFieldBuilder() : null;
               } else {
                 argsBuilder_.addAllMessages(other.args_);
    @@ -668,7 +647,7 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   typeId_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 18: {
    @@ -753,8 +732,8 @@ public Builder clearAttr() {
          * @return This builder for chaining.
          */
         public Builder setTypeIdValue(int value) {
    -      
           typeId_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -770,8 +749,7 @@ public Builder setTypeIdValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.FullTypeId getTypeId() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.FullTypeId result = org.tensorflow.proto.FullTypeId.valueOf(typeId_);
    +      org.tensorflow.proto.FullTypeId result = org.tensorflow.proto.FullTypeId.forNumber(typeId_);
           return result == null ? org.tensorflow.proto.FullTypeId.UNRECOGNIZED : result;
         }
         /**
    @@ -789,7 +767,7 @@ public Builder setTypeId(org.tensorflow.proto.FullTypeId value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000001;
           typeId_ = value.getNumber();
           onChanged();
           return this;
    @@ -805,7 +783,7 @@ public Builder setTypeId(org.tensorflow.proto.FullTypeId value) {
          * @return This builder for chaining.
          */
         public Builder clearTypeId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           typeId_ = 0;
           onChanged();
           return this;
    @@ -814,13 +792,13 @@ public Builder clearTypeId() {
         private java.util.List args_ =
           java.util.Collections.emptyList();
         private void ensureArgsIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!((bitField0_ & 0x00000002) != 0)) {
             args_ = new java.util.ArrayList(args_);
    -        bitField0_ |= 0x00000001;
    +        bitField0_ |= 0x00000002;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.FullTypeDef, org.tensorflow.proto.FullTypeDef.Builder, org.tensorflow.proto.FullTypeDefOrBuilder> argsBuilder_;
     
         /**
    @@ -966,7 +944,7 @@ public Builder addAllArgs(
         public Builder clearArgs() {
           if (argsBuilder_ == null) {
             args_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
           } else {
             argsBuilder_.clear();
    @@ -1036,14 +1014,14 @@ public org.tensorflow.proto.FullTypeDef.Builder addArgsBuilder(
              getArgsBuilderList() {
           return getArgsFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.FullTypeDef, org.tensorflow.proto.FullTypeDef.Builder, org.tensorflow.proto.FullTypeDefOrBuilder> 
             getArgsFieldBuilder() {
           if (argsBuilder_ == null) {
    -        argsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        argsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.FullTypeDef, org.tensorflow.proto.FullTypeDef.Builder, org.tensorflow.proto.FullTypeDefOrBuilder>(
                     args_,
    -                ((bitField0_ & 0x00000001) != 0),
    +                ((bitField0_ & 0x00000002) != 0),
                     getParentForChildren(),
                     isClean());
             args_ = null;
    @@ -1111,10 +1089,8 @@ public java.lang.String getS() {
          */
         public Builder setS(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  attrCase_ = 3;
    +      if (value == null) { throw new NullPointerException(); }
    +      attrCase_ = 3;
           attr_ = value;
           onChanged();
           return this;
    @@ -1138,10 +1114,8 @@ public Builder clearS() {
          */
         public Builder setSBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           attrCase_ = 3;
           attr_ = value;
           onChanged();
    @@ -1183,6 +1157,7 @@ public long getI() {
          * @return This builder for chaining.
          */
         public Builder setI(long value) {
    +
           attrCase_ = 4;
           attr_ = value;
           onChanged();
    @@ -1204,18 +1179,6 @@ public Builder clearI() {
           }
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.FullTypeDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FullTypeDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FullTypeDefOrBuilder.java
    index 6fc125e608c..7c071d4dcde 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FullTypeDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FullTypeDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/full_type.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -90,5 +92,5 @@ org.tensorflow.proto.FullTypeDefOrBuilder getArgsOrBuilder(
        */
       long getI();
     
    -  public org.tensorflow.proto.FullTypeDef.AttrCase getAttrCase();
    +  org.tensorflow.proto.FullTypeDef.AttrCase getAttrCase();
     }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FullTypeId.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FullTypeId.java
    index 42db6640978..5f532bfd4e5 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FullTypeId.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FullTypeId.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/full_type.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -25,13 +27,14 @@ public enum FullTypeId
        * 
        * Type variables may serve as placeholder for any other type ID in type
        * templates.
    +   *
        * Examples:
    -   *   TFT_DATASET[TFT_VAR["T"]] is a Dataset returning a type indicated by "T".
    -   *   TFT_TENSOR[TFT_VAR["T"]] is a Tensor of n element type indicated by "T".
    -   *   TFT_TENSOR[TFT_VAR["T"]], TFT_TENSOR[TFT_VAR["T"]] are two tensors of
    -   *     identical element types.
    -   *   TFT_TENSOR[TFT_VAR["P"]], TFT_TENSOR[TFT_VAR["Q"]] are two tensors of
    -   *     independent element types.
    +   * TFT_DATASET[TFT_VAR["T"]] is a Dataset returning a type indicated by "T".
    +   * TFT_TENSOR[TFT_VAR["T"]] is a Tensor of n element type indicated by "T".
    +   * TFT_TENSOR[TFT_VAR["T"]], TFT_TENSOR[TFT_VAR["T"]] are two tensors of
    +   * identical element types.
    +   * TFT_TENSOR[TFT_VAR["P"]], TFT_TENSOR[TFT_VAR["Q"]] are two tensors of
    +   * independent element types.
        * 
    * * TFT_VAR = 1; @@ -53,9 +56,10 @@ public enum FullTypeId * The algebraic product type. This is an algebraic type that may be used just * for logical grouping. Not to confused with TFT_TUPLE which describes a * concrete object of several elements. + * * Example: - * TFT_DATASET[TFT_PRODUCT[TFT_TENSOR[TFT_INT32], TFT_TENSOR[TFT_FLOAT64]]] - * is a Dataset producing two tensors, an integer one and a float one. + * TFT_DATASET[TFT_PRODUCT[TFT_TENSOR[TFT_INT32], TFT_TENSOR[TFT_FLOAT64]]] + * is a Dataset producing two tensors, an integer one and a float one. *
    * * TFT_PRODUCT = 3; @@ -64,18 +68,20 @@ public enum FullTypeId /** *
        * Represents a named field, with the name stored in the attribute.
    +   *
        * Parametrization:
    -   *   TFT_NAMED[<type>]{<name>}
    -   *   * <type> is the type of the field
    -   *   * <name> is the field name, as string (thpugh can theoretically be an int
    -   *     as well)
    +   * TFT_NAMED[<type>]{<name>}
    +   * * <type> is the type of the field
    +   * * <name> is the field name, as string (thpugh can theoretically be an int
    +   * as well)
    +   *
        * Example:
    -   *   TFT_RECORD[
    -   *     TFT_NAMED[TFT_TENSOR[TFT_INT32]]{'foo'},
    -   *     TFT_NAMED[TFT_TENSOR[TFT_FLOAT32]]{'bar'},
    -   *   ]
    -   *     is a structure with two fields, an int tensor "foo" and a float tensor
    -   *     "bar".
    +   * TFT_RECORD[
    +   * TFT_NAMED[TFT_TENSOR[TFT_INT32]]{'foo'},
    +   * TFT_NAMED[TFT_TENSOR[TFT_FLOAT32]]{'bar'},
    +   * ]
    +   * is a structure with two fields, an int tensor "foo" and a float tensor
    +   * "bar".
        * 
    * * TFT_NAMED = 4; @@ -85,22 +91,24 @@ public enum FullTypeId *
        * Template definition. Expands the variables by repeating a template as
        * arguments of container.
    +   *
        * Parametrization:
    -   *   TFT_FOR_EACH[<container_type>, <template>, <expansions>]
    -   *   * <container_type> is the type of the container that the template will be
    -   *     expanded into
    -   *   * <template> is any type definition that potentially contains type
    -   *     variables
    -   *   * <expansions> is a TFT_VAR and may include more types in the future
    +   * TFT_FOR_EACH[<container_type>, <template>, <expansions>]
    +   * * <container_type> is the type of the container that the template will be
    +   * expanded into
    +   * * <template> is any type definition that potentially contains type
    +   * variables
    +   * * <expansions> is a TFT_VAR and may include more types in the future
    +   *
        * Example:
    -   *   TFT_FOR_EACH[
    -   *         TFT_PRODUCT,
    -   *         TFT_TENSOR[TFT_VAR["t"]],
    -   *         TFT_VAR["t"]
    -   *     ]
    -   *     will substitute a T = TFT_INT32 to TFT_PRODUCT[TFT_TENSOR[TFT_INT32]]
    -   *     and a T = (TFT_INT32, TFT_INT64) to
    -   *     TFT_PRODUCT[TFT_TENSOR[TFT_INT32], TFT_TENSOR[TFT_INT64]].
    +   * TFT_FOR_EACH[
    +   * TFT_PRODUCT,
    +   * TFT_TENSOR[TFT_VAR["t"]],
    +   * TFT_VAR["t"]
    +   * ]
    +   * will substitute a T = TFT_INT32 to TFT_PRODUCT[TFT_TENSOR[TFT_INT32]]
    +   * and a T = (TFT_INT32, TFT_INT64) to
    +   * TFT_PRODUCT[TFT_TENSOR[TFT_INT32], TFT_TENSOR[TFT_INT64]].
        * 
    * * TFT_FOR_EACH = 20; @@ -109,21 +117,23 @@ public enum FullTypeId /** *
        * Callable types describe functions and ops.
    +   *
        * Parametrization:
    -   *   TFT_CALLABLE[<arg type>, <return type>]
    -   *   * <arg type> is the type of the arguments; TFT_PRODUCT represents
    -   *   multiple
    -   *     arguments.
    -   *   * <return type> is the return type; TFT_PRODUCT represents multiple
    -   *     return values (that means that callables returning multiple things
    -   *     don't necessarily return a single tuple).
    +   * TFT_CALLABLE[<arg type>, <return type>]
    +   * * <arg type> is the type of the arguments; TFT_PRODUCT represents
    +   * multiple
    +   * arguments.
    +   * * <return type> is the return type; TFT_PRODUCT represents multiple
    +   * return values (that means that callables returning multiple things
    +   * don't necessarily return a single tuple).
    +   *
        * Example:
    -   *   TFT_CALLABLE[
    -   *     TFT_ANY,
    -   *     TFT_PRODUCT[TFT_TENSOR[TFT_INT32], TFT_TENSOR[TFT_FLOAT64]],
    -   *   ]
    -   *     is a callable with unspecified (for now) input arguments, and
    -   *     two return values of type tensor.
    +   * TFT_CALLABLE[
    +   * TFT_ANY,
    +   * TFT_PRODUCT[TFT_TENSOR[TFT_INT32], TFT_TENSOR[TFT_FLOAT64]],
    +   * ]
    +   * is a callable with unspecified (for now) input arguments, and
    +   * two return values of type tensor.
        * 
    * * TFT_CALLABLE = 100; @@ -132,15 +142,19 @@ public enum FullTypeId /** *
        * The usual Tensor. This is a parametric type.
    +   *
        * Parametrization:
    -   *   TFT_TENSOR[<element type>, <shape type>]
    -   *   * <element type> is currently limited to one of the element types
    -   *     defined below.
    -   *   * <shape type> is not yet defined, and may only be TFT_UNKNOWN for now.
    +   * TFT_TENSOR[<element type>, <shape type>]
    +   * * <element type> is currently limited to one of the element types
    +   * defined below.
    +   * * <shape type> is not yet defined, and may only be TFT_UNKNOWN for now.
    +   *
        * A TFT_SHAPE type will be defined in the future.
    +   *
        * Example:
    -   *   TFT_TENSOR[TFT_INT32, TFT_UNKNOWN]
    -   *     is a Tensor of int32 element type and unknown shape.
    +   * TFT_TENSOR[TFT_INT32, TFT_UNKNOWN]
    +   * is a Tensor of int32 element type and unknown shape.
    +   *
        * TODO(mdan): Define TFT_SHAPE and add more examples.
        * 
    * @@ -157,17 +171,19 @@ public enum FullTypeId * support efficient mutation semantics (i.e. element update) in the * user-facing API. * The element type may be generic or even TFT_ANY for a heterogenous list. + * * Parametrization: - * TFT_ARRAY[<element type>] - * * <element type> may be any concrete type. + * TFT_ARRAY[<element type>] + * * <element type> may be any concrete type. + * * Examples: - * TFT_ARRAY[TFT_TENSOR[TFT_INT32]] is a TensorArray holding int32 Tensors - * of any shape. - * TFT_ARRAY[TFT_TENSOR[TFT_UNKNOWN]] is a TensorArray holding Tensors of - * mixed element types. - * TFT_ARRAY[TFT_UNKNOWN] is a TensorArray holding any element type. - * TFT_ARRAY[] is equivalent to TFT_ARRAY[TFT_UNKNOWN]. - * TFT_ARRAY[TFT_ARRAY[]] is an array or arrays (of unknown types). + * TFT_ARRAY[TFT_TENSOR[TFT_INT32]] is a TensorArray holding int32 Tensors + * of any shape. + * TFT_ARRAY[TFT_TENSOR[TFT_UNKNOWN]] is a TensorArray holding Tensors of + * mixed element types. + * TFT_ARRAY[TFT_UNKNOWN] is a TensorArray holding any element type. + * TFT_ARRAY[] is equivalent to TFT_ARRAY[TFT_UNKNOWN]. + * TFT_ARRAY[TFT_ARRAY[]] is an array or arrays (of unknown types). *
    * * TFT_ARRAY = 1001; @@ -178,12 +194,14 @@ public enum FullTypeId * Optional (or tensorflow::OptionalVariant in the variant type registry). * This type represents a value that may either hold an element of a single * specified type, or nothing at all. + * * Parametrization: - * TFT_OPTIONAL[<element type>] - * * <element type> may be any concrete type. + * TFT_OPTIONAL[<element type>] + * * <element type> may be any concrete type. + * * Examples: - * TFT_OPTIONAL[TFT_TENSOR[TFT_INT32]] is an Optional holding an int32 - * Tensor of any shape. + * TFT_OPTIONAL[TFT_TENSOR[TFT_INT32]] is an Optional holding an int32 + * Tensor of any shape. *
    * * TFT_OPTIONAL = 1002; @@ -193,12 +211,14 @@ public enum FullTypeId *
        * Literal types describe compile-time constant values.
        * Literal types may also participate in dependent types.
    +   *
        * Parametrization:
    -   *   TFT_LITERAL[<value type>]{<value>}
    -   *   * <value type> may be any concrete type compatible that can hold <value>
    -   *   * <value> is the type's attribute, and holds the actual literal value
    +   * TFT_LITERAL[<value type>]{<value>}
    +   * * <value type> may be any concrete type compatible that can hold <value>
    +   * * <value> is the type's attribute, and holds the actual literal value
    +   *
        * Examples:
    -   *   TFT_LITERAL[TFT_INT32]{1} is the compile-time constant 1.
    +   * TFT_LITERAL[TFT_INT32]{1} is the compile-time constant 1.
        * 
    * * TFT_LITERAL = 1003; @@ -208,12 +228,14 @@ public enum FullTypeId *
        * Encoding types describe a value of a certain type, encoded as a different
        * type.
    +   *
        * Parametrization:
    -   *   TFT_ENCODED[<encoded type>, <encoding type>]
    -   *   * <encoded type> may be any type
    -   *   * <encoding type> may be any type
    +   * TFT_ENCODED[<encoded type>, <encoding type>]
    +   * * <encoded type> may be any type
    +   * * <encoding type> may be any type
    +   *
        * Examples:
    -   *   TFT_ENCODING[TFT_INT32, TFT_STRING] is an integer encoded as string.
    +   * TFT_ENCODING[TFT_INT32, TFT_STRING] is an integer encoded as string.
        * 
    * * TFT_ENCODED = 1004; @@ -226,9 +248,10 @@ public enum FullTypeId * Shape tensors have special, host-only placement, in contrast to * TFT_TENSOR[TFT_INT32] which is the type of a normal numeric tensor * with no special placement. + * * Examples: - * TFT_SHAPE_TENSOR[TFT_INT32] is the most common - * TFT_SHAPE_TENSOR[TFT_INT64] is also allowed + * TFT_SHAPE_TENSOR[TFT_INT32] is the most common + * TFT_SHAPE_TENSOR[TFT_INT64] is also allowed *
    * * TFT_SHAPE_TENSOR = 1005; @@ -329,14 +352,17 @@ public enum FullTypeId * mutation, and can potentially produce an infinite number of elements. * A datasets can produce logical structures (e.g. multiple elements). This * is expressed using TFT_PRODUCT. + * + * * Parametrization: TFT_DATASET[<element type>]. - * * <element type> may be a concrete type or a type symbol. It represents - * the data type of the elements produced by the dataset. + * * <element type> may be a concrete type or a type symbol. It represents + * the data type of the elements produced by the dataset. + * * Examples: - * TFT_DATSET[TFT_TENSOR[TFT_INT32]] is a Dataset producing single int32 - * Tensors of unknown shape. - * TFT_DATSET[TFT_PRODUCT[TFT_TENSOR[TFT_INT32], TFT_TENSOR[TFT_FLOAT32]] is - * a Dataset producing pairs of Tensors, one integer and one float. + * TFT_DATSET[TFT_TENSOR[TFT_INT32]] is a Dataset producing single int32 + * Tensors of unknown shape. + * TFT_DATSET[TFT_PRODUCT[TFT_TENSOR[TFT_INT32], TFT_TENSOR[TFT_FLOAT32]] is + * a Dataset producing pairs of Tensors, one integer and one float. * Note: The high ID number is to prepare for the eventuality that Datasets * will be supported by user types in the future. *
    @@ -347,6 +373,7 @@ public enum FullTypeId /** *
        * A ragged tensor created by tf.ragged ops and APIs.
    +   *
        * Parametrization: TFT_RAGGED[<element_type>].
        * 
    * @@ -357,9 +384,11 @@ public enum FullTypeId *
        * Iterators created by tf.data ops and APIs. Very similar to Datasets, except
        * they are mutable.
    +   *
    +   *
        * Parametrization: TFT_ITERATOR[<element type>].
    -   *   * <element type> may be a concrete type or a type symbol. It represents
    -   *     the data type of the elements produced by the dataset.
    +   * * <element type> may be a concrete type or a type symbol. It represents
    +   * the data type of the elements produced by the dataset.
        * 
    * * TFT_ITERATOR = 10104; @@ -374,6 +403,7 @@ public enum FullTypeId * available". * Mutex locks are the dynamic counterpart of control dependencies. * TODO(mdan): Properly document this thing. + * * Parametrization: TFT_MUTEX_LOCK[]. *
    * @@ -394,6 +424,15 @@ public enum FullTypeId UNRECOGNIZED(-1), ; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + FullTypeId.class.getName()); + } /** *
        * The default represents an uninitialized values.
    @@ -406,13 +445,14 @@ public enum FullTypeId
        * 
        * Type variables may serve as placeholder for any other type ID in type
        * templates.
    +   *
        * Examples:
    -   *   TFT_DATASET[TFT_VAR["T"]] is a Dataset returning a type indicated by "T".
    -   *   TFT_TENSOR[TFT_VAR["T"]] is a Tensor of n element type indicated by "T".
    -   *   TFT_TENSOR[TFT_VAR["T"]], TFT_TENSOR[TFT_VAR["T"]] are two tensors of
    -   *     identical element types.
    -   *   TFT_TENSOR[TFT_VAR["P"]], TFT_TENSOR[TFT_VAR["Q"]] are two tensors of
    -   *     independent element types.
    +   * TFT_DATASET[TFT_VAR["T"]] is a Dataset returning a type indicated by "T".
    +   * TFT_TENSOR[TFT_VAR["T"]] is a Tensor of n element type indicated by "T".
    +   * TFT_TENSOR[TFT_VAR["T"]], TFT_TENSOR[TFT_VAR["T"]] are two tensors of
    +   * identical element types.
    +   * TFT_TENSOR[TFT_VAR["P"]], TFT_TENSOR[TFT_VAR["Q"]] are two tensors of
    +   * independent element types.
        * 
    * * TFT_VAR = 1; @@ -434,9 +474,10 @@ public enum FullTypeId * The algebraic product type. This is an algebraic type that may be used just * for logical grouping. Not to confused with TFT_TUPLE which describes a * concrete object of several elements. + * * Example: - * TFT_DATASET[TFT_PRODUCT[TFT_TENSOR[TFT_INT32], TFT_TENSOR[TFT_FLOAT64]]] - * is a Dataset producing two tensors, an integer one and a float one. + * TFT_DATASET[TFT_PRODUCT[TFT_TENSOR[TFT_INT32], TFT_TENSOR[TFT_FLOAT64]]] + * is a Dataset producing two tensors, an integer one and a float one. *
    * * TFT_PRODUCT = 3; @@ -445,18 +486,20 @@ public enum FullTypeId /** *
        * Represents a named field, with the name stored in the attribute.
    +   *
        * Parametrization:
    -   *   TFT_NAMED[<type>]{<name>}
    -   *   * <type> is the type of the field
    -   *   * <name> is the field name, as string (thpugh can theoretically be an int
    -   *     as well)
    +   * TFT_NAMED[<type>]{<name>}
    +   * * <type> is the type of the field
    +   * * <name> is the field name, as string (thpugh can theoretically be an int
    +   * as well)
    +   *
        * Example:
    -   *   TFT_RECORD[
    -   *     TFT_NAMED[TFT_TENSOR[TFT_INT32]]{'foo'},
    -   *     TFT_NAMED[TFT_TENSOR[TFT_FLOAT32]]{'bar'},
    -   *   ]
    -   *     is a structure with two fields, an int tensor "foo" and a float tensor
    -   *     "bar".
    +   * TFT_RECORD[
    +   * TFT_NAMED[TFT_TENSOR[TFT_INT32]]{'foo'},
    +   * TFT_NAMED[TFT_TENSOR[TFT_FLOAT32]]{'bar'},
    +   * ]
    +   * is a structure with two fields, an int tensor "foo" and a float tensor
    +   * "bar".
        * 
    * * TFT_NAMED = 4; @@ -466,22 +509,24 @@ public enum FullTypeId *
        * Template definition. Expands the variables by repeating a template as
        * arguments of container.
    +   *
        * Parametrization:
    -   *   TFT_FOR_EACH[<container_type>, <template>, <expansions>]
    -   *   * <container_type> is the type of the container that the template will be
    -   *     expanded into
    -   *   * <template> is any type definition that potentially contains type
    -   *     variables
    -   *   * <expansions> is a TFT_VAR and may include more types in the future
    +   * TFT_FOR_EACH[<container_type>, <template>, <expansions>]
    +   * * <container_type> is the type of the container that the template will be
    +   * expanded into
    +   * * <template> is any type definition that potentially contains type
    +   * variables
    +   * * <expansions> is a TFT_VAR and may include more types in the future
    +   *
        * Example:
    -   *   TFT_FOR_EACH[
    -   *         TFT_PRODUCT,
    -   *         TFT_TENSOR[TFT_VAR["t"]],
    -   *         TFT_VAR["t"]
    -   *     ]
    -   *     will substitute a T = TFT_INT32 to TFT_PRODUCT[TFT_TENSOR[TFT_INT32]]
    -   *     and a T = (TFT_INT32, TFT_INT64) to
    -   *     TFT_PRODUCT[TFT_TENSOR[TFT_INT32], TFT_TENSOR[TFT_INT64]].
    +   * TFT_FOR_EACH[
    +   * TFT_PRODUCT,
    +   * TFT_TENSOR[TFT_VAR["t"]],
    +   * TFT_VAR["t"]
    +   * ]
    +   * will substitute a T = TFT_INT32 to TFT_PRODUCT[TFT_TENSOR[TFT_INT32]]
    +   * and a T = (TFT_INT32, TFT_INT64) to
    +   * TFT_PRODUCT[TFT_TENSOR[TFT_INT32], TFT_TENSOR[TFT_INT64]].
        * 
    * * TFT_FOR_EACH = 20; @@ -490,21 +535,23 @@ public enum FullTypeId /** *
        * Callable types describe functions and ops.
    +   *
        * Parametrization:
    -   *   TFT_CALLABLE[<arg type>, <return type>]
    -   *   * <arg type> is the type of the arguments; TFT_PRODUCT represents
    -   *   multiple
    -   *     arguments.
    -   *   * <return type> is the return type; TFT_PRODUCT represents multiple
    -   *     return values (that means that callables returning multiple things
    -   *     don't necessarily return a single tuple).
    +   * TFT_CALLABLE[<arg type>, <return type>]
    +   * * <arg type> is the type of the arguments; TFT_PRODUCT represents
    +   * multiple
    +   * arguments.
    +   * * <return type> is the return type; TFT_PRODUCT represents multiple
    +   * return values (that means that callables returning multiple things
    +   * don't necessarily return a single tuple).
    +   *
        * Example:
    -   *   TFT_CALLABLE[
    -   *     TFT_ANY,
    -   *     TFT_PRODUCT[TFT_TENSOR[TFT_INT32], TFT_TENSOR[TFT_FLOAT64]],
    -   *   ]
    -   *     is a callable with unspecified (for now) input arguments, and
    -   *     two return values of type tensor.
    +   * TFT_CALLABLE[
    +   * TFT_ANY,
    +   * TFT_PRODUCT[TFT_TENSOR[TFT_INT32], TFT_TENSOR[TFT_FLOAT64]],
    +   * ]
    +   * is a callable with unspecified (for now) input arguments, and
    +   * two return values of type tensor.
        * 
    * * TFT_CALLABLE = 100; @@ -513,15 +560,19 @@ public enum FullTypeId /** *
        * The usual Tensor. This is a parametric type.
    +   *
        * Parametrization:
    -   *   TFT_TENSOR[<element type>, <shape type>]
    -   *   * <element type> is currently limited to one of the element types
    -   *     defined below.
    -   *   * <shape type> is not yet defined, and may only be TFT_UNKNOWN for now.
    +   * TFT_TENSOR[<element type>, <shape type>]
    +   * * <element type> is currently limited to one of the element types
    +   * defined below.
    +   * * <shape type> is not yet defined, and may only be TFT_UNKNOWN for now.
    +   *
        * A TFT_SHAPE type will be defined in the future.
    +   *
        * Example:
    -   *   TFT_TENSOR[TFT_INT32, TFT_UNKNOWN]
    -   *     is a Tensor of int32 element type and unknown shape.
    +   * TFT_TENSOR[TFT_INT32, TFT_UNKNOWN]
    +   * is a Tensor of int32 element type and unknown shape.
    +   *
        * TODO(mdan): Define TFT_SHAPE and add more examples.
        * 
    * @@ -538,17 +589,19 @@ public enum FullTypeId * support efficient mutation semantics (i.e. element update) in the * user-facing API. * The element type may be generic or even TFT_ANY for a heterogenous list. + * * Parametrization: - * TFT_ARRAY[<element type>] - * * <element type> may be any concrete type. + * TFT_ARRAY[<element type>] + * * <element type> may be any concrete type. + * * Examples: - * TFT_ARRAY[TFT_TENSOR[TFT_INT32]] is a TensorArray holding int32 Tensors - * of any shape. - * TFT_ARRAY[TFT_TENSOR[TFT_UNKNOWN]] is a TensorArray holding Tensors of - * mixed element types. - * TFT_ARRAY[TFT_UNKNOWN] is a TensorArray holding any element type. - * TFT_ARRAY[] is equivalent to TFT_ARRAY[TFT_UNKNOWN]. - * TFT_ARRAY[TFT_ARRAY[]] is an array or arrays (of unknown types). + * TFT_ARRAY[TFT_TENSOR[TFT_INT32]] is a TensorArray holding int32 Tensors + * of any shape. + * TFT_ARRAY[TFT_TENSOR[TFT_UNKNOWN]] is a TensorArray holding Tensors of + * mixed element types. + * TFT_ARRAY[TFT_UNKNOWN] is a TensorArray holding any element type. + * TFT_ARRAY[] is equivalent to TFT_ARRAY[TFT_UNKNOWN]. + * TFT_ARRAY[TFT_ARRAY[]] is an array or arrays (of unknown types). *
    * * TFT_ARRAY = 1001; @@ -559,12 +612,14 @@ public enum FullTypeId * Optional (or tensorflow::OptionalVariant in the variant type registry). * This type represents a value that may either hold an element of a single * specified type, or nothing at all. + * * Parametrization: - * TFT_OPTIONAL[<element type>] - * * <element type> may be any concrete type. + * TFT_OPTIONAL[<element type>] + * * <element type> may be any concrete type. + * * Examples: - * TFT_OPTIONAL[TFT_TENSOR[TFT_INT32]] is an Optional holding an int32 - * Tensor of any shape. + * TFT_OPTIONAL[TFT_TENSOR[TFT_INT32]] is an Optional holding an int32 + * Tensor of any shape. *
    * * TFT_OPTIONAL = 1002; @@ -574,12 +629,14 @@ public enum FullTypeId *
        * Literal types describe compile-time constant values.
        * Literal types may also participate in dependent types.
    +   *
        * Parametrization:
    -   *   TFT_LITERAL[<value type>]{<value>}
    -   *   * <value type> may be any concrete type compatible that can hold <value>
    -   *   * <value> is the type's attribute, and holds the actual literal value
    +   * TFT_LITERAL[<value type>]{<value>}
    +   * * <value type> may be any concrete type compatible that can hold <value>
    +   * * <value> is the type's attribute, and holds the actual literal value
    +   *
        * Examples:
    -   *   TFT_LITERAL[TFT_INT32]{1} is the compile-time constant 1.
    +   * TFT_LITERAL[TFT_INT32]{1} is the compile-time constant 1.
        * 
    * * TFT_LITERAL = 1003; @@ -589,12 +646,14 @@ public enum FullTypeId *
        * Encoding types describe a value of a certain type, encoded as a different
        * type.
    +   *
        * Parametrization:
    -   *   TFT_ENCODED[<encoded type>, <encoding type>]
    -   *   * <encoded type> may be any type
    -   *   * <encoding type> may be any type
    +   * TFT_ENCODED[<encoded type>, <encoding type>]
    +   * * <encoded type> may be any type
    +   * * <encoding type> may be any type
    +   *
        * Examples:
    -   *   TFT_ENCODING[TFT_INT32, TFT_STRING] is an integer encoded as string.
    +   * TFT_ENCODING[TFT_INT32, TFT_STRING] is an integer encoded as string.
        * 
    * * TFT_ENCODED = 1004; @@ -607,9 +666,10 @@ public enum FullTypeId * Shape tensors have special, host-only placement, in contrast to * TFT_TENSOR[TFT_INT32] which is the type of a normal numeric tensor * with no special placement. + * * Examples: - * TFT_SHAPE_TENSOR[TFT_INT32] is the most common - * TFT_SHAPE_TENSOR[TFT_INT64] is also allowed + * TFT_SHAPE_TENSOR[TFT_INT32] is the most common + * TFT_SHAPE_TENSOR[TFT_INT64] is also allowed *
    * * TFT_SHAPE_TENSOR = 1005; @@ -710,14 +770,17 @@ public enum FullTypeId * mutation, and can potentially produce an infinite number of elements. * A datasets can produce logical structures (e.g. multiple elements). This * is expressed using TFT_PRODUCT. + * + * * Parametrization: TFT_DATASET[<element type>]. - * * <element type> may be a concrete type or a type symbol. It represents - * the data type of the elements produced by the dataset. + * * <element type> may be a concrete type or a type symbol. It represents + * the data type of the elements produced by the dataset. + * * Examples: - * TFT_DATSET[TFT_TENSOR[TFT_INT32]] is a Dataset producing single int32 - * Tensors of unknown shape. - * TFT_DATSET[TFT_PRODUCT[TFT_TENSOR[TFT_INT32], TFT_TENSOR[TFT_FLOAT32]] is - * a Dataset producing pairs of Tensors, one integer and one float. + * TFT_DATSET[TFT_TENSOR[TFT_INT32]] is a Dataset producing single int32 + * Tensors of unknown shape. + * TFT_DATSET[TFT_PRODUCT[TFT_TENSOR[TFT_INT32], TFT_TENSOR[TFT_FLOAT32]] is + * a Dataset producing pairs of Tensors, one integer and one float. * Note: The high ID number is to prepare for the eventuality that Datasets * will be supported by user types in the future. *
    @@ -728,6 +791,7 @@ public enum FullTypeId /** *
        * A ragged tensor created by tf.ragged ops and APIs.
    +   *
        * Parametrization: TFT_RAGGED[<element_type>].
        * 
    * @@ -738,9 +802,11 @@ public enum FullTypeId *
        * Iterators created by tf.data ops and APIs. Very similar to Datasets, except
        * they are mutable.
    +   *
    +   *
        * Parametrization: TFT_ITERATOR[<element type>].
    -   *   * <element type> may be a concrete type or a type symbol. It represents
    -   *     the data type of the elements produced by the dataset.
    +   * * <element type> may be a concrete type or a type symbol. It represents
    +   * the data type of the elements produced by the dataset.
        * 
    * * TFT_ITERATOR = 10104; @@ -755,6 +821,7 @@ public enum FullTypeId * available". * Mutex locks are the dynamic counterpart of control dependencies. * TODO(mdan): Properly document this thing. + * * Parametrization: TFT_MUTEX_LOCK[]. *
    * diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FullTypeProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FullTypeProtos.java index ef59c5b9751..83bd2f467bd 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FullTypeProtos.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FullTypeProtos.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/full_type.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; public final class FullTypeProtos { private FullTypeProtos() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + FullTypeProtos.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -17,7 +28,7 @@ public static void registerAllExtensions( static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_FullTypeDef_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_FullTypeDef_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor @@ -60,9 +71,10 @@ public static void registerAllExtensions( internal_static_tensorflow_FullTypeDef_descriptor = getDescriptor().getMessageTypes().get(0); internal_static_tensorflow_FullTypeDef_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_FullTypeDef_descriptor, new java.lang.String[] { "TypeId", "Args", "S", "I", "Attr", }); + descriptor.resolveAllFeaturesImmutable(); } // @@protoc_insertion_point(outer_class_scope) diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionDef.java index c6eb5cf8fef..aa45a3eb8d2 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionDef.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionDef.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/function.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -8,37 +10,35 @@ * A function can be instantiated when the runtime can bind every attr * with a value. When a GraphDef has a call to a function, it must * have binding for every attr defined in the signature. + * * TODO(zhifengc): - * * device spec, etc. + * * device spec, etc. *
    * * Protobuf type {@code tensorflow.FunctionDef} */ public final class FunctionDef extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.FunctionDef) FunctionDefOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + FunctionDef.class.getName()); + } // Use FunctionDef.newBuilder() to construct. - private FunctionDef(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private FunctionDef(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private FunctionDef() { nodeDef_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new FunctionDef(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.FunctionProtos.internal_static_tensorflow_FunctionDef_descriptor; @@ -46,7 +46,7 @@ protected java.lang.Object newInstance( @SuppressWarnings({"rawtypes"}) @java.lang.Override - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 5: @@ -65,7 +65,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.FunctionProtos.internal_static_tensorflow_FunctionDef_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -99,7 +99,6 @@ boolean containsAttr( /** * map<string, .tensorflow.AttrValue> attr = 1; */ - /* nullable */ org.tensorflow.proto.AttrValue getAttrOrDefault( java.lang.String key, @@ -108,7 +107,6 @@ org.tensorflow.proto.AttrValue getAttrOrDefault( /** * map<string, .tensorflow.AttrValue> attr = 1; */ - org.tensorflow.proto.AttrValue getAttrOrThrow( java.lang.String key); } @@ -121,29 +119,26 @@ org.tensorflow.proto.AttrValue getAttrOrThrow( * Protobuf type {@code tensorflow.FunctionDef.ArgAttrs} */ public static final class ArgAttrs extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.FunctionDef.ArgAttrs) ArgAttrsOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + ArgAttrs.class.getName()); + } // Use ArgAttrs.newBuilder() to construct. - private ArgAttrs(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private ArgAttrs(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private ArgAttrs() { } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new ArgAttrs(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.FunctionProtos.internal_static_tensorflow_FunctionDef_ArgAttrs_descriptor; @@ -151,7 +146,7 @@ protected java.lang.Object newInstance( @SuppressWarnings({"rawtypes"}) @java.lang.Override - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 1: @@ -162,7 +157,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.FunctionProtos.internal_static_tensorflow_FunctionDef_ArgAttrs_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -181,6 +176,7 @@ private static final class AttrDefaultEntryHolder { com.google.protobuf.WireFormat.FieldType.MESSAGE, org.tensorflow.proto.AttrValue.getDefaultInstance()); } + @SuppressWarnings("serial") private com.google.protobuf.MapField< java.lang.String, org.tensorflow.proto.AttrValue> attr_; private com.google.protobuf.MapField @@ -191,14 +187,12 @@ private static final class AttrDefaultEntryHolder { } return attr_; } - public int getAttrCount() { return internalGetAttr().getMap().size(); } /** * map<string, .tensorflow.AttrValue> attr = 1; */ - @java.lang.Override public boolean containsAttr( java.lang.String key) { @@ -217,7 +211,6 @@ public java.util.Map getAttr() * map<string, .tensorflow.AttrValue> attr = 1; */ @java.lang.Override - public java.util.Map getAttrMap() { return internalGetAttr().getMap(); } @@ -225,10 +218,11 @@ public java.util.Map getAttrMa * map<string, .tensorflow.AttrValue> attr = 1; */ @java.lang.Override - - public org.tensorflow.proto.AttrValue getAttrOrDefault( + public /* nullable */ +org.tensorflow.proto.AttrValue getAttrOrDefault( java.lang.String key, - org.tensorflow.proto.AttrValue defaultValue) { + /* nullable */ +org.tensorflow.proto.AttrValue defaultValue) { if (key == null) { throw new NullPointerException("map key"); } java.util.Map map = internalGetAttr().getMap(); @@ -238,7 +232,6 @@ public org.tensorflow.proto.AttrValue getAttrOrDefault( * map<string, .tensorflow.AttrValue> attr = 1; */ @java.lang.Override - public org.tensorflow.proto.AttrValue getAttrOrThrow( java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } @@ -264,7 +257,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - com.google.protobuf.GeneratedMessageV3 + com.google.protobuf.GeneratedMessage .serializeStringMapTo( output, internalGetAttr(), @@ -360,39 +353,41 @@ public static org.tensorflow.proto.FunctionDef.ArgAttrs parseFrom( } public static org.tensorflow.proto.FunctionDef.ArgAttrs parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.FunctionDef.ArgAttrs parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.FunctionDef.ArgAttrs parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.FunctionDef.ArgAttrs parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.FunctionDef.ArgAttrs parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.FunctionDef.ArgAttrs parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -412,7 +407,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -425,7 +420,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.FunctionDef.ArgAttrs} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.FunctionDef.ArgAttrs) org.tensorflow.proto.FunctionDef.ArgAttrsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -434,7 +429,7 @@ public static final class Builder extends } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 1: @@ -445,7 +440,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMutableMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( int number) { switch (number) { case 1: @@ -456,7 +451,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.FunctionProtos.internal_static_tensorflow_FunctionDef_ArgAttrs_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -469,13 +464,14 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; internalGetMutableAttr().clear(); return this; } @@ -503,45 +499,18 @@ public org.tensorflow.proto.FunctionDef.ArgAttrs build() { @java.lang.Override public org.tensorflow.proto.FunctionDef.ArgAttrs buildPartial() { org.tensorflow.proto.FunctionDef.ArgAttrs result = new org.tensorflow.proto.FunctionDef.ArgAttrs(this); - int from_bitField0_ = bitField0_; - result.attr_ = internalGetAttr(); - result.attr_.makeImmutable(); + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.FunctionDef.ArgAttrs result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.attr_ = internalGetAttr().build(AttrDefaultEntryHolder.defaultEntry); + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.FunctionDef.ArgAttrs) { @@ -556,6 +525,7 @@ public Builder mergeFrom(org.tensorflow.proto.FunctionDef.ArgAttrs other) { if (other == org.tensorflow.proto.FunctionDef.ArgAttrs.getDefaultInstance()) return this; internalGetMutableAttr().mergeFrom( other.internalGetAttr()); + bitField0_ |= 0x00000001; this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -586,8 +556,9 @@ public Builder mergeFrom( com.google.protobuf.MapEntry attr__ = input.readMessage( AttrDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); - internalGetMutableAttr().getMutableMap().put( + internalGetMutableAttr().ensureBuilderMap().put( attr__.getKey(), attr__.getValue()); + bitField0_ |= 0x00000001; break; } // case 10 default: { @@ -607,41 +578,49 @@ public Builder mergeFrom( } private int bitField0_; - private com.google.protobuf.MapField< - java.lang.String, org.tensorflow.proto.AttrValue> attr_; - private com.google.protobuf.MapField - internalGetAttr() { + private static final class AttrConverter implements com.google.protobuf.MapFieldBuilder.Converter { + @java.lang.Override + public org.tensorflow.proto.AttrValue build(org.tensorflow.proto.AttrValueOrBuilder val) { + if (val instanceof org.tensorflow.proto.AttrValue) { return (org.tensorflow.proto.AttrValue) val; } + return ((org.tensorflow.proto.AttrValue.Builder) val).build(); + } + + @java.lang.Override + public com.google.protobuf.MapEntry defaultEntry() { + return AttrDefaultEntryHolder.defaultEntry; + } + }; + private static final AttrConverter attrConverter = new AttrConverter(); + + private com.google.protobuf.MapFieldBuilder< + java.lang.String, org.tensorflow.proto.AttrValueOrBuilder, org.tensorflow.proto.AttrValue, org.tensorflow.proto.AttrValue.Builder> attr_; + private com.google.protobuf.MapFieldBuilder + internalGetAttr() { if (attr_ == null) { - return com.google.protobuf.MapField.emptyMapField( - AttrDefaultEntryHolder.defaultEntry); + return new com.google.protobuf.MapFieldBuilder<>(attrConverter); } return attr_; } - private com.google.protobuf.MapField - internalGetMutableAttr() { - onChanged();; + private com.google.protobuf.MapFieldBuilder + internalGetMutableAttr() { if (attr_ == null) { - attr_ = com.google.protobuf.MapField.newMapField( - AttrDefaultEntryHolder.defaultEntry); - } - if (!attr_.isMutable()) { - attr_ = attr_.copy(); + attr_ = new com.google.protobuf.MapFieldBuilder<>(attrConverter); } + bitField0_ |= 0x00000001; + onChanged(); return attr_; } - public int getAttrCount() { - return internalGetAttr().getMap().size(); + return internalGetAttr().ensureBuilderMap().size(); } /** * map<string, .tensorflow.AttrValue> attr = 1; */ - @java.lang.Override public boolean containsAttr( java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } - return internalGetAttr().getMap().containsKey(key); + return internalGetAttr().ensureBuilderMap().containsKey(key); } /** * Use {@link #getAttrMap()} instead. @@ -655,52 +634,47 @@ public java.util.Map getAttr() * map<string, .tensorflow.AttrValue> attr = 1; */ @java.lang.Override - public java.util.Map getAttrMap() { - return internalGetAttr().getMap(); + return internalGetAttr().getImmutableMap(); } /** * map<string, .tensorflow.AttrValue> attr = 1; */ @java.lang.Override - - public org.tensorflow.proto.AttrValue getAttrOrDefault( + public /* nullable */ +org.tensorflow.proto.AttrValue getAttrOrDefault( java.lang.String key, - org.tensorflow.proto.AttrValue defaultValue) { + /* nullable */ +org.tensorflow.proto.AttrValue defaultValue) { if (key == null) { throw new NullPointerException("map key"); } - java.util.Map map = - internalGetAttr().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; + java.util.Map map = internalGetMutableAttr().ensureBuilderMap(); + return map.containsKey(key) ? attrConverter.build(map.get(key)) : defaultValue; } /** * map<string, .tensorflow.AttrValue> attr = 1; */ @java.lang.Override - public org.tensorflow.proto.AttrValue getAttrOrThrow( java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } - java.util.Map map = - internalGetAttr().getMap(); + java.util.Map map = internalGetMutableAttr().ensureBuilderMap(); if (!map.containsKey(key)) { throw new java.lang.IllegalArgumentException(); } - return map.get(key); + return attrConverter.build(map.get(key)); } - public Builder clearAttr() { - internalGetMutableAttr().getMutableMap() - .clear(); + bitField0_ = (bitField0_ & ~0x00000001); + internalGetMutableAttr().clear(); return this; } /** * map<string, .tensorflow.AttrValue> attr = 1; */ - public Builder removeAttr( java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } - internalGetMutableAttr().getMutableMap() + internalGetMutableAttr().ensureBuilderMap() .remove(key); return this; } @@ -709,8 +683,9 @@ public Builder removeAttr( */ @java.lang.Deprecated public java.util.Map - getMutableAttr() { - return internalGetMutableAttr().getMutableMap(); + getMutableAttr() { + bitField0_ |= 0x00000001; + return internalGetMutableAttr().ensureMessageMap(); } /** * map<string, .tensorflow.AttrValue> attr = 1; @@ -719,37 +694,45 @@ public Builder putAttr( java.lang.String key, org.tensorflow.proto.AttrValue value) { if (key == null) { throw new NullPointerException("map key"); } - if (value == null) { - throw new NullPointerException("map value"); -} - - internalGetMutableAttr().getMutableMap() + if (value == null) { throw new NullPointerException("map value"); } + internalGetMutableAttr().ensureBuilderMap() .put(key, value); + bitField0_ |= 0x00000001; return this; } /** * map<string, .tensorflow.AttrValue> attr = 1; */ - public Builder putAllAttr( java.util.Map values) { - internalGetMutableAttr().getMutableMap() + for (java.util.Map.Entry e : values.entrySet()) { + if (e.getKey() == null || e.getValue() == null) { + throw new NullPointerException(); + } + } + internalGetMutableAttr().ensureBuilderMap() .putAll(values); + bitField0_ |= 0x00000001; return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + /** + * map<string, .tensorflow.AttrValue> attr = 1; + */ + public org.tensorflow.proto.AttrValue.Builder putAttrBuilderIfAbsent( + java.lang.String key) { + java.util.Map builderMap = internalGetMutableAttr().ensureBuilderMap(); + org.tensorflow.proto.AttrValueOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.AttrValue.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.AttrValue) { + entry = ((org.tensorflow.proto.AttrValue) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.AttrValue.Builder) entry; } - // @@protoc_insertion_point(builder_scope:tensorflow.FunctionDef.ArgAttrs) } @@ -801,6 +784,7 @@ public org.tensorflow.proto.FunctionDef.ArgAttrs getDefaultInstanceForType() { } + private int bitField0_; public static final int SIGNATURE_FIELD_NUMBER = 1; private org.tensorflow.proto.OpDef signature_; /** @@ -814,7 +798,7 @@ public org.tensorflow.proto.FunctionDef.ArgAttrs getDefaultInstanceForType() { */ @java.lang.Override public boolean hasSignature() { - return signature_ != null; + return ((bitField0_ & 0x00000001) != 0); } /** *
    @@ -839,7 +823,7 @@ public org.tensorflow.proto.OpDef getSignature() {
        */
       @java.lang.Override
       public org.tensorflow.proto.OpDefOrBuilder getSignatureOrBuilder() {
    -    return getSignature();
    +    return signature_ == null ? org.tensorflow.proto.OpDef.getDefaultInstance() : signature_;
       }
     
       public static final int ATTR_FIELD_NUMBER = 5;
    @@ -854,6 +838,7 @@ private static final class AttrDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.MESSAGE,
                     org.tensorflow.proto.AttrValue.getDefaultInstance());
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.String, org.tensorflow.proto.AttrValue> attr_;
       private com.google.protobuf.MapField
    @@ -864,7 +849,6 @@ private static final class AttrDefaultEntryHolder {
         }
         return attr_;
       }
    -
       public int getAttrCount() {
         return internalGetAttr().getMap().size();
       }
    @@ -875,7 +859,6 @@ public int getAttrCount() {
        *
        * map<string, .tensorflow.AttrValue> attr = 5;
        */
    -
       @java.lang.Override
       public boolean containsAttr(
           java.lang.String key) {
    @@ -898,7 +881,6 @@ public java.util.Map getAttr()
        * map<string, .tensorflow.AttrValue> attr = 5;
        */
       @java.lang.Override
    -
       public java.util.Map getAttrMap() {
         return internalGetAttr().getMap();
       }
    @@ -910,10 +892,11 @@ public java.util.Map getAttrMa
        * map<string, .tensorflow.AttrValue> attr = 5;
        */
       @java.lang.Override
    -
    -  public org.tensorflow.proto.AttrValue getAttrOrDefault(
    +  public /* nullable */
    +org.tensorflow.proto.AttrValue getAttrOrDefault(
           java.lang.String key,
    -      org.tensorflow.proto.AttrValue defaultValue) {
    +      /* nullable */
    +org.tensorflow.proto.AttrValue defaultValue) {
         if (key == null) { throw new NullPointerException("map key"); }
         java.util.Map map =
             internalGetAttr().getMap();
    @@ -927,7 +910,6 @@ public org.tensorflow.proto.AttrValue getAttrOrDefault(
        * map<string, .tensorflow.AttrValue> attr = 5;
        */
       @java.lang.Override
    -
       public org.tensorflow.proto.AttrValue getAttrOrThrow(
           java.lang.String key) {
         if (key == null) { throw new NullPointerException("map key"); }
    @@ -951,6 +933,7 @@ private static final class ArgAttrDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.MESSAGE,
                     org.tensorflow.proto.FunctionDef.ArgAttrs.getDefaultInstance());
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.Integer, org.tensorflow.proto.FunctionDef.ArgAttrs> argAttr_;
       private com.google.protobuf.MapField
    @@ -961,18 +944,16 @@ private static final class ArgAttrDefaultEntryHolder {
         }
         return argAttr_;
       }
    -
       public int getArgAttrCount() {
         return internalGetArgAttr().getMap().size();
       }
       /**
        * map<uint32, .tensorflow.FunctionDef.ArgAttrs> arg_attr = 7;
        */
    -
       @java.lang.Override
       public boolean containsArgAttr(
           int key) {
    -    
    +
         return internalGetArgAttr().getMap().containsKey(key);
       }
       /**
    @@ -987,7 +968,6 @@ public java.util.Mapmap<uint32, .tensorflow.FunctionDef.ArgAttrs> arg_attr = 7;
        */
       @java.lang.Override
    -
       public java.util.Map getArgAttrMap() {
         return internalGetArgAttr().getMap();
       }
    @@ -995,11 +975,12 @@ public java.util.Mapmap<uint32, .tensorflow.FunctionDef.ArgAttrs> arg_attr = 7;
        */
       @java.lang.Override
    -
    -  public org.tensorflow.proto.FunctionDef.ArgAttrs getArgAttrOrDefault(
    +  public /* nullable */
    +org.tensorflow.proto.FunctionDef.ArgAttrs getArgAttrOrDefault(
           int key,
    -      org.tensorflow.proto.FunctionDef.ArgAttrs defaultValue) {
    -    
    +      /* nullable */
    +org.tensorflow.proto.FunctionDef.ArgAttrs defaultValue) {
    +
         java.util.Map map =
             internalGetArgAttr().getMap();
         return map.containsKey(key) ? map.get(key) : defaultValue;
    @@ -1008,10 +989,9 @@ public org.tensorflow.proto.FunctionDef.ArgAttrs getArgAttrOrDefault(
        * map<uint32, .tensorflow.FunctionDef.ArgAttrs> arg_attr = 7;
        */
       @java.lang.Override
    -
       public org.tensorflow.proto.FunctionDef.ArgAttrs getArgAttrOrThrow(
           int key) {
    -    
    +
         java.util.Map map =
             internalGetArgAttr().getMap();
         if (!map.containsKey(key)) {
    @@ -1032,6 +1012,7 @@ private static final class ResourceArgUniqueIdDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.UINT32,
                     0);
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.Integer, java.lang.Integer> resourceArgUniqueId_;
       private com.google.protobuf.MapField
    @@ -1042,7 +1023,6 @@ private static final class ResourceArgUniqueIdDefaultEntryHolder {
         }
         return resourceArgUniqueId_;
       }
    -
       public int getResourceArgUniqueIdCount() {
         return internalGetResourceArgUniqueId().getMap().size();
       }
    @@ -1051,19 +1031,20 @@ public int getResourceArgUniqueIdCount() {
        * Unique IDs for each resource argument, used to track aliasing resources. If
        * Argument A and Argument B alias each other, then
        * resource_arg_unique_ids[A.index] == resource_arg_unique_ids[B.index].
    +   *
        * If this field is empty, none of the arguments could alias; otherwise, every
        * resource argument should have an entry in this field.
    +   *
        * When instantiated, the unique IDs will be attached to the _Arg nodes'
        * "_resource_arg_unique_id" attribute.
        * 
    * * map<uint32, uint32> resource_arg_unique_id = 8; */ - @java.lang.Override public boolean containsResourceArgUniqueId( int key) { - + return internalGetResourceArgUniqueId().getMap().containsKey(key); } /** @@ -1079,8 +1060,10 @@ public java.util.Map getResourceArgUniqueI * Unique IDs for each resource argument, used to track aliasing resources. If * Argument A and Argument B alias each other, then * resource_arg_unique_ids[A.index] == resource_arg_unique_ids[B.index]. + * * If this field is empty, none of the arguments could alias; otherwise, every * resource argument should have an entry in this field. + * * When instantiated, the unique IDs will be attached to the _Arg nodes' * "_resource_arg_unique_id" attribute. *
    @@ -1088,7 +1071,6 @@ public java.util.Map getResourceArgUniqueI * map<uint32, uint32> resource_arg_unique_id = 8; */ @java.lang.Override - public java.util.Map getResourceArgUniqueIdMap() { return internalGetResourceArgUniqueId().getMap(); } @@ -1097,8 +1079,10 @@ public java.util.Map getResourceArgUniqueI * Unique IDs for each resource argument, used to track aliasing resources. If * Argument A and Argument B alias each other, then * resource_arg_unique_ids[A.index] == resource_arg_unique_ids[B.index]. + * * If this field is empty, none of the arguments could alias; otherwise, every * resource argument should have an entry in this field. + * * When instantiated, the unique IDs will be attached to the _Arg nodes' * "_resource_arg_unique_id" attribute. *
    @@ -1106,11 +1090,10 @@ public java.util.Map getResourceArgUniqueI * map<uint32, uint32> resource_arg_unique_id = 8; */ @java.lang.Override - public int getResourceArgUniqueIdOrDefault( int key, int defaultValue) { - + java.util.Map map = internalGetResourceArgUniqueId().getMap(); return map.containsKey(key) ? map.get(key) : defaultValue; @@ -1120,8 +1103,10 @@ public int getResourceArgUniqueIdOrDefault( * Unique IDs for each resource argument, used to track aliasing resources. If * Argument A and Argument B alias each other, then * resource_arg_unique_ids[A.index] == resource_arg_unique_ids[B.index]. + * * If this field is empty, none of the arguments could alias; otherwise, every * resource argument should have an entry in this field. + * * When instantiated, the unique IDs will be attached to the _Arg nodes' * "_resource_arg_unique_id" attribute. *
    @@ -1129,10 +1114,9 @@ public int getResourceArgUniqueIdOrDefault( * map<uint32, uint32> resource_arg_unique_id = 8; */ @java.lang.Override - public int getResourceArgUniqueIdOrThrow( int key) { - + java.util.Map map = internalGetResourceArgUniqueId().getMap(); if (!map.containsKey(key)) { @@ -1142,6 +1126,7 @@ public int getResourceArgUniqueIdOrThrow( } public static final int NODE_DEF_FIELD_NUMBER = 3; + @SuppressWarnings("serial") private java.util.List nodeDef_; /** *
    @@ -1223,6 +1208,7 @@ private static final class RetDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.STRING,
                     "");
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.String, java.lang.String> ret_;
       private com.google.protobuf.MapField
    @@ -1233,7 +1219,6 @@ private static final class RetDefaultEntryHolder {
         }
         return ret_;
       }
    -
       public int getRetCount() {
         return internalGetRet().getMap().size();
       }
    @@ -1245,7 +1230,6 @@ public int getRetCount() {
        *
        * map<string, string> ret = 4;
        */
    -
       @java.lang.Override
       public boolean containsRet(
           java.lang.String key) {
    @@ -1269,7 +1253,6 @@ public java.util.Map getRet() {
        * map<string, string> ret = 4;
        */
       @java.lang.Override
    -
       public java.util.Map getRetMap() {
         return internalGetRet().getMap();
       }
    @@ -1282,10 +1265,11 @@ public java.util.Map getRetMap() {
        * map<string, string> ret = 4;
        */
       @java.lang.Override
    -
    -  public java.lang.String getRetOrDefault(
    +  public /* nullable */
    +java.lang.String getRetOrDefault(
           java.lang.String key,
    -      java.lang.String defaultValue) {
    +      /* nullable */
    +java.lang.String defaultValue) {
         if (key == null) { throw new NullPointerException("map key"); }
         java.util.Map map =
             internalGetRet().getMap();
    @@ -1300,7 +1284,6 @@ public java.lang.String getRetOrDefault(
        * map<string, string> ret = 4;
        */
       @java.lang.Override
    -
       public java.lang.String getRetOrThrow(
           java.lang.String key) {
         if (key == null) { throw new NullPointerException("map key"); }
    @@ -1324,6 +1307,7 @@ private static final class ControlRetDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.STRING,
                     "");
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.String, java.lang.String> controlRet_;
       private com.google.protobuf.MapField
    @@ -1334,7 +1318,6 @@ private static final class ControlRetDefaultEntryHolder {
         }
         return controlRet_;
       }
    -
       public int getControlRetCount() {
         return internalGetControlRet().getMap().size();
       }
    @@ -1346,7 +1329,6 @@ public int getControlRetCount() {
        *
        * map<string, string> control_ret = 6;
        */
    -
       @java.lang.Override
       public boolean containsControlRet(
           java.lang.String key) {
    @@ -1370,7 +1352,6 @@ public java.util.Map getControlRet() {
        * map<string, string> control_ret = 6;
        */
       @java.lang.Override
    -
       public java.util.Map getControlRetMap() {
         return internalGetControlRet().getMap();
       }
    @@ -1383,10 +1364,11 @@ public java.util.Map getControlRetMap() {
        * map<string, string> control_ret = 6;
        */
       @java.lang.Override
    -
    -  public java.lang.String getControlRetOrDefault(
    +  public /* nullable */
    +java.lang.String getControlRetOrDefault(
           java.lang.String key,
    -      java.lang.String defaultValue) {
    +      /* nullable */
    +java.lang.String defaultValue) {
         if (key == null) { throw new NullPointerException("map key"); }
         java.util.Map map =
             internalGetControlRet().getMap();
    @@ -1401,7 +1383,6 @@ public java.lang.String getControlRetOrDefault(
        * map<string, string> control_ret = 6;
        */
       @java.lang.Override
    -
       public java.lang.String getControlRetOrThrow(
           java.lang.String key) {
         if (key == null) { throw new NullPointerException("map key"); }
    @@ -1427,37 +1408,37 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (signature_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(1, getSignature());
         }
         for (int i = 0; i < nodeDef_.size(); i++) {
           output.writeMessage(3, nodeDef_.get(i));
         }
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeStringMapTo(
             output,
             internalGetRet(),
             RetDefaultEntryHolder.defaultEntry,
             4);
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeStringMapTo(
             output,
             internalGetAttr(),
             AttrDefaultEntryHolder.defaultEntry,
             5);
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeStringMapTo(
             output,
             internalGetControlRet(),
             ControlRetDefaultEntryHolder.defaultEntry,
             6);
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeIntegerMapTo(
             output,
             internalGetArgAttr(),
             ArgAttrDefaultEntryHolder.defaultEntry,
             7);
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeIntegerMapTo(
             output,
             internalGetResourceArgUniqueId(),
    @@ -1472,7 +1453,7 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (signature_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(1, getSignature());
         }
    @@ -1640,39 +1621,41 @@ public static org.tensorflow.proto.FunctionDef parseFrom(
       }
       public static org.tensorflow.proto.FunctionDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.FunctionDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.FunctionDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.FunctionDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.FunctionDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.FunctionDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -1692,7 +1675,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -1701,14 +1684,15 @@ protected Builder newBuilderForType(
        * A function can be instantiated when the runtime can bind every attr
        * with a value. When a GraphDef has a call to a function, it must
        * have binding for every attr defined in the signature.
    +   *
        * TODO(zhifengc):
    -   *   * device spec, etc.
    +   * * device spec, etc.
        * 
    * * Protobuf type {@code tensorflow.FunctionDef} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.FunctionDef) org.tensorflow.proto.FunctionDefOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -1717,7 +1701,7 @@ public static final class Builder extends } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 5: @@ -1736,7 +1720,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMutableMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( int number) { switch (number) { case 5: @@ -1755,7 +1739,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.FunctionProtos.internal_static_tensorflow_FunctionDef_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -1764,21 +1748,28 @@ protected com.google.protobuf.MapField internalGetMutableMapField( // Construct using org.tensorflow.proto.FunctionDef.newBuilder() private Builder() { - + maybeForceBuilderInitialization(); } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); - + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage + .alwaysUseFieldBuilders) { + getSignatureFieldBuilder(); + getNodeDefFieldBuilder(); + } } @java.lang.Override public Builder clear() { super.clear(); - if (signatureBuilder_ == null) { - signature_ = null; - } else { - signature_ = null; + bitField0_ = 0; + signature_ = null; + if (signatureBuilder_ != null) { + signatureBuilder_.dispose(); signatureBuilder_ = null; } internalGetMutableAttr().clear(); @@ -1790,7 +1781,7 @@ public Builder clear() { nodeDef_ = null; nodeDefBuilder_.clear(); } - bitField0_ = (bitField0_ & ~0x00000008); + bitField0_ = (bitField0_ & ~0x00000010); internalGetMutableRet().clear(); internalGetMutableControlRet().clear(); return this; @@ -1819,67 +1810,54 @@ public org.tensorflow.proto.FunctionDef build() { @java.lang.Override public org.tensorflow.proto.FunctionDef buildPartial() { org.tensorflow.proto.FunctionDef result = new org.tensorflow.proto.FunctionDef(this); - int from_bitField0_ = bitField0_; - if (signatureBuilder_ == null) { - result.signature_ = signature_; - } else { - result.signature_ = signatureBuilder_.build(); - } - result.attr_ = internalGetAttr(); - result.attr_.makeImmutable(); - result.argAttr_ = internalGetArgAttr(); - result.argAttr_.makeImmutable(); - result.resourceArgUniqueId_ = internalGetResourceArgUniqueId(); - result.resourceArgUniqueId_.makeImmutable(); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(org.tensorflow.proto.FunctionDef result) { if (nodeDefBuilder_ == null) { - if (((bitField0_ & 0x00000008) != 0)) { + if (((bitField0_ & 0x00000010) != 0)) { nodeDef_ = java.util.Collections.unmodifiableList(nodeDef_); - bitField0_ = (bitField0_ & ~0x00000008); + bitField0_ = (bitField0_ & ~0x00000010); } result.nodeDef_ = nodeDef_; } else { result.nodeDef_ = nodeDefBuilder_.build(); } - result.ret_ = internalGetRet(); - result.ret_.makeImmutable(); - result.controlRet_ = internalGetControlRet(); - result.controlRet_.makeImmutable(); - onBuilt(); - return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.FunctionDef result) { + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.signature_ = signatureBuilder_ == null + ? signature_ + : signatureBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.attr_ = internalGetAttr().build(AttrDefaultEntryHolder.defaultEntry); + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.argAttr_ = internalGetArgAttr().build(ArgAttrDefaultEntryHolder.defaultEntry); + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.resourceArgUniqueId_ = internalGetResourceArgUniqueId(); + result.resourceArgUniqueId_.makeImmutable(); + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.ret_ = internalGetRet(); + result.ret_.makeImmutable(); + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.controlRet_ = internalGetControlRet(); + result.controlRet_.makeImmutable(); + } + result.bitField0_ |= to_bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.FunctionDef) { @@ -1897,15 +1875,18 @@ public Builder mergeFrom(org.tensorflow.proto.FunctionDef other) { } internalGetMutableAttr().mergeFrom( other.internalGetAttr()); + bitField0_ |= 0x00000002; internalGetMutableArgAttr().mergeFrom( other.internalGetArgAttr()); + bitField0_ |= 0x00000004; internalGetMutableResourceArgUniqueId().mergeFrom( other.internalGetResourceArgUniqueId()); + bitField0_ |= 0x00000008; if (nodeDefBuilder_ == null) { if (!other.nodeDef_.isEmpty()) { if (nodeDef_.isEmpty()) { nodeDef_ = other.nodeDef_; - bitField0_ = (bitField0_ & ~0x00000008); + bitField0_ = (bitField0_ & ~0x00000010); } else { ensureNodeDefIsMutable(); nodeDef_.addAll(other.nodeDef_); @@ -1918,9 +1899,9 @@ public Builder mergeFrom(org.tensorflow.proto.FunctionDef other) { nodeDefBuilder_.dispose(); nodeDefBuilder_ = null; nodeDef_ = other.nodeDef_; - bitField0_ = (bitField0_ & ~0x00000008); + bitField0_ = (bitField0_ & ~0x00000010); nodeDefBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getNodeDefFieldBuilder() : null; } else { nodeDefBuilder_.addAllMessages(other.nodeDef_); @@ -1929,8 +1910,10 @@ public Builder mergeFrom(org.tensorflow.proto.FunctionDef other) { } internalGetMutableRet().mergeFrom( other.internalGetRet()); + bitField0_ |= 0x00000020; internalGetMutableControlRet().mergeFrom( other.internalGetControlRet()); + bitField0_ |= 0x00000040; this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -1961,7 +1944,7 @@ public Builder mergeFrom( input.readMessage( getSignatureFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000001; break; } // case 10 case 26: { @@ -1983,14 +1966,16 @@ public Builder mergeFrom( RetDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); internalGetMutableRet().getMutableMap().put( ret__.getKey(), ret__.getValue()); + bitField0_ |= 0x00000020; break; } // case 34 case 42: { com.google.protobuf.MapEntry attr__ = input.readMessage( AttrDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); - internalGetMutableAttr().getMutableMap().put( + internalGetMutableAttr().ensureBuilderMap().put( attr__.getKey(), attr__.getValue()); + bitField0_ |= 0x00000002; break; } // case 42 case 50: { @@ -1999,14 +1984,16 @@ public Builder mergeFrom( ControlRetDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); internalGetMutableControlRet().getMutableMap().put( controlRet__.getKey(), controlRet__.getValue()); + bitField0_ |= 0x00000040; break; } // case 50 case 58: { com.google.protobuf.MapEntry argAttr__ = input.readMessage( ArgAttrDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); - internalGetMutableArgAttr().getMutableMap().put( + internalGetMutableArgAttr().ensureBuilderMap().put( argAttr__.getKey(), argAttr__.getValue()); + bitField0_ |= 0x00000004; break; } // case 58 case 66: { @@ -2015,6 +2002,7 @@ public Builder mergeFrom( ResourceArgUniqueIdDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); internalGetMutableResourceArgUniqueId().getMutableMap().put( resourceArgUniqueId__.getKey(), resourceArgUniqueId__.getValue()); + bitField0_ |= 0x00000008; break; } // case 66 default: { @@ -2035,7 +2023,7 @@ public Builder mergeFrom( private int bitField0_; private org.tensorflow.proto.OpDef signature_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.OpDef, org.tensorflow.proto.OpDef.Builder, org.tensorflow.proto.OpDefOrBuilder> signatureBuilder_; /** *
    @@ -2047,7 +2035,7 @@ public Builder mergeFrom(
          * @return Whether the signature field is set.
          */
         public boolean hasSignature() {
    -      return signatureBuilder_ != null || signature_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -2079,11 +2067,11 @@ public Builder setSignature(org.tensorflow.proto.OpDef value) {
               throw new NullPointerException();
             }
             signature_ = value;
    -        onChanged();
           } else {
             signatureBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000001;
    +      onChanged();
           return this;
         }
         /**
    @@ -2098,11 +2086,11 @@ public Builder setSignature(
             org.tensorflow.proto.OpDef.Builder builderForValue) {
           if (signatureBuilder_ == null) {
             signature_ = builderForValue.build();
    -        onChanged();
           } else {
             signatureBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000001;
    +      onChanged();
           return this;
         }
         /**
    @@ -2115,17 +2103,20 @@ public Builder setSignature(
          */
         public Builder mergeSignature(org.tensorflow.proto.OpDef value) {
           if (signatureBuilder_ == null) {
    -        if (signature_ != null) {
    -          signature_ =
    -            org.tensorflow.proto.OpDef.newBuilder(signature_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000001) != 0) &&
    +          signature_ != null &&
    +          signature_ != org.tensorflow.proto.OpDef.getDefaultInstance()) {
    +          getSignatureBuilder().mergeFrom(value);
             } else {
               signature_ = value;
             }
    -        onChanged();
           } else {
             signatureBuilder_.mergeFrom(value);
           }
    -
    +      if (signature_ != null) {
    +        bitField0_ |= 0x00000001;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -2137,14 +2128,13 @@ public Builder mergeSignature(org.tensorflow.proto.OpDef value) {
          * .tensorflow.OpDef signature = 1;
          */
         public Builder clearSignature() {
    -      if (signatureBuilder_ == null) {
    -        signature_ = null;
    -        onChanged();
    -      } else {
    -        signature_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000001);
    +      signature_ = null;
    +      if (signatureBuilder_ != null) {
    +        signatureBuilder_.dispose();
             signatureBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -2156,7 +2146,7 @@ public Builder clearSignature() {
          * .tensorflow.OpDef signature = 1;
          */
         public org.tensorflow.proto.OpDef.Builder getSignatureBuilder() {
    -      
    +      bitField0_ |= 0x00000001;
           onChanged();
           return getSignatureFieldBuilder().getBuilder();
         }
    @@ -2184,11 +2174,11 @@ public org.tensorflow.proto.OpDefOrBuilder getSignatureOrBuilder() {
          *
          * .tensorflow.OpDef signature = 1;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.OpDef, org.tensorflow.proto.OpDef.Builder, org.tensorflow.proto.OpDefOrBuilder> 
             getSignatureFieldBuilder() {
           if (signatureBuilder_ == null) {
    -        signatureBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        signatureBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.OpDef, org.tensorflow.proto.OpDef.Builder, org.tensorflow.proto.OpDefOrBuilder>(
                     getSignature(),
                     getParentForChildren(),
    @@ -2198,31 +2188,40 @@ public org.tensorflow.proto.OpDefOrBuilder getSignatureOrBuilder() {
           return signatureBuilder_;
         }
     
    -    private com.google.protobuf.MapField<
    -        java.lang.String, org.tensorflow.proto.AttrValue> attr_;
    -    private com.google.protobuf.MapField
    -    internalGetAttr() {
    +    private static final class AttrConverter implements com.google.protobuf.MapFieldBuilder.Converter {
    +      @java.lang.Override
    +      public org.tensorflow.proto.AttrValue build(org.tensorflow.proto.AttrValueOrBuilder val) {
    +        if (val instanceof org.tensorflow.proto.AttrValue) { return (org.tensorflow.proto.AttrValue) val; }
    +        return ((org.tensorflow.proto.AttrValue.Builder) val).build();
    +      }
    +
    +      @java.lang.Override
    +      public com.google.protobuf.MapEntry defaultEntry() {
    +        return AttrDefaultEntryHolder.defaultEntry;
    +      }
    +    };
    +    private static final AttrConverter attrConverter = new AttrConverter();
    +
    +    private com.google.protobuf.MapFieldBuilder<
    +        java.lang.String, org.tensorflow.proto.AttrValueOrBuilder, org.tensorflow.proto.AttrValue, org.tensorflow.proto.AttrValue.Builder> attr_;
    +    private com.google.protobuf.MapFieldBuilder
    +        internalGetAttr() {
           if (attr_ == null) {
    -        return com.google.protobuf.MapField.emptyMapField(
    -            AttrDefaultEntryHolder.defaultEntry);
    +        return new com.google.protobuf.MapFieldBuilder<>(attrConverter);
           }
           return attr_;
         }
    -    private com.google.protobuf.MapField
    -    internalGetMutableAttr() {
    -      onChanged();;
    +    private com.google.protobuf.MapFieldBuilder
    +        internalGetMutableAttr() {
           if (attr_ == null) {
    -        attr_ = com.google.protobuf.MapField.newMapField(
    -            AttrDefaultEntryHolder.defaultEntry);
    -      }
    -      if (!attr_.isMutable()) {
    -        attr_ = attr_.copy();
    +        attr_ = new com.google.protobuf.MapFieldBuilder<>(attrConverter);
           }
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return attr_;
         }
    -
         public int getAttrCount() {
    -      return internalGetAttr().getMap().size();
    +      return internalGetAttr().ensureBuilderMap().size();
         }
         /**
          * 
    @@ -2231,12 +2230,11 @@ public int getAttrCount() {
          *
          * map<string, .tensorflow.AttrValue> attr = 5;
          */
    -
         @java.lang.Override
         public boolean containsAttr(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      return internalGetAttr().getMap().containsKey(key);
    +      return internalGetAttr().ensureBuilderMap().containsKey(key);
         }
         /**
          * Use {@link #getAttrMap()} instead.
    @@ -2254,9 +2252,8 @@ public java.util.Map getAttr()
          * map<string, .tensorflow.AttrValue> attr = 5;
          */
         @java.lang.Override
    -
         public java.util.Map getAttrMap() {
    -      return internalGetAttr().getMap();
    +      return internalGetAttr().getImmutableMap();
         }
         /**
          * 
    @@ -2266,14 +2263,14 @@ public java.util.Map getAttrMa
          * map<string, .tensorflow.AttrValue> attr = 5;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.AttrValue getAttrOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.AttrValue getAttrOrDefault(
             java.lang.String key,
    -        org.tensorflow.proto.AttrValue defaultValue) {
    +        /* nullable */
    +org.tensorflow.proto.AttrValue defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetAttr().getMap();
    -      return map.containsKey(key) ? map.get(key) : defaultValue;
    +      java.util.Map map = internalGetMutableAttr().ensureBuilderMap();
    +      return map.containsKey(key) ? attrConverter.build(map.get(key)) : defaultValue;
         }
         /**
          * 
    @@ -2283,21 +2280,18 @@ public org.tensorflow.proto.AttrValue getAttrOrDefault(
          * map<string, .tensorflow.AttrValue> attr = 5;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.AttrValue getAttrOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetAttr().getMap();
    +      java.util.Map map = internalGetMutableAttr().ensureBuilderMap();
           if (!map.containsKey(key)) {
             throw new java.lang.IllegalArgumentException();
           }
    -      return map.get(key);
    +      return attrConverter.build(map.get(key));
         }
    -
         public Builder clearAttr() {
    -      internalGetMutableAttr().getMutableMap()
    -          .clear();
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      internalGetMutableAttr().clear();
           return this;
         }
         /**
    @@ -2307,11 +2301,10 @@ public Builder clearAttr() {
          *
          * map<string, .tensorflow.AttrValue> attr = 5;
          */
    -
         public Builder removeAttr(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      internalGetMutableAttr().getMutableMap()
    +      internalGetMutableAttr().ensureBuilderMap()
               .remove(key);
           return this;
         }
    @@ -2320,8 +2313,9 @@ public Builder removeAttr(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableAttr() {
    -      return internalGetMutableAttr().getMutableMap();
    +        getMutableAttr() {
    +      bitField0_ |= 0x00000002;
    +      return internalGetMutableAttr().ensureMessageMap();
         }
         /**
          * 
    @@ -2334,12 +2328,10 @@ public Builder putAttr(
             java.lang.String key,
             org.tensorflow.proto.AttrValue value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    -      internalGetMutableAttr().getMutableMap()
    +      if (value == null) { throw new NullPointerException("map value"); }
    +      internalGetMutableAttr().ensureBuilderMap()
               .put(key, value);
    +      bitField0_ |= 0x00000002;
           return this;
         }
         /**
    @@ -2349,49 +2341,83 @@ public Builder putAttr(
          *
          * map<string, .tensorflow.AttrValue> attr = 5;
          */
    -
         public Builder putAllAttr(
             java.util.Map values) {
    -      internalGetMutableAttr().getMutableMap()
    +      for (java.util.Map.Entry e : values.entrySet()) {
    +        if (e.getKey() == null || e.getValue() == null) {
    +          throw new NullPointerException();
    +        }
    +      }
    +      internalGetMutableAttr().ensureBuilderMap()
               .putAll(values);
    +      bitField0_ |= 0x00000002;
           return this;
         }
    +    /**
    +     * 
    +     * Attributes specific to this function definition.
    +     * 
    + * + * map<string, .tensorflow.AttrValue> attr = 5; + */ + public org.tensorflow.proto.AttrValue.Builder putAttrBuilderIfAbsent( + java.lang.String key) { + java.util.Map builderMap = internalGetMutableAttr().ensureBuilderMap(); + org.tensorflow.proto.AttrValueOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.AttrValue.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.AttrValue) { + entry = ((org.tensorflow.proto.AttrValue) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.AttrValue.Builder) entry; + } - private com.google.protobuf.MapField< - java.lang.Integer, org.tensorflow.proto.FunctionDef.ArgAttrs> argAttr_; - private com.google.protobuf.MapField - internalGetArgAttr() { + private static final class ArgAttrConverter implements com.google.protobuf.MapFieldBuilder.Converter { + @java.lang.Override + public org.tensorflow.proto.FunctionDef.ArgAttrs build(org.tensorflow.proto.FunctionDef.ArgAttrsOrBuilder val) { + if (val instanceof org.tensorflow.proto.FunctionDef.ArgAttrs) { return (org.tensorflow.proto.FunctionDef.ArgAttrs) val; } + return ((org.tensorflow.proto.FunctionDef.ArgAttrs.Builder) val).build(); + } + + @java.lang.Override + public com.google.protobuf.MapEntry defaultEntry() { + return ArgAttrDefaultEntryHolder.defaultEntry; + } + }; + private static final ArgAttrConverter argAttrConverter = new ArgAttrConverter(); + + private com.google.protobuf.MapFieldBuilder< + java.lang.Integer, org.tensorflow.proto.FunctionDef.ArgAttrsOrBuilder, org.tensorflow.proto.FunctionDef.ArgAttrs, org.tensorflow.proto.FunctionDef.ArgAttrs.Builder> argAttr_; + private com.google.protobuf.MapFieldBuilder + internalGetArgAttr() { if (argAttr_ == null) { - return com.google.protobuf.MapField.emptyMapField( - ArgAttrDefaultEntryHolder.defaultEntry); + return new com.google.protobuf.MapFieldBuilder<>(argAttrConverter); } return argAttr_; } - private com.google.protobuf.MapField - internalGetMutableArgAttr() { - onChanged();; + private com.google.protobuf.MapFieldBuilder + internalGetMutableArgAttr() { if (argAttr_ == null) { - argAttr_ = com.google.protobuf.MapField.newMapField( - ArgAttrDefaultEntryHolder.defaultEntry); - } - if (!argAttr_.isMutable()) { - argAttr_ = argAttr_.copy(); + argAttr_ = new com.google.protobuf.MapFieldBuilder<>(argAttrConverter); } + bitField0_ |= 0x00000004; + onChanged(); return argAttr_; } - public int getArgAttrCount() { - return internalGetArgAttr().getMap().size(); + return internalGetArgAttr().ensureBuilderMap().size(); } /** * map<uint32, .tensorflow.FunctionDef.ArgAttrs> arg_attr = 7; */ - @java.lang.Override public boolean containsArgAttr( int key) { - - return internalGetArgAttr().getMap().containsKey(key); + + return internalGetArgAttr().ensureBuilderMap().containsKey(key); } /** * Use {@link #getArgAttrMap()} instead. @@ -2405,52 +2431,47 @@ public java.util.Mapmap<uint32, .tensorflow.FunctionDef.ArgAttrs> arg_attr = 7; */ @java.lang.Override - public java.util.Map getArgAttrMap() { - return internalGetArgAttr().getMap(); + return internalGetArgAttr().getImmutableMap(); } /** * map<uint32, .tensorflow.FunctionDef.ArgAttrs> arg_attr = 7; */ @java.lang.Override - - public org.tensorflow.proto.FunctionDef.ArgAttrs getArgAttrOrDefault( + public /* nullable */ +org.tensorflow.proto.FunctionDef.ArgAttrs getArgAttrOrDefault( int key, - org.tensorflow.proto.FunctionDef.ArgAttrs defaultValue) { - - java.util.Map map = - internalGetArgAttr().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; + /* nullable */ +org.tensorflow.proto.FunctionDef.ArgAttrs defaultValue) { + + java.util.Map map = internalGetMutableArgAttr().ensureBuilderMap(); + return map.containsKey(key) ? argAttrConverter.build(map.get(key)) : defaultValue; } /** * map<uint32, .tensorflow.FunctionDef.ArgAttrs> arg_attr = 7; */ @java.lang.Override - public org.tensorflow.proto.FunctionDef.ArgAttrs getArgAttrOrThrow( int key) { - - java.util.Map map = - internalGetArgAttr().getMap(); + + java.util.Map map = internalGetMutableArgAttr().ensureBuilderMap(); if (!map.containsKey(key)) { throw new java.lang.IllegalArgumentException(); } - return map.get(key); + return argAttrConverter.build(map.get(key)); } - public Builder clearArgAttr() { - internalGetMutableArgAttr().getMutableMap() - .clear(); + bitField0_ = (bitField0_ & ~0x00000004); + internalGetMutableArgAttr().clear(); return this; } /** * map<uint32, .tensorflow.FunctionDef.ArgAttrs> arg_attr = 7; */ - public Builder removeArgAttr( int key) { - - internalGetMutableArgAttr().getMutableMap() + + internalGetMutableArgAttr().ensureBuilderMap() .remove(key); return this; } @@ -2459,8 +2480,9 @@ public Builder removeArgAttr( */ @java.lang.Deprecated public java.util.Map - getMutableArgAttr() { - return internalGetMutableArgAttr().getMutableMap(); + getMutableArgAttr() { + bitField0_ |= 0x00000004; + return internalGetMutableArgAttr().ensureMessageMap(); } /** * map<uint32, .tensorflow.FunctionDef.ArgAttrs> arg_attr = 7; @@ -2468,30 +2490,50 @@ public Builder removeArgAttr( public Builder putArgAttr( int key, org.tensorflow.proto.FunctionDef.ArgAttrs value) { - - if (value == null) { - throw new NullPointerException("map value"); -} - internalGetMutableArgAttr().getMutableMap() + if (value == null) { throw new NullPointerException("map value"); } + internalGetMutableArgAttr().ensureBuilderMap() .put(key, value); + bitField0_ |= 0x00000004; return this; } /** * map<uint32, .tensorflow.FunctionDef.ArgAttrs> arg_attr = 7; */ - public Builder putAllArgAttr( java.util.Map values) { - internalGetMutableArgAttr().getMutableMap() + for (java.util.Map.Entry e : values.entrySet()) { + if (e.getKey() == null || e.getValue() == null) { + throw new NullPointerException(); + } + } + internalGetMutableArgAttr().ensureBuilderMap() .putAll(values); + bitField0_ |= 0x00000004; return this; } + /** + * map<uint32, .tensorflow.FunctionDef.ArgAttrs> arg_attr = 7; + */ + public org.tensorflow.proto.FunctionDef.ArgAttrs.Builder putArgAttrBuilderIfAbsent( + int key) { + java.util.Map builderMap = internalGetMutableArgAttr().ensureBuilderMap(); + org.tensorflow.proto.FunctionDef.ArgAttrsOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.FunctionDef.ArgAttrs.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.FunctionDef.ArgAttrs) { + entry = ((org.tensorflow.proto.FunctionDef.ArgAttrs) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.FunctionDef.ArgAttrs.Builder) entry; + } private com.google.protobuf.MapField< java.lang.Integer, java.lang.Integer> resourceArgUniqueId_; private com.google.protobuf.MapField - internalGetResourceArgUniqueId() { + internalGetResourceArgUniqueId() { if (resourceArgUniqueId_ == null) { return com.google.protobuf.MapField.emptyMapField( ResourceArgUniqueIdDefaultEntryHolder.defaultEntry); @@ -2499,8 +2541,7 @@ public Builder putAllArgAttr( return resourceArgUniqueId_; } private com.google.protobuf.MapField - internalGetMutableResourceArgUniqueId() { - onChanged();; + internalGetMutableResourceArgUniqueId() { if (resourceArgUniqueId_ == null) { resourceArgUniqueId_ = com.google.protobuf.MapField.newMapField( ResourceArgUniqueIdDefaultEntryHolder.defaultEntry); @@ -2508,9 +2549,10 @@ public Builder putAllArgAttr( if (!resourceArgUniqueId_.isMutable()) { resourceArgUniqueId_ = resourceArgUniqueId_.copy(); } + bitField0_ |= 0x00000008; + onChanged(); return resourceArgUniqueId_; } - public int getResourceArgUniqueIdCount() { return internalGetResourceArgUniqueId().getMap().size(); } @@ -2519,19 +2561,20 @@ public int getResourceArgUniqueIdCount() { * Unique IDs for each resource argument, used to track aliasing resources. If * Argument A and Argument B alias each other, then * resource_arg_unique_ids[A.index] == resource_arg_unique_ids[B.index]. + * * If this field is empty, none of the arguments could alias; otherwise, every * resource argument should have an entry in this field. + * * When instantiated, the unique IDs will be attached to the _Arg nodes' * "_resource_arg_unique_id" attribute. *
    * * map<uint32, uint32> resource_arg_unique_id = 8; */ - @java.lang.Override public boolean containsResourceArgUniqueId( int key) { - + return internalGetResourceArgUniqueId().getMap().containsKey(key); } /** @@ -2547,8 +2590,10 @@ public java.util.Map getResourceArgUniqueI * Unique IDs for each resource argument, used to track aliasing resources. If * Argument A and Argument B alias each other, then * resource_arg_unique_ids[A.index] == resource_arg_unique_ids[B.index]. + * * If this field is empty, none of the arguments could alias; otherwise, every * resource argument should have an entry in this field. + * * When instantiated, the unique IDs will be attached to the _Arg nodes' * "_resource_arg_unique_id" attribute. *
    @@ -2556,7 +2601,6 @@ public java.util.Map getResourceArgUniqueI * map<uint32, uint32> resource_arg_unique_id = 8; */ @java.lang.Override - public java.util.Map getResourceArgUniqueIdMap() { return internalGetResourceArgUniqueId().getMap(); } @@ -2565,8 +2609,10 @@ public java.util.Map getResourceArgUniqueI * Unique IDs for each resource argument, used to track aliasing resources. If * Argument A and Argument B alias each other, then * resource_arg_unique_ids[A.index] == resource_arg_unique_ids[B.index]. + * * If this field is empty, none of the arguments could alias; otherwise, every * resource argument should have an entry in this field. + * * When instantiated, the unique IDs will be attached to the _Arg nodes' * "_resource_arg_unique_id" attribute. *
    @@ -2574,11 +2620,10 @@ public java.util.Map getResourceArgUniqueI * map<uint32, uint32> resource_arg_unique_id = 8; */ @java.lang.Override - public int getResourceArgUniqueIdOrDefault( int key, int defaultValue) { - + java.util.Map map = internalGetResourceArgUniqueId().getMap(); return map.containsKey(key) ? map.get(key) : defaultValue; @@ -2588,8 +2633,10 @@ public int getResourceArgUniqueIdOrDefault( * Unique IDs for each resource argument, used to track aliasing resources. If * Argument A and Argument B alias each other, then * resource_arg_unique_ids[A.index] == resource_arg_unique_ids[B.index]. + * * If this field is empty, none of the arguments could alias; otherwise, every * resource argument should have an entry in this field. + * * When instantiated, the unique IDs will be attached to the _Arg nodes' * "_resource_arg_unique_id" attribute. *
    @@ -2597,10 +2644,9 @@ public int getResourceArgUniqueIdOrDefault( * map<uint32, uint32> resource_arg_unique_id = 8; */ @java.lang.Override - public int getResourceArgUniqueIdOrThrow( int key) { - + java.util.Map map = internalGetResourceArgUniqueId().getMap(); if (!map.containsKey(key)) { @@ -2608,8 +2654,8 @@ public int getResourceArgUniqueIdOrThrow( } return map.get(key); } - public Builder clearResourceArgUniqueId() { + bitField0_ = (bitField0_ & ~0x00000008); internalGetMutableResourceArgUniqueId().getMutableMap() .clear(); return this; @@ -2619,18 +2665,19 @@ public Builder clearResourceArgUniqueId() { * Unique IDs for each resource argument, used to track aliasing resources. If * Argument A and Argument B alias each other, then * resource_arg_unique_ids[A.index] == resource_arg_unique_ids[B.index]. + * * If this field is empty, none of the arguments could alias; otherwise, every * resource argument should have an entry in this field. + * * When instantiated, the unique IDs will be attached to the _Arg nodes' * "_resource_arg_unique_id" attribute. *
    * * map<uint32, uint32> resource_arg_unique_id = 8; */ - public Builder removeResourceArgUniqueId( int key) { - + internalGetMutableResourceArgUniqueId().getMutableMap() .remove(key); return this; @@ -2640,7 +2687,8 @@ public Builder removeResourceArgUniqueId( */ @java.lang.Deprecated public java.util.Map - getMutableResourceArgUniqueId() { + getMutableResourceArgUniqueId() { + bitField0_ |= 0x00000008; return internalGetMutableResourceArgUniqueId().getMutableMap(); } /** @@ -2648,8 +2696,10 @@ public Builder removeResourceArgUniqueId( * Unique IDs for each resource argument, used to track aliasing resources. If * Argument A and Argument B alias each other, then * resource_arg_unique_ids[A.index] == resource_arg_unique_ids[B.index]. + * * If this field is empty, none of the arguments could alias; otherwise, every * resource argument should have an entry in this field. + * * When instantiated, the unique IDs will be attached to the _Arg nodes' * "_resource_arg_unique_id" attribute. *
    @@ -2659,10 +2709,11 @@ public Builder removeResourceArgUniqueId( public Builder putResourceArgUniqueId( int key, int value) { - - + + internalGetMutableResourceArgUniqueId().getMutableMap() .put(key, value); + bitField0_ |= 0x00000008; return this; } /** @@ -2670,32 +2721,34 @@ public Builder putResourceArgUniqueId( * Unique IDs for each resource argument, used to track aliasing resources. If * Argument A and Argument B alias each other, then * resource_arg_unique_ids[A.index] == resource_arg_unique_ids[B.index]. + * * If this field is empty, none of the arguments could alias; otherwise, every * resource argument should have an entry in this field. + * * When instantiated, the unique IDs will be attached to the _Arg nodes' * "_resource_arg_unique_id" attribute. *
    * * map<uint32, uint32> resource_arg_unique_id = 8; */ - public Builder putAllResourceArgUniqueId( java.util.Map values) { internalGetMutableResourceArgUniqueId().getMutableMap() .putAll(values); + bitField0_ |= 0x00000008; return this; } private java.util.List nodeDef_ = java.util.Collections.emptyList(); private void ensureNodeDefIsMutable() { - if (!((bitField0_ & 0x00000008) != 0)) { + if (!((bitField0_ & 0x00000010) != 0)) { nodeDef_ = new java.util.ArrayList(nodeDef_); - bitField0_ |= 0x00000008; + bitField0_ |= 0x00000010; } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.NodeDef, org.tensorflow.proto.NodeDef.Builder, org.tensorflow.proto.NodeDefOrBuilder> nodeDefBuilder_; /** @@ -2907,7 +2960,7 @@ public Builder addAllNodeDef( public Builder clearNodeDef() { if (nodeDefBuilder_ == null) { nodeDef_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000008); + bitField0_ = (bitField0_ & ~0x00000010); onChanged(); } else { nodeDefBuilder_.clear(); @@ -3019,14 +3072,14 @@ public org.tensorflow.proto.NodeDef.Builder addNodeDefBuilder( getNodeDefBuilderList() { return getNodeDefFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.NodeDef, org.tensorflow.proto.NodeDef.Builder, org.tensorflow.proto.NodeDefOrBuilder> getNodeDefFieldBuilder() { if (nodeDefBuilder_ == null) { - nodeDefBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + nodeDefBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.NodeDef, org.tensorflow.proto.NodeDef.Builder, org.tensorflow.proto.NodeDefOrBuilder>( nodeDef_, - ((bitField0_ & 0x00000008) != 0), + ((bitField0_ & 0x00000010) != 0), getParentForChildren(), isClean()); nodeDef_ = null; @@ -3037,7 +3090,7 @@ public org.tensorflow.proto.NodeDef.Builder addNodeDefBuilder( private com.google.protobuf.MapField< java.lang.String, java.lang.String> ret_; private com.google.protobuf.MapField - internalGetRet() { + internalGetRet() { if (ret_ == null) { return com.google.protobuf.MapField.emptyMapField( RetDefaultEntryHolder.defaultEntry); @@ -3045,8 +3098,7 @@ public org.tensorflow.proto.NodeDef.Builder addNodeDefBuilder( return ret_; } private com.google.protobuf.MapField - internalGetMutableRet() { - onChanged();; + internalGetMutableRet() { if (ret_ == null) { ret_ = com.google.protobuf.MapField.newMapField( RetDefaultEntryHolder.defaultEntry); @@ -3054,9 +3106,10 @@ public org.tensorflow.proto.NodeDef.Builder addNodeDefBuilder( if (!ret_.isMutable()) { ret_ = ret_.copy(); } + bitField0_ |= 0x00000020; + onChanged(); return ret_; } - public int getRetCount() { return internalGetRet().getMap().size(); } @@ -3068,7 +3121,6 @@ public int getRetCount() { * * map<string, string> ret = 4; */ - @java.lang.Override public boolean containsRet( java.lang.String key) { @@ -3092,7 +3144,6 @@ public java.util.Map getRet() { * map<string, string> ret = 4; */ @java.lang.Override - public java.util.Map getRetMap() { return internalGetRet().getMap(); } @@ -3105,10 +3156,11 @@ public java.util.Map getRetMap() { * map<string, string> ret = 4; */ @java.lang.Override - - public java.lang.String getRetOrDefault( + public /* nullable */ +java.lang.String getRetOrDefault( java.lang.String key, - java.lang.String defaultValue) { + /* nullable */ +java.lang.String defaultValue) { if (key == null) { throw new NullPointerException("map key"); } java.util.Map map = internalGetRet().getMap(); @@ -3123,7 +3175,6 @@ public java.lang.String getRetOrDefault( * map<string, string> ret = 4; */ @java.lang.Override - public java.lang.String getRetOrThrow( java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } @@ -3134,8 +3185,8 @@ public java.lang.String getRetOrThrow( } return map.get(key); } - public Builder clearRet() { + bitField0_ = (bitField0_ & ~0x00000020); internalGetMutableRet().getMutableMap() .clear(); return this; @@ -3148,7 +3199,6 @@ public Builder clearRet() { * * map<string, string> ret = 4; */ - public Builder removeRet( java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } @@ -3161,7 +3211,8 @@ public Builder removeRet( */ @java.lang.Deprecated public java.util.Map - getMutableRet() { + getMutableRet() { + bitField0_ |= 0x00000020; return internalGetMutableRet().getMutableMap(); } /** @@ -3176,12 +3227,10 @@ public Builder putRet( java.lang.String key, java.lang.String value) { if (key == null) { throw new NullPointerException("map key"); } - if (value == null) { - throw new NullPointerException("map value"); -} - + if (value == null) { throw new NullPointerException("map value"); } internalGetMutableRet().getMutableMap() .put(key, value); + bitField0_ |= 0x00000020; return this; } /** @@ -3192,18 +3241,18 @@ public Builder putRet( * * map<string, string> ret = 4; */ - public Builder putAllRet( java.util.Map values) { internalGetMutableRet().getMutableMap() .putAll(values); + bitField0_ |= 0x00000020; return this; } private com.google.protobuf.MapField< java.lang.String, java.lang.String> controlRet_; private com.google.protobuf.MapField - internalGetControlRet() { + internalGetControlRet() { if (controlRet_ == null) { return com.google.protobuf.MapField.emptyMapField( ControlRetDefaultEntryHolder.defaultEntry); @@ -3211,8 +3260,7 @@ public Builder putAllRet( return controlRet_; } private com.google.protobuf.MapField - internalGetMutableControlRet() { - onChanged();; + internalGetMutableControlRet() { if (controlRet_ == null) { controlRet_ = com.google.protobuf.MapField.newMapField( ControlRetDefaultEntryHolder.defaultEntry); @@ -3220,9 +3268,10 @@ public Builder putAllRet( if (!controlRet_.isMutable()) { controlRet_ = controlRet_.copy(); } + bitField0_ |= 0x00000040; + onChanged(); return controlRet_; } - public int getControlRetCount() { return internalGetControlRet().getMap().size(); } @@ -3234,7 +3283,6 @@ public int getControlRetCount() { * * map<string, string> control_ret = 6; */ - @java.lang.Override public boolean containsControlRet( java.lang.String key) { @@ -3258,7 +3306,6 @@ public java.util.Map getControlRet() { * map<string, string> control_ret = 6; */ @java.lang.Override - public java.util.Map getControlRetMap() { return internalGetControlRet().getMap(); } @@ -3271,10 +3318,11 @@ public java.util.Map getControlRetMap() { * map<string, string> control_ret = 6; */ @java.lang.Override - - public java.lang.String getControlRetOrDefault( + public /* nullable */ +java.lang.String getControlRetOrDefault( java.lang.String key, - java.lang.String defaultValue) { + /* nullable */ +java.lang.String defaultValue) { if (key == null) { throw new NullPointerException("map key"); } java.util.Map map = internalGetControlRet().getMap(); @@ -3289,7 +3337,6 @@ public java.lang.String getControlRetOrDefault( * map<string, string> control_ret = 6; */ @java.lang.Override - public java.lang.String getControlRetOrThrow( java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } @@ -3300,8 +3347,8 @@ public java.lang.String getControlRetOrThrow( } return map.get(key); } - public Builder clearControlRet() { + bitField0_ = (bitField0_ & ~0x00000040); internalGetMutableControlRet().getMutableMap() .clear(); return this; @@ -3314,7 +3361,6 @@ public Builder clearControlRet() { * * map<string, string> control_ret = 6; */ - public Builder removeControlRet( java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } @@ -3327,7 +3373,8 @@ public Builder removeControlRet( */ @java.lang.Deprecated public java.util.Map - getMutableControlRet() { + getMutableControlRet() { + bitField0_ |= 0x00000040; return internalGetMutableControlRet().getMutableMap(); } /** @@ -3342,12 +3389,10 @@ public Builder putControlRet( java.lang.String key, java.lang.String value) { if (key == null) { throw new NullPointerException("map key"); } - if (value == null) { - throw new NullPointerException("map value"); -} - + if (value == null) { throw new NullPointerException("map value"); } internalGetMutableControlRet().getMutableMap() .put(key, value); + bitField0_ |= 0x00000040; return this; } /** @@ -3358,25 +3403,13 @@ public Builder putControlRet( * * map<string, string> control_ret = 6; */ - public Builder putAllControlRet( java.util.Map values) { internalGetMutableControlRet().getMutableMap() .putAll(values); + bitField0_ |= 0x00000040; return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.FunctionDef) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionDefLibrary.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionDefLibrary.java index 05fa7747079..13f92728ca4 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionDefLibrary.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionDefLibrary.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/function.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -11,12 +13,21 @@ * Protobuf type {@code tensorflow.FunctionDefLibrary} */ public final class FunctionDefLibrary extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.FunctionDefLibrary) FunctionDefLibraryOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + FunctionDefLibrary.class.getName()); + } // Use FunctionDefLibrary.newBuilder() to construct. - private FunctionDefLibrary(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private FunctionDefLibrary(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private FunctionDefLibrary() { @@ -25,25 +36,13 @@ private FunctionDefLibrary() { registeredGradients_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new FunctionDefLibrary(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.FunctionProtos.internal_static_tensorflow_FunctionDefLibrary_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.FunctionProtos.internal_static_tensorflow_FunctionDefLibrary_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -51,6 +50,7 @@ protected java.lang.Object newInstance( } public static final int FUNCTION_FIELD_NUMBER = 1; + @SuppressWarnings("serial") private java.util.List function_; /** * repeated .tensorflow.FunctionDef function = 1; @@ -91,6 +91,7 @@ public org.tensorflow.proto.FunctionDefOrBuilder getFunctionOrBuilder( } public static final int GRADIENT_FIELD_NUMBER = 2; + @SuppressWarnings("serial") private java.util.List gradient_; /** * repeated .tensorflow.GradientDef gradient = 2; @@ -131,6 +132,7 @@ public org.tensorflow.proto.GradientDefOrBuilder getGradientOrBuilder( } public static final int REGISTERED_GRADIENTS_FIELD_NUMBER = 3; + @SuppressWarnings("serial") private java.util.List registeredGradients_; /** * repeated .tensorflow.RegisteredGradient registered_gradients = 3; @@ -297,39 +299,41 @@ public static org.tensorflow.proto.FunctionDefLibrary parseFrom( } public static org.tensorflow.proto.FunctionDefLibrary parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.FunctionDefLibrary parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.FunctionDefLibrary parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.FunctionDefLibrary parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.FunctionDefLibrary parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.FunctionDefLibrary parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -349,7 +353,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -361,7 +365,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.FunctionDefLibrary} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.FunctionDefLibrary) org.tensorflow.proto.FunctionDefLibraryOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -370,7 +374,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.FunctionProtos.internal_static_tensorflow_FunctionDefLibrary_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -383,13 +387,14 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; if (functionBuilder_ == null) { function_ = java.util.Collections.emptyList(); } else { @@ -437,7 +442,13 @@ public org.tensorflow.proto.FunctionDefLibrary build() { @java.lang.Override public org.tensorflow.proto.FunctionDefLibrary buildPartial() { org.tensorflow.proto.FunctionDefLibrary result = new org.tensorflow.proto.FunctionDefLibrary(this); - int from_bitField0_ = bitField0_; + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(org.tensorflow.proto.FunctionDefLibrary result) { if (functionBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { function_ = java.util.Collections.unmodifiableList(function_); @@ -465,42 +476,12 @@ public org.tensorflow.proto.FunctionDefLibrary buildPartial() { } else { result.registeredGradients_ = registeredGradientsBuilder_.build(); } - onBuilt(); - return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.FunctionDefLibrary result) { + int from_bitField0_ = bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.FunctionDefLibrary) { @@ -532,7 +513,7 @@ public Builder mergeFrom(org.tensorflow.proto.FunctionDefLibrary other) { function_ = other.function_; bitField0_ = (bitField0_ & ~0x00000001); functionBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getFunctionFieldBuilder() : null; } else { functionBuilder_.addAllMessages(other.function_); @@ -558,7 +539,7 @@ public Builder mergeFrom(org.tensorflow.proto.FunctionDefLibrary other) { gradient_ = other.gradient_; bitField0_ = (bitField0_ & ~0x00000002); gradientBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getGradientFieldBuilder() : null; } else { gradientBuilder_.addAllMessages(other.gradient_); @@ -584,7 +565,7 @@ public Builder mergeFrom(org.tensorflow.proto.FunctionDefLibrary other) { registeredGradients_ = other.registeredGradients_; bitField0_ = (bitField0_ & ~0x00000004); registeredGradientsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getRegisteredGradientsFieldBuilder() : null; } else { registeredGradientsBuilder_.addAllMessages(other.registeredGradients_); @@ -682,7 +663,7 @@ private void ensureFunctionIsMutable() { } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.FunctionDef, org.tensorflow.proto.FunctionDef.Builder, org.tensorflow.proto.FunctionDefOrBuilder> functionBuilder_; /** @@ -898,11 +879,11 @@ public org.tensorflow.proto.FunctionDef.Builder addFunctionBuilder( getFunctionBuilderList() { return getFunctionFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.FunctionDef, org.tensorflow.proto.FunctionDef.Builder, org.tensorflow.proto.FunctionDefOrBuilder> getFunctionFieldBuilder() { if (functionBuilder_ == null) { - functionBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + functionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.FunctionDef, org.tensorflow.proto.FunctionDef.Builder, org.tensorflow.proto.FunctionDefOrBuilder>( function_, ((bitField0_ & 0x00000001) != 0), @@ -922,7 +903,7 @@ private void ensureGradientIsMutable() { } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.GradientDef, org.tensorflow.proto.GradientDef.Builder, org.tensorflow.proto.GradientDefOrBuilder> gradientBuilder_; /** @@ -1138,11 +1119,11 @@ public org.tensorflow.proto.GradientDef.Builder addGradientBuilder( getGradientBuilderList() { return getGradientFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.GradientDef, org.tensorflow.proto.GradientDef.Builder, org.tensorflow.proto.GradientDefOrBuilder> getGradientFieldBuilder() { if (gradientBuilder_ == null) { - gradientBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + gradientBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.GradientDef, org.tensorflow.proto.GradientDef.Builder, org.tensorflow.proto.GradientDefOrBuilder>( gradient_, ((bitField0_ & 0x00000002) != 0), @@ -1162,7 +1143,7 @@ private void ensureRegisteredGradientsIsMutable() { } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.RegisteredGradient, org.tensorflow.proto.RegisteredGradient.Builder, org.tensorflow.proto.RegisteredGradientOrBuilder> registeredGradientsBuilder_; /** @@ -1378,11 +1359,11 @@ public org.tensorflow.proto.RegisteredGradient.Builder addRegisteredGradientsBui getRegisteredGradientsBuilderList() { return getRegisteredGradientsFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.RegisteredGradient, org.tensorflow.proto.RegisteredGradient.Builder, org.tensorflow.proto.RegisteredGradientOrBuilder> getRegisteredGradientsFieldBuilder() { if (registeredGradientsBuilder_ == null) { - registeredGradientsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + registeredGradientsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.RegisteredGradient, org.tensorflow.proto.RegisteredGradient.Builder, org.tensorflow.proto.RegisteredGradientOrBuilder>( registeredGradients_, ((bitField0_ & 0x00000004) != 0), @@ -1392,18 +1373,6 @@ public org.tensorflow.proto.RegisteredGradient.Builder addRegisteredGradientsBui } return registeredGradientsBuilder_; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.FunctionDefLibrary) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionDefLibraryOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionDefLibraryOrBuilder.java index f2169998270..5dfb6aefc69 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionDefLibraryOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionDefLibraryOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/function.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionDefOrBuilder.java index f91238f01eb..cd87f92a585 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionDefOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionDefOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/function.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -76,7 +78,6 @@ boolean containsAttr( * * map<string, .tensorflow.AttrValue> attr = 5; */ - /* nullable */ org.tensorflow.proto.AttrValue getAttrOrDefault( java.lang.String key, @@ -89,7 +90,6 @@ org.tensorflow.proto.AttrValue getAttrOrDefault( * * map<string, .tensorflow.AttrValue> attr = 5; */ - org.tensorflow.proto.AttrValue getAttrOrThrow( java.lang.String key); @@ -116,7 +116,6 @@ boolean containsArgAttr( /** * map<uint32, .tensorflow.FunctionDef.ArgAttrs> arg_attr = 7; */ - /* nullable */ org.tensorflow.proto.FunctionDef.ArgAttrs getArgAttrOrDefault( int key, @@ -125,7 +124,6 @@ org.tensorflow.proto.FunctionDef.ArgAttrs getArgAttrOrDefault( /** * map<uint32, .tensorflow.FunctionDef.ArgAttrs> arg_attr = 7; */ - org.tensorflow.proto.FunctionDef.ArgAttrs getArgAttrOrThrow( int key); @@ -134,8 +132,10 @@ org.tensorflow.proto.FunctionDef.ArgAttrs getArgAttrOrThrow( * Unique IDs for each resource argument, used to track aliasing resources. If * Argument A and Argument B alias each other, then * resource_arg_unique_ids[A.index] == resource_arg_unique_ids[B.index]. + * * If this field is empty, none of the arguments could alias; otherwise, every * resource argument should have an entry in this field. + * * When instantiated, the unique IDs will be attached to the _Arg nodes' * "_resource_arg_unique_id" attribute. *
    @@ -148,8 +148,10 @@ org.tensorflow.proto.FunctionDef.ArgAttrs getArgAttrOrThrow( * Unique IDs for each resource argument, used to track aliasing resources. If * Argument A and Argument B alias each other, then * resource_arg_unique_ids[A.index] == resource_arg_unique_ids[B.index]. + * * If this field is empty, none of the arguments could alias; otherwise, every * resource argument should have an entry in this field. + * * When instantiated, the unique IDs will be attached to the _Arg nodes' * "_resource_arg_unique_id" attribute. *
    @@ -169,8 +171,10 @@ boolean containsResourceArgUniqueId( * Unique IDs for each resource argument, used to track aliasing resources. If * Argument A and Argument B alias each other, then * resource_arg_unique_ids[A.index] == resource_arg_unique_ids[B.index]. + * * If this field is empty, none of the arguments could alias; otherwise, every * resource argument should have an entry in this field. + * * When instantiated, the unique IDs will be attached to the _Arg nodes' * "_resource_arg_unique_id" attribute. *
    @@ -184,15 +188,16 @@ boolean containsResourceArgUniqueId( * Unique IDs for each resource argument, used to track aliasing resources. If * Argument A and Argument B alias each other, then * resource_arg_unique_ids[A.index] == resource_arg_unique_ids[B.index]. + * * If this field is empty, none of the arguments could alias; otherwise, every * resource argument should have an entry in this field. + * * When instantiated, the unique IDs will be attached to the _Arg nodes' * "_resource_arg_unique_id" attribute. *
    * * map<uint32, uint32> resource_arg_unique_id = 8; */ - int getResourceArgUniqueIdOrDefault( int key, int defaultValue); @@ -201,15 +206,16 @@ int getResourceArgUniqueIdOrDefault( * Unique IDs for each resource argument, used to track aliasing resources. If * Argument A and Argument B alias each other, then * resource_arg_unique_ids[A.index] == resource_arg_unique_ids[B.index]. + * * If this field is empty, none of the arguments could alias; otherwise, every * resource argument should have an entry in this field. + * * When instantiated, the unique IDs will be attached to the _Arg nodes' * "_resource_arg_unique_id" attribute. *
    * * map<uint32, uint32> resource_arg_unique_id = 8; */ - int getResourceArgUniqueIdOrThrow( int key); @@ -310,7 +316,6 @@ boolean containsRet( * * map<string, string> ret = 4; */ - /* nullable */ java.lang.String getRetOrDefault( java.lang.String key, @@ -324,7 +329,6 @@ java.lang.String getRetOrDefault( * * map<string, string> ret = 4; */ - java.lang.String getRetOrThrow( java.lang.String key); @@ -371,7 +375,6 @@ boolean containsControlRet( * * map<string, string> control_ret = 6; */ - /* nullable */ java.lang.String getControlRetOrDefault( java.lang.String key, @@ -385,7 +388,6 @@ java.lang.String getControlRetOrDefault( * * map<string, string> control_ret = 6; */ - java.lang.String getControlRetOrThrow( java.lang.String key); } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionProtos.java index 0c0f205de0b..202accf0318 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionProtos.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/FunctionProtos.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/function.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; public final class FunctionProtos { private FunctionProtos() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + FunctionProtos.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -17,57 +28,57 @@ public static void registerAllExtensions( static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_FunctionDefLibrary_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_FunctionDefLibrary_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_FunctionDef_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_FunctionDef_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_FunctionDef_AttrEntry_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_FunctionDef_AttrEntry_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_FunctionDef_ArgAttrs_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_FunctionDef_ArgAttrs_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_FunctionDef_ArgAttrs_AttrEntry_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_FunctionDef_ArgAttrs_AttrEntry_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_FunctionDef_ArgAttrEntry_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_FunctionDef_ArgAttrEntry_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_FunctionDef_ResourceArgUniqueIdEntry_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_FunctionDef_ResourceArgUniqueIdEntry_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_FunctionDef_RetEntry_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_FunctionDef_RetEntry_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_FunctionDef_ControlRetEntry_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_FunctionDef_ControlRetEntry_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_GradientDef_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_GradientDef_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_RegisteredGradient_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_RegisteredGradient_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor @@ -126,69 +137,70 @@ public static void registerAllExtensions( internal_static_tensorflow_FunctionDefLibrary_descriptor = getDescriptor().getMessageTypes().get(0); internal_static_tensorflow_FunctionDefLibrary_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_FunctionDefLibrary_descriptor, new java.lang.String[] { "Function", "Gradient", "RegisteredGradients", }); internal_static_tensorflow_FunctionDef_descriptor = getDescriptor().getMessageTypes().get(1); internal_static_tensorflow_FunctionDef_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_FunctionDef_descriptor, new java.lang.String[] { "Signature", "Attr", "ArgAttr", "ResourceArgUniqueId", "NodeDef", "Ret", "ControlRet", }); internal_static_tensorflow_FunctionDef_AttrEntry_descriptor = internal_static_tensorflow_FunctionDef_descriptor.getNestedTypes().get(0); internal_static_tensorflow_FunctionDef_AttrEntry_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_FunctionDef_AttrEntry_descriptor, new java.lang.String[] { "Key", "Value", }); internal_static_tensorflow_FunctionDef_ArgAttrs_descriptor = internal_static_tensorflow_FunctionDef_descriptor.getNestedTypes().get(1); internal_static_tensorflow_FunctionDef_ArgAttrs_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_FunctionDef_ArgAttrs_descriptor, new java.lang.String[] { "Attr", }); internal_static_tensorflow_FunctionDef_ArgAttrs_AttrEntry_descriptor = internal_static_tensorflow_FunctionDef_ArgAttrs_descriptor.getNestedTypes().get(0); internal_static_tensorflow_FunctionDef_ArgAttrs_AttrEntry_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_FunctionDef_ArgAttrs_AttrEntry_descriptor, new java.lang.String[] { "Key", "Value", }); internal_static_tensorflow_FunctionDef_ArgAttrEntry_descriptor = internal_static_tensorflow_FunctionDef_descriptor.getNestedTypes().get(2); internal_static_tensorflow_FunctionDef_ArgAttrEntry_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_FunctionDef_ArgAttrEntry_descriptor, new java.lang.String[] { "Key", "Value", }); internal_static_tensorflow_FunctionDef_ResourceArgUniqueIdEntry_descriptor = internal_static_tensorflow_FunctionDef_descriptor.getNestedTypes().get(3); internal_static_tensorflow_FunctionDef_ResourceArgUniqueIdEntry_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_FunctionDef_ResourceArgUniqueIdEntry_descriptor, new java.lang.String[] { "Key", "Value", }); internal_static_tensorflow_FunctionDef_RetEntry_descriptor = internal_static_tensorflow_FunctionDef_descriptor.getNestedTypes().get(4); internal_static_tensorflow_FunctionDef_RetEntry_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_FunctionDef_RetEntry_descriptor, new java.lang.String[] { "Key", "Value", }); internal_static_tensorflow_FunctionDef_ControlRetEntry_descriptor = internal_static_tensorflow_FunctionDef_descriptor.getNestedTypes().get(5); internal_static_tensorflow_FunctionDef_ControlRetEntry_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_FunctionDef_ControlRetEntry_descriptor, new java.lang.String[] { "Key", "Value", }); internal_static_tensorflow_GradientDef_descriptor = getDescriptor().getMessageTypes().get(2); internal_static_tensorflow_GradientDef_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_GradientDef_descriptor, new java.lang.String[] { "FunctionName", "GradientFunc", }); internal_static_tensorflow_RegisteredGradient_descriptor = getDescriptor().getMessageTypes().get(3); internal_static_tensorflow_RegisteredGradient_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_RegisteredGradient_descriptor, new java.lang.String[] { "GradientFunc", "RegisteredOpType", }); + descriptor.resolveAllFeaturesImmutable(); org.tensorflow.proto.AttrValueProtos.getDescriptor(); org.tensorflow.proto.NodeProto.getDescriptor(); org.tensorflow.proto.OpDefProtos.getDescriptor(); diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GPUInfo.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GPUInfo.java index f07305dc1aa..32cf218ca81 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GPUInfo.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GPUInfo.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! -// source: tsl/protobuf/test_log.proto +// NO CHECKED-IN PROTOBUF GENCODE +// source: xla/tsl/protobuf/test_log.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,12 +9,21 @@ * Protobuf type {@code tensorflow.GPUInfo} */ public final class GPUInfo extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.GPUInfo) GPUInfoOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + GPUInfo.class.getName()); + } // Use GPUInfo.newBuilder() to construct. - private GPUInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private GPUInfo(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private GPUInfo() { @@ -21,25 +32,13 @@ private GPUInfo() { busId_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new GPUInfo(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_GPUInfo_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_GPUInfo_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -47,7 +46,8 @@ protected java.lang.Object newInstance( } public static final int MODEL_FIELD_NUMBER = 1; - private volatile java.lang.Object model_; + @SuppressWarnings("serial") + private volatile java.lang.Object model_ = ""; /** *
        * e.g. "Tesla K40c"
    @@ -93,7 +93,8 @@ public java.lang.String getModel() {
       }
     
       public static final int UUID_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object uuid_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object uuid_ = "";
       /**
        * 
        * Final entry in output of "nvidia-smi -L"
    @@ -139,7 +140,8 @@ public java.lang.String getUuid() {
       }
     
       public static final int BUS_ID_FIELD_NUMBER = 3;
    -  private volatile java.lang.Object busId_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object busId_ = "";
       /**
        * 
        * e.g. "0000:04:00.0"
    @@ -198,14 +200,14 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(model_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, model_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(model_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, model_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(uuid_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, uuid_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uuid_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, uuid_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(busId_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, busId_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(busId_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, busId_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -216,14 +218,14 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(model_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, model_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(model_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, model_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(uuid_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, uuid_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(uuid_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, uuid_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(busId_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, busId_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(busId_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, busId_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -302,39 +304,41 @@ public static org.tensorflow.proto.GPUInfo parseFrom(
       }
       public static org.tensorflow.proto.GPUInfo parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GPUInfo parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.GPUInfo parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.GPUInfo parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.GPUInfo parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GPUInfo parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -354,7 +358,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -362,7 +366,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.GPUInfo}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.GPUInfo)
           org.tensorflow.proto.GPUInfoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -371,7 +375,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_GPUInfo_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -384,19 +388,17 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           model_ = "";
    -
           uuid_ = "";
    -
           busId_ = "";
    -
           return this;
         }
     
    @@ -423,45 +425,24 @@ public org.tensorflow.proto.GPUInfo build() {
         @java.lang.Override
         public org.tensorflow.proto.GPUInfo buildPartial() {
           org.tensorflow.proto.GPUInfo result = new org.tensorflow.proto.GPUInfo(this);
    -      result.model_ = model_;
    -      result.uuid_ = uuid_;
    -      result.busId_ = busId_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.GPUInfo result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.model_ = model_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.uuid_ = uuid_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.busId_ = busId_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.GPUInfo) {
    @@ -476,14 +457,17 @@ public Builder mergeFrom(org.tensorflow.proto.GPUInfo other) {
           if (other == org.tensorflow.proto.GPUInfo.getDefaultInstance()) return this;
           if (!other.getModel().isEmpty()) {
             model_ = other.model_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getUuid().isEmpty()) {
             uuid_ = other.uuid_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (!other.getBusId().isEmpty()) {
             busId_ = other.busId_;
    +        bitField0_ |= 0x00000004;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -514,17 +498,17 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   model_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   uuid_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
                   busId_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 default: {
    @@ -542,6 +526,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object model_ = "";
         /**
    @@ -596,11 +581,9 @@ public java.lang.String getModel() {
          */
         public Builder setModel(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           model_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -613,8 +596,8 @@ public Builder setModel(
          * @return This builder for chaining.
          */
         public Builder clearModel() {
    -      
           model_ = getDefaultInstance().getModel();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -629,12 +612,10 @@ public Builder clearModel() {
          */
         public Builder setModelBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           model_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -692,11 +673,9 @@ public java.lang.String getUuid() {
          */
         public Builder setUuid(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           uuid_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -709,8 +688,8 @@ public Builder setUuid(
          * @return This builder for chaining.
          */
         public Builder clearUuid() {
    -      
           uuid_ = getDefaultInstance().getUuid();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -725,12 +704,10 @@ public Builder clearUuid() {
          */
         public Builder setUuidBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           uuid_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -788,11 +765,9 @@ public java.lang.String getBusId() {
          */
         public Builder setBusId(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           busId_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -805,8 +780,8 @@ public Builder setBusId(
          * @return This builder for chaining.
          */
         public Builder clearBusId() {
    -      
           busId_ = getDefaultInstance().getBusId();
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -821,27 +796,13 @@ public Builder clearBusId() {
          */
         public Builder setBusIdBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           busId_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.GPUInfo)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GPUInfoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GPUInfoOrBuilder.java
    index 6aefc92ee8c..0520a0f68fb 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GPUInfoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GPUInfoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GPUOptions.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GPUOptions.java
    index 8eac8bc4ef1..b63a758033d 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GPUOptions.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GPUOptions.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,12 +9,21 @@
      * Protobuf type {@code tensorflow.GPUOptions}
      */
     public final class GPUOptions extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.GPUOptions)
         GPUOptionsOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      GPUOptions.class.getName());
    +  }
       // Use GPUOptions.newBuilder() to construct.
    -  private GPUOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private GPUOptions(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private GPUOptions() {
    @@ -20,25 +31,13 @@ private GPUOptions() {
         visibleDeviceList_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new GPUOptions();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_GPUOptions_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_GPUOptions_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -60,32 +59,35 @@ public interface ExperimentalOrBuilder extends
          * devices and have the <id> field assigned sequentially starting from 0,
          * according to the order of the virtual devices determined by
          * device_ordinal and the location in the virtual device list.
    +     *
          * For example,
    -     *   visible_device_list = "1,0"
    -     *   virtual_devices { memory_limit: 1GB memory_limit: 2GB }
    -     *   virtual_devices { memory_limit: 3GB memory_limit: 4GB }
    +     * visible_device_list = "1,0"
    +     * virtual_devices { memory_limit: 1GB memory_limit: 2GB }
    +     * virtual_devices { memory_limit: 3GB memory_limit: 4GB }
          * will create 4 virtual devices as:
    -     *   /device:GPU:0 -> visible GPU 1 with 1GB memory
    -     *   /device:GPU:1 -> visible GPU 1 with 2GB memory
    -     *   /device:GPU:2 -> visible GPU 0 with 3GB memory
    -     *   /device:GPU:3 -> visible GPU 0 with 4GB memory
    +     * /device:GPU:0 -> visible GPU 1 with 1GB memory
    +     * /device:GPU:1 -> visible GPU 1 with 2GB memory
    +     * /device:GPU:2 -> visible GPU 0 with 3GB memory
    +     * /device:GPU:3 -> visible GPU 0 with 4GB memory
    +     *
          * but
    -     *   visible_device_list = "1,0"
    -     *   virtual_devices { memory_limit: 1GB memory_limit: 2GB
    -     *                     device_ordinal: 10 device_ordinal: 20}
    -     *   virtual_devices { memory_limit: 3GB memory_limit: 4GB
    -     *                     device_ordinal: 10 device_ordinal: 20}
    +     * visible_device_list = "1,0"
    +     * virtual_devices { memory_limit: 1GB memory_limit: 2GB
    +     * device_ordinal: 10 device_ordinal: 20}
    +     * virtual_devices { memory_limit: 3GB memory_limit: 4GB
    +     * device_ordinal: 10 device_ordinal: 20}
          * will create 4 virtual devices as:
    -     *   /device:GPU:0 -> visible GPU 1 with 1GB memory  (ordinal 10)
    -     *   /device:GPU:1 -> visible GPU 0 with 3GB memory  (ordinal 10)
    -     *   /device:GPU:2 -> visible GPU 1 with 2GB memory  (ordinal 20)
    -     *   /device:GPU:3 -> visible GPU 0 with 4GB memory  (ordinal 20)
    +     * /device:GPU:0 -> visible GPU 1 with 1GB memory  (ordinal 10)
    +     * /device:GPU:1 -> visible GPU 0 with 3GB memory  (ordinal 10)
    +     * /device:GPU:2 -> visible GPU 1 with 2GB memory  (ordinal 20)
    +     * /device:GPU:3 -> visible GPU 0 with 4GB memory  (ordinal 20)
    +     *
          * NOTE:
          * 1. It's invalid to set both this and "per_process_gpu_memory_fraction"
    -     *    at the same time.
    +     * at the same time.
          * 2. Currently this setting is per-process, not per-session. Using
    -     *    different settings in different sessions within same process will
    -     *    result in undefined behavior.
    +     * different settings in different sessions within same process will
    +     * result in undefined behavior.
          * 
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -103,32 +105,35 @@ public interface ExperimentalOrBuilder extends * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -145,32 +150,35 @@ public interface ExperimentalOrBuilder extends * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -187,32 +195,35 @@ public interface ExperimentalOrBuilder extends * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -230,32 +241,35 @@ public interface ExperimentalOrBuilder extends * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -352,6 +366,7 @@ org.tensorflow.proto.GPUOptions.Experimental.VirtualDevicesOrBuilder getVirtualD * Parameters for GPUKernelTracker. By default no kernel tracking is done. * Note that timestamped_allocator is only effective if some tracking is * specified. + * * If kernel_tracker_max_interval = n > 0, then a tracking event * is inserted after every n kernels without an event. *
    @@ -444,6 +459,7 @@ org.tensorflow.proto.GPUOptions.Experimental.VirtualDevicesOrBuilder getVirtualD * If true, then the host allocator allocates its max memory all upfront and * never grows. This can be useful for latency-sensitive systems, because * growing the GPU host memory pool can be expensive. + * * You probably only want to use this in combination with * gpu_host_mem_limit_in_mb, because the default GPU host memory limit is * quite high. @@ -467,17 +483,63 @@ org.tensorflow.proto.GPUOptions.Experimental.VirtualDevicesOrBuilder getVirtualD * @return The gpuSystemMemorySizeInMb. */ int getGpuSystemMemorySizeInMb(); + + /** + *
    +     * If true, save information needed for created a PjRt GPU client for
    +     * creating a client with remote devices.
    +     * 
    + * + * bool populate_pjrt_gpu_client_creation_info = 17; + * @return The populatePjrtGpuClientCreationInfo. + */ + boolean getPopulatePjrtGpuClientCreationInfo(); + + /** + *
    +     * node_id for use when creating a PjRt GPU client with remote devices,
    +     * which enumerates jobs*tasks from a ServerDef.
    +     * 
    + * + * int32 node_id = 18; + * @return The nodeId. + */ + int getNodeId(); + + /** + * .tensorflow.GPUOptions.Experimental.StreamMergeOptions stream_merge_options = 19; + * @return Whether the streamMergeOptions field is set. + */ + boolean hasStreamMergeOptions(); + /** + * .tensorflow.GPUOptions.Experimental.StreamMergeOptions stream_merge_options = 19; + * @return The streamMergeOptions. + */ + org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions getStreamMergeOptions(); + /** + * .tensorflow.GPUOptions.Experimental.StreamMergeOptions stream_merge_options = 19; + */ + org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptionsOrBuilder getStreamMergeOptionsOrBuilder(); } /** * Protobuf type {@code tensorflow.GPUOptions.Experimental} */ public static final class Experimental extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.GPUOptions.Experimental) ExperimentalOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + Experimental.class.getName()); + } // Use Experimental.newBuilder() to construct. - private Experimental(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private Experimental(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private Experimental() { @@ -485,25 +547,13 @@ private Experimental() { collectiveRingOrder_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new Experimental(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_GPUOptions_Experimental_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_GPUOptions_Experimental_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -521,6 +571,7 @@ public interface VirtualDevicesOrBuilder extends * corresponding visible GPU (see "virtual_devices" below). * If empty and `num_virtual_devices_per_gpu` is not set, it will create * single virtual device taking all available memory from the device. + * * For the concept of "visible" and "virtual" GPU, see the comments for * "visible_device_list" above for more information. *
    @@ -536,6 +587,7 @@ public interface VirtualDevicesOrBuilder extends * corresponding visible GPU (see "virtual_devices" below). * If empty and `num_virtual_devices_per_gpu` is not set, it will create * single virtual device taking all available memory from the device. + * * For the concept of "visible" and "virtual" GPU, see the comments for * "visible_device_list" above for more information. *
    @@ -551,6 +603,7 @@ public interface VirtualDevicesOrBuilder extends * corresponding visible GPU (see "virtual_devices" below). * If empty and `num_virtual_devices_per_gpu` is not set, it will create * single virtual device taking all available memory from the device. + * * For the concept of "visible" and "virtual" GPU, see the comments for * "visible_device_list" above for more information. *
    @@ -566,8 +619,10 @@ public interface VirtualDevicesOrBuilder extends * Priority values to use with the virtual devices. Use the cuda function * cudaDeviceGetStreamPriorityRange to query for valid range of values for * priority. + * * On a P4000 GPU with cuda 10.1, the priority range reported was 0 for * least priority and -1 for greatest priority. + * * If this field is not specified, then the virtual devices will be * created with the default. If this field has values set, then the size * of this must match with the above memory_limit_mb. @@ -582,8 +637,10 @@ public interface VirtualDevicesOrBuilder extends * Priority values to use with the virtual devices. Use the cuda function * cudaDeviceGetStreamPriorityRange to query for valid range of values for * priority. + * * On a P4000 GPU with cuda 10.1, the priority range reported was 0 for * least priority and -1 for greatest priority. + * * If this field is not specified, then the virtual devices will be * created with the default. If this field has values set, then the size * of this must match with the above memory_limit_mb. @@ -598,8 +655,10 @@ public interface VirtualDevicesOrBuilder extends * Priority values to use with the virtual devices. Use the cuda function * cudaDeviceGetStreamPriorityRange to query for valid range of values for * priority. + * * On a P4000 GPU with cuda 10.1, the priority range reported was 0 for * least priority and -1 for greatest priority. + * * If this field is not specified, then the virtual devices will be * created with the default. If this field has values set, then the size * of this must match with the above memory_limit_mb. @@ -658,12 +717,21 @@ public interface VirtualDevicesOrBuilder extends * Protobuf type {@code tensorflow.GPUOptions.Experimental.VirtualDevices} */ public static final class VirtualDevices extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.GPUOptions.Experimental.VirtualDevices) VirtualDevicesOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + VirtualDevices.class.getName()); + } // Use VirtualDevices.newBuilder() to construct. - private VirtualDevices(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private VirtualDevices(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private VirtualDevices() { @@ -672,25 +740,13 @@ private VirtualDevices() { deviceOrdinal_ = emptyIntList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new VirtualDevices(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_GPUOptions_Experimental_VirtualDevices_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_GPUOptions_Experimental_VirtualDevices_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -698,7 +754,9 @@ protected java.lang.Object newInstance( } public static final int MEMORY_LIMIT_MB_FIELD_NUMBER = 1; - private com.google.protobuf.Internal.FloatList memoryLimitMb_; + @SuppressWarnings("serial") + private com.google.protobuf.Internal.FloatList memoryLimitMb_ = + emptyFloatList(); /** *
            * Per "virtual" device memory limit, in MB. The number of elements in
    @@ -706,6 +764,7 @@ protected java.lang.Object newInstance(
            * corresponding visible GPU (see "virtual_devices" below).
            * If empty and `num_virtual_devices_per_gpu` is not set, it will create
            * single virtual device taking all available memory from the device.
    +       *
            * For the concept of "visible" and "virtual" GPU, see the comments for
            * "visible_device_list" above for more information.
            * 
    @@ -725,6 +784,7 @@ protected java.lang.Object newInstance( * corresponding visible GPU (see "virtual_devices" below). * If empty and `num_virtual_devices_per_gpu` is not set, it will create * single virtual device taking all available memory from the device. + * * For the concept of "visible" and "virtual" GPU, see the comments for * "visible_device_list" above for more information. *
    @@ -742,6 +802,7 @@ public int getMemoryLimitMbCount() { * corresponding visible GPU (see "virtual_devices" below). * If empty and `num_virtual_devices_per_gpu` is not set, it will create * single virtual device taking all available memory from the device. + * * For the concept of "visible" and "virtual" GPU, see the comments for * "visible_device_list" above for more information. *
    @@ -756,14 +817,18 @@ public float getMemoryLimitMb(int index) { private int memoryLimitMbMemoizedSerializedSize = -1; public static final int PRIORITY_FIELD_NUMBER = 2; - private com.google.protobuf.Internal.IntList priority_; + @SuppressWarnings("serial") + private com.google.protobuf.Internal.IntList priority_ = + emptyIntList(); /** *
            * Priority values to use with the virtual devices. Use the cuda function
            * cudaDeviceGetStreamPriorityRange to query for valid range of values for
            * priority.
    +       *
            * On a P4000 GPU with cuda 10.1, the priority range reported was 0 for
            * least priority and -1 for greatest priority.
    +       *
            * If this field is not specified, then the virtual devices will be
            * created with the default. If this field has values set, then the size
            * of this must match with the above memory_limit_mb.
    @@ -782,8 +847,10 @@ public float getMemoryLimitMb(int index) {
            * Priority values to use with the virtual devices. Use the cuda function
            * cudaDeviceGetStreamPriorityRange to query for valid range of values for
            * priority.
    +       *
            * On a P4000 GPU with cuda 10.1, the priority range reported was 0 for
            * least priority and -1 for greatest priority.
    +       *
            * If this field is not specified, then the virtual devices will be
            * created with the default. If this field has values set, then the size
            * of this must match with the above memory_limit_mb.
    @@ -800,8 +867,10 @@ public int getPriorityCount() {
            * Priority values to use with the virtual devices. Use the cuda function
            * cudaDeviceGetStreamPriorityRange to query for valid range of values for
            * priority.
    +       *
            * On a P4000 GPU with cuda 10.1, the priority range reported was 0 for
            * least priority and -1 for greatest priority.
    +       *
            * If this field is not specified, then the virtual devices will be
            * created with the default. If this field has values set, then the size
            * of this must match with the above memory_limit_mb.
    @@ -817,7 +886,9 @@ public int getPriority(int index) {
           private int priorityMemoizedSerializedSize = -1;
     
           public static final int DEVICE_ORDINAL_FIELD_NUMBER = 3;
    -      private com.google.protobuf.Internal.IntList deviceOrdinal_;
    +      @SuppressWarnings("serial")
    +      private com.google.protobuf.Internal.IntList deviceOrdinal_ =
    +          emptyIntList();
           /**
            * 
            * Virtual Device ordinal number determines the device ID of the device.
    @@ -1032,39 +1103,41 @@ public static org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices parseF
           }
           public static org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices parseFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices parseFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
    +
           public static org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices parseDelimitedFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input);
           }
    +
           public static org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices parseDelimitedFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
           }
           public static org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices parseFrom(
               com.google.protobuf.CodedInputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices parseFrom(
               com.google.protobuf.CodedInputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
     
    @@ -1084,7 +1157,7 @@ public Builder toBuilder() {
     
           @java.lang.Override
           protected Builder newBuilderForType(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             Builder builder = new Builder(parent);
             return builder;
           }
    @@ -1097,7 +1170,7 @@ protected Builder newBuilderForType(
            * Protobuf type {@code tensorflow.GPUOptions.Experimental.VirtualDevices}
            */
           public static final class Builder extends
    -          com.google.protobuf.GeneratedMessageV3.Builder implements
    +          com.google.protobuf.GeneratedMessage.Builder implements
               // @@protoc_insertion_point(builder_implements:tensorflow.GPUOptions.Experimental.VirtualDevices)
               org.tensorflow.proto.GPUOptions.Experimental.VirtualDevicesOrBuilder {
             public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1106,7 +1179,7 @@ public static final class Builder extends
             }
     
             @java.lang.Override
    -        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
                 internalGetFieldAccessorTable() {
               return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_GPUOptions_Experimental_VirtualDevices_fieldAccessorTable
                   .ensureFieldAccessorsInitialized(
    @@ -1119,19 +1192,17 @@ private Builder() {
             }
     
             private Builder(
    -            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
               super(parent);
     
             }
             @java.lang.Override
             public Builder clear() {
               super.clear();
    +          bitField0_ = 0;
               memoryLimitMb_ = emptyFloatList();
    -          bitField0_ = (bitField0_ & ~0x00000001);
               priority_ = emptyIntList();
    -          bitField0_ = (bitField0_ & ~0x00000002);
               deviceOrdinal_ = emptyIntList();
    -          bitField0_ = (bitField0_ & ~0x00000004);
               return this;
             }
     
    @@ -1158,58 +1229,27 @@ public org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices build() {
             @java.lang.Override
             public org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices buildPartial() {
               org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices result = new org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices(this);
    +          if (bitField0_ != 0) { buildPartial0(result); }
    +          onBuilt();
    +          return result;
    +        }
    +
    +        private void buildPartial0(org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices result) {
               int from_bitField0_ = bitField0_;
    -          if (((bitField0_ & 0x00000001) != 0)) {
    +          if (((from_bitField0_ & 0x00000001) != 0)) {
                 memoryLimitMb_.makeImmutable();
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            result.memoryLimitMb_ = memoryLimitMb_;
               }
    -          result.memoryLimitMb_ = memoryLimitMb_;
    -          if (((bitField0_ & 0x00000002) != 0)) {
    +          if (((from_bitField0_ & 0x00000002) != 0)) {
                 priority_.makeImmutable();
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            result.priority_ = priority_;
               }
    -          result.priority_ = priority_;
    -          if (((bitField0_ & 0x00000004) != 0)) {
    +          if (((from_bitField0_ & 0x00000004) != 0)) {
                 deviceOrdinal_.makeImmutable();
    -            bitField0_ = (bitField0_ & ~0x00000004);
    +            result.deviceOrdinal_ = deviceOrdinal_;
               }
    -          result.deviceOrdinal_ = deviceOrdinal_;
    -          onBuilt();
    -          return result;
             }
     
    -        @java.lang.Override
    -        public Builder clone() {
    -          return super.clone();
    -        }
    -        @java.lang.Override
    -        public Builder setField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.setField(field, value);
    -        }
    -        @java.lang.Override
    -        public Builder clearField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field) {
    -          return super.clearField(field);
    -        }
    -        @java.lang.Override
    -        public Builder clearOneof(
    -            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -          return super.clearOneof(oneof);
    -        }
    -        @java.lang.Override
    -        public Builder setRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            int index, java.lang.Object value) {
    -          return super.setRepeatedField(field, index, value);
    -        }
    -        @java.lang.Override
    -        public Builder addRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.addRepeatedField(field, value);
    -        }
             @java.lang.Override
             public Builder mergeFrom(com.google.protobuf.Message other) {
               if (other instanceof org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices) {
    @@ -1225,7 +1265,8 @@ public Builder mergeFrom(org.tensorflow.proto.GPUOptions.Experimental.VirtualDev
               if (!other.memoryLimitMb_.isEmpty()) {
                 if (memoryLimitMb_.isEmpty()) {
                   memoryLimitMb_ = other.memoryLimitMb_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              memoryLimitMb_.makeImmutable();
    +              bitField0_ |= 0x00000001;
                 } else {
                   ensureMemoryLimitMbIsMutable();
                   memoryLimitMb_.addAll(other.memoryLimitMb_);
    @@ -1235,7 +1276,8 @@ public Builder mergeFrom(org.tensorflow.proto.GPUOptions.Experimental.VirtualDev
               if (!other.priority_.isEmpty()) {
                 if (priority_.isEmpty()) {
                   priority_ = other.priority_;
    -              bitField0_ = (bitField0_ & ~0x00000002);
    +              priority_.makeImmutable();
    +              bitField0_ |= 0x00000002;
                 } else {
                   ensurePriorityIsMutable();
                   priority_.addAll(other.priority_);
    @@ -1245,7 +1287,8 @@ public Builder mergeFrom(org.tensorflow.proto.GPUOptions.Experimental.VirtualDev
               if (!other.deviceOrdinal_.isEmpty()) {
                 if (deviceOrdinal_.isEmpty()) {
                   deviceOrdinal_ = other.deviceOrdinal_;
    -              bitField0_ = (bitField0_ & ~0x00000004);
    +              deviceOrdinal_.makeImmutable();
    +              bitField0_ |= 0x00000004;
                 } else {
                   ensureDeviceOrdinalIsMutable();
                   deviceOrdinal_.addAll(other.deviceOrdinal_);
    @@ -1287,7 +1330,8 @@ public Builder mergeFrom(
                     case 10: {
                       int length = input.readRawVarint32();
                       int limit = input.pushLimit(length);
    -                  ensureMemoryLimitMbIsMutable();
    +                  int alloc = length > 4096 ? 4096 : length;
    +                  ensureMemoryLimitMbIsMutable(alloc / 4);
                       while (input.getBytesUntilLimit() > 0) {
                         memoryLimitMb_.addFloat(input.readFloat());
                       }
    @@ -1345,10 +1389,16 @@ public Builder mergeFrom(
     
             private com.google.protobuf.Internal.FloatList memoryLimitMb_ = emptyFloatList();
             private void ensureMemoryLimitMbIsMutable() {
    -          if (!((bitField0_ & 0x00000001) != 0)) {
    -            memoryLimitMb_ = mutableCopy(memoryLimitMb_);
    -            bitField0_ |= 0x00000001;
    -           }
    +          if (!memoryLimitMb_.isModifiable()) {
    +            memoryLimitMb_ = makeMutableCopy(memoryLimitMb_);
    +          }
    +          bitField0_ |= 0x00000001;
    +        }
    +        private void ensureMemoryLimitMbIsMutable(int capacity) {
    +          if (!memoryLimitMb_.isModifiable()) {
    +            memoryLimitMb_ = makeMutableCopy(memoryLimitMb_, capacity);
    +          }
    +          bitField0_ |= 0x00000001;
             }
             /**
              * 
    @@ -1357,6 +1407,7 @@ private void ensureMemoryLimitMbIsMutable() {
              * corresponding visible GPU (see "virtual_devices" below).
              * If empty and `num_virtual_devices_per_gpu` is not set, it will create
              * single virtual device taking all available memory from the device.
    +         *
              * For the concept of "visible" and "virtual" GPU, see the comments for
              * "visible_device_list" above for more information.
              * 
    @@ -1366,8 +1417,8 @@ private void ensureMemoryLimitMbIsMutable() { */ public java.util.List getMemoryLimitMbList() { - return ((bitField0_ & 0x00000001) != 0) ? - java.util.Collections.unmodifiableList(memoryLimitMb_) : memoryLimitMb_; + memoryLimitMb_.makeImmutable(); + return memoryLimitMb_; } /** *
    @@ -1376,6 +1427,7 @@ private void ensureMemoryLimitMbIsMutable() {
              * corresponding visible GPU (see "virtual_devices" below).
              * If empty and `num_virtual_devices_per_gpu` is not set, it will create
              * single virtual device taking all available memory from the device.
    +         *
              * For the concept of "visible" and "virtual" GPU, see the comments for
              * "visible_device_list" above for more information.
              * 
    @@ -1393,6 +1445,7 @@ public int getMemoryLimitMbCount() { * corresponding visible GPU (see "virtual_devices" below). * If empty and `num_virtual_devices_per_gpu` is not set, it will create * single virtual device taking all available memory from the device. + * * For the concept of "visible" and "virtual" GPU, see the comments for * "visible_device_list" above for more information. *
    @@ -1411,6 +1464,7 @@ public float getMemoryLimitMb(int index) { * corresponding visible GPU (see "virtual_devices" below). * If empty and `num_virtual_devices_per_gpu` is not set, it will create * single virtual device taking all available memory from the device. + * * For the concept of "visible" and "virtual" GPU, see the comments for * "visible_device_list" above for more information. *
    @@ -1422,8 +1476,10 @@ public float getMemoryLimitMb(int index) { */ public Builder setMemoryLimitMb( int index, float value) { + ensureMemoryLimitMbIsMutable(); memoryLimitMb_.setFloat(index, value); + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -1434,6 +1490,7 @@ public Builder setMemoryLimitMb( * corresponding visible GPU (see "virtual_devices" below). * If empty and `num_virtual_devices_per_gpu` is not set, it will create * single virtual device taking all available memory from the device. + * * For the concept of "visible" and "virtual" GPU, see the comments for * "visible_device_list" above for more information. *
    @@ -1443,8 +1500,10 @@ public Builder setMemoryLimitMb( * @return This builder for chaining. */ public Builder addMemoryLimitMb(float value) { + ensureMemoryLimitMbIsMutable(); memoryLimitMb_.addFloat(value); + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -1455,6 +1514,7 @@ public Builder addMemoryLimitMb(float value) { * corresponding visible GPU (see "virtual_devices" below). * If empty and `num_virtual_devices_per_gpu` is not set, it will create * single virtual device taking all available memory from the device. + * * For the concept of "visible" and "virtual" GPU, see the comments for * "visible_device_list" above for more information. *
    @@ -1468,6 +1528,7 @@ public Builder addAllMemoryLimitMb( ensureMemoryLimitMbIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, memoryLimitMb_); + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -1478,6 +1539,7 @@ public Builder addAllMemoryLimitMb( * corresponding visible GPU (see "virtual_devices" below). * If empty and `num_virtual_devices_per_gpu` is not set, it will create * single virtual device taking all available memory from the device. + * * For the concept of "visible" and "virtual" GPU, see the comments for * "visible_device_list" above for more information. *
    @@ -1494,18 +1556,20 @@ public Builder clearMemoryLimitMb() { private com.google.protobuf.Internal.IntList priority_ = emptyIntList(); private void ensurePriorityIsMutable() { - if (!((bitField0_ & 0x00000002) != 0)) { - priority_ = mutableCopy(priority_); - bitField0_ |= 0x00000002; - } + if (!priority_.isModifiable()) { + priority_ = makeMutableCopy(priority_); + } + bitField0_ |= 0x00000002; } /** *
              * Priority values to use with the virtual devices. Use the cuda function
              * cudaDeviceGetStreamPriorityRange to query for valid range of values for
              * priority.
    +         *
              * On a P4000 GPU with cuda 10.1, the priority range reported was 0 for
              * least priority and -1 for greatest priority.
    +         *
              * If this field is not specified, then the virtual devices will be
              * created with the default. If this field has values set, then the size
              * of this must match with the above memory_limit_mb.
    @@ -1516,16 +1580,18 @@ private void ensurePriorityIsMutable() {
              */
             public java.util.List
                 getPriorityList() {
    -          return ((bitField0_ & 0x00000002) != 0) ?
    -                   java.util.Collections.unmodifiableList(priority_) : priority_;
    +          priority_.makeImmutable();
    +          return priority_;
             }
             /**
              * 
              * Priority values to use with the virtual devices. Use the cuda function
              * cudaDeviceGetStreamPriorityRange to query for valid range of values for
              * priority.
    +         *
              * On a P4000 GPU with cuda 10.1, the priority range reported was 0 for
              * least priority and -1 for greatest priority.
    +         *
              * If this field is not specified, then the virtual devices will be
              * created with the default. If this field has values set, then the size
              * of this must match with the above memory_limit_mb.
    @@ -1542,8 +1608,10 @@ public int getPriorityCount() {
              * Priority values to use with the virtual devices. Use the cuda function
              * cudaDeviceGetStreamPriorityRange to query for valid range of values for
              * priority.
    +         *
              * On a P4000 GPU with cuda 10.1, the priority range reported was 0 for
              * least priority and -1 for greatest priority.
    +         *
              * If this field is not specified, then the virtual devices will be
              * created with the default. If this field has values set, then the size
              * of this must match with the above memory_limit_mb.
    @@ -1561,8 +1629,10 @@ public int getPriority(int index) {
              * Priority values to use with the virtual devices. Use the cuda function
              * cudaDeviceGetStreamPriorityRange to query for valid range of values for
              * priority.
    +         *
              * On a P4000 GPU with cuda 10.1, the priority range reported was 0 for
              * least priority and -1 for greatest priority.
    +         *
              * If this field is not specified, then the virtual devices will be
              * created with the default. If this field has values set, then the size
              * of this must match with the above memory_limit_mb.
    @@ -1575,8 +1645,10 @@ public int getPriority(int index) {
              */
             public Builder setPriority(
                 int index, int value) {
    +
               ensurePriorityIsMutable();
               priority_.setInt(index, value);
    +          bitField0_ |= 0x00000002;
               onChanged();
               return this;
             }
    @@ -1585,8 +1657,10 @@ public Builder setPriority(
              * Priority values to use with the virtual devices. Use the cuda function
              * cudaDeviceGetStreamPriorityRange to query for valid range of values for
              * priority.
    +         *
              * On a P4000 GPU with cuda 10.1, the priority range reported was 0 for
              * least priority and -1 for greatest priority.
    +         *
              * If this field is not specified, then the virtual devices will be
              * created with the default. If this field has values set, then the size
              * of this must match with the above memory_limit_mb.
    @@ -1597,8 +1671,10 @@ public Builder setPriority(
              * @return This builder for chaining.
              */
             public Builder addPriority(int value) {
    +
               ensurePriorityIsMutable();
               priority_.addInt(value);
    +          bitField0_ |= 0x00000002;
               onChanged();
               return this;
             }
    @@ -1607,8 +1683,10 @@ public Builder addPriority(int value) {
              * Priority values to use with the virtual devices. Use the cuda function
              * cudaDeviceGetStreamPriorityRange to query for valid range of values for
              * priority.
    +         *
              * On a P4000 GPU with cuda 10.1, the priority range reported was 0 for
              * least priority and -1 for greatest priority.
    +         *
              * If this field is not specified, then the virtual devices will be
              * created with the default. If this field has values set, then the size
              * of this must match with the above memory_limit_mb.
    @@ -1623,6 +1701,7 @@ public Builder addAllPriority(
               ensurePriorityIsMutable();
               com.google.protobuf.AbstractMessageLite.Builder.addAll(
                   values, priority_);
    +          bitField0_ |= 0x00000002;
               onChanged();
               return this;
             }
    @@ -1631,8 +1710,10 @@ public Builder addAllPriority(
              * Priority values to use with the virtual devices. Use the cuda function
              * cudaDeviceGetStreamPriorityRange to query for valid range of values for
              * priority.
    +         *
              * On a P4000 GPU with cuda 10.1, the priority range reported was 0 for
              * least priority and -1 for greatest priority.
    +         *
              * If this field is not specified, then the virtual devices will be
              * created with the default. If this field has values set, then the size
              * of this must match with the above memory_limit_mb.
    @@ -1650,10 +1731,10 @@ public Builder clearPriority() {
     
             private com.google.protobuf.Internal.IntList deviceOrdinal_ = emptyIntList();
             private void ensureDeviceOrdinalIsMutable() {
    -          if (!((bitField0_ & 0x00000004) != 0)) {
    -            deviceOrdinal_ = mutableCopy(deviceOrdinal_);
    -            bitField0_ |= 0x00000004;
    -           }
    +          if (!deviceOrdinal_.isModifiable()) {
    +            deviceOrdinal_ = makeMutableCopy(deviceOrdinal_);
    +          }
    +          bitField0_ |= 0x00000004;
             }
             /**
              * 
    @@ -1668,8 +1749,8 @@ private void ensureDeviceOrdinalIsMutable() {
              */
             public java.util.List
                 getDeviceOrdinalList() {
    -          return ((bitField0_ & 0x00000004) != 0) ?
    -                   java.util.Collections.unmodifiableList(deviceOrdinal_) : deviceOrdinal_;
    +          deviceOrdinal_.makeImmutable();
    +          return deviceOrdinal_;
             }
             /**
              * 
    @@ -1715,8 +1796,10 @@ public int getDeviceOrdinal(int index) {
              */
             public Builder setDeviceOrdinal(
                 int index, int value) {
    +
               ensureDeviceOrdinalIsMutable();
               deviceOrdinal_.setInt(index, value);
    +          bitField0_ |= 0x00000004;
               onChanged();
               return this;
             }
    @@ -1733,8 +1816,10 @@ public Builder setDeviceOrdinal(
              * @return This builder for chaining.
              */
             public Builder addDeviceOrdinal(int value) {
    +
               ensureDeviceOrdinalIsMutable();
               deviceOrdinal_.addInt(value);
    +          bitField0_ |= 0x00000004;
               onChanged();
               return this;
             }
    @@ -1755,6 +1840,7 @@ public Builder addAllDeviceOrdinal(
               ensureDeviceOrdinalIsMutable();
               com.google.protobuf.AbstractMessageLite.Builder.addAll(
                   values, deviceOrdinal_);
    +          bitField0_ |= 0x00000004;
               onChanged();
               return this;
             }
    @@ -1775,18 +1861,6 @@ public Builder clearDeviceOrdinal() {
               onChanged();
               return this;
             }
    -        @java.lang.Override
    -        public final Builder setUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.setUnknownFields(unknownFields);
    -        }
    -
    -        @java.lang.Override
    -        public final Builder mergeUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.mergeUnknownFields(unknownFields);
    -        }
    -
     
             // @@protoc_insertion_point(builder_scope:tensorflow.GPUOptions.Experimental.VirtualDevices)
           }
    @@ -1839,181 +1913,904 @@ public org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices getDefaultIns
     
         }
     
    -    public static final int VIRTUAL_DEVICES_FIELD_NUMBER = 1;
    -    private java.util.List virtualDevices_;
    -    /**
    -     * 
    -     * The multi virtual device settings. If empty (not set), it will create
    -     * single virtual device on each visible GPU, according to the settings
    -     * in "visible_device_list" above. Otherwise, the number of elements in the
    -     * list must be the same as the number of visible GPUs (after
    -     * "visible_device_list" filtering if it is set), and the string represented
    -     * device names (e.g. /device:GPU:<id>) will refer to the virtual
    -     * devices and have the <id> field assigned sequentially starting from 0,
    -     * according to the order of the virtual devices determined by
    -     * device_ordinal and the location in the virtual device list.
    -     * For example,
    -     *   visible_device_list = "1,0"
    -     *   virtual_devices { memory_limit: 1GB memory_limit: 2GB }
    -     *   virtual_devices { memory_limit: 3GB memory_limit: 4GB }
    -     * will create 4 virtual devices as:
    -     *   /device:GPU:0 -> visible GPU 1 with 1GB memory
    -     *   /device:GPU:1 -> visible GPU 1 with 2GB memory
    -     *   /device:GPU:2 -> visible GPU 0 with 3GB memory
    -     *   /device:GPU:3 -> visible GPU 0 with 4GB memory
    -     * but
    -     *   visible_device_list = "1,0"
    -     *   virtual_devices { memory_limit: 1GB memory_limit: 2GB
    -     *                     device_ordinal: 10 device_ordinal: 20}
    -     *   virtual_devices { memory_limit: 3GB memory_limit: 4GB
    -     *                     device_ordinal: 10 device_ordinal: 20}
    -     * will create 4 virtual devices as:
    -     *   /device:GPU:0 -> visible GPU 1 with 1GB memory  (ordinal 10)
    -     *   /device:GPU:1 -> visible GPU 0 with 3GB memory  (ordinal 10)
    -     *   /device:GPU:2 -> visible GPU 1 with 2GB memory  (ordinal 20)
    -     *   /device:GPU:3 -> visible GPU 0 with 4GB memory  (ordinal 20)
    -     * NOTE:
    -     * 1. It's invalid to set both this and "per_process_gpu_memory_fraction"
    -     *    at the same time.
    -     * 2. Currently this setting is per-process, not per-session. Using
    -     *    different settings in different sessions within same process will
    -     *    result in undefined behavior.
    -     * 
    - * - * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; - */ - @java.lang.Override - public java.util.List getVirtualDevicesList() { - return virtualDevices_; - } - /** - *
    -     * The multi virtual device settings. If empty (not set), it will create
    -     * single virtual device on each visible GPU, according to the settings
    -     * in "visible_device_list" above. Otherwise, the number of elements in the
    -     * list must be the same as the number of visible GPUs (after
    -     * "visible_device_list" filtering if it is set), and the string represented
    -     * device names (e.g. /device:GPU:<id>) will refer to the virtual
    -     * devices and have the <id> field assigned sequentially starting from 0,
    -     * according to the order of the virtual devices determined by
    -     * device_ordinal and the location in the virtual device list.
    -     * For example,
    -     *   visible_device_list = "1,0"
    -     *   virtual_devices { memory_limit: 1GB memory_limit: 2GB }
    -     *   virtual_devices { memory_limit: 3GB memory_limit: 4GB }
    -     * will create 4 virtual devices as:
    -     *   /device:GPU:0 -> visible GPU 1 with 1GB memory
    -     *   /device:GPU:1 -> visible GPU 1 with 2GB memory
    -     *   /device:GPU:2 -> visible GPU 0 with 3GB memory
    -     *   /device:GPU:3 -> visible GPU 0 with 4GB memory
    -     * but
    -     *   visible_device_list = "1,0"
    -     *   virtual_devices { memory_limit: 1GB memory_limit: 2GB
    -     *                     device_ordinal: 10 device_ordinal: 20}
    -     *   virtual_devices { memory_limit: 3GB memory_limit: 4GB
    -     *                     device_ordinal: 10 device_ordinal: 20}
    -     * will create 4 virtual devices as:
    -     *   /device:GPU:0 -> visible GPU 1 with 1GB memory  (ordinal 10)
    -     *   /device:GPU:1 -> visible GPU 0 with 3GB memory  (ordinal 10)
    -     *   /device:GPU:2 -> visible GPU 1 with 2GB memory  (ordinal 20)
    -     *   /device:GPU:3 -> visible GPU 0 with 4GB memory  (ordinal 20)
    -     * NOTE:
    -     * 1. It's invalid to set both this and "per_process_gpu_memory_fraction"
    -     *    at the same time.
    -     * 2. Currently this setting is per-process, not per-session. Using
    -     *    different settings in different sessions within same process will
    -     *    result in undefined behavior.
    -     * 
    - * - * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; - */ - @java.lang.Override - public java.util.List - getVirtualDevicesOrBuilderList() { - return virtualDevices_; + public interface StreamMergeOptionsOrBuilder extends + // @@protoc_insertion_point(interface_extends:tensorflow.GPUOptions.Experimental.StreamMergeOptions) + com.google.protobuf.MessageOrBuilder { + + /** + *
    +       * If true, the compute stream will be used for host_to_device copy as
    +       * well. It's no longer necessary to record an event before the copy to
    +       * let the copy stream wait for the compute stream to finish. There is
    +       * also no need to wait for the copy to complete before executing the
    +       * callback function.
    +       * 
    + * + * bool merge_host_to_device_stream = 1; + * @return The mergeHostToDeviceStream. + */ + boolean getMergeHostToDeviceStream(); + + /** + *
    +       * If true, the compute stream will be used for device_to_host copy as
    +       * well. It's no longer necessary to record an event before the copy to
    +       * let the copy stream wait for the compute stream to finish.
    +       * 
    + * + * bool merge_device_to_host_stream = 2; + * @return The mergeDeviceToHostStream. + */ + boolean getMergeDeviceToHostStream(); + + /** + *
    +       * If true, the compute stream will be used for device_to_device copy as
    +       * well. It's no longer necessary to record an event before the copy to
    +       * let the copy stream wait for the compute stream of the sending device
    +       * to finish. There is also no need to wait for the compute stream of the
    +       * receiving device to finish if the copy is within the same device.
    +       * 
    + * + * bool merge_device_to_device_stream = 3; + * @return The mergeDeviceToDeviceStream. + */ + boolean getMergeDeviceToDeviceStream(); } /** *
    -     * The multi virtual device settings. If empty (not set), it will create
    -     * single virtual device on each visible GPU, according to the settings
    -     * in "visible_device_list" above. Otherwise, the number of elements in the
    -     * list must be the same as the number of visible GPUs (after
    -     * "visible_device_list" filtering if it is set), and the string represented
    -     * device names (e.g. /device:GPU:<id>) will refer to the virtual
    -     * devices and have the <id> field assigned sequentially starting from 0,
    -     * according to the order of the virtual devices determined by
    -     * device_ordinal and the location in the virtual device list.
    -     * For example,
    -     *   visible_device_list = "1,0"
    -     *   virtual_devices { memory_limit: 1GB memory_limit: 2GB }
    -     *   virtual_devices { memory_limit: 3GB memory_limit: 4GB }
    -     * will create 4 virtual devices as:
    -     *   /device:GPU:0 -> visible GPU 1 with 1GB memory
    -     *   /device:GPU:1 -> visible GPU 1 with 2GB memory
    -     *   /device:GPU:2 -> visible GPU 0 with 3GB memory
    -     *   /device:GPU:3 -> visible GPU 0 with 4GB memory
    -     * but
    -     *   visible_device_list = "1,0"
    -     *   virtual_devices { memory_limit: 1GB memory_limit: 2GB
    -     *                     device_ordinal: 10 device_ordinal: 20}
    -     *   virtual_devices { memory_limit: 3GB memory_limit: 4GB
    -     *                     device_ordinal: 10 device_ordinal: 20}
    -     * will create 4 virtual devices as:
    -     *   /device:GPU:0 -> visible GPU 1 with 1GB memory  (ordinal 10)
    -     *   /device:GPU:1 -> visible GPU 0 with 3GB memory  (ordinal 10)
    -     *   /device:GPU:2 -> visible GPU 1 with 2GB memory  (ordinal 20)
    -     *   /device:GPU:3 -> visible GPU 0 with 4GB memory  (ordinal 20)
    -     * NOTE:
    -     * 1. It's invalid to set both this and "per_process_gpu_memory_fraction"
    -     *    at the same time.
    -     * 2. Currently this setting is per-process, not per-session. Using
    -     *    different settings in different sessions within same process will
    -     *    result in undefined behavior.
    +     * Whether to merge data transfer streams into the compute stream in the
    +     * same stream group. Stream merging helps reduce the overhead caused by
    +     * stream synchronization, especially when data transfers are frequent. For
    +     * example, setting "merge_host_to_device_stream = true" will make the
    +     * compute stream responsible for both computation and host to device memory
    +     * copy.
          * 
    * - * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; + * Protobuf type {@code tensorflow.GPUOptions.Experimental.StreamMergeOptions} */ - @java.lang.Override - public int getVirtualDevicesCount() { - return virtualDevices_.size(); - } - /** - *
    -     * The multi virtual device settings. If empty (not set), it will create
    -     * single virtual device on each visible GPU, according to the settings
    -     * in "visible_device_list" above. Otherwise, the number of elements in the
    -     * list must be the same as the number of visible GPUs (after
    -     * "visible_device_list" filtering if it is set), and the string represented
    -     * device names (e.g. /device:GPU:<id>) will refer to the virtual
    -     * devices and have the <id> field assigned sequentially starting from 0,
    -     * according to the order of the virtual devices determined by
    -     * device_ordinal and the location in the virtual device list.
    -     * For example,
    -     *   visible_device_list = "1,0"
    -     *   virtual_devices { memory_limit: 1GB memory_limit: 2GB }
    -     *   virtual_devices { memory_limit: 3GB memory_limit: 4GB }
    -     * will create 4 virtual devices as:
    -     *   /device:GPU:0 -> visible GPU 1 with 1GB memory
    -     *   /device:GPU:1 -> visible GPU 1 with 2GB memory
    -     *   /device:GPU:2 -> visible GPU 0 with 3GB memory
    -     *   /device:GPU:3 -> visible GPU 0 with 4GB memory
    -     * but
    -     *   visible_device_list = "1,0"
    -     *   virtual_devices { memory_limit: 1GB memory_limit: 2GB
    -     *                     device_ordinal: 10 device_ordinal: 20}
    -     *   virtual_devices { memory_limit: 3GB memory_limit: 4GB
    -     *                     device_ordinal: 10 device_ordinal: 20}
    -     * will create 4 virtual devices as:
    -     *   /device:GPU:0 -> visible GPU 1 with 1GB memory  (ordinal 10)
    -     *   /device:GPU:1 -> visible GPU 0 with 3GB memory  (ordinal 10)
    -     *   /device:GPU:2 -> visible GPU 1 with 2GB memory  (ordinal 20)
    -     *   /device:GPU:3 -> visible GPU 0 with 4GB memory  (ordinal 20)
    -     * NOTE:
    -     * 1. It's invalid to set both this and "per_process_gpu_memory_fraction"
    -     *    at the same time.
    +    public static final class StreamMergeOptions extends
    +        com.google.protobuf.GeneratedMessage implements
    +        // @@protoc_insertion_point(message_implements:tensorflow.GPUOptions.Experimental.StreamMergeOptions)
    +        StreamMergeOptionsOrBuilder {
    +    private static final long serialVersionUID = 0L;
    +      static {
    +        com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +          com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +          /* major= */ 4,
    +          /* minor= */ 28,
    +          /* patch= */ 3,
    +          /* suffix= */ "",
    +          StreamMergeOptions.class.getName());
    +      }
    +      // Use StreamMergeOptions.newBuilder() to construct.
    +      private StreamMergeOptions(com.google.protobuf.GeneratedMessage.Builder builder) {
    +        super(builder);
    +      }
    +      private StreamMergeOptions() {
    +      }
    +
    +      public static final com.google.protobuf.Descriptors.Descriptor
    +          getDescriptor() {
    +        return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_GPUOptions_Experimental_StreamMergeOptions_descriptor;
    +      }
    +
    +      @java.lang.Override
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
    +          internalGetFieldAccessorTable() {
    +        return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_GPUOptions_Experimental_StreamMergeOptions_fieldAccessorTable
    +            .ensureFieldAccessorsInitialized(
    +                org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions.class, org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions.Builder.class);
    +      }
    +
    +      public static final int MERGE_HOST_TO_DEVICE_STREAM_FIELD_NUMBER = 1;
    +      private boolean mergeHostToDeviceStream_ = false;
    +      /**
    +       * 
    +       * If true, the compute stream will be used for host_to_device copy as
    +       * well. It's no longer necessary to record an event before the copy to
    +       * let the copy stream wait for the compute stream to finish. There is
    +       * also no need to wait for the copy to complete before executing the
    +       * callback function.
    +       * 
    + * + * bool merge_host_to_device_stream = 1; + * @return The mergeHostToDeviceStream. + */ + @java.lang.Override + public boolean getMergeHostToDeviceStream() { + return mergeHostToDeviceStream_; + } + + public static final int MERGE_DEVICE_TO_HOST_STREAM_FIELD_NUMBER = 2; + private boolean mergeDeviceToHostStream_ = false; + /** + *
    +       * If true, the compute stream will be used for device_to_host copy as
    +       * well. It's no longer necessary to record an event before the copy to
    +       * let the copy stream wait for the compute stream to finish.
    +       * 
    + * + * bool merge_device_to_host_stream = 2; + * @return The mergeDeviceToHostStream. + */ + @java.lang.Override + public boolean getMergeDeviceToHostStream() { + return mergeDeviceToHostStream_; + } + + public static final int MERGE_DEVICE_TO_DEVICE_STREAM_FIELD_NUMBER = 3; + private boolean mergeDeviceToDeviceStream_ = false; + /** + *
    +       * If true, the compute stream will be used for device_to_device copy as
    +       * well. It's no longer necessary to record an event before the copy to
    +       * let the copy stream wait for the compute stream of the sending device
    +       * to finish. There is also no need to wait for the compute stream of the
    +       * receiving device to finish if the copy is within the same device.
    +       * 
    + * + * bool merge_device_to_device_stream = 3; + * @return The mergeDeviceToDeviceStream. + */ + @java.lang.Override + public boolean getMergeDeviceToDeviceStream() { + return mergeDeviceToDeviceStream_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (mergeHostToDeviceStream_ != false) { + output.writeBool(1, mergeHostToDeviceStream_); + } + if (mergeDeviceToHostStream_ != false) { + output.writeBool(2, mergeDeviceToHostStream_); + } + if (mergeDeviceToDeviceStream_ != false) { + output.writeBool(3, mergeDeviceToDeviceStream_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (mergeHostToDeviceStream_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(1, mergeHostToDeviceStream_); + } + if (mergeDeviceToHostStream_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(2, mergeDeviceToHostStream_); + } + if (mergeDeviceToDeviceStream_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(3, mergeDeviceToDeviceStream_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions)) { + return super.equals(obj); + } + org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions other = (org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions) obj; + + if (getMergeHostToDeviceStream() + != other.getMergeHostToDeviceStream()) return false; + if (getMergeDeviceToHostStream() + != other.getMergeDeviceToHostStream()) return false; + if (getMergeDeviceToDeviceStream() + != other.getMergeDeviceToDeviceStream()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + MERGE_HOST_TO_DEVICE_STREAM_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getMergeHostToDeviceStream()); + hash = (37 * hash) + MERGE_DEVICE_TO_HOST_STREAM_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getMergeDeviceToHostStream()); + hash = (37 * hash) + MERGE_DEVICE_TO_DEVICE_STREAM_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getMergeDeviceToDeviceStream()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input); + } + + public static org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
    +       * Whether to merge data transfer streams into the compute stream in the
    +       * same stream group. Stream merging helps reduce the overhead caused by
    +       * stream synchronization, especially when data transfers are frequent. For
    +       * example, setting "merge_host_to_device_stream = true" will make the
    +       * compute stream responsible for both computation and host to device memory
    +       * copy.
    +       * 
    + * + * Protobuf type {@code tensorflow.GPUOptions.Experimental.StreamMergeOptions} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessage.Builder implements + // @@protoc_insertion_point(builder_implements:tensorflow.GPUOptions.Experimental.StreamMergeOptions) + org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptionsOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_GPUOptions_Experimental_StreamMergeOptions_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_GPUOptions_Experimental_StreamMergeOptions_fieldAccessorTable + .ensureFieldAccessorsInitialized( + org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions.class, org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions.Builder.class); + } + + // Construct using org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + mergeHostToDeviceStream_ = false; + mergeDeviceToHostStream_ = false; + mergeDeviceToDeviceStream_ = false; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_GPUOptions_Experimental_StreamMergeOptions_descriptor; + } + + @java.lang.Override + public org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions getDefaultInstanceForType() { + return org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions.getDefaultInstance(); + } + + @java.lang.Override + public org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions build() { + org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions buildPartial() { + org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions result = new org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.mergeHostToDeviceStream_ = mergeHostToDeviceStream_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.mergeDeviceToHostStream_ = mergeDeviceToHostStream_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.mergeDeviceToDeviceStream_ = mergeDeviceToDeviceStream_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions) { + return mergeFrom((org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions other) { + if (other == org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions.getDefaultInstance()) return this; + if (other.getMergeHostToDeviceStream() != false) { + setMergeHostToDeviceStream(other.getMergeHostToDeviceStream()); + } + if (other.getMergeDeviceToHostStream() != false) { + setMergeDeviceToHostStream(other.getMergeDeviceToHostStream()); + } + if (other.getMergeDeviceToDeviceStream() != false) { + setMergeDeviceToDeviceStream(other.getMergeDeviceToDeviceStream()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + mergeHostToDeviceStream_ = input.readBool(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 16: { + mergeDeviceToHostStream_ = input.readBool(); + bitField0_ |= 0x00000002; + break; + } // case 16 + case 24: { + mergeDeviceToDeviceStream_ = input.readBool(); + bitField0_ |= 0x00000004; + break; + } // case 24 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private boolean mergeHostToDeviceStream_ ; + /** + *
    +         * If true, the compute stream will be used for host_to_device copy as
    +         * well. It's no longer necessary to record an event before the copy to
    +         * let the copy stream wait for the compute stream to finish. There is
    +         * also no need to wait for the copy to complete before executing the
    +         * callback function.
    +         * 
    + * + * bool merge_host_to_device_stream = 1; + * @return The mergeHostToDeviceStream. + */ + @java.lang.Override + public boolean getMergeHostToDeviceStream() { + return mergeHostToDeviceStream_; + } + /** + *
    +         * If true, the compute stream will be used for host_to_device copy as
    +         * well. It's no longer necessary to record an event before the copy to
    +         * let the copy stream wait for the compute stream to finish. There is
    +         * also no need to wait for the copy to complete before executing the
    +         * callback function.
    +         * 
    + * + * bool merge_host_to_device_stream = 1; + * @param value The mergeHostToDeviceStream to set. + * @return This builder for chaining. + */ + public Builder setMergeHostToDeviceStream(boolean value) { + + mergeHostToDeviceStream_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + *
    +         * If true, the compute stream will be used for host_to_device copy as
    +         * well. It's no longer necessary to record an event before the copy to
    +         * let the copy stream wait for the compute stream to finish. There is
    +         * also no need to wait for the copy to complete before executing the
    +         * callback function.
    +         * 
    + * + * bool merge_host_to_device_stream = 1; + * @return This builder for chaining. + */ + public Builder clearMergeHostToDeviceStream() { + bitField0_ = (bitField0_ & ~0x00000001); + mergeHostToDeviceStream_ = false; + onChanged(); + return this; + } + + private boolean mergeDeviceToHostStream_ ; + /** + *
    +         * If true, the compute stream will be used for device_to_host copy as
    +         * well. It's no longer necessary to record an event before the copy to
    +         * let the copy stream wait for the compute stream to finish.
    +         * 
    + * + * bool merge_device_to_host_stream = 2; + * @return The mergeDeviceToHostStream. + */ + @java.lang.Override + public boolean getMergeDeviceToHostStream() { + return mergeDeviceToHostStream_; + } + /** + *
    +         * If true, the compute stream will be used for device_to_host copy as
    +         * well. It's no longer necessary to record an event before the copy to
    +         * let the copy stream wait for the compute stream to finish.
    +         * 
    + * + * bool merge_device_to_host_stream = 2; + * @param value The mergeDeviceToHostStream to set. + * @return This builder for chaining. + */ + public Builder setMergeDeviceToHostStream(boolean value) { + + mergeDeviceToHostStream_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + *
    +         * If true, the compute stream will be used for device_to_host copy as
    +         * well. It's no longer necessary to record an event before the copy to
    +         * let the copy stream wait for the compute stream to finish.
    +         * 
    + * + * bool merge_device_to_host_stream = 2; + * @return This builder for chaining. + */ + public Builder clearMergeDeviceToHostStream() { + bitField0_ = (bitField0_ & ~0x00000002); + mergeDeviceToHostStream_ = false; + onChanged(); + return this; + } + + private boolean mergeDeviceToDeviceStream_ ; + /** + *
    +         * If true, the compute stream will be used for device_to_device copy as
    +         * well. It's no longer necessary to record an event before the copy to
    +         * let the copy stream wait for the compute stream of the sending device
    +         * to finish. There is also no need to wait for the compute stream of the
    +         * receiving device to finish if the copy is within the same device.
    +         * 
    + * + * bool merge_device_to_device_stream = 3; + * @return The mergeDeviceToDeviceStream. + */ + @java.lang.Override + public boolean getMergeDeviceToDeviceStream() { + return mergeDeviceToDeviceStream_; + } + /** + *
    +         * If true, the compute stream will be used for device_to_device copy as
    +         * well. It's no longer necessary to record an event before the copy to
    +         * let the copy stream wait for the compute stream of the sending device
    +         * to finish. There is also no need to wait for the compute stream of the
    +         * receiving device to finish if the copy is within the same device.
    +         * 
    + * + * bool merge_device_to_device_stream = 3; + * @param value The mergeDeviceToDeviceStream to set. + * @return This builder for chaining. + */ + public Builder setMergeDeviceToDeviceStream(boolean value) { + + mergeDeviceToDeviceStream_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + /** + *
    +         * If true, the compute stream will be used for device_to_device copy as
    +         * well. It's no longer necessary to record an event before the copy to
    +         * let the copy stream wait for the compute stream of the sending device
    +         * to finish. There is also no need to wait for the compute stream of the
    +         * receiving device to finish if the copy is within the same device.
    +         * 
    + * + * bool merge_device_to_device_stream = 3; + * @return This builder for chaining. + */ + public Builder clearMergeDeviceToDeviceStream() { + bitField0_ = (bitField0_ & ~0x00000004); + mergeDeviceToDeviceStream_ = false; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:tensorflow.GPUOptions.Experimental.StreamMergeOptions) + } + + // @@protoc_insertion_point(class_scope:tensorflow.GPUOptions.Experimental.StreamMergeOptions) + private static final org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions(); + } + + public static org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public StreamMergeOptions parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + private int bitField0_; + public static final int VIRTUAL_DEVICES_FIELD_NUMBER = 1; + @SuppressWarnings("serial") + private java.util.List virtualDevices_; + /** + *
    +     * The multi virtual device settings. If empty (not set), it will create
    +     * single virtual device on each visible GPU, according to the settings
    +     * in "visible_device_list" above. Otherwise, the number of elements in the
    +     * list must be the same as the number of visible GPUs (after
    +     * "visible_device_list" filtering if it is set), and the string represented
    +     * device names (e.g. /device:GPU:<id>) will refer to the virtual
    +     * devices and have the <id> field assigned sequentially starting from 0,
    +     * according to the order of the virtual devices determined by
    +     * device_ordinal and the location in the virtual device list.
    +     *
    +     * For example,
    +     * visible_device_list = "1,0"
    +     * virtual_devices { memory_limit: 1GB memory_limit: 2GB }
    +     * virtual_devices { memory_limit: 3GB memory_limit: 4GB }
    +     * will create 4 virtual devices as:
    +     * /device:GPU:0 -> visible GPU 1 with 1GB memory
    +     * /device:GPU:1 -> visible GPU 1 with 2GB memory
    +     * /device:GPU:2 -> visible GPU 0 with 3GB memory
    +     * /device:GPU:3 -> visible GPU 0 with 4GB memory
    +     *
    +     * but
    +     * visible_device_list = "1,0"
    +     * virtual_devices { memory_limit: 1GB memory_limit: 2GB
    +     * device_ordinal: 10 device_ordinal: 20}
    +     * virtual_devices { memory_limit: 3GB memory_limit: 4GB
    +     * device_ordinal: 10 device_ordinal: 20}
    +     * will create 4 virtual devices as:
    +     * /device:GPU:0 -> visible GPU 1 with 1GB memory  (ordinal 10)
    +     * /device:GPU:1 -> visible GPU 0 with 3GB memory  (ordinal 10)
    +     * /device:GPU:2 -> visible GPU 1 with 2GB memory  (ordinal 20)
    +     * /device:GPU:3 -> visible GPU 0 with 4GB memory  (ordinal 20)
    +     *
    +     * NOTE:
    +     * 1. It's invalid to set both this and "per_process_gpu_memory_fraction"
    +     * at the same time.
    +     * 2. Currently this setting is per-process, not per-session. Using
    +     * different settings in different sessions within same process will
    +     * result in undefined behavior.
    +     * 
    + * + * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; + */ + @java.lang.Override + public java.util.List getVirtualDevicesList() { + return virtualDevices_; + } + /** + *
    +     * The multi virtual device settings. If empty (not set), it will create
    +     * single virtual device on each visible GPU, according to the settings
    +     * in "visible_device_list" above. Otherwise, the number of elements in the
    +     * list must be the same as the number of visible GPUs (after
    +     * "visible_device_list" filtering if it is set), and the string represented
    +     * device names (e.g. /device:GPU:<id>) will refer to the virtual
    +     * devices and have the <id> field assigned sequentially starting from 0,
    +     * according to the order of the virtual devices determined by
    +     * device_ordinal and the location in the virtual device list.
    +     *
    +     * For example,
    +     * visible_device_list = "1,0"
    +     * virtual_devices { memory_limit: 1GB memory_limit: 2GB }
    +     * virtual_devices { memory_limit: 3GB memory_limit: 4GB }
    +     * will create 4 virtual devices as:
    +     * /device:GPU:0 -> visible GPU 1 with 1GB memory
    +     * /device:GPU:1 -> visible GPU 1 with 2GB memory
    +     * /device:GPU:2 -> visible GPU 0 with 3GB memory
    +     * /device:GPU:3 -> visible GPU 0 with 4GB memory
    +     *
    +     * but
    +     * visible_device_list = "1,0"
    +     * virtual_devices { memory_limit: 1GB memory_limit: 2GB
    +     * device_ordinal: 10 device_ordinal: 20}
    +     * virtual_devices { memory_limit: 3GB memory_limit: 4GB
    +     * device_ordinal: 10 device_ordinal: 20}
    +     * will create 4 virtual devices as:
    +     * /device:GPU:0 -> visible GPU 1 with 1GB memory  (ordinal 10)
    +     * /device:GPU:1 -> visible GPU 0 with 3GB memory  (ordinal 10)
    +     * /device:GPU:2 -> visible GPU 1 with 2GB memory  (ordinal 20)
    +     * /device:GPU:3 -> visible GPU 0 with 4GB memory  (ordinal 20)
    +     *
    +     * NOTE:
    +     * 1. It's invalid to set both this and "per_process_gpu_memory_fraction"
    +     * at the same time.
    +     * 2. Currently this setting is per-process, not per-session. Using
    +     * different settings in different sessions within same process will
    +     * result in undefined behavior.
    +     * 
    + * + * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; + */ + @java.lang.Override + public java.util.List + getVirtualDevicesOrBuilderList() { + return virtualDevices_; + } + /** + *
    +     * The multi virtual device settings. If empty (not set), it will create
    +     * single virtual device on each visible GPU, according to the settings
    +     * in "visible_device_list" above. Otherwise, the number of elements in the
    +     * list must be the same as the number of visible GPUs (after
    +     * "visible_device_list" filtering if it is set), and the string represented
    +     * device names (e.g. /device:GPU:<id>) will refer to the virtual
    +     * devices and have the <id> field assigned sequentially starting from 0,
    +     * according to the order of the virtual devices determined by
    +     * device_ordinal and the location in the virtual device list.
    +     *
    +     * For example,
    +     * visible_device_list = "1,0"
    +     * virtual_devices { memory_limit: 1GB memory_limit: 2GB }
    +     * virtual_devices { memory_limit: 3GB memory_limit: 4GB }
    +     * will create 4 virtual devices as:
    +     * /device:GPU:0 -> visible GPU 1 with 1GB memory
    +     * /device:GPU:1 -> visible GPU 1 with 2GB memory
    +     * /device:GPU:2 -> visible GPU 0 with 3GB memory
    +     * /device:GPU:3 -> visible GPU 0 with 4GB memory
    +     *
    +     * but
    +     * visible_device_list = "1,0"
    +     * virtual_devices { memory_limit: 1GB memory_limit: 2GB
    +     * device_ordinal: 10 device_ordinal: 20}
    +     * virtual_devices { memory_limit: 3GB memory_limit: 4GB
    +     * device_ordinal: 10 device_ordinal: 20}
    +     * will create 4 virtual devices as:
    +     * /device:GPU:0 -> visible GPU 1 with 1GB memory  (ordinal 10)
    +     * /device:GPU:1 -> visible GPU 0 with 3GB memory  (ordinal 10)
    +     * /device:GPU:2 -> visible GPU 1 with 2GB memory  (ordinal 20)
    +     * /device:GPU:3 -> visible GPU 0 with 4GB memory  (ordinal 20)
    +     *
    +     * NOTE:
    +     * 1. It's invalid to set both this and "per_process_gpu_memory_fraction"
    +     * at the same time.
    +     * 2. Currently this setting is per-process, not per-session. Using
    +     * different settings in different sessions within same process will
    +     * result in undefined behavior.
    +     * 
    + * + * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; + */ + @java.lang.Override + public int getVirtualDevicesCount() { + return virtualDevices_.size(); + } + /** + *
    +     * The multi virtual device settings. If empty (not set), it will create
    +     * single virtual device on each visible GPU, according to the settings
    +     * in "visible_device_list" above. Otherwise, the number of elements in the
    +     * list must be the same as the number of visible GPUs (after
    +     * "visible_device_list" filtering if it is set), and the string represented
    +     * device names (e.g. /device:GPU:<id>) will refer to the virtual
    +     * devices and have the <id> field assigned sequentially starting from 0,
    +     * according to the order of the virtual devices determined by
    +     * device_ordinal and the location in the virtual device list.
    +     *
    +     * For example,
    +     * visible_device_list = "1,0"
    +     * virtual_devices { memory_limit: 1GB memory_limit: 2GB }
    +     * virtual_devices { memory_limit: 3GB memory_limit: 4GB }
    +     * will create 4 virtual devices as:
    +     * /device:GPU:0 -> visible GPU 1 with 1GB memory
    +     * /device:GPU:1 -> visible GPU 1 with 2GB memory
    +     * /device:GPU:2 -> visible GPU 0 with 3GB memory
    +     * /device:GPU:3 -> visible GPU 0 with 4GB memory
    +     *
    +     * but
    +     * visible_device_list = "1,0"
    +     * virtual_devices { memory_limit: 1GB memory_limit: 2GB
    +     * device_ordinal: 10 device_ordinal: 20}
    +     * virtual_devices { memory_limit: 3GB memory_limit: 4GB
    +     * device_ordinal: 10 device_ordinal: 20}
    +     * will create 4 virtual devices as:
    +     * /device:GPU:0 -> visible GPU 1 with 1GB memory  (ordinal 10)
    +     * /device:GPU:1 -> visible GPU 0 with 3GB memory  (ordinal 10)
    +     * /device:GPU:2 -> visible GPU 1 with 2GB memory  (ordinal 20)
    +     * /device:GPU:3 -> visible GPU 0 with 4GB memory  (ordinal 20)
    +     *
    +     * NOTE:
    +     * 1. It's invalid to set both this and "per_process_gpu_memory_fraction"
    +     * at the same time.
          * 2. Currently this setting is per-process, not per-session. Using
    -     *    different settings in different sessions within same process will
    -     *    result in undefined behavior.
    +     * different settings in different sessions within same process will
    +     * result in undefined behavior.
          * 
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -2033,32 +2830,35 @@ public org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices getVirtualDev * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -2070,7 +2870,7 @@ public org.tensorflow.proto.GPUOptions.Experimental.VirtualDevicesOrBuilder getV } public static final int NUM_VIRTUAL_DEVICES_PER_GPU_FIELD_NUMBER = 15; - private int numVirtualDevicesPerGpu_; + private int numVirtualDevicesPerGpu_ = 0; /** *
          * The number of virtual devices to create on each visible GPU. The
    @@ -2088,7 +2888,7 @@ public int getNumVirtualDevicesPerGpu() {
         }
     
         public static final int USE_UNIFIED_MEMORY_FIELD_NUMBER = 2;
    -    private boolean useUnifiedMemory_;
    +    private boolean useUnifiedMemory_ = false;
         /**
          * 
          * If true, uses CUDA unified memory for memory allocations. If
    @@ -2109,7 +2909,7 @@ public boolean getUseUnifiedMemory() {
         }
     
         public static final int NUM_DEV_TO_DEV_COPY_STREAMS_FIELD_NUMBER = 3;
    -    private int numDevToDevCopyStreams_;
    +    private int numDevToDevCopyStreams_ = 0;
         /**
          * 
          * If > 1, the number of device-to-device copy streams to create
    @@ -2126,7 +2926,8 @@ public int getNumDevToDevCopyStreams() {
         }
     
         public static final int COLLECTIVE_RING_ORDER_FIELD_NUMBER = 4;
    -    private volatile java.lang.Object collectiveRingOrder_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object collectiveRingOrder_ = "";
         /**
          * 
          * If non-empty, defines a good GPU ring order on a single worker based on
    @@ -2182,7 +2983,7 @@ public java.lang.String getCollectiveRingOrder() {
         }
     
         public static final int TIMESTAMPED_ALLOCATOR_FIELD_NUMBER = 5;
    -    private boolean timestampedAllocator_;
    +    private boolean timestampedAllocator_ = false;
         /**
          * 
          * If true then extra work is done by GPUDevice and GPUBFCAllocator to
    @@ -2200,12 +3001,13 @@ public boolean getTimestampedAllocator() {
         }
     
         public static final int KERNEL_TRACKER_MAX_INTERVAL_FIELD_NUMBER = 7;
    -    private int kernelTrackerMaxInterval_;
    +    private int kernelTrackerMaxInterval_ = 0;
         /**
          * 
          * Parameters for GPUKernelTracker.  By default no kernel tracking is done.
          * Note that timestamped_allocator is only effective if some tracking is
          * specified.
    +     *
          * If kernel_tracker_max_interval = n > 0, then a tracking event
          * is inserted after every n kernels without an event.
          * 
    @@ -2219,7 +3021,7 @@ public int getKernelTrackerMaxInterval() { } public static final int KERNEL_TRACKER_MAX_BYTES_FIELD_NUMBER = 8; - private int kernelTrackerMaxBytes_; + private int kernelTrackerMaxBytes_ = 0; /** *
          * If kernel_tracker_max_bytes = n > 0, then a tracking event is
    @@ -2238,7 +3040,7 @@ public int getKernelTrackerMaxBytes() {
         }
     
         public static final int KERNEL_TRACKER_MAX_PENDING_FIELD_NUMBER = 9;
    -    private int kernelTrackerMaxPending_;
    +    private int kernelTrackerMaxPending_ = 0;
         /**
          * 
          * If kernel_tracker_max_pending > 0 then no more than this many
    @@ -2256,7 +3058,7 @@ public int getKernelTrackerMaxPending() {
         }
     
         public static final int INTERNAL_FRAGMENTATION_FRACTION_FIELD_NUMBER = 10;
    -    private double internalFragmentationFraction_;
    +    private double internalFragmentationFraction_ = 0D;
         /**
          * 
          * BFC Allocator can return an allocated chunk of memory upto 2x the
    @@ -2279,7 +3081,7 @@ public double getInternalFragmentationFraction() {
         }
     
         public static final int USE_CUDA_MALLOC_ASYNC_FIELD_NUMBER = 11;
    -    private boolean useCudaMallocAsync_;
    +    private boolean useCudaMallocAsync_ = false;
         /**
          * 
          * When true, use CUDA cudaMallocAsync API instead of TF gpu allocator.
    @@ -2294,7 +3096,7 @@ public boolean getUseCudaMallocAsync() {
         }
     
         public static final int DISALLOW_RETRY_ON_ALLOCATION_FAILURE_FIELD_NUMBER = 12;
    -    private boolean disallowRetryOnAllocationFailure_;
    +    private boolean disallowRetryOnAllocationFailure_ = false;
         /**
          * 
          * By default, BFCAllocator may sleep when it runs out of memory, in the
    @@ -2311,7 +3113,7 @@ public boolean getDisallowRetryOnAllocationFailure() {
         }
     
         public static final int GPU_HOST_MEM_LIMIT_IN_MB_FIELD_NUMBER = 13;
    -    private float gpuHostMemLimitInMb_;
    +    private float gpuHostMemLimitInMb_ = 0F;
         /**
          * 
          * Memory limit for "GPU host allocator", aka pinned memory allocator.  This
    @@ -2327,12 +3129,13 @@ public float getGpuHostMemLimitInMb() {
         }
     
         public static final int GPU_HOST_MEM_DISALLOW_GROWTH_FIELD_NUMBER = 14;
    -    private boolean gpuHostMemDisallowGrowth_;
    +    private boolean gpuHostMemDisallowGrowth_ = false;
         /**
          * 
          * If true, then the host allocator allocates its max memory all upfront and
          * never grows.  This can be useful for latency-sensitive systems, because
          * growing the GPU host memory pool can be expensive.
    +     *
          * You probably only want to use this in combination with
          * gpu_host_mem_limit_in_mb, because the default GPU host memory limit is
          * quite high.
    @@ -2347,7 +3150,7 @@ public boolean getGpuHostMemDisallowGrowth() {
         }
     
         public static final int GPU_SYSTEM_MEMORY_SIZE_IN_MB_FIELD_NUMBER = 16;
    -    private int gpuSystemMemorySizeInMb_;
    +    private int gpuSystemMemorySizeInMb_ = 0;
         /**
          * 
          * Memory limit for gpu system. This can also be set by
    @@ -2365,6 +3168,64 @@ public int getGpuSystemMemorySizeInMb() {
           return gpuSystemMemorySizeInMb_;
         }
     
    +    public static final int POPULATE_PJRT_GPU_CLIENT_CREATION_INFO_FIELD_NUMBER = 17;
    +    private boolean populatePjrtGpuClientCreationInfo_ = false;
    +    /**
    +     * 
    +     * If true, save information needed for created a PjRt GPU client for
    +     * creating a client with remote devices.
    +     * 
    + * + * bool populate_pjrt_gpu_client_creation_info = 17; + * @return The populatePjrtGpuClientCreationInfo. + */ + @java.lang.Override + public boolean getPopulatePjrtGpuClientCreationInfo() { + return populatePjrtGpuClientCreationInfo_; + } + + public static final int NODE_ID_FIELD_NUMBER = 18; + private int nodeId_ = 0; + /** + *
    +     * node_id for use when creating a PjRt GPU client with remote devices,
    +     * which enumerates jobs*tasks from a ServerDef.
    +     * 
    + * + * int32 node_id = 18; + * @return The nodeId. + */ + @java.lang.Override + public int getNodeId() { + return nodeId_; + } + + public static final int STREAM_MERGE_OPTIONS_FIELD_NUMBER = 19; + private org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions streamMergeOptions_; + /** + * .tensorflow.GPUOptions.Experimental.StreamMergeOptions stream_merge_options = 19; + * @return Whether the streamMergeOptions field is set. + */ + @java.lang.Override + public boolean hasStreamMergeOptions() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * .tensorflow.GPUOptions.Experimental.StreamMergeOptions stream_merge_options = 19; + * @return The streamMergeOptions. + */ + @java.lang.Override + public org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions getStreamMergeOptions() { + return streamMergeOptions_ == null ? org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions.getDefaultInstance() : streamMergeOptions_; + } + /** + * .tensorflow.GPUOptions.Experimental.StreamMergeOptions stream_merge_options = 19; + */ + @java.lang.Override + public org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptionsOrBuilder getStreamMergeOptionsOrBuilder() { + return streamMergeOptions_ == null ? org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions.getDefaultInstance() : streamMergeOptions_; + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -2388,8 +3249,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (numDevToDevCopyStreams_ != 0) { output.writeInt32(3, numDevToDevCopyStreams_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(collectiveRingOrder_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 4, collectiveRingOrder_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(collectiveRingOrder_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 4, collectiveRingOrder_); } if (timestampedAllocator_ != false) { output.writeBool(5, timestampedAllocator_); @@ -2424,6 +3285,15 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (gpuSystemMemorySizeInMb_ != 0) { output.writeInt32(16, gpuSystemMemorySizeInMb_); } + if (populatePjrtGpuClientCreationInfo_ != false) { + output.writeBool(17, populatePjrtGpuClientCreationInfo_); + } + if (nodeId_ != 0) { + output.writeInt32(18, nodeId_); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(19, getStreamMergeOptions()); + } getUnknownFields().writeTo(output); } @@ -2445,8 +3315,8 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeInt32Size(3, numDevToDevCopyStreams_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(collectiveRingOrder_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, collectiveRingOrder_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(collectiveRingOrder_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(4, collectiveRingOrder_); } if (timestampedAllocator_ != false) { size += com.google.protobuf.CodedOutputStream @@ -2492,6 +3362,18 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeInt32Size(16, gpuSystemMemorySizeInMb_); } + if (populatePjrtGpuClientCreationInfo_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(17, populatePjrtGpuClientCreationInfo_); + } + if (nodeId_ != 0) { + size += com.google.protobuf.CodedOutputStream + .computeInt32Size(18, nodeId_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(19, getStreamMergeOptions()); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -2539,6 +3421,15 @@ public boolean equals(final java.lang.Object obj) { != other.getGpuHostMemDisallowGrowth()) return false; if (getGpuSystemMemorySizeInMb() != other.getGpuSystemMemorySizeInMb()) return false; + if (getPopulatePjrtGpuClientCreationInfo() + != other.getPopulatePjrtGpuClientCreationInfo()) return false; + if (getNodeId() + != other.getNodeId()) return false; + if (hasStreamMergeOptions() != other.hasStreamMergeOptions()) return false; + if (hasStreamMergeOptions()) { + if (!getStreamMergeOptions() + .equals(other.getStreamMergeOptions())) return false; + } if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -2589,6 +3480,15 @@ public int hashCode() { getGpuHostMemDisallowGrowth()); hash = (37 * hash) + GPU_SYSTEM_MEMORY_SIZE_IN_MB_FIELD_NUMBER; hash = (53 * hash) + getGpuSystemMemorySizeInMb(); + hash = (37 * hash) + POPULATE_PJRT_GPU_CLIENT_CREATION_INFO_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getPopulatePjrtGpuClientCreationInfo()); + hash = (37 * hash) + NODE_ID_FIELD_NUMBER; + hash = (53 * hash) + getNodeId(); + if (hasStreamMergeOptions()) { + hash = (37 * hash) + STREAM_MERGE_OPTIONS_FIELD_NUMBER; + hash = (53 * hash) + getStreamMergeOptions().hashCode(); + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -2628,39 +3528,41 @@ public static org.tensorflow.proto.GPUOptions.Experimental parseFrom( } public static org.tensorflow.proto.GPUOptions.Experimental parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.GPUOptions.Experimental parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.GPUOptions.Experimental parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.GPUOptions.Experimental parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.GPUOptions.Experimental parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.GPUOptions.Experimental parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -2680,7 +3582,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -2688,7 +3590,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.GPUOptions.Experimental} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.GPUOptions.Experimental) org.tensorflow.proto.GPUOptions.ExperimentalOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -2697,7 +3599,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_GPUOptions_Experimental_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -2706,17 +3608,25 @@ public static final class Builder extends // Construct using org.tensorflow.proto.GPUOptions.Experimental.newBuilder() private Builder() { - + maybeForceBuilderInitialization(); } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); - + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage + .alwaysUseFieldBuilders) { + getVirtualDevicesFieldBuilder(); + getStreamMergeOptionsFieldBuilder(); + } } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; if (virtualDevicesBuilder_ == null) { virtualDevices_ = java.util.Collections.emptyList(); } else { @@ -2725,33 +3635,26 @@ public Builder clear() { } bitField0_ = (bitField0_ & ~0x00000001); numVirtualDevicesPerGpu_ = 0; - useUnifiedMemory_ = false; - numDevToDevCopyStreams_ = 0; - collectiveRingOrder_ = ""; - timestampedAllocator_ = false; - kernelTrackerMaxInterval_ = 0; - kernelTrackerMaxBytes_ = 0; - kernelTrackerMaxPending_ = 0; - internalFragmentationFraction_ = 0D; - useCudaMallocAsync_ = false; - disallowRetryOnAllocationFailure_ = false; - gpuHostMemLimitInMb_ = 0F; - gpuHostMemDisallowGrowth_ = false; - gpuSystemMemorySizeInMb_ = 0; - + populatePjrtGpuClientCreationInfo_ = false; + nodeId_ = 0; + streamMergeOptions_ = null; + if (streamMergeOptionsBuilder_ != null) { + streamMergeOptionsBuilder_.dispose(); + streamMergeOptionsBuilder_ = null; + } return this; } @@ -2778,7 +3681,13 @@ public org.tensorflow.proto.GPUOptions.Experimental build() { @java.lang.Override public org.tensorflow.proto.GPUOptions.Experimental buildPartial() { org.tensorflow.proto.GPUOptions.Experimental result = new org.tensorflow.proto.GPUOptions.Experimental(this); - int from_bitField0_ = bitField0_; + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(org.tensorflow.proto.GPUOptions.Experimental result) { if (virtualDevicesBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { virtualDevices_ = java.util.Collections.unmodifiableList(virtualDevices_); @@ -2788,56 +3697,68 @@ public org.tensorflow.proto.GPUOptions.Experimental buildPartial() { } else { result.virtualDevices_ = virtualDevicesBuilder_.build(); } - result.numVirtualDevicesPerGpu_ = numVirtualDevicesPerGpu_; - result.useUnifiedMemory_ = useUnifiedMemory_; - result.numDevToDevCopyStreams_ = numDevToDevCopyStreams_; - result.collectiveRingOrder_ = collectiveRingOrder_; - result.timestampedAllocator_ = timestampedAllocator_; - result.kernelTrackerMaxInterval_ = kernelTrackerMaxInterval_; - result.kernelTrackerMaxBytes_ = kernelTrackerMaxBytes_; - result.kernelTrackerMaxPending_ = kernelTrackerMaxPending_; - result.internalFragmentationFraction_ = internalFragmentationFraction_; - result.useCudaMallocAsync_ = useCudaMallocAsync_; - result.disallowRetryOnAllocationFailure_ = disallowRetryOnAllocationFailure_; - result.gpuHostMemLimitInMb_ = gpuHostMemLimitInMb_; - result.gpuHostMemDisallowGrowth_ = gpuHostMemDisallowGrowth_; - result.gpuSystemMemorySizeInMb_ = gpuSystemMemorySizeInMb_; - onBuilt(); - return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.GPUOptions.Experimental result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.numVirtualDevicesPerGpu_ = numVirtualDevicesPerGpu_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.useUnifiedMemory_ = useUnifiedMemory_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.numDevToDevCopyStreams_ = numDevToDevCopyStreams_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.collectiveRingOrder_ = collectiveRingOrder_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.timestampedAllocator_ = timestampedAllocator_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.kernelTrackerMaxInterval_ = kernelTrackerMaxInterval_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.kernelTrackerMaxBytes_ = kernelTrackerMaxBytes_; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.kernelTrackerMaxPending_ = kernelTrackerMaxPending_; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.internalFragmentationFraction_ = internalFragmentationFraction_; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.useCudaMallocAsync_ = useCudaMallocAsync_; + } + if (((from_bitField0_ & 0x00000800) != 0)) { + result.disallowRetryOnAllocationFailure_ = disallowRetryOnAllocationFailure_; + } + if (((from_bitField0_ & 0x00001000) != 0)) { + result.gpuHostMemLimitInMb_ = gpuHostMemLimitInMb_; + } + if (((from_bitField0_ & 0x00002000) != 0)) { + result.gpuHostMemDisallowGrowth_ = gpuHostMemDisallowGrowth_; + } + if (((from_bitField0_ & 0x00004000) != 0)) { + result.gpuSystemMemorySizeInMb_ = gpuSystemMemorySizeInMb_; + } + if (((from_bitField0_ & 0x00008000) != 0)) { + result.populatePjrtGpuClientCreationInfo_ = populatePjrtGpuClientCreationInfo_; + } + if (((from_bitField0_ & 0x00010000) != 0)) { + result.nodeId_ = nodeId_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00020000) != 0)) { + result.streamMergeOptions_ = streamMergeOptionsBuilder_ == null + ? streamMergeOptions_ + : streamMergeOptionsBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.GPUOptions.Experimental) { @@ -2869,7 +3790,7 @@ public Builder mergeFrom(org.tensorflow.proto.GPUOptions.Experimental other) { virtualDevices_ = other.virtualDevices_; bitField0_ = (bitField0_ & ~0x00000001); virtualDevicesBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getVirtualDevicesFieldBuilder() : null; } else { virtualDevicesBuilder_.addAllMessages(other.virtualDevices_); @@ -2887,6 +3808,7 @@ public Builder mergeFrom(org.tensorflow.proto.GPUOptions.Experimental other) { } if (!other.getCollectiveRingOrder().isEmpty()) { collectiveRingOrder_ = other.collectiveRingOrder_; + bitField0_ |= 0x00000010; onChanged(); } if (other.getTimestampedAllocator() != false) { @@ -2919,6 +3841,15 @@ public Builder mergeFrom(org.tensorflow.proto.GPUOptions.Experimental other) { if (other.getGpuSystemMemorySizeInMb() != 0) { setGpuSystemMemorySizeInMb(other.getGpuSystemMemorySizeInMb()); } + if (other.getPopulatePjrtGpuClientCreationInfo() != false) { + setPopulatePjrtGpuClientCreationInfo(other.getPopulatePjrtGpuClientCreationInfo()); + } + if (other.getNodeId() != 0) { + setNodeId(other.getNodeId()); + } + if (other.hasStreamMergeOptions()) { + mergeStreamMergeOptions(other.getStreamMergeOptions()); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -2960,74 +3891,91 @@ public Builder mergeFrom( } // case 10 case 16: { useUnifiedMemory_ = input.readBool(); - + bitField0_ |= 0x00000004; break; } // case 16 case 24: { numDevToDevCopyStreams_ = input.readInt32(); - + bitField0_ |= 0x00000008; break; } // case 24 case 34: { collectiveRingOrder_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000010; break; } // case 34 case 40: { timestampedAllocator_ = input.readBool(); - + bitField0_ |= 0x00000020; break; } // case 40 case 56: { kernelTrackerMaxInterval_ = input.readInt32(); - + bitField0_ |= 0x00000040; break; } // case 56 case 64: { kernelTrackerMaxBytes_ = input.readInt32(); - + bitField0_ |= 0x00000080; break; } // case 64 case 72: { kernelTrackerMaxPending_ = input.readInt32(); - + bitField0_ |= 0x00000100; break; } // case 72 case 81: { internalFragmentationFraction_ = input.readDouble(); - + bitField0_ |= 0x00000200; break; } // case 81 case 88: { useCudaMallocAsync_ = input.readBool(); - + bitField0_ |= 0x00000400; break; } // case 88 case 96: { disallowRetryOnAllocationFailure_ = input.readBool(); - + bitField0_ |= 0x00000800; break; } // case 96 case 109: { gpuHostMemLimitInMb_ = input.readFloat(); - + bitField0_ |= 0x00001000; break; } // case 109 case 112: { gpuHostMemDisallowGrowth_ = input.readBool(); - + bitField0_ |= 0x00002000; break; } // case 112 case 120: { numVirtualDevicesPerGpu_ = input.readInt32(); - + bitField0_ |= 0x00000002; break; } // case 120 case 128: { gpuSystemMemorySizeInMb_ = input.readInt32(); - + bitField0_ |= 0x00004000; break; } // case 128 + case 136: { + populatePjrtGpuClientCreationInfo_ = input.readBool(); + bitField0_ |= 0x00008000; + break; + } // case 136 + case 144: { + nodeId_ = input.readInt32(); + bitField0_ |= 0x00010000; + break; + } // case 144 + case 154: { + input.readMessage( + getStreamMergeOptionsFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00020000; + break; + } // case 154 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag @@ -3054,7 +4002,7 @@ private void ensureVirtualDevicesIsMutable() { } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices, org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices.Builder, org.tensorflow.proto.GPUOptions.Experimental.VirtualDevicesOrBuilder> virtualDevicesBuilder_; /** @@ -3068,32 +4016,35 @@ private void ensureVirtualDevicesIsMutable() { * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -3116,32 +4067,35 @@ public java.util.List * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -3164,32 +4118,35 @@ public int getVirtualDevicesCount() { * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -3212,32 +4169,35 @@ public org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices getVirtualDev * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -3267,32 +4227,35 @@ public Builder setVirtualDevices( * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -3319,32 +4282,35 @@ public Builder setVirtualDevices( * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -3373,32 +4339,35 @@ public Builder addVirtualDevices(org.tensorflow.proto.GPUOptions.Experimental.Vi * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -3428,32 +4397,35 @@ public Builder addVirtualDevices( * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -3480,32 +4452,35 @@ public Builder addVirtualDevices( * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -3532,32 +4507,35 @@ public Builder addVirtualDevices( * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -3585,32 +4563,35 @@ public Builder addAllVirtualDevices( * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -3636,32 +4617,35 @@ public Builder clearVirtualDevices() { * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -3687,32 +4671,35 @@ public Builder removeVirtualDevices(int index) { * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -3732,32 +4719,35 @@ public org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices.Builder getVi * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -3780,32 +4770,35 @@ public org.tensorflow.proto.GPUOptions.Experimental.VirtualDevicesOrBuilder getV * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -3829,32 +4822,35 @@ public org.tensorflow.proto.GPUOptions.Experimental.VirtualDevicesOrBuilder getV * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -3874,32 +4870,35 @@ public org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices.Builder addVi * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -3920,32 +4919,35 @@ public org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices.Builder addVi * devices and have the <id> field assigned sequentially starting from 0, * according to the order of the virtual devices determined by * device_ordinal and the location in the virtual device list. + * * For example, - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB } - * virtual_devices { memory_limit: 3GB memory_limit: 4GB } + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB } + * virtual_devices { memory_limit: 3GB memory_limit: 4GB } * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory - * /device:GPU:1 -> visible GPU 1 with 2GB memory - * /device:GPU:2 -> visible GPU 0 with 3GB memory - * /device:GPU:3 -> visible GPU 0 with 4GB memory + * /device:GPU:0 -> visible GPU 1 with 1GB memory + * /device:GPU:1 -> visible GPU 1 with 2GB memory + * /device:GPU:2 -> visible GPU 0 with 3GB memory + * /device:GPU:3 -> visible GPU 0 with 4GB memory + * * but - * visible_device_list = "1,0" - * virtual_devices { memory_limit: 1GB memory_limit: 2GB - * device_ordinal: 10 device_ordinal: 20} - * virtual_devices { memory_limit: 3GB memory_limit: 4GB - * device_ordinal: 10 device_ordinal: 20} + * visible_device_list = "1,0" + * virtual_devices { memory_limit: 1GB memory_limit: 2GB + * device_ordinal: 10 device_ordinal: 20} + * virtual_devices { memory_limit: 3GB memory_limit: 4GB + * device_ordinal: 10 device_ordinal: 20} * will create 4 virtual devices as: - * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) - * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) - * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) - * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * /device:GPU:0 -> visible GPU 1 with 1GB memory (ordinal 10) + * /device:GPU:1 -> visible GPU 0 with 3GB memory (ordinal 10) + * /device:GPU:2 -> visible GPU 1 with 2GB memory (ordinal 20) + * /device:GPU:3 -> visible GPU 0 with 4GB memory (ordinal 20) + * * NOTE: * 1. It's invalid to set both this and "per_process_gpu_memory_fraction" - * at the same time. + * at the same time. * 2. Currently this setting is per-process, not per-session. Using - * different settings in different sessions within same process will - * result in undefined behavior. + * different settings in different sessions within same process will + * result in undefined behavior. *
    * * repeated .tensorflow.GPUOptions.Experimental.VirtualDevices virtual_devices = 1; @@ -3954,11 +4956,11 @@ public org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices.Builder addVi getVirtualDevicesBuilderList() { return getVirtualDevicesFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices, org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices.Builder, org.tensorflow.proto.GPUOptions.Experimental.VirtualDevicesOrBuilder> getVirtualDevicesFieldBuilder() { if (virtualDevicesBuilder_ == null) { - virtualDevicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + virtualDevicesBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices, org.tensorflow.proto.GPUOptions.Experimental.VirtualDevices.Builder, org.tensorflow.proto.GPUOptions.Experimental.VirtualDevicesOrBuilder>( virtualDevices_, ((bitField0_ & 0x00000001) != 0), @@ -3998,8 +5000,9 @@ public int getNumVirtualDevicesPerGpu() { * @return This builder for chaining. */ public Builder setNumVirtualDevicesPerGpu(int value) { - + numVirtualDevicesPerGpu_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -4015,7 +5018,7 @@ public Builder setNumVirtualDevicesPerGpu(int value) { * @return This builder for chaining. */ public Builder clearNumVirtualDevicesPerGpu() { - + bitField0_ = (bitField0_ & ~0x00000002); numVirtualDevicesPerGpu_ = 0; onChanged(); return this; @@ -4056,8 +5059,9 @@ public boolean getUseUnifiedMemory() { * @return This builder for chaining. */ public Builder setUseUnifiedMemory(boolean value) { - + useUnifiedMemory_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -4076,7 +5080,7 @@ public Builder setUseUnifiedMemory(boolean value) { * @return This builder for chaining. */ public Builder clearUseUnifiedMemory() { - + bitField0_ = (bitField0_ & ~0x00000004); useUnifiedMemory_ = false; onChanged(); return this; @@ -4109,8 +5113,9 @@ public int getNumDevToDevCopyStreams() { * @return This builder for chaining. */ public Builder setNumDevToDevCopyStreams(int value) { - + numDevToDevCopyStreams_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -4125,7 +5130,7 @@ public Builder setNumDevToDevCopyStreams(int value) { * @return This builder for chaining. */ public Builder clearNumDevToDevCopyStreams() { - + bitField0_ = (bitField0_ & ~0x00000008); numDevToDevCopyStreams_ = 0; onChanged(); return this; @@ -4199,11 +5204,9 @@ public java.lang.String getCollectiveRingOrder() { */ public Builder setCollectiveRingOrder( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } collectiveRingOrder_ = value; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -4221,8 +5224,8 @@ public Builder setCollectiveRingOrder( * @return This builder for chaining. */ public Builder clearCollectiveRingOrder() { - collectiveRingOrder_ = getDefaultInstance().getCollectiveRingOrder(); + bitField0_ = (bitField0_ & ~0x00000010); onChanged(); return this; } @@ -4242,12 +5245,10 @@ public Builder clearCollectiveRingOrder() { */ public Builder setCollectiveRingOrderBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); collectiveRingOrder_ = value; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -4281,8 +5282,9 @@ public boolean getTimestampedAllocator() { * @return This builder for chaining. */ public Builder setTimestampedAllocator(boolean value) { - + timestampedAllocator_ = value; + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -4298,7 +5300,7 @@ public Builder setTimestampedAllocator(boolean value) { * @return This builder for chaining. */ public Builder clearTimestampedAllocator() { - + bitField0_ = (bitField0_ & ~0x00000020); timestampedAllocator_ = false; onChanged(); return this; @@ -4310,6 +5312,7 @@ public Builder clearTimestampedAllocator() { * Parameters for GPUKernelTracker. By default no kernel tracking is done. * Note that timestamped_allocator is only effective if some tracking is * specified. + * * If kernel_tracker_max_interval = n > 0, then a tracking event * is inserted after every n kernels without an event. *
    @@ -4326,6 +5329,7 @@ public int getKernelTrackerMaxInterval() { * Parameters for GPUKernelTracker. By default no kernel tracking is done. * Note that timestamped_allocator is only effective if some tracking is * specified. + * * If kernel_tracker_max_interval = n > 0, then a tracking event * is inserted after every n kernels without an event. *
    @@ -4335,8 +5339,9 @@ public int getKernelTrackerMaxInterval() { * @return This builder for chaining. */ public Builder setKernelTrackerMaxInterval(int value) { - + kernelTrackerMaxInterval_ = value; + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -4345,6 +5350,7 @@ public Builder setKernelTrackerMaxInterval(int value) { * Parameters for GPUKernelTracker. By default no kernel tracking is done. * Note that timestamped_allocator is only effective if some tracking is * specified. + * * If kernel_tracker_max_interval = n > 0, then a tracking event * is inserted after every n kernels without an event. *
    @@ -4353,7 +5359,7 @@ public Builder setKernelTrackerMaxInterval(int value) { * @return This builder for chaining. */ public Builder clearKernelTrackerMaxInterval() { - + bitField0_ = (bitField0_ & ~0x00000040); kernelTrackerMaxInterval_ = 0; onChanged(); return this; @@ -4390,8 +5396,9 @@ public int getKernelTrackerMaxBytes() { * @return This builder for chaining. */ public Builder setKernelTrackerMaxBytes(int value) { - + kernelTrackerMaxBytes_ = value; + bitField0_ |= 0x00000080; onChanged(); return this; } @@ -4408,7 +5415,7 @@ public Builder setKernelTrackerMaxBytes(int value) { * @return This builder for chaining. */ public Builder clearKernelTrackerMaxBytes() { - + bitField0_ = (bitField0_ & ~0x00000080); kernelTrackerMaxBytes_ = 0; onChanged(); return this; @@ -4443,8 +5450,9 @@ public int getKernelTrackerMaxPending() { * @return This builder for chaining. */ public Builder setKernelTrackerMaxPending(int value) { - + kernelTrackerMaxPending_ = value; + bitField0_ |= 0x00000100; onChanged(); return this; } @@ -4460,7 +5468,7 @@ public Builder setKernelTrackerMaxPending(int value) { * @return This builder for chaining. */ public Builder clearKernelTrackerMaxPending() { - + bitField0_ = (bitField0_ & ~0x00000100); kernelTrackerMaxPending_ = 0; onChanged(); return this; @@ -4505,8 +5513,9 @@ public double getInternalFragmentationFraction() { * @return This builder for chaining. */ public Builder setInternalFragmentationFraction(double value) { - + internalFragmentationFraction_ = value; + bitField0_ |= 0x00000200; onChanged(); return this; } @@ -4527,7 +5536,7 @@ public Builder setInternalFragmentationFraction(double value) { * @return This builder for chaining. */ public Builder clearInternalFragmentationFraction() { - + bitField0_ = (bitField0_ & ~0x00000200); internalFragmentationFraction_ = 0D; onChanged(); return this; @@ -4556,8 +5565,9 @@ public boolean getUseCudaMallocAsync() { * @return This builder for chaining. */ public Builder setUseCudaMallocAsync(boolean value) { - + useCudaMallocAsync_ = value; + bitField0_ |= 0x00000400; onChanged(); return this; } @@ -4570,7 +5580,7 @@ public Builder setUseCudaMallocAsync(boolean value) { * @return This builder for chaining. */ public Builder clearUseCudaMallocAsync() { - + bitField0_ = (bitField0_ & ~0x00000400); useCudaMallocAsync_ = false; onChanged(); return this; @@ -4603,8 +5613,9 @@ public boolean getDisallowRetryOnAllocationFailure() { * @return This builder for chaining. */ public Builder setDisallowRetryOnAllocationFailure(boolean value) { - + disallowRetryOnAllocationFailure_ = value; + bitField0_ |= 0x00000800; onChanged(); return this; } @@ -4619,7 +5630,7 @@ public Builder setDisallowRetryOnAllocationFailure(boolean value) { * @return This builder for chaining. */ public Builder clearDisallowRetryOnAllocationFailure() { - + bitField0_ = (bitField0_ & ~0x00000800); disallowRetryOnAllocationFailure_ = false; onChanged(); return this; @@ -4650,8 +5661,9 @@ public float getGpuHostMemLimitInMb() { * @return This builder for chaining. */ public Builder setGpuHostMemLimitInMb(float value) { - + gpuHostMemLimitInMb_ = value; + bitField0_ |= 0x00001000; onChanged(); return this; } @@ -4665,7 +5677,7 @@ public Builder setGpuHostMemLimitInMb(float value) { * @return This builder for chaining. */ public Builder clearGpuHostMemLimitInMb() { - + bitField0_ = (bitField0_ & ~0x00001000); gpuHostMemLimitInMb_ = 0F; onChanged(); return this; @@ -4677,6 +5689,7 @@ public Builder clearGpuHostMemLimitInMb() { * If true, then the host allocator allocates its max memory all upfront and * never grows. This can be useful for latency-sensitive systems, because * growing the GPU host memory pool can be expensive. + * * You probably only want to use this in combination with * gpu_host_mem_limit_in_mb, because the default GPU host memory limit is * quite high. @@ -4694,6 +5707,7 @@ public boolean getGpuHostMemDisallowGrowth() { * If true, then the host allocator allocates its max memory all upfront and * never grows. This can be useful for latency-sensitive systems, because * growing the GPU host memory pool can be expensive. + * * You probably only want to use this in combination with * gpu_host_mem_limit_in_mb, because the default GPU host memory limit is * quite high. @@ -4704,8 +5718,9 @@ public boolean getGpuHostMemDisallowGrowth() { * @return This builder for chaining. */ public Builder setGpuHostMemDisallowGrowth(boolean value) { - + gpuHostMemDisallowGrowth_ = value; + bitField0_ |= 0x00002000; onChanged(); return this; } @@ -4714,6 +5729,7 @@ public Builder setGpuHostMemDisallowGrowth(boolean value) { * If true, then the host allocator allocates its max memory all upfront and * never grows. This can be useful for latency-sensitive systems, because * growing the GPU host memory pool can be expensive. + * * You probably only want to use this in combination with * gpu_host_mem_limit_in_mb, because the default GPU host memory limit is * quite high. @@ -4723,7 +5739,7 @@ public Builder setGpuHostMemDisallowGrowth(boolean value) { * @return This builder for chaining. */ public Builder clearGpuHostMemDisallowGrowth() { - + bitField0_ = (bitField0_ & ~0x00002000); gpuHostMemDisallowGrowth_ = false; onChanged(); return this; @@ -4760,8 +5776,9 @@ public int getGpuSystemMemorySizeInMb() { * @return This builder for chaining. */ public Builder setGpuSystemMemorySizeInMb(int value) { - + gpuSystemMemorySizeInMb_ = value; + bitField0_ |= 0x00004000; onChanged(); return this; } @@ -4778,23 +5795,226 @@ public Builder setGpuSystemMemorySizeInMb(int value) { * @return This builder for chaining. */ public Builder clearGpuSystemMemorySizeInMb() { - + bitField0_ = (bitField0_ & ~0x00004000); gpuSystemMemorySizeInMb_ = 0; onChanged(); return this; } + + private boolean populatePjrtGpuClientCreationInfo_ ; + /** + *
    +       * If true, save information needed for created a PjRt GPU client for
    +       * creating a client with remote devices.
    +       * 
    + * + * bool populate_pjrt_gpu_client_creation_info = 17; + * @return The populatePjrtGpuClientCreationInfo. + */ @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); + public boolean getPopulatePjrtGpuClientCreationInfo() { + return populatePjrtGpuClientCreationInfo_; + } + /** + *
    +       * If true, save information needed for created a PjRt GPU client for
    +       * creating a client with remote devices.
    +       * 
    + * + * bool populate_pjrt_gpu_client_creation_info = 17; + * @param value The populatePjrtGpuClientCreationInfo to set. + * @return This builder for chaining. + */ + public Builder setPopulatePjrtGpuClientCreationInfo(boolean value) { + + populatePjrtGpuClientCreationInfo_ = value; + bitField0_ |= 0x00008000; + onChanged(); + return this; + } + /** + *
    +       * If true, save information needed for created a PjRt GPU client for
    +       * creating a client with remote devices.
    +       * 
    + * + * bool populate_pjrt_gpu_client_creation_info = 17; + * @return This builder for chaining. + */ + public Builder clearPopulatePjrtGpuClientCreationInfo() { + bitField0_ = (bitField0_ & ~0x00008000); + populatePjrtGpuClientCreationInfo_ = false; + onChanged(); + return this; } + private int nodeId_ ; + /** + *
    +       * node_id for use when creating a PjRt GPU client with remote devices,
    +       * which enumerates jobs*tasks from a ServerDef.
    +       * 
    + * + * int32 node_id = 18; + * @return The nodeId. + */ @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + public int getNodeId() { + return nodeId_; + } + /** + *
    +       * node_id for use when creating a PjRt GPU client with remote devices,
    +       * which enumerates jobs*tasks from a ServerDef.
    +       * 
    + * + * int32 node_id = 18; + * @param value The nodeId to set. + * @return This builder for chaining. + */ + public Builder setNodeId(int value) { + + nodeId_ = value; + bitField0_ |= 0x00010000; + onChanged(); + return this; + } + /** + *
    +       * node_id for use when creating a PjRt GPU client with remote devices,
    +       * which enumerates jobs*tasks from a ServerDef.
    +       * 
    + * + * int32 node_id = 18; + * @return This builder for chaining. + */ + public Builder clearNodeId() { + bitField0_ = (bitField0_ & ~0x00010000); + nodeId_ = 0; + onChanged(); + return this; } + private org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions streamMergeOptions_; + private com.google.protobuf.SingleFieldBuilder< + org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions, org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions.Builder, org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptionsOrBuilder> streamMergeOptionsBuilder_; + /** + * .tensorflow.GPUOptions.Experimental.StreamMergeOptions stream_merge_options = 19; + * @return Whether the streamMergeOptions field is set. + */ + public boolean hasStreamMergeOptions() { + return ((bitField0_ & 0x00020000) != 0); + } + /** + * .tensorflow.GPUOptions.Experimental.StreamMergeOptions stream_merge_options = 19; + * @return The streamMergeOptions. + */ + public org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions getStreamMergeOptions() { + if (streamMergeOptionsBuilder_ == null) { + return streamMergeOptions_ == null ? org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions.getDefaultInstance() : streamMergeOptions_; + } else { + return streamMergeOptionsBuilder_.getMessage(); + } + } + /** + * .tensorflow.GPUOptions.Experimental.StreamMergeOptions stream_merge_options = 19; + */ + public Builder setStreamMergeOptions(org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions value) { + if (streamMergeOptionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + streamMergeOptions_ = value; + } else { + streamMergeOptionsBuilder_.setMessage(value); + } + bitField0_ |= 0x00020000; + onChanged(); + return this; + } + /** + * .tensorflow.GPUOptions.Experimental.StreamMergeOptions stream_merge_options = 19; + */ + public Builder setStreamMergeOptions( + org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions.Builder builderForValue) { + if (streamMergeOptionsBuilder_ == null) { + streamMergeOptions_ = builderForValue.build(); + } else { + streamMergeOptionsBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00020000; + onChanged(); + return this; + } + /** + * .tensorflow.GPUOptions.Experimental.StreamMergeOptions stream_merge_options = 19; + */ + public Builder mergeStreamMergeOptions(org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions value) { + if (streamMergeOptionsBuilder_ == null) { + if (((bitField0_ & 0x00020000) != 0) && + streamMergeOptions_ != null && + streamMergeOptions_ != org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions.getDefaultInstance()) { + getStreamMergeOptionsBuilder().mergeFrom(value); + } else { + streamMergeOptions_ = value; + } + } else { + streamMergeOptionsBuilder_.mergeFrom(value); + } + if (streamMergeOptions_ != null) { + bitField0_ |= 0x00020000; + onChanged(); + } + return this; + } + /** + * .tensorflow.GPUOptions.Experimental.StreamMergeOptions stream_merge_options = 19; + */ + public Builder clearStreamMergeOptions() { + bitField0_ = (bitField0_ & ~0x00020000); + streamMergeOptions_ = null; + if (streamMergeOptionsBuilder_ != null) { + streamMergeOptionsBuilder_.dispose(); + streamMergeOptionsBuilder_ = null; + } + onChanged(); + return this; + } + /** + * .tensorflow.GPUOptions.Experimental.StreamMergeOptions stream_merge_options = 19; + */ + public org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions.Builder getStreamMergeOptionsBuilder() { + bitField0_ |= 0x00020000; + onChanged(); + return getStreamMergeOptionsFieldBuilder().getBuilder(); + } + /** + * .tensorflow.GPUOptions.Experimental.StreamMergeOptions stream_merge_options = 19; + */ + public org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptionsOrBuilder getStreamMergeOptionsOrBuilder() { + if (streamMergeOptionsBuilder_ != null) { + return streamMergeOptionsBuilder_.getMessageOrBuilder(); + } else { + return streamMergeOptions_ == null ? + org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions.getDefaultInstance() : streamMergeOptions_; + } + } + /** + * .tensorflow.GPUOptions.Experimental.StreamMergeOptions stream_merge_options = 19; + */ + private com.google.protobuf.SingleFieldBuilder< + org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions, org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions.Builder, org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptionsOrBuilder> + getStreamMergeOptionsFieldBuilder() { + if (streamMergeOptionsBuilder_ == null) { + streamMergeOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilder< + org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions, org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptions.Builder, org.tensorflow.proto.GPUOptions.Experimental.StreamMergeOptionsOrBuilder>( + getStreamMergeOptions(), + getParentForChildren(), + isClean()); + streamMergeOptions_ = null; + } + return streamMergeOptionsBuilder_; + } // @@protoc_insertion_point(builder_scope:tensorflow.GPUOptions.Experimental) } @@ -4847,14 +6067,17 @@ public org.tensorflow.proto.GPUOptions.Experimental getDefaultInstanceForType() } + private int bitField0_; public static final int PER_PROCESS_GPU_MEMORY_FRACTION_FIELD_NUMBER = 1; - private double perProcessGpuMemoryFraction_; + private double perProcessGpuMemoryFraction_ = 0D; /** *
        * Fraction of the total GPU memory to allocate for each process.
        * 1 means to allocate all of the GPU memory, 0.5 means the process
        * allocates up to ~50% of the total GPU memory.
    +   *
        * GPU memory is pre-allocated unless the allow_growth option is enabled.
    +   *
        * If greater than 1.0, uses CUDA unified memory to potentially oversubscribe
        * the amount of memory available on the GPU device by using host memory as a
        * swap space. Accessing memory not available on the device will be
    @@ -4877,7 +6100,7 @@ public double getPerProcessGpuMemoryFraction() {
       }
     
       public static final int ALLOW_GROWTH_FIELD_NUMBER = 4;
    -  private boolean allowGrowth_;
    +  private boolean allowGrowth_ = false;
       /**
        * 
        * If true, the allocator does not pre-allocate the entire specified
    @@ -4893,15 +6116,18 @@ public boolean getAllowGrowth() {
       }
     
       public static final int ALLOCATOR_TYPE_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object allocatorType_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object allocatorType_ = "";
       /**
        * 
        * The type of GPU allocation strategy to use.
    +   *
        * Allowed values:
        * "": The empty string (default) uses a system-chosen default
    -   *     which may change over time.
    +   * which may change over time.
    +   *
        * "BFC": A "Best-fit with coalescing" algorithm, simplified from a
    -   *        version of dlmalloc.
    +   * version of dlmalloc.
        * 
    * * string allocator_type = 2; @@ -4923,11 +6149,13 @@ public java.lang.String getAllocatorType() { /** *
        * The type of GPU allocation strategy to use.
    +   *
        * Allowed values:
        * "": The empty string (default) uses a system-chosen default
    -   *     which may change over time.
    +   * which may change over time.
    +   *
        * "BFC": A "Best-fit with coalescing" algorithm, simplified from a
    -   *        version of dlmalloc.
    +   * version of dlmalloc.
        * 
    * * string allocator_type = 2; @@ -4949,7 +6177,7 @@ public java.lang.String getAllocatorType() { } public static final int DEFERRED_DELETION_BYTES_FIELD_NUMBER = 3; - private long deferredDeletionBytes_; + private long deferredDeletionBytes_ = 0L; /** *
        * Delay deletion of up to this many bytes to reduce the number of
    @@ -4966,7 +6194,8 @@ public long getDeferredDeletionBytes() {
       }
     
       public static final int VISIBLE_DEVICE_LIST_FIELD_NUMBER = 5;
    -  private volatile java.lang.Object visibleDeviceList_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object visibleDeviceList_ = "";
       /**
        * 
        * A comma-separated list of GPU ids that determines the 'visible'
    @@ -4976,19 +6205,25 @@ public long getDeferredDeletionBytes() {
        * then one would specify this field as "5,3".  This field is similar in
        * spirit to the CUDA_VISIBLE_DEVICES environment variable, except
        * it applies to the visible GPU devices in the process.
    +   *
        * NOTE:
        * 1. The GPU driver provides the process with the visible GPUs
    -   *    in an order which is not guaranteed to have any correlation to
    -   *    the *physical* GPU id in the machine.  This field is used for
    -   *    remapping "visible" to "virtual", which means this operates only
    -   *    after the process starts.  Users are required to use vendor
    -   *    specific mechanisms (e.g., CUDA_VISIBLE_DEVICES) to control the
    -   *    physical to visible device mapping prior to invoking TensorFlow.
    +   * in an order which is not guaranteed to have any correlation to
    +   * the *physical* GPU id in the machine.  This field is used for
    +   * remapping "visible" to "virtual", which means this operates only
    +   * after the process starts.  Users are required to use vendor
    +   * specific mechanisms (e.g., CUDA_VISIBLE_DEVICES) to control the
    +   * physical to visible device mapping prior to invoking TensorFlow.
        * 2. In the code, the ids in this list are also called "platform GPU id"s,
    -   *    and the 'virtual' ids of GPU devices (i.e. the ids in the device
    -   *    name "/device:GPU:<id>") are also called "TF GPU id"s. Please
    -   *    refer to third_party/tensorflow/core/common_runtime/gpu/gpu_id.h
    -   *    for more information.
    +   * and the 'virtual' ids of GPU devices (i.e. the ids in the device
    +   * name "/device:GPU:<id>") are also called "TF GPU id"s. Please
    +   * refer to third_party/tensorflow/core/common_runtime/gpu/gpu_id.h
    +   * for more information.
    +   * 3. The visible_device_list is also used for PluggableDevice. And
    +   * different types of PluggableDevices share this field. In that case,
    +   * the pluggable_device_type is used to distinguish them, making the
    +   * visible_device_list a list of <pluggable_device_type>:<device_index>,
    +   * e.g. "PluggableDeviceA:0,PluggableDeviceA:1,PluggableDeviceB:0".
        * 
    * * string visible_device_list = 5; @@ -5016,19 +6251,25 @@ public java.lang.String getVisibleDeviceList() { * then one would specify this field as "5,3". This field is similar in * spirit to the CUDA_VISIBLE_DEVICES environment variable, except * it applies to the visible GPU devices in the process. + * * NOTE: * 1. The GPU driver provides the process with the visible GPUs - * in an order which is not guaranteed to have any correlation to - * the *physical* GPU id in the machine. This field is used for - * remapping "visible" to "virtual", which means this operates only - * after the process starts. Users are required to use vendor - * specific mechanisms (e.g., CUDA_VISIBLE_DEVICES) to control the - * physical to visible device mapping prior to invoking TensorFlow. + * in an order which is not guaranteed to have any correlation to + * the *physical* GPU id in the machine. This field is used for + * remapping "visible" to "virtual", which means this operates only + * after the process starts. Users are required to use vendor + * specific mechanisms (e.g., CUDA_VISIBLE_DEVICES) to control the + * physical to visible device mapping prior to invoking TensorFlow. * 2. In the code, the ids in this list are also called "platform GPU id"s, - * and the 'virtual' ids of GPU devices (i.e. the ids in the device - * name "/device:GPU:<id>") are also called "TF GPU id"s. Please - * refer to third_party/tensorflow/core/common_runtime/gpu/gpu_id.h - * for more information. + * and the 'virtual' ids of GPU devices (i.e. the ids in the device + * name "/device:GPU:<id>") are also called "TF GPU id"s. Please + * refer to third_party/tensorflow/core/common_runtime/gpu/gpu_id.h + * for more information. + * 3. The visible_device_list is also used for PluggableDevice. And + * different types of PluggableDevices share this field. In that case, + * the pluggable_device_type is used to distinguish them, making the + * visible_device_list a list of <pluggable_device_type>:<device_index>, + * e.g. "PluggableDeviceA:0,PluggableDeviceA:1,PluggableDeviceB:0". *
    * * string visible_device_list = 5; @@ -5050,7 +6291,7 @@ public java.lang.String getVisibleDeviceList() { } public static final int POLLING_ACTIVE_DELAY_USECS_FIELD_NUMBER = 6; - private int pollingActiveDelayUsecs_; + private int pollingActiveDelayUsecs_ = 0; /** *
        * In the event polling loop sleep this many microseconds between
    @@ -5067,7 +6308,7 @@ public int getPollingActiveDelayUsecs() {
       }
     
       public static final int POLLING_INACTIVE_DELAY_MSECS_FIELD_NUMBER = 7;
    -  private int pollingInactiveDelayMsecs_;
    +  private int pollingInactiveDelayMsecs_ = 0;
       /**
        * 
        * This field is deprecated and ignored.
    @@ -5082,7 +6323,7 @@ public int getPollingInactiveDelayMsecs() {
       }
     
       public static final int FORCE_GPU_COMPATIBLE_FIELD_NUMBER = 8;
    -  private boolean forceGpuCompatible_;
    +  private boolean forceGpuCompatible_ = false;
       /**
        * 
        * Force all tensors to be gpu_compatible. On a GPU-enabled TensorFlow,
    @@ -5111,7 +6352,7 @@ public boolean getForceGpuCompatible() {
        * 
        * Everything inside experimental is subject to change and is not subject
        * to API stability guarantees in
    -   * https://www.tensorflow.org/guide/version_compat.
    +   * https://www.tensorflow.org/guide/versions.
        * 
    * * .tensorflow.GPUOptions.Experimental experimental = 9; @@ -5119,13 +6360,13 @@ public boolean getForceGpuCompatible() { */ @java.lang.Override public boolean hasExperimental() { - return experimental_ != null; + return ((bitField0_ & 0x00000001) != 0); } /** *
        * Everything inside experimental is subject to change and is not subject
        * to API stability guarantees in
    -   * https://www.tensorflow.org/guide/version_compat.
    +   * https://www.tensorflow.org/guide/versions.
        * 
    * * .tensorflow.GPUOptions.Experimental experimental = 9; @@ -5139,14 +6380,14 @@ public org.tensorflow.proto.GPUOptions.Experimental getExperimental() { *
        * Everything inside experimental is subject to change and is not subject
        * to API stability guarantees in
    -   * https://www.tensorflow.org/guide/version_compat.
    +   * https://www.tensorflow.org/guide/versions.
        * 
    * * .tensorflow.GPUOptions.Experimental experimental = 9; */ @java.lang.Override public org.tensorflow.proto.GPUOptions.ExperimentalOrBuilder getExperimentalOrBuilder() { - return getExperimental(); + return experimental_ == null ? org.tensorflow.proto.GPUOptions.Experimental.getDefaultInstance() : experimental_; } private byte memoizedIsInitialized = -1; @@ -5166,8 +6407,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (java.lang.Double.doubleToRawLongBits(perProcessGpuMemoryFraction_) != 0) { output.writeDouble(1, perProcessGpuMemoryFraction_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(allocatorType_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, allocatorType_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(allocatorType_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, allocatorType_); } if (deferredDeletionBytes_ != 0L) { output.writeInt64(3, deferredDeletionBytes_); @@ -5175,8 +6416,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (allowGrowth_ != false) { output.writeBool(4, allowGrowth_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(visibleDeviceList_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 5, visibleDeviceList_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(visibleDeviceList_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 5, visibleDeviceList_); } if (pollingActiveDelayUsecs_ != 0) { output.writeInt32(6, pollingActiveDelayUsecs_); @@ -5187,7 +6428,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (forceGpuCompatible_ != false) { output.writeBool(8, forceGpuCompatible_); } - if (experimental_ != null) { + if (((bitField0_ & 0x00000001) != 0)) { output.writeMessage(9, getExperimental()); } getUnknownFields().writeTo(output); @@ -5203,8 +6444,8 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeDoubleSize(1, perProcessGpuMemoryFraction_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(allocatorType_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, allocatorType_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(allocatorType_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, allocatorType_); } if (deferredDeletionBytes_ != 0L) { size += com.google.protobuf.CodedOutputStream @@ -5214,8 +6455,8 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeBoolSize(4, allowGrowth_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(visibleDeviceList_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, visibleDeviceList_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(visibleDeviceList_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(5, visibleDeviceList_); } if (pollingActiveDelayUsecs_ != 0) { size += com.google.protobuf.CodedOutputStream @@ -5229,7 +6470,7 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeBoolSize(8, forceGpuCompatible_); } - if (experimental_ != null) { + if (((bitField0_ & 0x00000001) != 0)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(9, getExperimental()); } @@ -5344,39 +6585,41 @@ public static org.tensorflow.proto.GPUOptions parseFrom( } public static org.tensorflow.proto.GPUOptions parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.GPUOptions parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.GPUOptions parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.GPUOptions parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.GPUOptions parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.GPUOptions parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -5396,7 +6639,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -5404,7 +6647,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.GPUOptions} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.GPUOptions) org.tensorflow.proto.GPUOptionsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -5413,7 +6656,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_GPUOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -5422,37 +6665,35 @@ public static final class Builder extends // Construct using org.tensorflow.proto.GPUOptions.newBuilder() private Builder() { - + maybeForceBuilderInitialization(); } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); - + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage + .alwaysUseFieldBuilders) { + getExperimentalFieldBuilder(); + } } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; perProcessGpuMemoryFraction_ = 0D; - allowGrowth_ = false; - allocatorType_ = ""; - deferredDeletionBytes_ = 0L; - visibleDeviceList_ = ""; - pollingActiveDelayUsecs_ = 0; - pollingInactiveDelayMsecs_ = 0; - forceGpuCompatible_ = false; - - if (experimentalBuilder_ == null) { - experimental_ = null; - } else { - experimental_ = null; + experimental_ = null; + if (experimentalBuilder_ != null) { + experimentalBuilder_.dispose(); experimentalBuilder_ = null; } return this; @@ -5481,55 +6722,47 @@ public org.tensorflow.proto.GPUOptions build() { @java.lang.Override public org.tensorflow.proto.GPUOptions buildPartial() { org.tensorflow.proto.GPUOptions result = new org.tensorflow.proto.GPUOptions(this); - result.perProcessGpuMemoryFraction_ = perProcessGpuMemoryFraction_; - result.allowGrowth_ = allowGrowth_; - result.allocatorType_ = allocatorType_; - result.deferredDeletionBytes_ = deferredDeletionBytes_; - result.visibleDeviceList_ = visibleDeviceList_; - result.pollingActiveDelayUsecs_ = pollingActiveDelayUsecs_; - result.pollingInactiveDelayMsecs_ = pollingInactiveDelayMsecs_; - result.forceGpuCompatible_ = forceGpuCompatible_; - if (experimentalBuilder_ == null) { - result.experimental_ = experimental_; - } else { - result.experimental_ = experimentalBuilder_.build(); - } + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.GPUOptions result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.perProcessGpuMemoryFraction_ = perProcessGpuMemoryFraction_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.allowGrowth_ = allowGrowth_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.allocatorType_ = allocatorType_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.deferredDeletionBytes_ = deferredDeletionBytes_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.visibleDeviceList_ = visibleDeviceList_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.pollingActiveDelayUsecs_ = pollingActiveDelayUsecs_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.pollingInactiveDelayMsecs_ = pollingInactiveDelayMsecs_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.forceGpuCompatible_ = forceGpuCompatible_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000100) != 0)) { + result.experimental_ = experimentalBuilder_ == null + ? experimental_ + : experimentalBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.GPUOptions) { @@ -5550,6 +6783,7 @@ public Builder mergeFrom(org.tensorflow.proto.GPUOptions other) { } if (!other.getAllocatorType().isEmpty()) { allocatorType_ = other.allocatorType_; + bitField0_ |= 0x00000004; onChanged(); } if (other.getDeferredDeletionBytes() != 0L) { @@ -5557,6 +6791,7 @@ public Builder mergeFrom(org.tensorflow.proto.GPUOptions other) { } if (!other.getVisibleDeviceList().isEmpty()) { visibleDeviceList_ = other.visibleDeviceList_; + bitField0_ |= 0x00000010; onChanged(); } if (other.getPollingActiveDelayUsecs() != 0) { @@ -5599,49 +6834,49 @@ public Builder mergeFrom( break; case 9: { perProcessGpuMemoryFraction_ = input.readDouble(); - + bitField0_ |= 0x00000001; break; } // case 9 case 18: { allocatorType_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000004; break; } // case 18 case 24: { deferredDeletionBytes_ = input.readInt64(); - + bitField0_ |= 0x00000008; break; } // case 24 case 32: { allowGrowth_ = input.readBool(); - + bitField0_ |= 0x00000002; break; } // case 32 case 42: { visibleDeviceList_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000010; break; } // case 42 case 48: { pollingActiveDelayUsecs_ = input.readInt32(); - + bitField0_ |= 0x00000020; break; } // case 48 case 56: { pollingInactiveDelayMsecs_ = input.readInt32(); - + bitField0_ |= 0x00000040; break; } // case 56 case 64: { forceGpuCompatible_ = input.readBool(); - + bitField0_ |= 0x00000080; break; } // case 64 case 74: { input.readMessage( getExperimentalFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000100; break; } // case 74 default: { @@ -5659,6 +6894,7 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private double perProcessGpuMemoryFraction_ ; /** @@ -5666,7 +6902,9 @@ public Builder mergeFrom( * Fraction of the total GPU memory to allocate for each process. * 1 means to allocate all of the GPU memory, 0.5 means the process * allocates up to ~50% of the total GPU memory. + * * GPU memory is pre-allocated unless the allow_growth option is enabled. + * * If greater than 1.0, uses CUDA unified memory to potentially oversubscribe * the amount of memory available on the GPU device by using host memory as a * swap space. Accessing memory not available on the device will be @@ -5692,7 +6930,9 @@ public double getPerProcessGpuMemoryFraction() { * Fraction of the total GPU memory to allocate for each process. * 1 means to allocate all of the GPU memory, 0.5 means the process * allocates up to ~50% of the total GPU memory. + * * GPU memory is pre-allocated unless the allow_growth option is enabled. + * * If greater than 1.0, uses CUDA unified memory to potentially oversubscribe * the amount of memory available on the GPU device by using host memory as a * swap space. Accessing memory not available on the device will be @@ -5711,8 +6951,9 @@ public double getPerProcessGpuMemoryFraction() { * @return This builder for chaining. */ public Builder setPerProcessGpuMemoryFraction(double value) { - + perProcessGpuMemoryFraction_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -5721,7 +6962,9 @@ public Builder setPerProcessGpuMemoryFraction(double value) { * Fraction of the total GPU memory to allocate for each process. * 1 means to allocate all of the GPU memory, 0.5 means the process * allocates up to ~50% of the total GPU memory. + * * GPU memory is pre-allocated unless the allow_growth option is enabled. + * * If greater than 1.0, uses CUDA unified memory to potentially oversubscribe * the amount of memory available on the GPU device by using host memory as a * swap space. Accessing memory not available on the device will be @@ -5739,7 +6982,7 @@ public Builder setPerProcessGpuMemoryFraction(double value) { * @return This builder for chaining. */ public Builder clearPerProcessGpuMemoryFraction() { - + bitField0_ = (bitField0_ & ~0x00000001); perProcessGpuMemoryFraction_ = 0D; onChanged(); return this; @@ -5770,8 +7013,9 @@ public boolean getAllowGrowth() { * @return This builder for chaining. */ public Builder setAllowGrowth(boolean value) { - + allowGrowth_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -5785,7 +7029,7 @@ public Builder setAllowGrowth(boolean value) { * @return This builder for chaining. */ public Builder clearAllowGrowth() { - + bitField0_ = (bitField0_ & ~0x00000002); allowGrowth_ = false; onChanged(); return this; @@ -5795,11 +7039,13 @@ public Builder clearAllowGrowth() { /** *
          * The type of GPU allocation strategy to use.
    +     *
          * Allowed values:
          * "": The empty string (default) uses a system-chosen default
    -     *     which may change over time.
    +     * which may change over time.
    +     *
          * "BFC": A "Best-fit with coalescing" algorithm, simplified from a
    -     *        version of dlmalloc.
    +     * version of dlmalloc.
          * 
    * * string allocator_type = 2; @@ -5820,11 +7066,13 @@ public java.lang.String getAllocatorType() { /** *
          * The type of GPU allocation strategy to use.
    +     *
          * Allowed values:
          * "": The empty string (default) uses a system-chosen default
    -     *     which may change over time.
    +     * which may change over time.
    +     *
          * "BFC": A "Best-fit with coalescing" algorithm, simplified from a
    -     *        version of dlmalloc.
    +     * version of dlmalloc.
          * 
    * * string allocator_type = 2; @@ -5846,11 +7094,13 @@ public java.lang.String getAllocatorType() { /** *
          * The type of GPU allocation strategy to use.
    +     *
          * Allowed values:
          * "": The empty string (default) uses a system-chosen default
    -     *     which may change over time.
    +     * which may change over time.
    +     *
          * "BFC": A "Best-fit with coalescing" algorithm, simplified from a
    -     *        version of dlmalloc.
    +     * version of dlmalloc.
          * 
    * * string allocator_type = 2; @@ -5859,41 +7109,43 @@ public java.lang.String getAllocatorType() { */ public Builder setAllocatorType( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } allocatorType_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } /** *
          * The type of GPU allocation strategy to use.
    +     *
          * Allowed values:
          * "": The empty string (default) uses a system-chosen default
    -     *     which may change over time.
    +     * which may change over time.
    +     *
          * "BFC": A "Best-fit with coalescing" algorithm, simplified from a
    -     *        version of dlmalloc.
    +     * version of dlmalloc.
          * 
    * * string allocator_type = 2; * @return This builder for chaining. */ public Builder clearAllocatorType() { - allocatorType_ = getDefaultInstance().getAllocatorType(); + bitField0_ = (bitField0_ & ~0x00000004); onChanged(); return this; } /** *
          * The type of GPU allocation strategy to use.
    +     *
          * Allowed values:
          * "": The empty string (default) uses a system-chosen default
    -     *     which may change over time.
    +     * which may change over time.
    +     *
          * "BFC": A "Best-fit with coalescing" algorithm, simplified from a
    -     *        version of dlmalloc.
    +     * version of dlmalloc.
          * 
    * * string allocator_type = 2; @@ -5902,12 +7154,10 @@ public Builder clearAllocatorType() { */ public Builder setAllocatorTypeBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); allocatorType_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -5939,8 +7189,9 @@ public long getDeferredDeletionBytes() { * @return This builder for chaining. */ public Builder setDeferredDeletionBytes(long value) { - + deferredDeletionBytes_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -5955,7 +7206,7 @@ public Builder setDeferredDeletionBytes(long value) { * @return This builder for chaining. */ public Builder clearDeferredDeletionBytes() { - + bitField0_ = (bitField0_ & ~0x00000008); deferredDeletionBytes_ = 0L; onChanged(); return this; @@ -5971,19 +7222,25 @@ public Builder clearDeferredDeletionBytes() { * then one would specify this field as "5,3". This field is similar in * spirit to the CUDA_VISIBLE_DEVICES environment variable, except * it applies to the visible GPU devices in the process. + * * NOTE: * 1. The GPU driver provides the process with the visible GPUs - * in an order which is not guaranteed to have any correlation to - * the *physical* GPU id in the machine. This field is used for - * remapping "visible" to "virtual", which means this operates only - * after the process starts. Users are required to use vendor - * specific mechanisms (e.g., CUDA_VISIBLE_DEVICES) to control the - * physical to visible device mapping prior to invoking TensorFlow. + * in an order which is not guaranteed to have any correlation to + * the *physical* GPU id in the machine. This field is used for + * remapping "visible" to "virtual", which means this operates only + * after the process starts. Users are required to use vendor + * specific mechanisms (e.g., CUDA_VISIBLE_DEVICES) to control the + * physical to visible device mapping prior to invoking TensorFlow. * 2. In the code, the ids in this list are also called "platform GPU id"s, - * and the 'virtual' ids of GPU devices (i.e. the ids in the device - * name "/device:GPU:<id>") are also called "TF GPU id"s. Please - * refer to third_party/tensorflow/core/common_runtime/gpu/gpu_id.h - * for more information. + * and the 'virtual' ids of GPU devices (i.e. the ids in the device + * name "/device:GPU:<id>") are also called "TF GPU id"s. Please + * refer to third_party/tensorflow/core/common_runtime/gpu/gpu_id.h + * for more information. + * 3. The visible_device_list is also used for PluggableDevice. And + * different types of PluggableDevices share this field. In that case, + * the pluggable_device_type is used to distinguish them, making the + * visible_device_list a list of <pluggable_device_type>:<device_index>, + * e.g. "PluggableDeviceA:0,PluggableDeviceA:1,PluggableDeviceB:0". *
    * * string visible_device_list = 5; @@ -6010,19 +7267,25 @@ public java.lang.String getVisibleDeviceList() { * then one would specify this field as "5,3". This field is similar in * spirit to the CUDA_VISIBLE_DEVICES environment variable, except * it applies to the visible GPU devices in the process. + * * NOTE: * 1. The GPU driver provides the process with the visible GPUs - * in an order which is not guaranteed to have any correlation to - * the *physical* GPU id in the machine. This field is used for - * remapping "visible" to "virtual", which means this operates only - * after the process starts. Users are required to use vendor - * specific mechanisms (e.g., CUDA_VISIBLE_DEVICES) to control the - * physical to visible device mapping prior to invoking TensorFlow. + * in an order which is not guaranteed to have any correlation to + * the *physical* GPU id in the machine. This field is used for + * remapping "visible" to "virtual", which means this operates only + * after the process starts. Users are required to use vendor + * specific mechanisms (e.g., CUDA_VISIBLE_DEVICES) to control the + * physical to visible device mapping prior to invoking TensorFlow. * 2. In the code, the ids in this list are also called "platform GPU id"s, - * and the 'virtual' ids of GPU devices (i.e. the ids in the device - * name "/device:GPU:<id>") are also called "TF GPU id"s. Please - * refer to third_party/tensorflow/core/common_runtime/gpu/gpu_id.h - * for more information. + * and the 'virtual' ids of GPU devices (i.e. the ids in the device + * name "/device:GPU:<id>") are also called "TF GPU id"s. Please + * refer to third_party/tensorflow/core/common_runtime/gpu/gpu_id.h + * for more information. + * 3. The visible_device_list is also used for PluggableDevice. And + * different types of PluggableDevices share this field. In that case, + * the pluggable_device_type is used to distinguish them, making the + * visible_device_list a list of <pluggable_device_type>:<device_index>, + * e.g. "PluggableDeviceA:0,PluggableDeviceA:1,PluggableDeviceB:0". *
    * * string visible_device_list = 5; @@ -6050,19 +7313,25 @@ public java.lang.String getVisibleDeviceList() { * then one would specify this field as "5,3". This field is similar in * spirit to the CUDA_VISIBLE_DEVICES environment variable, except * it applies to the visible GPU devices in the process. + * * NOTE: * 1. The GPU driver provides the process with the visible GPUs - * in an order which is not guaranteed to have any correlation to - * the *physical* GPU id in the machine. This field is used for - * remapping "visible" to "virtual", which means this operates only - * after the process starts. Users are required to use vendor - * specific mechanisms (e.g., CUDA_VISIBLE_DEVICES) to control the - * physical to visible device mapping prior to invoking TensorFlow. + * in an order which is not guaranteed to have any correlation to + * the *physical* GPU id in the machine. This field is used for + * remapping "visible" to "virtual", which means this operates only + * after the process starts. Users are required to use vendor + * specific mechanisms (e.g., CUDA_VISIBLE_DEVICES) to control the + * physical to visible device mapping prior to invoking TensorFlow. * 2. In the code, the ids in this list are also called "platform GPU id"s, - * and the 'virtual' ids of GPU devices (i.e. the ids in the device - * name "/device:GPU:<id>") are also called "TF GPU id"s. Please - * refer to third_party/tensorflow/core/common_runtime/gpu/gpu_id.h - * for more information. + * and the 'virtual' ids of GPU devices (i.e. the ids in the device + * name "/device:GPU:<id>") are also called "TF GPU id"s. Please + * refer to third_party/tensorflow/core/common_runtime/gpu/gpu_id.h + * for more information. + * 3. The visible_device_list is also used for PluggableDevice. And + * different types of PluggableDevices share this field. In that case, + * the pluggable_device_type is used to distinguish them, making the + * visible_device_list a list of <pluggable_device_type>:<device_index>, + * e.g. "PluggableDeviceA:0,PluggableDeviceA:1,PluggableDeviceB:0". *
    * * string visible_device_list = 5; @@ -6071,11 +7340,9 @@ public java.lang.String getVisibleDeviceList() { */ public Builder setVisibleDeviceList( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } visibleDeviceList_ = value; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -6088,27 +7355,33 @@ public Builder setVisibleDeviceList( * then one would specify this field as "5,3". This field is similar in * spirit to the CUDA_VISIBLE_DEVICES environment variable, except * it applies to the visible GPU devices in the process. + * * NOTE: * 1. The GPU driver provides the process with the visible GPUs - * in an order which is not guaranteed to have any correlation to - * the *physical* GPU id in the machine. This field is used for - * remapping "visible" to "virtual", which means this operates only - * after the process starts. Users are required to use vendor - * specific mechanisms (e.g., CUDA_VISIBLE_DEVICES) to control the - * physical to visible device mapping prior to invoking TensorFlow. + * in an order which is not guaranteed to have any correlation to + * the *physical* GPU id in the machine. This field is used for + * remapping "visible" to "virtual", which means this operates only + * after the process starts. Users are required to use vendor + * specific mechanisms (e.g., CUDA_VISIBLE_DEVICES) to control the + * physical to visible device mapping prior to invoking TensorFlow. * 2. In the code, the ids in this list are also called "platform GPU id"s, - * and the 'virtual' ids of GPU devices (i.e. the ids in the device - * name "/device:GPU:<id>") are also called "TF GPU id"s. Please - * refer to third_party/tensorflow/core/common_runtime/gpu/gpu_id.h - * for more information. + * and the 'virtual' ids of GPU devices (i.e. the ids in the device + * name "/device:GPU:<id>") are also called "TF GPU id"s. Please + * refer to third_party/tensorflow/core/common_runtime/gpu/gpu_id.h + * for more information. + * 3. The visible_device_list is also used for PluggableDevice. And + * different types of PluggableDevices share this field. In that case, + * the pluggable_device_type is used to distinguish them, making the + * visible_device_list a list of <pluggable_device_type>:<device_index>, + * e.g. "PluggableDeviceA:0,PluggableDeviceA:1,PluggableDeviceB:0". *
    * * string visible_device_list = 5; * @return This builder for chaining. */ public Builder clearVisibleDeviceList() { - visibleDeviceList_ = getDefaultInstance().getVisibleDeviceList(); + bitField0_ = (bitField0_ & ~0x00000010); onChanged(); return this; } @@ -6121,19 +7394,25 @@ public Builder clearVisibleDeviceList() { * then one would specify this field as "5,3". This field is similar in * spirit to the CUDA_VISIBLE_DEVICES environment variable, except * it applies to the visible GPU devices in the process. + * * NOTE: * 1. The GPU driver provides the process with the visible GPUs - * in an order which is not guaranteed to have any correlation to - * the *physical* GPU id in the machine. This field is used for - * remapping "visible" to "virtual", which means this operates only - * after the process starts. Users are required to use vendor - * specific mechanisms (e.g., CUDA_VISIBLE_DEVICES) to control the - * physical to visible device mapping prior to invoking TensorFlow. + * in an order which is not guaranteed to have any correlation to + * the *physical* GPU id in the machine. This field is used for + * remapping "visible" to "virtual", which means this operates only + * after the process starts. Users are required to use vendor + * specific mechanisms (e.g., CUDA_VISIBLE_DEVICES) to control the + * physical to visible device mapping prior to invoking TensorFlow. * 2. In the code, the ids in this list are also called "platform GPU id"s, - * and the 'virtual' ids of GPU devices (i.e. the ids in the device - * name "/device:GPU:<id>") are also called "TF GPU id"s. Please - * refer to third_party/tensorflow/core/common_runtime/gpu/gpu_id.h - * for more information. + * and the 'virtual' ids of GPU devices (i.e. the ids in the device + * name "/device:GPU:<id>") are also called "TF GPU id"s. Please + * refer to third_party/tensorflow/core/common_runtime/gpu/gpu_id.h + * for more information. + * 3. The visible_device_list is also used for PluggableDevice. And + * different types of PluggableDevices share this field. In that case, + * the pluggable_device_type is used to distinguish them, making the + * visible_device_list a list of <pluggable_device_type>:<device_index>, + * e.g. "PluggableDeviceA:0,PluggableDeviceA:1,PluggableDeviceB:0". *
    * * string visible_device_list = 5; @@ -6142,12 +7421,10 @@ public Builder clearVisibleDeviceList() { */ public Builder setVisibleDeviceListBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); visibleDeviceList_ = value; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -6179,8 +7456,9 @@ public int getPollingActiveDelayUsecs() { * @return This builder for chaining. */ public Builder setPollingActiveDelayUsecs(int value) { - + pollingActiveDelayUsecs_ = value; + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -6195,7 +7473,7 @@ public Builder setPollingActiveDelayUsecs(int value) { * @return This builder for chaining. */ public Builder clearPollingActiveDelayUsecs() { - + bitField0_ = (bitField0_ & ~0x00000020); pollingActiveDelayUsecs_ = 0; onChanged(); return this; @@ -6224,8 +7502,9 @@ public int getPollingInactiveDelayMsecs() { * @return This builder for chaining. */ public Builder setPollingInactiveDelayMsecs(int value) { - + pollingInactiveDelayMsecs_ = value; + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -6238,7 +7517,7 @@ public Builder setPollingInactiveDelayMsecs(int value) { * @return This builder for chaining. */ public Builder clearPollingInactiveDelayMsecs() { - + bitField0_ = (bitField0_ & ~0x00000040); pollingInactiveDelayMsecs_ = 0; onChanged(); return this; @@ -6285,8 +7564,9 @@ public boolean getForceGpuCompatible() { * @return This builder for chaining. */ public Builder setForceGpuCompatible(boolean value) { - + forceGpuCompatible_ = value; + bitField0_ |= 0x00000080; onChanged(); return this; } @@ -6308,33 +7588,33 @@ public Builder setForceGpuCompatible(boolean value) { * @return This builder for chaining. */ public Builder clearForceGpuCompatible() { - + bitField0_ = (bitField0_ & ~0x00000080); forceGpuCompatible_ = false; onChanged(); return this; } private org.tensorflow.proto.GPUOptions.Experimental experimental_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.GPUOptions.Experimental, org.tensorflow.proto.GPUOptions.Experimental.Builder, org.tensorflow.proto.GPUOptions.ExperimentalOrBuilder> experimentalBuilder_; /** *
          * Everything inside experimental is subject to change and is not subject
          * to API stability guarantees in
    -     * https://www.tensorflow.org/guide/version_compat.
    +     * https://www.tensorflow.org/guide/versions.
          * 
    * * .tensorflow.GPUOptions.Experimental experimental = 9; * @return Whether the experimental field is set. */ public boolean hasExperimental() { - return experimentalBuilder_ != null || experimental_ != null; + return ((bitField0_ & 0x00000100) != 0); } /** *
          * Everything inside experimental is subject to change and is not subject
          * to API stability guarantees in
    -     * https://www.tensorflow.org/guide/version_compat.
    +     * https://www.tensorflow.org/guide/versions.
          * 
    * * .tensorflow.GPUOptions.Experimental experimental = 9; @@ -6351,7 +7631,7 @@ public org.tensorflow.proto.GPUOptions.Experimental getExperimental() { *
          * Everything inside experimental is subject to change and is not subject
          * to API stability guarantees in
    -     * https://www.tensorflow.org/guide/version_compat.
    +     * https://www.tensorflow.org/guide/versions.
          * 
    * * .tensorflow.GPUOptions.Experimental experimental = 9; @@ -6362,18 +7642,18 @@ public Builder setExperimental(org.tensorflow.proto.GPUOptions.Experimental valu throw new NullPointerException(); } experimental_ = value; - onChanged(); } else { experimentalBuilder_.setMessage(value); } - + bitField0_ |= 0x00000100; + onChanged(); return this; } /** *
          * Everything inside experimental is subject to change and is not subject
          * to API stability guarantees in
    -     * https://www.tensorflow.org/guide/version_compat.
    +     * https://www.tensorflow.org/guide/versions.
          * 
    * * .tensorflow.GPUOptions.Experimental experimental = 9; @@ -6382,68 +7662,70 @@ public Builder setExperimental( org.tensorflow.proto.GPUOptions.Experimental.Builder builderForValue) { if (experimentalBuilder_ == null) { experimental_ = builderForValue.build(); - onChanged(); } else { experimentalBuilder_.setMessage(builderForValue.build()); } - + bitField0_ |= 0x00000100; + onChanged(); return this; } /** *
          * Everything inside experimental is subject to change and is not subject
          * to API stability guarantees in
    -     * https://www.tensorflow.org/guide/version_compat.
    +     * https://www.tensorflow.org/guide/versions.
          * 
    * * .tensorflow.GPUOptions.Experimental experimental = 9; */ public Builder mergeExperimental(org.tensorflow.proto.GPUOptions.Experimental value) { if (experimentalBuilder_ == null) { - if (experimental_ != null) { - experimental_ = - org.tensorflow.proto.GPUOptions.Experimental.newBuilder(experimental_).mergeFrom(value).buildPartial(); + if (((bitField0_ & 0x00000100) != 0) && + experimental_ != null && + experimental_ != org.tensorflow.proto.GPUOptions.Experimental.getDefaultInstance()) { + getExperimentalBuilder().mergeFrom(value); } else { experimental_ = value; } - onChanged(); } else { experimentalBuilder_.mergeFrom(value); } - + if (experimental_ != null) { + bitField0_ |= 0x00000100; + onChanged(); + } return this; } /** *
          * Everything inside experimental is subject to change and is not subject
          * to API stability guarantees in
    -     * https://www.tensorflow.org/guide/version_compat.
    +     * https://www.tensorflow.org/guide/versions.
          * 
    * * .tensorflow.GPUOptions.Experimental experimental = 9; */ public Builder clearExperimental() { - if (experimentalBuilder_ == null) { - experimental_ = null; - onChanged(); - } else { - experimental_ = null; + bitField0_ = (bitField0_ & ~0x00000100); + experimental_ = null; + if (experimentalBuilder_ != null) { + experimentalBuilder_.dispose(); experimentalBuilder_ = null; } - + onChanged(); return this; } /** *
          * Everything inside experimental is subject to change and is not subject
          * to API stability guarantees in
    -     * https://www.tensorflow.org/guide/version_compat.
    +     * https://www.tensorflow.org/guide/versions.
          * 
    * * .tensorflow.GPUOptions.Experimental experimental = 9; */ public org.tensorflow.proto.GPUOptions.Experimental.Builder getExperimentalBuilder() { - + bitField0_ |= 0x00000100; onChanged(); return getExperimentalFieldBuilder().getBuilder(); } @@ -6451,7 +7733,7 @@ public org.tensorflow.proto.GPUOptions.Experimental.Builder getExperimentalBuild *
          * Everything inside experimental is subject to change and is not subject
          * to API stability guarantees in
    -     * https://www.tensorflow.org/guide/version_compat.
    +     * https://www.tensorflow.org/guide/versions.
          * 
    * * .tensorflow.GPUOptions.Experimental experimental = 9; @@ -6468,16 +7750,16 @@ public org.tensorflow.proto.GPUOptions.ExperimentalOrBuilder getExperimentalOrBu *
          * Everything inside experimental is subject to change and is not subject
          * to API stability guarantees in
    -     * https://www.tensorflow.org/guide/version_compat.
    +     * https://www.tensorflow.org/guide/versions.
          * 
    * * .tensorflow.GPUOptions.Experimental experimental = 9; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.GPUOptions.Experimental, org.tensorflow.proto.GPUOptions.Experimental.Builder, org.tensorflow.proto.GPUOptions.ExperimentalOrBuilder> getExperimentalFieldBuilder() { if (experimentalBuilder_ == null) { - experimentalBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + experimentalBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.GPUOptions.Experimental, org.tensorflow.proto.GPUOptions.Experimental.Builder, org.tensorflow.proto.GPUOptions.ExperimentalOrBuilder>( getExperimental(), getParentForChildren(), @@ -6486,18 +7768,6 @@ public org.tensorflow.proto.GPUOptions.ExperimentalOrBuilder getExperimentalOrBu } return experimentalBuilder_; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.GPUOptions) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GPUOptionsOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GPUOptionsOrBuilder.java index b488c4d4e93..a1d86d2d9c9 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GPUOptionsOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GPUOptionsOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/config.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -12,7 +14,9 @@ public interface GPUOptionsOrBuilder extends * Fraction of the total GPU memory to allocate for each process. * 1 means to allocate all of the GPU memory, 0.5 means the process * allocates up to ~50% of the total GPU memory. + * * GPU memory is pre-allocated unless the allow_growth option is enabled. + * * If greater than 1.0, uses CUDA unified memory to potentially oversubscribe * the amount of memory available on the GPU device by using host memory as a * swap space. Accessing memory not available on the device will be @@ -45,11 +49,13 @@ public interface GPUOptionsOrBuilder extends /** *
        * The type of GPU allocation strategy to use.
    +   *
        * Allowed values:
        * "": The empty string (default) uses a system-chosen default
    -   *     which may change over time.
    +   * which may change over time.
    +   *
        * "BFC": A "Best-fit with coalescing" algorithm, simplified from a
    -   *        version of dlmalloc.
    +   * version of dlmalloc.
        * 
    * * string allocator_type = 2; @@ -59,11 +65,13 @@ public interface GPUOptionsOrBuilder extends /** *
        * The type of GPU allocation strategy to use.
    +   *
        * Allowed values:
        * "": The empty string (default) uses a system-chosen default
    -   *     which may change over time.
    +   * which may change over time.
    +   *
        * "BFC": A "Best-fit with coalescing" algorithm, simplified from a
    -   *        version of dlmalloc.
    +   * version of dlmalloc.
        * 
    * * string allocator_type = 2; @@ -93,19 +101,25 @@ public interface GPUOptionsOrBuilder extends * then one would specify this field as "5,3". This field is similar in * spirit to the CUDA_VISIBLE_DEVICES environment variable, except * it applies to the visible GPU devices in the process. + * * NOTE: * 1. The GPU driver provides the process with the visible GPUs - * in an order which is not guaranteed to have any correlation to - * the *physical* GPU id in the machine. This field is used for - * remapping "visible" to "virtual", which means this operates only - * after the process starts. Users are required to use vendor - * specific mechanisms (e.g., CUDA_VISIBLE_DEVICES) to control the - * physical to visible device mapping prior to invoking TensorFlow. + * in an order which is not guaranteed to have any correlation to + * the *physical* GPU id in the machine. This field is used for + * remapping "visible" to "virtual", which means this operates only + * after the process starts. Users are required to use vendor + * specific mechanisms (e.g., CUDA_VISIBLE_DEVICES) to control the + * physical to visible device mapping prior to invoking TensorFlow. * 2. In the code, the ids in this list are also called "platform GPU id"s, - * and the 'virtual' ids of GPU devices (i.e. the ids in the device - * name "/device:GPU:<id>") are also called "TF GPU id"s. Please - * refer to third_party/tensorflow/core/common_runtime/gpu/gpu_id.h - * for more information. + * and the 'virtual' ids of GPU devices (i.e. the ids in the device + * name "/device:GPU:<id>") are also called "TF GPU id"s. Please + * refer to third_party/tensorflow/core/common_runtime/gpu/gpu_id.h + * for more information. + * 3. The visible_device_list is also used for PluggableDevice. And + * different types of PluggableDevices share this field. In that case, + * the pluggable_device_type is used to distinguish them, making the + * visible_device_list a list of <pluggable_device_type>:<device_index>, + * e.g. "PluggableDeviceA:0,PluggableDeviceA:1,PluggableDeviceB:0". *
    * * string visible_device_list = 5; @@ -121,19 +135,25 @@ public interface GPUOptionsOrBuilder extends * then one would specify this field as "5,3". This field is similar in * spirit to the CUDA_VISIBLE_DEVICES environment variable, except * it applies to the visible GPU devices in the process. + * * NOTE: * 1. The GPU driver provides the process with the visible GPUs - * in an order which is not guaranteed to have any correlation to - * the *physical* GPU id in the machine. This field is used for - * remapping "visible" to "virtual", which means this operates only - * after the process starts. Users are required to use vendor - * specific mechanisms (e.g., CUDA_VISIBLE_DEVICES) to control the - * physical to visible device mapping prior to invoking TensorFlow. + * in an order which is not guaranteed to have any correlation to + * the *physical* GPU id in the machine. This field is used for + * remapping "visible" to "virtual", which means this operates only + * after the process starts. Users are required to use vendor + * specific mechanisms (e.g., CUDA_VISIBLE_DEVICES) to control the + * physical to visible device mapping prior to invoking TensorFlow. * 2. In the code, the ids in this list are also called "platform GPU id"s, - * and the 'virtual' ids of GPU devices (i.e. the ids in the device - * name "/device:GPU:<id>") are also called "TF GPU id"s. Please - * refer to third_party/tensorflow/core/common_runtime/gpu/gpu_id.h - * for more information. + * and the 'virtual' ids of GPU devices (i.e. the ids in the device + * name "/device:GPU:<id>") are also called "TF GPU id"s. Please + * refer to third_party/tensorflow/core/common_runtime/gpu/gpu_id.h + * for more information. + * 3. The visible_device_list is also used for PluggableDevice. And + * different types of PluggableDevices share this field. In that case, + * the pluggable_device_type is used to distinguish them, making the + * visible_device_list a list of <pluggable_device_type>:<device_index>, + * e.g. "PluggableDeviceA:0,PluggableDeviceA:1,PluggableDeviceB:0". *
    * * string visible_device_list = 5; @@ -187,7 +207,7 @@ public interface GPUOptionsOrBuilder extends *
        * Everything inside experimental is subject to change and is not subject
        * to API stability guarantees in
    -   * https://www.tensorflow.org/guide/version_compat.
    +   * https://www.tensorflow.org/guide/versions.
        * 
    * * .tensorflow.GPUOptions.Experimental experimental = 9; @@ -198,7 +218,7 @@ public interface GPUOptionsOrBuilder extends *
        * Everything inside experimental is subject to change and is not subject
        * to API stability guarantees in
    -   * https://www.tensorflow.org/guide/version_compat.
    +   * https://www.tensorflow.org/guide/versions.
        * 
    * * .tensorflow.GPUOptions.Experimental experimental = 9; @@ -209,7 +229,7 @@ public interface GPUOptionsOrBuilder extends *
        * Everything inside experimental is subject to change and is not subject
        * to API stability guarantees in
    -   * https://www.tensorflow.org/guide/version_compat.
    +   * https://www.tensorflow.org/guide/versions.
        * 
    * * .tensorflow.GPUOptions.Experimental experimental = 9; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GradientDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GradientDef.java index bb6a6ce36c7..c7c4781cb88 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GradientDef.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GradientDef.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/function.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,16 +9,19 @@ *
      * GradientDef defines the gradient function of a function defined in
      * a function library.
    + *
      * A gradient function g (specified by gradient_func) for a function f
      * (specified by function_name) must follow the following:
    + *
      * The function 'f' must be a numerical function which takes N inputs
      * and produces M outputs. Its gradient function 'g', which is a
      * function taking N + M inputs and produces N outputs.
    + *
      * I.e. if we have
    - *    (y1, y2, ..., y_M) = f(x1, x2, ..., x_N),
    + * (y1, y2, ..., y_M) = f(x1, x2, ..., x_N),
      * then, g is
    - *    (dL/dx1, dL/dx2, ..., dL/dx_N) = g(x1, x2, ..., x_N,
    - *                                      dL/dy1, dL/dy2, ..., dL/dy_M),
    + * (dL/dx1, dL/dx2, ..., dL/dx_N) = g(x1, x2, ..., x_N,
    + * dL/dy1, dL/dy2, ..., dL/dy_M),
      * where L is a scalar-value function of (x1, x2, ..., xN) (e.g., the
      * loss function). dL/dx_i is the partial derivative of L with respect
      * to x_i.
    @@ -25,12 +30,21 @@
      * Protobuf type {@code tensorflow.GradientDef}
      */
     public final class GradientDef extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.GradientDef)
         GradientDefOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      GradientDef.class.getName());
    +  }
       // Use GradientDef.newBuilder() to construct.
    -  private GradientDef(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private GradientDef(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private GradientDef() {
    @@ -38,25 +52,13 @@ private GradientDef() {
         gradientFunc_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new GradientDef();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.FunctionProtos.internal_static_tensorflow_GradientDef_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.FunctionProtos.internal_static_tensorflow_GradientDef_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -64,7 +66,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int FUNCTION_NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object functionName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object functionName_ = "";
       /**
        * 
        * The function name.
    @@ -110,7 +113,8 @@ public java.lang.String getFunctionName() {
       }
     
       public static final int GRADIENT_FUNC_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object gradientFunc_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object gradientFunc_ = "";
       /**
        * 
        * The gradient function's name.
    @@ -169,11 +173,11 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(functionName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, functionName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(functionName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, functionName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(gradientFunc_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, gradientFunc_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(gradientFunc_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, gradientFunc_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -184,11 +188,11 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(functionName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, functionName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(functionName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, functionName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(gradientFunc_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, gradientFunc_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(gradientFunc_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, gradientFunc_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -263,39 +267,41 @@ public static org.tensorflow.proto.GradientDef parseFrom(
       }
       public static org.tensorflow.proto.GradientDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GradientDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.GradientDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.GradientDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.GradientDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GradientDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -315,7 +321,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -323,16 +329,19 @@ protected Builder newBuilderForType(
        * 
        * GradientDef defines the gradient function of a function defined in
        * a function library.
    +   *
        * A gradient function g (specified by gradient_func) for a function f
        * (specified by function_name) must follow the following:
    +   *
        * The function 'f' must be a numerical function which takes N inputs
        * and produces M outputs. Its gradient function 'g', which is a
        * function taking N + M inputs and produces N outputs.
    +   *
        * I.e. if we have
    -   *    (y1, y2, ..., y_M) = f(x1, x2, ..., x_N),
    +   * (y1, y2, ..., y_M) = f(x1, x2, ..., x_N),
        * then, g is
    -   *    (dL/dx1, dL/dx2, ..., dL/dx_N) = g(x1, x2, ..., x_N,
    -   *                                      dL/dy1, dL/dy2, ..., dL/dy_M),
    +   * (dL/dx1, dL/dx2, ..., dL/dx_N) = g(x1, x2, ..., x_N,
    +   * dL/dy1, dL/dy2, ..., dL/dy_M),
        * where L is a scalar-value function of (x1, x2, ..., xN) (e.g., the
        * loss function). dL/dx_i is the partial derivative of L with respect
        * to x_i.
    @@ -341,7 +350,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.GradientDef}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.GradientDef)
           org.tensorflow.proto.GradientDefOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -350,7 +359,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.FunctionProtos.internal_static_tensorflow_GradientDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -363,17 +372,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           functionName_ = "";
    -
           gradientFunc_ = "";
    -
           return this;
         }
     
    @@ -400,44 +408,21 @@ public org.tensorflow.proto.GradientDef build() {
         @java.lang.Override
         public org.tensorflow.proto.GradientDef buildPartial() {
           org.tensorflow.proto.GradientDef result = new org.tensorflow.proto.GradientDef(this);
    -      result.functionName_ = functionName_;
    -      result.gradientFunc_ = gradientFunc_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.GradientDef result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.functionName_ = functionName_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.gradientFunc_ = gradientFunc_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.GradientDef) {
    @@ -452,10 +437,12 @@ public Builder mergeFrom(org.tensorflow.proto.GradientDef other) {
           if (other == org.tensorflow.proto.GradientDef.getDefaultInstance()) return this;
           if (!other.getFunctionName().isEmpty()) {
             functionName_ = other.functionName_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getGradientFunc().isEmpty()) {
             gradientFunc_ = other.gradientFunc_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -486,12 +473,12 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   functionName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   gradientFunc_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 default: {
    @@ -509,6 +496,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object functionName_ = "";
         /**
    @@ -563,11 +551,9 @@ public java.lang.String getFunctionName() {
          */
         public Builder setFunctionName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           functionName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -580,8 +566,8 @@ public Builder setFunctionName(
          * @return This builder for chaining.
          */
         public Builder clearFunctionName() {
    -      
           functionName_ = getDefaultInstance().getFunctionName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -596,12 +582,10 @@ public Builder clearFunctionName() {
          */
         public Builder setFunctionNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           functionName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -659,11 +643,9 @@ public java.lang.String getGradientFunc() {
          */
         public Builder setGradientFunc(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           gradientFunc_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -676,8 +658,8 @@ public Builder setGradientFunc(
          * @return This builder for chaining.
          */
         public Builder clearGradientFunc() {
    -      
           gradientFunc_ = getDefaultInstance().getGradientFunc();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -692,27 +674,13 @@ public Builder clearGradientFunc() {
          */
         public Builder setGradientFuncBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           gradientFunc_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.GradientDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GradientDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GradientDefOrBuilder.java
    index 7142b052e02..4d6181be00b 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GradientDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GradientDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/function.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDebugInfo.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDebugInfo.java
    index 1b475c9ec42..0c193e2f6eb 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDebugInfo.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDebugInfo.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_debug_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,30 +9,28 @@
      * Protobuf type {@code tensorflow.GraphDebugInfo}
      */
     public final class GraphDebugInfo extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.GraphDebugInfo)
         GraphDebugInfoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      GraphDebugInfo.class.getName());
    +  }
       // Use GraphDebugInfo.newBuilder() to construct.
    -  private GraphDebugInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private GraphDebugInfo(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private GraphDebugInfo() {
    -    files_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -  }
    -
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new GraphDebugInfo();
    +    files_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
       }
     
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.GraphDebugInfoProtos.internal_static_tensorflow_GraphDebugInfo_descriptor;
    @@ -38,7 +38,7 @@ protected java.lang.Object newInstance(
     
       @SuppressWarnings({"rawtypes"})
       @java.lang.Override
    -  protected com.google.protobuf.MapField internalGetMapField(
    +  protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
           int number) {
         switch (number) {
           case 4:
    @@ -55,7 +55,7 @@ protected com.google.protobuf.MapField internalGetMapField(
         }
       }
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.GraphDebugInfoProtos.internal_static_tensorflow_GraphDebugInfo_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -191,12 +191,21 @@ public interface FileLineColOrBuilder extends
        * Protobuf type {@code tensorflow.GraphDebugInfo.FileLineCol}
        */
       public static final class FileLineCol extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.GraphDebugInfo.FileLineCol)
           FileLineColOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        FileLineCol.class.getName());
    +    }
         // Use FileLineCol.newBuilder() to construct.
    -    private FileLineCol(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private FileLineCol(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private FileLineCol() {
    @@ -204,25 +213,13 @@ private FileLineCol() {
           code_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new FileLineCol();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.GraphDebugInfoProtos.internal_static_tensorflow_GraphDebugInfo_FileLineCol_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.GraphDebugInfoProtos.internal_static_tensorflow_GraphDebugInfo_FileLineCol_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -231,7 +228,7 @@ protected java.lang.Object newInstance(
     
         private int bitField0_;
         public static final int FILE_INDEX_FIELD_NUMBER = 1;
    -    private int fileIndex_;
    +    private int fileIndex_ = 0;
         /**
          * 
          * File name index, which can be used to retrieve the file name string from
    @@ -260,7 +257,7 @@ public int getFileIndex() {
         }
     
         public static final int LINE_FIELD_NUMBER = 2;
    -    private int line_;
    +    private int line_ = 0;
         /**
          * 
          * Line number in the file.
    @@ -287,7 +284,7 @@ public int getLine() {
         }
     
         public static final int COL_FIELD_NUMBER = 3;
    -    private int col_;
    +    private int col_ = 0;
         /**
          * 
          * Col number in the file line.
    @@ -314,7 +311,8 @@ public int getCol() {
         }
     
         public static final int FUNC_FIELD_NUMBER = 4;
    -    private volatile java.lang.Object func_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object func_ = "";
         /**
          * 
          * Name of function contains the file line.
    @@ -374,7 +372,8 @@ public java.lang.String getFunc() {
         }
     
         public static final int CODE_FIELD_NUMBER = 5;
    -    private volatile java.lang.Object code_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object code_ = "";
         /**
          * 
          * Source code contained in this file line.
    @@ -457,10 +456,10 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
             output.writeInt32(3, col_);
           }
           if (((bitField0_ & 0x00000008) != 0)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, func_);
    +        com.google.protobuf.GeneratedMessage.writeString(output, 4, func_);
           }
           if (((bitField0_ & 0x00000010) != 0)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, code_);
    +        com.google.protobuf.GeneratedMessage.writeString(output, 5, code_);
           }
           getUnknownFields().writeTo(output);
         }
    @@ -484,10 +483,10 @@ public int getSerializedSize() {
               .computeInt32Size(3, col_);
           }
           if (((bitField0_ & 0x00000008) != 0)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, func_);
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(4, func_);
           }
           if (((bitField0_ & 0x00000010) != 0)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, code_);
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(5, code_);
           }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
    @@ -599,39 +598,41 @@ public static org.tensorflow.proto.GraphDebugInfo.FileLineCol parseFrom(
         }
         public static org.tensorflow.proto.GraphDebugInfo.FileLineCol parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.GraphDebugInfo.FileLineCol parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.GraphDebugInfo.FileLineCol parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.GraphDebugInfo.FileLineCol parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.GraphDebugInfo.FileLineCol parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.GraphDebugInfo.FileLineCol parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -651,7 +652,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -663,7 +664,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.GraphDebugInfo.FileLineCol}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.GraphDebugInfo.FileLineCol)
             org.tensorflow.proto.GraphDebugInfo.FileLineColOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -672,7 +673,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.GraphDebugInfoProtos.internal_static_tensorflow_GraphDebugInfo_FileLineCol_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -685,23 +686,19 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             fileIndex_ = 0;
    -        bitField0_ = (bitField0_ & ~0x00000001);
             line_ = 0;
    -        bitField0_ = (bitField0_ & ~0x00000002);
             col_ = 0;
    -        bitField0_ = (bitField0_ & ~0x00000004);
             func_ = "";
    -        bitField0_ = (bitField0_ & ~0x00000008);
             code_ = "";
    -        bitField0_ = (bitField0_ & ~0x00000010);
             return this;
           }
     
    @@ -728,6 +725,12 @@ public org.tensorflow.proto.GraphDebugInfo.FileLineCol build() {
           @java.lang.Override
           public org.tensorflow.proto.GraphDebugInfo.FileLineCol buildPartial() {
             org.tensorflow.proto.GraphDebugInfo.FileLineCol result = new org.tensorflow.proto.GraphDebugInfo.FileLineCol(this);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartial0(org.tensorflow.proto.GraphDebugInfo.FileLineCol result) {
             int from_bitField0_ = bitField0_;
             int to_bitField0_ = 0;
             if (((from_bitField0_ & 0x00000001) != 0)) {
    @@ -743,50 +746,16 @@ public org.tensorflow.proto.GraphDebugInfo.FileLineCol buildPartial() {
               to_bitField0_ |= 0x00000004;
             }
             if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.func_ = func_;
               to_bitField0_ |= 0x00000008;
             }
    -        result.func_ = func_;
             if (((from_bitField0_ & 0x00000010) != 0)) {
    +          result.code_ = code_;
               to_bitField0_ |= 0x00000010;
             }
    -        result.code_ = code_;
    -        result.bitField0_ = to_bitField0_;
    -        onBuilt();
    -        return result;
    +        result.bitField0_ |= to_bitField0_;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    -      }
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.GraphDebugInfo.FileLineCol) {
    @@ -809,13 +778,13 @@ public Builder mergeFrom(org.tensorflow.proto.GraphDebugInfo.FileLineCol other)
               setCol(other.getCol());
             }
             if (other.hasFunc()) {
    -          bitField0_ |= 0x00000008;
               func_ = other.func_;
    +          bitField0_ |= 0x00000008;
               onChanged();
             }
             if (other.hasCode()) {
    -          bitField0_ |= 0x00000010;
               code_ = other.code_;
    +          bitField0_ |= 0x00000010;
               onChanged();
             }
             this.mergeUnknownFields(other.getUnknownFields());
    @@ -924,8 +893,9 @@ public int getFileIndex() {
            * @return This builder for chaining.
            */
           public Builder setFileIndex(int value) {
    -        bitField0_ |= 0x00000001;
    +
             fileIndex_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -980,8 +950,9 @@ public int getLine() {
            * @return This builder for chaining.
            */
           public Builder setLine(int value) {
    -        bitField0_ |= 0x00000002;
    +
             line_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1035,8 +1006,9 @@ public int getCol() {
            * @return This builder for chaining.
            */
           public Builder setCol(int value) {
    -        bitField0_ |= 0x00000004;
    +
             col_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1121,11 +1093,9 @@ public java.lang.String getFunc() {
            */
           public Builder setFunc(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  bitField0_ |= 0x00000008;
    +        if (value == null) { throw new NullPointerException(); }
             func_ = value;
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -1138,8 +1108,8 @@ public Builder setFunc(
            * @return This builder for chaining.
            */
           public Builder clearFunc() {
    -        bitField0_ = (bitField0_ & ~0x00000008);
             func_ = getDefaultInstance().getFunc();
    +        bitField0_ = (bitField0_ & ~0x00000008);
             onChanged();
             return this;
           }
    @@ -1154,11 +1124,9 @@ public Builder clearFunc() {
            */
           public Builder setFuncBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  bitField0_ |= 0x00000008;
    +        if (value == null) { throw new NullPointerException(); }
             func_ = value;
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -1229,11 +1197,9 @@ public java.lang.String getCode() {
            */
           public Builder setCode(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  bitField0_ |= 0x00000010;
    +        if (value == null) { throw new NullPointerException(); }
             code_ = value;
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -1246,8 +1212,8 @@ public Builder setCode(
            * @return This builder for chaining.
            */
           public Builder clearCode() {
    -        bitField0_ = (bitField0_ & ~0x00000010);
             code_ = getDefaultInstance().getCode();
    +        bitField0_ = (bitField0_ & ~0x00000010);
             onChanged();
             return this;
           }
    @@ -1262,26 +1228,12 @@ public Builder clearCode() {
            */
           public Builder setCodeBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  bitField0_ |= 0x00000010;
    +        if (value == null) { throw new NullPointerException(); }
             code_ = value;
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.GraphDebugInfo.FileLineCol)
         }
    @@ -1296,7 +1248,7 @@ public static org.tensorflow.proto.GraphDebugInfo.FileLineCol getDefaultInstance
           return DEFAULT_INSTANCE;
         }
     
    -    @java.lang.Deprecated public static final com.google.protobuf.Parser
    +    private static final com.google.protobuf.Parser
             PARSER = new com.google.protobuf.AbstractParser() {
           @java.lang.Override
           public FileLineCol parsePartialFrom(
    @@ -1407,12 +1359,21 @@ org.tensorflow.proto.GraphDebugInfo.FileLineColOrBuilder getFileLineColsOrBuilde
        * Protobuf type {@code tensorflow.GraphDebugInfo.StackTrace}
        */
       public static final class StackTrace extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.GraphDebugInfo.StackTrace)
           StackTraceOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        StackTrace.class.getName());
    +    }
         // Use StackTrace.newBuilder() to construct.
    -    private StackTrace(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private StackTrace(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private StackTrace() {
    @@ -1420,25 +1381,13 @@ private StackTrace() {
           frameId_ = emptyLongList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new StackTrace();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.GraphDebugInfoProtos.internal_static_tensorflow_GraphDebugInfo_StackTrace_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.GraphDebugInfoProtos.internal_static_tensorflow_GraphDebugInfo_StackTrace_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -1446,6 +1395,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int FILE_LINE_COLS_FIELD_NUMBER = 1;
    +    @SuppressWarnings("serial")
         private java.util.List fileLineCols_;
         /**
          * 
    @@ -1506,7 +1456,9 @@ public org.tensorflow.proto.GraphDebugInfo.FileLineColOrBuilder getFileLineColsO
         }
     
         public static final int FRAME_ID_FIELD_NUMBER = 2;
    -    private com.google.protobuf.Internal.LongList frameId_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.Internal.LongList frameId_ =
    +        emptyLongList();
         /**
          * repeated fixed64 frame_id = 2 [packed = true];
          * @return A list containing the frameId.
    @@ -1659,39 +1611,41 @@ public static org.tensorflow.proto.GraphDebugInfo.StackTrace parseFrom(
         }
         public static org.tensorflow.proto.GraphDebugInfo.StackTrace parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.GraphDebugInfo.StackTrace parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.GraphDebugInfo.StackTrace parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.GraphDebugInfo.StackTrace parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.GraphDebugInfo.StackTrace parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.GraphDebugInfo.StackTrace parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -1711,7 +1665,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -1723,7 +1677,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.GraphDebugInfo.StackTrace}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.GraphDebugInfo.StackTrace)
             org.tensorflow.proto.GraphDebugInfo.StackTraceOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1732,7 +1686,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.GraphDebugInfoProtos.internal_static_tensorflow_GraphDebugInfo_StackTrace_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -1745,13 +1699,14 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             if (fileLineColsBuilder_ == null) {
               fileLineCols_ = java.util.Collections.emptyList();
             } else {
    @@ -1760,7 +1715,6 @@ public Builder clear() {
             }
             bitField0_ = (bitField0_ & ~0x00000001);
             frameId_ = emptyLongList();
    -        bitField0_ = (bitField0_ & ~0x00000002);
             return this;
           }
     
    @@ -1787,7 +1741,13 @@ public org.tensorflow.proto.GraphDebugInfo.StackTrace build() {
           @java.lang.Override
           public org.tensorflow.proto.GraphDebugInfo.StackTrace buildPartial() {
             org.tensorflow.proto.GraphDebugInfo.StackTrace result = new org.tensorflow.proto.GraphDebugInfo.StackTrace(this);
    -        int from_bitField0_ = bitField0_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.GraphDebugInfo.StackTrace result) {
             if (fileLineColsBuilder_ == null) {
               if (((bitField0_ & 0x00000001) != 0)) {
                 fileLineCols_ = java.util.Collections.unmodifiableList(fileLineCols_);
    @@ -1797,47 +1757,16 @@ public org.tensorflow.proto.GraphDebugInfo.StackTrace buildPartial() {
             } else {
               result.fileLineCols_ = fileLineColsBuilder_.build();
             }
    -        if (((bitField0_ & 0x00000002) != 0)) {
    +      }
    +
    +      private void buildPartial0(org.tensorflow.proto.GraphDebugInfo.StackTrace result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
               frameId_.makeImmutable();
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          result.frameId_ = frameId_;
             }
    -        result.frameId_ = frameId_;
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    -      }
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.GraphDebugInfo.StackTrace) {
    @@ -1869,7 +1798,7 @@ public Builder mergeFrom(org.tensorflow.proto.GraphDebugInfo.StackTrace other) {
                   fileLineCols_ = other.fileLineCols_;
                   bitField0_ = (bitField0_ & ~0x00000001);
                   fileLineColsBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getFileLineColsFieldBuilder() : null;
                 } else {
                   fileLineColsBuilder_.addAllMessages(other.fileLineCols_);
    @@ -1879,7 +1808,8 @@ public Builder mergeFrom(org.tensorflow.proto.GraphDebugInfo.StackTrace other) {
             if (!other.frameId_.isEmpty()) {
               if (frameId_.isEmpty()) {
                 frameId_ = other.frameId_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            frameId_.makeImmutable();
    +            bitField0_ |= 0x00000002;
               } else {
                 ensureFrameIdIsMutable();
                 frameId_.addAll(other.frameId_);
    @@ -1915,7 +1845,7 @@ public Builder mergeFrom(
                   case 10: {
                     org.tensorflow.proto.GraphDebugInfo.FileLineCol m =
                         input.readMessage(
    -                        org.tensorflow.proto.GraphDebugInfo.FileLineCol.PARSER,
    +                        org.tensorflow.proto.GraphDebugInfo.FileLineCol.parser(),
                             extensionRegistry);
                     if (fileLineColsBuilder_ == null) {
                       ensureFileLineColsIsMutable();
    @@ -1934,7 +1864,8 @@ public Builder mergeFrom(
                   case 18: {
                     int length = input.readRawVarint32();
                     int limit = input.pushLimit(length);
    -                ensureFrameIdIsMutable();
    +                int alloc = length > 4096 ? 4096 : length;
    +                ensureFrameIdIsMutable(alloc / 8);
                     while (input.getBytesUntilLimit() > 0) {
                       frameId_.addLong(input.readFixed64());
                     }
    @@ -1967,7 +1898,7 @@ private void ensureFileLineColsIsMutable() {
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.GraphDebugInfo.FileLineCol, org.tensorflow.proto.GraphDebugInfo.FileLineCol.Builder, org.tensorflow.proto.GraphDebugInfo.FileLineColOrBuilder> fileLineColsBuilder_;
     
           /**
    @@ -2255,11 +2186,11 @@ public org.tensorflow.proto.GraphDebugInfo.FileLineCol.Builder addFileLineColsBu
                getFileLineColsBuilderList() {
             return getFileLineColsFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.GraphDebugInfo.FileLineCol, org.tensorflow.proto.GraphDebugInfo.FileLineCol.Builder, org.tensorflow.proto.GraphDebugInfo.FileLineColOrBuilder> 
               getFileLineColsFieldBuilder() {
             if (fileLineColsBuilder_ == null) {
    -          fileLineColsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          fileLineColsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.GraphDebugInfo.FileLineCol, org.tensorflow.proto.GraphDebugInfo.FileLineCol.Builder, org.tensorflow.proto.GraphDebugInfo.FileLineColOrBuilder>(
                       fileLineCols_,
                       ((bitField0_ & 0x00000001) != 0),
    @@ -2272,10 +2203,16 @@ public org.tensorflow.proto.GraphDebugInfo.FileLineCol.Builder addFileLineColsBu
     
           private com.google.protobuf.Internal.LongList frameId_ = emptyLongList();
           private void ensureFrameIdIsMutable() {
    -        if (!((bitField0_ & 0x00000002) != 0)) {
    -          frameId_ = mutableCopy(frameId_);
    -          bitField0_ |= 0x00000002;
    -         }
    +        if (!frameId_.isModifiable()) {
    +          frameId_ = makeMutableCopy(frameId_);
    +        }
    +        bitField0_ |= 0x00000002;
    +      }
    +      private void ensureFrameIdIsMutable(int capacity) {
    +        if (!frameId_.isModifiable()) {
    +          frameId_ = makeMutableCopy(frameId_, capacity);
    +        }
    +        bitField0_ |= 0x00000002;
           }
           /**
            * repeated fixed64 frame_id = 2 [packed = true];
    @@ -2283,8 +2220,8 @@ private void ensureFrameIdIsMutable() {
            */
           public java.util.List
               getFrameIdList() {
    -        return ((bitField0_ & 0x00000002) != 0) ?
    -                 java.util.Collections.unmodifiableList(frameId_) : frameId_;
    +        frameId_.makeImmutable();
    +        return frameId_;
           }
           /**
            * repeated fixed64 frame_id = 2 [packed = true];
    @@ -2309,8 +2246,10 @@ public long getFrameId(int index) {
            */
           public Builder setFrameId(
               int index, long value) {
    +
             ensureFrameIdIsMutable();
             frameId_.setLong(index, value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -2320,8 +2259,10 @@ public Builder setFrameId(
            * @return This builder for chaining.
            */
           public Builder addFrameId(long value) {
    +
             ensureFrameIdIsMutable();
             frameId_.addLong(value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -2335,6 +2276,7 @@ public Builder addAllFrameId(
             ensureFrameIdIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, frameId_);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -2348,18 +2290,6 @@ public Builder clearFrameId() {
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.GraphDebugInfo.StackTrace)
         }
    @@ -2374,7 +2304,7 @@ public static org.tensorflow.proto.GraphDebugInfo.StackTrace getDefaultInstance(
           return DEFAULT_INSTANCE;
         }
     
    -    @java.lang.Deprecated public static final com.google.protobuf.Parser
    +    private static final com.google.protobuf.Parser
             PARSER = new com.google.protobuf.AbstractParser() {
           @java.lang.Override
           public StackTrace parsePartialFrom(
    @@ -2413,7 +2343,9 @@ public org.tensorflow.proto.GraphDebugInfo.StackTrace getDefaultInstanceForType(
       }
     
       public static final int FILES_FIELD_NUMBER = 1;
    -  private com.google.protobuf.LazyStringList files_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList files_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * This stores all the source code file names and can be indexed by the
    @@ -2479,6 +2411,7 @@ private static final class FramesByIdDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.MESSAGE,
                     org.tensorflow.proto.GraphDebugInfo.FileLineCol.getDefaultInstance());
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.Long, org.tensorflow.proto.GraphDebugInfo.FileLineCol> framesById_;
       private com.google.protobuf.MapField
    @@ -2489,7 +2422,6 @@ private static final class FramesByIdDefaultEntryHolder {
         }
         return framesById_;
       }
    -
       public int getFramesByIdCount() {
         return internalGetFramesById().getMap().size();
       }
    @@ -2501,11 +2433,10 @@ public int getFramesByIdCount() {
        *
        * map<fixed64, .tensorflow.GraphDebugInfo.FileLineCol> frames_by_id = 4;
        */
    -
       @java.lang.Override
       public boolean containsFramesById(
           long key) {
    -    
    +
         return internalGetFramesById().getMap().containsKey(key);
       }
       /**
    @@ -2525,7 +2456,6 @@ public java.util.Mapmap<fixed64, .tensorflow.GraphDebugInfo.FileLineCol> frames_by_id = 4;
        */
       @java.lang.Override
    -
       public java.util.Map getFramesByIdMap() {
         return internalGetFramesById().getMap();
       }
    @@ -2538,11 +2468,12 @@ public java.util.Mapmap<fixed64, .tensorflow.GraphDebugInfo.FileLineCol> frames_by_id = 4;
        */
       @java.lang.Override
    -
    -  public org.tensorflow.proto.GraphDebugInfo.FileLineCol getFramesByIdOrDefault(
    +  public /* nullable */
    +org.tensorflow.proto.GraphDebugInfo.FileLineCol getFramesByIdOrDefault(
           long key,
    -      org.tensorflow.proto.GraphDebugInfo.FileLineCol defaultValue) {
    -    
    +      /* nullable */
    +org.tensorflow.proto.GraphDebugInfo.FileLineCol defaultValue) {
    +
         java.util.Map map =
             internalGetFramesById().getMap();
         return map.containsKey(key) ? map.get(key) : defaultValue;
    @@ -2556,10 +2487,9 @@ public org.tensorflow.proto.GraphDebugInfo.FileLineCol getFramesByIdOrDefault(
        * map<fixed64, .tensorflow.GraphDebugInfo.FileLineCol> frames_by_id = 4;
        */
       @java.lang.Override
    -
       public org.tensorflow.proto.GraphDebugInfo.FileLineCol getFramesByIdOrThrow(
           long key) {
    -    
    +
         java.util.Map map =
             internalGetFramesById().getMap();
         if (!map.containsKey(key)) {
    @@ -2580,6 +2510,7 @@ private static final class TracesByIdDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.MESSAGE,
                     org.tensorflow.proto.GraphDebugInfo.StackTrace.getDefaultInstance());
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.Long, org.tensorflow.proto.GraphDebugInfo.StackTrace> tracesById_;
       private com.google.protobuf.MapField
    @@ -2590,18 +2521,16 @@ private static final class TracesByIdDefaultEntryHolder {
         }
         return tracesById_;
       }
    -
       public int getTracesByIdCount() {
         return internalGetTracesById().getMap().size();
       }
       /**
        * map<fixed64, .tensorflow.GraphDebugInfo.StackTrace> traces_by_id = 6;
        */
    -
       @java.lang.Override
       public boolean containsTracesById(
           long key) {
    -    
    +
         return internalGetTracesById().getMap().containsKey(key);
       }
       /**
    @@ -2616,7 +2545,6 @@ public java.util.Mapmap<fixed64, .tensorflow.GraphDebugInfo.StackTrace> traces_by_id = 6;
        */
       @java.lang.Override
    -
       public java.util.Map getTracesByIdMap() {
         return internalGetTracesById().getMap();
       }
    @@ -2624,11 +2552,12 @@ public java.util.Mapmap<fixed64, .tensorflow.GraphDebugInfo.StackTrace> traces_by_id = 6;
        */
       @java.lang.Override
    -
    -  public org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesByIdOrDefault(
    +  public /* nullable */
    +org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesByIdOrDefault(
           long key,
    -      org.tensorflow.proto.GraphDebugInfo.StackTrace defaultValue) {
    -    
    +      /* nullable */
    +org.tensorflow.proto.GraphDebugInfo.StackTrace defaultValue) {
    +
         java.util.Map map =
             internalGetTracesById().getMap();
         return map.containsKey(key) ? map.get(key) : defaultValue;
    @@ -2637,10 +2566,9 @@ public org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesByIdOrDefault(
        * map<fixed64, .tensorflow.GraphDebugInfo.StackTrace> traces_by_id = 6;
        */
       @java.lang.Override
    -
       public org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesByIdOrThrow(
           long key) {
    -    
    +
         java.util.Map map =
             internalGetTracesById().getMap();
         if (!map.containsKey(key)) {
    @@ -2661,6 +2589,7 @@ private static final class TracesDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.MESSAGE,
                     org.tensorflow.proto.GraphDebugInfo.StackTrace.getDefaultInstance());
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.String, org.tensorflow.proto.GraphDebugInfo.StackTrace> traces_;
       private com.google.protobuf.MapField
    @@ -2671,7 +2600,6 @@ private static final class TracesDefaultEntryHolder {
         }
         return traces_;
       }
    -
       public int getTracesCount() {
         return internalGetTraces().getMap().size();
       }
    @@ -2682,7 +2610,6 @@ public int getTracesCount() {
        *
        * map<string, .tensorflow.GraphDebugInfo.StackTrace> traces = 2;
        */
    -
       @java.lang.Override
       public boolean containsTraces(
           java.lang.String key) {
    @@ -2705,7 +2632,6 @@ public java.util.Mapmap<string, .tensorflow.GraphDebugInfo.StackTrace> traces = 2;
        */
       @java.lang.Override
    -
       public java.util.Map getTracesMap() {
         return internalGetTraces().getMap();
       }
    @@ -2717,10 +2643,11 @@ public java.util.Mapmap<string, .tensorflow.GraphDebugInfo.StackTrace> traces = 2;
        */
       @java.lang.Override
    -
    -  public org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesOrDefault(
    +  public /* nullable */
    +org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesOrDefault(
           java.lang.String key,
    -      org.tensorflow.proto.GraphDebugInfo.StackTrace defaultValue) {
    +      /* nullable */
    +org.tensorflow.proto.GraphDebugInfo.StackTrace defaultValue) {
         if (key == null) { throw new NullPointerException("map key"); }
         java.util.Map map =
             internalGetTraces().getMap();
    @@ -2734,7 +2661,6 @@ public org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesOrDefault(
        * map<string, .tensorflow.GraphDebugInfo.StackTrace> traces = 2;
        */
       @java.lang.Override
    -
       public org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesOrThrow(
           java.lang.String key) {
         if (key == null) { throw new NullPointerException("map key"); }
    @@ -2758,6 +2684,7 @@ private static final class NameToTraceIdDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.FIXED64,
                     0L);
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.String, java.lang.Long> nameToTraceId_;
       private com.google.protobuf.MapField
    @@ -2768,16 +2695,16 @@ private static final class NameToTraceIdDefaultEntryHolder {
         }
         return nameToTraceId_;
       }
    -
       public int getNameToTraceIdCount() {
         return internalGetNameToTraceId().getMap().size();
       }
       /**
        * 
        * This maps a node name to a trace id contained in `traces_by_id`.
    +   *
        * The map key is a mangling of the containing function and op name with
        * syntax:
    -   *   op.name '@' func_name
    +   * op.name '@' func_name
        * For ops in the top-level graph, the func_name is the empty string and hence
        * the `@` may be ommitted.
        * Note that op names are restricted to a small number of characters which
    @@ -2789,7 +2716,6 @@ public int getNameToTraceIdCount() {
        *
        * map<string, fixed64> name_to_trace_id = 5;
        */
    -
       @java.lang.Override
       public boolean containsNameToTraceId(
           java.lang.String key) {
    @@ -2807,9 +2733,10 @@ public java.util.Map getNameToTraceId() {
       /**
        * 
        * This maps a node name to a trace id contained in `traces_by_id`.
    +   *
        * The map key is a mangling of the containing function and op name with
        * syntax:
    -   *   op.name '@' func_name
    +   * op.name '@' func_name
        * For ops in the top-level graph, the func_name is the empty string and hence
        * the `@` may be ommitted.
        * Note that op names are restricted to a small number of characters which
    @@ -2822,16 +2749,16 @@ public java.util.Map getNameToTraceId() {
        * map<string, fixed64> name_to_trace_id = 5;
        */
       @java.lang.Override
    -
       public java.util.Map getNameToTraceIdMap() {
         return internalGetNameToTraceId().getMap();
       }
       /**
        * 
        * This maps a node name to a trace id contained in `traces_by_id`.
    +   *
        * The map key is a mangling of the containing function and op name with
        * syntax:
    -   *   op.name '@' func_name
    +   * op.name '@' func_name
        * For ops in the top-level graph, the func_name is the empty string and hence
        * the `@` may be ommitted.
        * Note that op names are restricted to a small number of characters which
    @@ -2844,7 +2771,6 @@ public java.util.Map getNameToTraceIdMap() {
        * map<string, fixed64> name_to_trace_id = 5;
        */
       @java.lang.Override
    -
       public long getNameToTraceIdOrDefault(
           java.lang.String key,
           long defaultValue) {
    @@ -2856,9 +2782,10 @@ public long getNameToTraceIdOrDefault(
       /**
        * 
        * This maps a node name to a trace id contained in `traces_by_id`.
    +   *
        * The map key is a mangling of the containing function and op name with
        * syntax:
    -   *   op.name '@' func_name
    +   * op.name '@' func_name
        * For ops in the top-level graph, the func_name is the empty string and hence
        * the `@` may be ommitted.
        * Note that op names are restricted to a small number of characters which
    @@ -2871,7 +2798,6 @@ public long getNameToTraceIdOrDefault(
        * map<string, fixed64> name_to_trace_id = 5;
        */
       @java.lang.Override
    -
       public long getNameToTraceIdOrThrow(
           java.lang.String key) {
         if (key == null) { throw new NullPointerException("map key"); }
    @@ -2898,27 +2824,27 @@ public final boolean isInitialized() {
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
         for (int i = 0; i < files_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, files_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, files_.getRaw(i));
         }
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeStringMapTo(
             output,
             internalGetTraces(),
             TracesDefaultEntryHolder.defaultEntry,
             2);
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeLongMapTo(
             output,
             internalGetFramesById(),
             FramesByIdDefaultEntryHolder.defaultEntry,
             4);
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeStringMapTo(
             output,
             internalGetNameToTraceId(),
             NameToTraceIdDefaultEntryHolder.defaultEntry,
             5);
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeLongMapTo(
             output,
             internalGetTracesById(),
    @@ -3076,39 +3002,41 @@ public static org.tensorflow.proto.GraphDebugInfo parseFrom(
       }
       public static org.tensorflow.proto.GraphDebugInfo parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphDebugInfo parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.GraphDebugInfo parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.GraphDebugInfo parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.GraphDebugInfo parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphDebugInfo parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -3128,7 +3056,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -3136,7 +3064,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.GraphDebugInfo}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.GraphDebugInfo)
           org.tensorflow.proto.GraphDebugInfoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -3145,7 +3073,7 @@ public static final class Builder extends
         }
     
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
             int number) {
           switch (number) {
             case 4:
    @@ -3162,7 +3090,7 @@ protected com.google.protobuf.MapField internalGetMapField(
           }
         }
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMutableMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(
             int number) {
           switch (number) {
             case 4:
    @@ -3179,7 +3107,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
           }
         }
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.GraphDebugInfoProtos.internal_static_tensorflow_GraphDebugInfo_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -3192,15 +3120,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    -      files_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = 0;
    +      files_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           internalGetMutableFramesById().clear();
           internalGetMutableTracesById().clear();
           internalGetMutableTraces().clear();
    @@ -3231,56 +3160,32 @@ public org.tensorflow.proto.GraphDebugInfo build() {
         @java.lang.Override
         public org.tensorflow.proto.GraphDebugInfo buildPartial() {
           org.tensorflow.proto.GraphDebugInfo result = new org.tensorflow.proto.GraphDebugInfo(this);
    -      int from_bitField0_ = bitField0_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        files_ = files_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.files_ = files_;
    -      result.framesById_ = internalGetFramesById();
    -      result.framesById_.makeImmutable();
    -      result.tracesById_ = internalGetTracesById();
    -      result.tracesById_.makeImmutable();
    -      result.traces_ = internalGetTraces();
    -      result.traces_.makeImmutable();
    -      result.nameToTraceId_ = internalGetNameToTraceId();
    -      result.nameToTraceId_.makeImmutable();
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.GraphDebugInfo result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        files_.makeImmutable();
    +        result.files_ = files_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.framesById_ = internalGetFramesById().build(FramesByIdDefaultEntryHolder.defaultEntry);
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.tracesById_ = internalGetTracesById().build(TracesByIdDefaultEntryHolder.defaultEntry);
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.traces_ = internalGetTraces().build(TracesDefaultEntryHolder.defaultEntry);
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.nameToTraceId_ = internalGetNameToTraceId();
    +        result.nameToTraceId_.makeImmutable();
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.GraphDebugInfo) {
    @@ -3296,7 +3201,7 @@ public Builder mergeFrom(org.tensorflow.proto.GraphDebugInfo other) {
           if (!other.files_.isEmpty()) {
             if (files_.isEmpty()) {
               files_ = other.files_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ |= 0x00000001;
             } else {
               ensureFilesIsMutable();
               files_.addAll(other.files_);
    @@ -3305,12 +3210,16 @@ public Builder mergeFrom(org.tensorflow.proto.GraphDebugInfo other) {
           }
           internalGetMutableFramesById().mergeFrom(
               other.internalGetFramesById());
    +      bitField0_ |= 0x00000002;
           internalGetMutableTracesById().mergeFrom(
               other.internalGetTracesById());
    +      bitField0_ |= 0x00000004;
           internalGetMutableTraces().mergeFrom(
               other.internalGetTraces());
    +      bitField0_ |= 0x00000008;
           internalGetMutableNameToTraceId().mergeFrom(
               other.internalGetNameToTraceId());
    +      bitField0_ |= 0x00000010;
           this.mergeUnknownFields(other.getUnknownFields());
           onChanged();
           return this;
    @@ -3347,16 +3256,18 @@ public Builder mergeFrom(
                   com.google.protobuf.MapEntry
                   traces__ = input.readMessage(
                       TracesDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
    -              internalGetMutableTraces().getMutableMap().put(
    +              internalGetMutableTraces().ensureBuilderMap().put(
                       traces__.getKey(), traces__.getValue());
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 18
                 case 34: {
                   com.google.protobuf.MapEntry
                   framesById__ = input.readMessage(
                       FramesByIdDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
    -              internalGetMutableFramesById().getMutableMap().put(
    +              internalGetMutableFramesById().ensureBuilderMap().put(
                       framesById__.getKey(), framesById__.getValue());
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 34
                 case 42: {
    @@ -3365,14 +3276,16 @@ public Builder mergeFrom(
                       NameToTraceIdDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                   internalGetMutableNameToTraceId().getMutableMap().put(
                       nameToTraceId__.getKey(), nameToTraceId__.getValue());
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 42
                 case 50: {
                   com.google.protobuf.MapEntry
                   tracesById__ = input.readMessage(
                       TracesByIdDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
    -              internalGetMutableTracesById().getMutableMap().put(
    +              internalGetMutableTracesById().ensureBuilderMap().put(
                       tracesById__.getKey(), tracesById__.getValue());
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 50
                 default: {
    @@ -3392,12 +3305,13 @@ public Builder mergeFrom(
         }
         private int bitField0_;
     
    -    private com.google.protobuf.LazyStringList files_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList files_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureFilesIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!files_.isModifiable()) {
             files_ = new com.google.protobuf.LazyStringArrayList(files_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      }
    +      bitField0_ |= 0x00000001;
         }
         /**
          * 
    @@ -3410,7 +3324,8 @@ private void ensureFilesIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getFilesList() {
    -      return files_.getUnmodifiableView();
    +      files_.makeImmutable();
    +      return files_;
         }
         /**
          * 
    @@ -3464,11 +3379,10 @@ public java.lang.String getFiles(int index) {
          */
         public Builder setFiles(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureFilesIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureFilesIsMutable();
           files_.set(index, value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -3484,11 +3398,10 @@ public Builder setFiles(
          */
         public Builder addFiles(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureFilesIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureFilesIsMutable();
           files_.add(value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -3507,6 +3420,7 @@ public Builder addAllFiles(
           ensureFilesIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, files_);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -3520,8 +3434,9 @@ public Builder addAllFiles(
          * @return This builder for chaining.
          */
         public Builder clearFiles() {
    -      files_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      files_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000001);;
           onChanged();
           return this;
         }
    @@ -3537,40 +3452,48 @@ public Builder clearFiles() {
          */
         public Builder addFilesBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureFilesIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureFilesIsMutable();
           files_.add(value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.MapField<
    -        java.lang.Long, org.tensorflow.proto.GraphDebugInfo.FileLineCol> framesById_;
    -    private com.google.protobuf.MapField
    -    internalGetFramesById() {
    +    private static final class FramesByIdConverter implements com.google.protobuf.MapFieldBuilder.Converter {
    +      @java.lang.Override
    +      public org.tensorflow.proto.GraphDebugInfo.FileLineCol build(org.tensorflow.proto.GraphDebugInfo.FileLineColOrBuilder val) {
    +        if (val instanceof org.tensorflow.proto.GraphDebugInfo.FileLineCol) { return (org.tensorflow.proto.GraphDebugInfo.FileLineCol) val; }
    +        return ((org.tensorflow.proto.GraphDebugInfo.FileLineCol.Builder) val).build();
    +      }
    +
    +      @java.lang.Override
    +      public com.google.protobuf.MapEntry defaultEntry() {
    +        return FramesByIdDefaultEntryHolder.defaultEntry;
    +      }
    +    };
    +    private static final FramesByIdConverter framesByIdConverter = new FramesByIdConverter();
    +
    +    private com.google.protobuf.MapFieldBuilder<
    +        java.lang.Long, org.tensorflow.proto.GraphDebugInfo.FileLineColOrBuilder, org.tensorflow.proto.GraphDebugInfo.FileLineCol, org.tensorflow.proto.GraphDebugInfo.FileLineCol.Builder> framesById_;
    +    private com.google.protobuf.MapFieldBuilder
    +        internalGetFramesById() {
           if (framesById_ == null) {
    -        return com.google.protobuf.MapField.emptyMapField(
    -            FramesByIdDefaultEntryHolder.defaultEntry);
    +        return new com.google.protobuf.MapFieldBuilder<>(framesByIdConverter);
           }
           return framesById_;
         }
    -    private com.google.protobuf.MapField
    -    internalGetMutableFramesById() {
    -      onChanged();;
    +    private com.google.protobuf.MapFieldBuilder
    +        internalGetMutableFramesById() {
           if (framesById_ == null) {
    -        framesById_ = com.google.protobuf.MapField.newMapField(
    -            FramesByIdDefaultEntryHolder.defaultEntry);
    -      }
    -      if (!framesById_.isMutable()) {
    -        framesById_ = framesById_.copy();
    +        framesById_ = new com.google.protobuf.MapFieldBuilder<>(framesByIdConverter);
           }
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return framesById_;
         }
    -
         public int getFramesByIdCount() {
    -      return internalGetFramesById().getMap().size();
    +      return internalGetFramesById().ensureBuilderMap().size();
         }
         /**
          * 
    @@ -3580,12 +3503,11 @@ public int getFramesByIdCount() {
          *
          * map<fixed64, .tensorflow.GraphDebugInfo.FileLineCol> frames_by_id = 4;
          */
    -
         @java.lang.Override
         public boolean containsFramesById(
             long key) {
    -      
    -      return internalGetFramesById().getMap().containsKey(key);
    +
    +      return internalGetFramesById().ensureBuilderMap().containsKey(key);
         }
         /**
          * Use {@link #getFramesByIdMap()} instead.
    @@ -3604,9 +3526,8 @@ public java.util.Mapmap<fixed64, .tensorflow.GraphDebugInfo.FileLineCol> frames_by_id = 4;
          */
         @java.lang.Override
    -
         public java.util.Map getFramesByIdMap() {
    -      return internalGetFramesById().getMap();
    +      return internalGetFramesById().getImmutableMap();
         }
         /**
          * 
    @@ -3617,14 +3538,14 @@ public java.util.Mapmap<fixed64, .tensorflow.GraphDebugInfo.FileLineCol> frames_by_id = 4;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.GraphDebugInfo.FileLineCol getFramesByIdOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.GraphDebugInfo.FileLineCol getFramesByIdOrDefault(
             long key,
    -        org.tensorflow.proto.GraphDebugInfo.FileLineCol defaultValue) {
    -      
    -      java.util.Map map =
    -          internalGetFramesById().getMap();
    -      return map.containsKey(key) ? map.get(key) : defaultValue;
    +        /* nullable */
    +org.tensorflow.proto.GraphDebugInfo.FileLineCol defaultValue) {
    +
    +      java.util.Map map = internalGetMutableFramesById().ensureBuilderMap();
    +      return map.containsKey(key) ? framesByIdConverter.build(map.get(key)) : defaultValue;
         }
         /**
          * 
    @@ -3635,21 +3556,18 @@ public org.tensorflow.proto.GraphDebugInfo.FileLineCol getFramesByIdOrDefault(
          * map<fixed64, .tensorflow.GraphDebugInfo.FileLineCol> frames_by_id = 4;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.GraphDebugInfo.FileLineCol getFramesByIdOrThrow(
             long key) {
    -      
    -      java.util.Map map =
    -          internalGetFramesById().getMap();
    +
    +      java.util.Map map = internalGetMutableFramesById().ensureBuilderMap();
           if (!map.containsKey(key)) {
             throw new java.lang.IllegalArgumentException();
           }
    -      return map.get(key);
    +      return framesByIdConverter.build(map.get(key));
         }
    -
         public Builder clearFramesById() {
    -      internalGetMutableFramesById().getMutableMap()
    -          .clear();
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      internalGetMutableFramesById().clear();
           return this;
         }
         /**
    @@ -3660,11 +3578,10 @@ public Builder clearFramesById() {
          *
          * map<fixed64, .tensorflow.GraphDebugInfo.FileLineCol> frames_by_id = 4;
          */
    -
         public Builder removeFramesById(
             long key) {
    -      
    -      internalGetMutableFramesById().getMutableMap()
    +
    +      internalGetMutableFramesById().ensureBuilderMap()
               .remove(key);
           return this;
         }
    @@ -3673,8 +3590,9 @@ public Builder removeFramesById(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableFramesById() {
    -      return internalGetMutableFramesById().getMutableMap();
    +        getMutableFramesById() {
    +      bitField0_ |= 0x00000002;
    +      return internalGetMutableFramesById().ensureMessageMap();
         }
         /**
          * 
    @@ -3687,13 +3605,11 @@ public Builder removeFramesById(
         public Builder putFramesById(
             long key,
             org.tensorflow.proto.GraphDebugInfo.FileLineCol value) {
    -      
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
     
    -      internalGetMutableFramesById().getMutableMap()
    +      if (value == null) { throw new NullPointerException("map value"); }
    +      internalGetMutableFramesById().ensureBuilderMap()
               .put(key, value);
    +      bitField0_ |= 0x00000002;
           return this;
         }
         /**
    @@ -3704,49 +3620,84 @@ public Builder putFramesById(
          *
          * map<fixed64, .tensorflow.GraphDebugInfo.FileLineCol> frames_by_id = 4;
          */
    -
         public Builder putAllFramesById(
             java.util.Map values) {
    -      internalGetMutableFramesById().getMutableMap()
    +      for (java.util.Map.Entry e : values.entrySet()) {
    +        if (e.getKey() == null || e.getValue() == null) {
    +          throw new NullPointerException();
    +        }
    +      }
    +      internalGetMutableFramesById().ensureBuilderMap()
               .putAll(values);
    +      bitField0_ |= 0x00000002;
           return this;
         }
    +    /**
    +     * 
    +     * Stack traces and frames are uniqueified during construction. These maps
    +     * index from the unique id for a frame/trace to the value.
    +     * 
    + * + * map<fixed64, .tensorflow.GraphDebugInfo.FileLineCol> frames_by_id = 4; + */ + public org.tensorflow.proto.GraphDebugInfo.FileLineCol.Builder putFramesByIdBuilderIfAbsent( + long key) { + java.util.Map builderMap = internalGetMutableFramesById().ensureBuilderMap(); + org.tensorflow.proto.GraphDebugInfo.FileLineColOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.GraphDebugInfo.FileLineCol.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.GraphDebugInfo.FileLineCol) { + entry = ((org.tensorflow.proto.GraphDebugInfo.FileLineCol) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.GraphDebugInfo.FileLineCol.Builder) entry; + } - private com.google.protobuf.MapField< - java.lang.Long, org.tensorflow.proto.GraphDebugInfo.StackTrace> tracesById_; - private com.google.protobuf.MapField - internalGetTracesById() { + private static final class TracesByIdConverter implements com.google.protobuf.MapFieldBuilder.Converter { + @java.lang.Override + public org.tensorflow.proto.GraphDebugInfo.StackTrace build(org.tensorflow.proto.GraphDebugInfo.StackTraceOrBuilder val) { + if (val instanceof org.tensorflow.proto.GraphDebugInfo.StackTrace) { return (org.tensorflow.proto.GraphDebugInfo.StackTrace) val; } + return ((org.tensorflow.proto.GraphDebugInfo.StackTrace.Builder) val).build(); + } + + @java.lang.Override + public com.google.protobuf.MapEntry defaultEntry() { + return TracesByIdDefaultEntryHolder.defaultEntry; + } + }; + private static final TracesByIdConverter tracesByIdConverter = new TracesByIdConverter(); + + private com.google.protobuf.MapFieldBuilder< + java.lang.Long, org.tensorflow.proto.GraphDebugInfo.StackTraceOrBuilder, org.tensorflow.proto.GraphDebugInfo.StackTrace, org.tensorflow.proto.GraphDebugInfo.StackTrace.Builder> tracesById_; + private com.google.protobuf.MapFieldBuilder + internalGetTracesById() { if (tracesById_ == null) { - return com.google.protobuf.MapField.emptyMapField( - TracesByIdDefaultEntryHolder.defaultEntry); + return new com.google.protobuf.MapFieldBuilder<>(tracesByIdConverter); } return tracesById_; } - private com.google.protobuf.MapField - internalGetMutableTracesById() { - onChanged();; + private com.google.protobuf.MapFieldBuilder + internalGetMutableTracesById() { if (tracesById_ == null) { - tracesById_ = com.google.protobuf.MapField.newMapField( - TracesByIdDefaultEntryHolder.defaultEntry); - } - if (!tracesById_.isMutable()) { - tracesById_ = tracesById_.copy(); + tracesById_ = new com.google.protobuf.MapFieldBuilder<>(tracesByIdConverter); } + bitField0_ |= 0x00000004; + onChanged(); return tracesById_; } - public int getTracesByIdCount() { - return internalGetTracesById().getMap().size(); + return internalGetTracesById().ensureBuilderMap().size(); } /** * map<fixed64, .tensorflow.GraphDebugInfo.StackTrace> traces_by_id = 6; */ - @java.lang.Override public boolean containsTracesById( long key) { - - return internalGetTracesById().getMap().containsKey(key); + + return internalGetTracesById().ensureBuilderMap().containsKey(key); } /** * Use {@link #getTracesByIdMap()} instead. @@ -3760,52 +3711,47 @@ public java.util.Mapmap<fixed64, .tensorflow.GraphDebugInfo.StackTrace> traces_by_id = 6; */ @java.lang.Override - public java.util.Map getTracesByIdMap() { - return internalGetTracesById().getMap(); + return internalGetTracesById().getImmutableMap(); } /** * map<fixed64, .tensorflow.GraphDebugInfo.StackTrace> traces_by_id = 6; */ @java.lang.Override - - public org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesByIdOrDefault( + public /* nullable */ +org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesByIdOrDefault( long key, - org.tensorflow.proto.GraphDebugInfo.StackTrace defaultValue) { - - java.util.Map map = - internalGetTracesById().getMap(); - return map.containsKey(key) ? map.get(key) : defaultValue; + /* nullable */ +org.tensorflow.proto.GraphDebugInfo.StackTrace defaultValue) { + + java.util.Map map = internalGetMutableTracesById().ensureBuilderMap(); + return map.containsKey(key) ? tracesByIdConverter.build(map.get(key)) : defaultValue; } /** * map<fixed64, .tensorflow.GraphDebugInfo.StackTrace> traces_by_id = 6; */ @java.lang.Override - public org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesByIdOrThrow( long key) { - - java.util.Map map = - internalGetTracesById().getMap(); + + java.util.Map map = internalGetMutableTracesById().ensureBuilderMap(); if (!map.containsKey(key)) { throw new java.lang.IllegalArgumentException(); } - return map.get(key); + return tracesByIdConverter.build(map.get(key)); } - public Builder clearTracesById() { - internalGetMutableTracesById().getMutableMap() - .clear(); + bitField0_ = (bitField0_ & ~0x00000004); + internalGetMutableTracesById().clear(); return this; } /** * map<fixed64, .tensorflow.GraphDebugInfo.StackTrace> traces_by_id = 6; */ - public Builder removeTracesById( long key) { - - internalGetMutableTracesById().getMutableMap() + + internalGetMutableTracesById().ensureBuilderMap() .remove(key); return this; } @@ -3814,8 +3760,9 @@ public Builder removeTracesById( */ @java.lang.Deprecated public java.util.Map - getMutableTracesById() { - return internalGetMutableTracesById().getMutableMap(); + getMutableTracesById() { + bitField0_ |= 0x00000004; + return internalGetMutableTracesById().ensureMessageMap(); } /** * map<fixed64, .tensorflow.GraphDebugInfo.StackTrace> traces_by_id = 6; @@ -3823,51 +3770,80 @@ public Builder removeTracesById( public Builder putTracesById( long key, org.tensorflow.proto.GraphDebugInfo.StackTrace value) { - - if (value == null) { - throw new NullPointerException("map value"); -} - internalGetMutableTracesById().getMutableMap() + if (value == null) { throw new NullPointerException("map value"); } + internalGetMutableTracesById().ensureBuilderMap() .put(key, value); + bitField0_ |= 0x00000004; return this; } /** * map<fixed64, .tensorflow.GraphDebugInfo.StackTrace> traces_by_id = 6; */ - public Builder putAllTracesById( java.util.Map values) { - internalGetMutableTracesById().getMutableMap() + for (java.util.Map.Entry e : values.entrySet()) { + if (e.getKey() == null || e.getValue() == null) { + throw new NullPointerException(); + } + } + internalGetMutableTracesById().ensureBuilderMap() .putAll(values); + bitField0_ |= 0x00000004; return this; } + /** + * map<fixed64, .tensorflow.GraphDebugInfo.StackTrace> traces_by_id = 6; + */ + public org.tensorflow.proto.GraphDebugInfo.StackTrace.Builder putTracesByIdBuilderIfAbsent( + long key) { + java.util.Map builderMap = internalGetMutableTracesById().ensureBuilderMap(); + org.tensorflow.proto.GraphDebugInfo.StackTraceOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.GraphDebugInfo.StackTrace.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.GraphDebugInfo.StackTrace) { + entry = ((org.tensorflow.proto.GraphDebugInfo.StackTrace) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.GraphDebugInfo.StackTrace.Builder) entry; + } - private com.google.protobuf.MapField< - java.lang.String, org.tensorflow.proto.GraphDebugInfo.StackTrace> traces_; - private com.google.protobuf.MapField - internalGetTraces() { + private static final class TracesConverter implements com.google.protobuf.MapFieldBuilder.Converter { + @java.lang.Override + public org.tensorflow.proto.GraphDebugInfo.StackTrace build(org.tensorflow.proto.GraphDebugInfo.StackTraceOrBuilder val) { + if (val instanceof org.tensorflow.proto.GraphDebugInfo.StackTrace) { return (org.tensorflow.proto.GraphDebugInfo.StackTrace) val; } + return ((org.tensorflow.proto.GraphDebugInfo.StackTrace.Builder) val).build(); + } + + @java.lang.Override + public com.google.protobuf.MapEntry defaultEntry() { + return TracesDefaultEntryHolder.defaultEntry; + } + }; + private static final TracesConverter tracesConverter = new TracesConverter(); + + private com.google.protobuf.MapFieldBuilder< + java.lang.String, org.tensorflow.proto.GraphDebugInfo.StackTraceOrBuilder, org.tensorflow.proto.GraphDebugInfo.StackTrace, org.tensorflow.proto.GraphDebugInfo.StackTrace.Builder> traces_; + private com.google.protobuf.MapFieldBuilder + internalGetTraces() { if (traces_ == null) { - return com.google.protobuf.MapField.emptyMapField( - TracesDefaultEntryHolder.defaultEntry); + return new com.google.protobuf.MapFieldBuilder<>(tracesConverter); } return traces_; } - private com.google.protobuf.MapField - internalGetMutableTraces() { - onChanged();; + private com.google.protobuf.MapFieldBuilder + internalGetMutableTraces() { if (traces_ == null) { - traces_ = com.google.protobuf.MapField.newMapField( - TracesDefaultEntryHolder.defaultEntry); - } - if (!traces_.isMutable()) { - traces_ = traces_.copy(); + traces_ = new com.google.protobuf.MapFieldBuilder<>(tracesConverter); } + bitField0_ |= 0x00000008; + onChanged(); return traces_; } - public int getTracesCount() { - return internalGetTraces().getMap().size(); + return internalGetTraces().ensureBuilderMap().size(); } /** *
    @@ -3876,12 +3852,11 @@ public int getTracesCount() {
          *
          * map<string, .tensorflow.GraphDebugInfo.StackTrace> traces = 2;
          */
    -
         @java.lang.Override
         public boolean containsTraces(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      return internalGetTraces().getMap().containsKey(key);
    +      return internalGetTraces().ensureBuilderMap().containsKey(key);
         }
         /**
          * Use {@link #getTracesMap()} instead.
    @@ -3899,9 +3874,8 @@ public java.util.Mapmap<string, .tensorflow.GraphDebugInfo.StackTrace> traces = 2;
          */
         @java.lang.Override
    -
         public java.util.Map getTracesMap() {
    -      return internalGetTraces().getMap();
    +      return internalGetTraces().getImmutableMap();
         }
         /**
          * 
    @@ -3911,14 +3885,14 @@ public java.util.Mapmap<string, .tensorflow.GraphDebugInfo.StackTrace> traces = 2;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesOrDefault(
             java.lang.String key,
    -        org.tensorflow.proto.GraphDebugInfo.StackTrace defaultValue) {
    +        /* nullable */
    +org.tensorflow.proto.GraphDebugInfo.StackTrace defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetTraces().getMap();
    -      return map.containsKey(key) ? map.get(key) : defaultValue;
    +      java.util.Map map = internalGetMutableTraces().ensureBuilderMap();
    +      return map.containsKey(key) ? tracesConverter.build(map.get(key)) : defaultValue;
         }
         /**
          * 
    @@ -3928,21 +3902,18 @@ public org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesOrDefault(
          * map<string, .tensorflow.GraphDebugInfo.StackTrace> traces = 2;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetTraces().getMap();
    +      java.util.Map map = internalGetMutableTraces().ensureBuilderMap();
           if (!map.containsKey(key)) {
             throw new java.lang.IllegalArgumentException();
           }
    -      return map.get(key);
    +      return tracesConverter.build(map.get(key));
         }
    -
         public Builder clearTraces() {
    -      internalGetMutableTraces().getMutableMap()
    -          .clear();
    +      bitField0_ = (bitField0_ & ~0x00000008);
    +      internalGetMutableTraces().clear();
           return this;
         }
         /**
    @@ -3952,11 +3923,10 @@ public Builder clearTraces() {
          *
          * map<string, .tensorflow.GraphDebugInfo.StackTrace> traces = 2;
          */
    -
         public Builder removeTraces(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      internalGetMutableTraces().getMutableMap()
    +      internalGetMutableTraces().ensureBuilderMap()
               .remove(key);
           return this;
         }
    @@ -3965,8 +3935,9 @@ public Builder removeTraces(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableTraces() {
    -      return internalGetMutableTraces().getMutableMap();
    +        getMutableTraces() {
    +      bitField0_ |= 0x00000008;
    +      return internalGetMutableTraces().ensureMessageMap();
         }
         /**
          * 
    @@ -3979,12 +3950,10 @@ public Builder putTraces(
             java.lang.String key,
             org.tensorflow.proto.GraphDebugInfo.StackTrace value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    -      internalGetMutableTraces().getMutableMap()
    +      if (value == null) { throw new NullPointerException("map value"); }
    +      internalGetMutableTraces().ensureBuilderMap()
               .put(key, value);
    +      bitField0_ |= 0x00000008;
           return this;
         }
         /**
    @@ -3994,18 +3963,44 @@ public Builder putTraces(
          *
          * map<string, .tensorflow.GraphDebugInfo.StackTrace> traces = 2;
          */
    -
         public Builder putAllTraces(
             java.util.Map values) {
    -      internalGetMutableTraces().getMutableMap()
    +      for (java.util.Map.Entry e : values.entrySet()) {
    +        if (e.getKey() == null || e.getValue() == null) {
    +          throw new NullPointerException();
    +        }
    +      }
    +      internalGetMutableTraces().ensureBuilderMap()
               .putAll(values);
    +      bitField0_ |= 0x00000008;
           return this;
         }
    +    /**
    +     * 
    +     * Deprecated.
    +     * 
    + * + * map<string, .tensorflow.GraphDebugInfo.StackTrace> traces = 2; + */ + public org.tensorflow.proto.GraphDebugInfo.StackTrace.Builder putTracesBuilderIfAbsent( + java.lang.String key) { + java.util.Map builderMap = internalGetMutableTraces().ensureBuilderMap(); + org.tensorflow.proto.GraphDebugInfo.StackTraceOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.GraphDebugInfo.StackTrace.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.GraphDebugInfo.StackTrace) { + entry = ((org.tensorflow.proto.GraphDebugInfo.StackTrace) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.GraphDebugInfo.StackTrace.Builder) entry; + } private com.google.protobuf.MapField< java.lang.String, java.lang.Long> nameToTraceId_; private com.google.protobuf.MapField - internalGetNameToTraceId() { + internalGetNameToTraceId() { if (nameToTraceId_ == null) { return com.google.protobuf.MapField.emptyMapField( NameToTraceIdDefaultEntryHolder.defaultEntry); @@ -4013,8 +4008,7 @@ public Builder putAllTraces( return nameToTraceId_; } private com.google.protobuf.MapField - internalGetMutableNameToTraceId() { - onChanged();; + internalGetMutableNameToTraceId() { if (nameToTraceId_ == null) { nameToTraceId_ = com.google.protobuf.MapField.newMapField( NameToTraceIdDefaultEntryHolder.defaultEntry); @@ -4022,18 +4016,20 @@ public Builder putAllTraces( if (!nameToTraceId_.isMutable()) { nameToTraceId_ = nameToTraceId_.copy(); } + bitField0_ |= 0x00000010; + onChanged(); return nameToTraceId_; } - public int getNameToTraceIdCount() { return internalGetNameToTraceId().getMap().size(); } /** *
          * This maps a node name to a trace id contained in `traces_by_id`.
    +     *
          * The map key is a mangling of the containing function and op name with
          * syntax:
    -     *   op.name '@' func_name
    +     * op.name '@' func_name
          * For ops in the top-level graph, the func_name is the empty string and hence
          * the `@` may be ommitted.
          * Note that op names are restricted to a small number of characters which
    @@ -4045,7 +4041,6 @@ public int getNameToTraceIdCount() {
          *
          * map<string, fixed64> name_to_trace_id = 5;
          */
    -
         @java.lang.Override
         public boolean containsNameToTraceId(
             java.lang.String key) {
    @@ -4063,9 +4058,10 @@ public java.util.Map getNameToTraceId() {
         /**
          * 
          * This maps a node name to a trace id contained in `traces_by_id`.
    +     *
          * The map key is a mangling of the containing function and op name with
          * syntax:
    -     *   op.name '@' func_name
    +     * op.name '@' func_name
          * For ops in the top-level graph, the func_name is the empty string and hence
          * the `@` may be ommitted.
          * Note that op names are restricted to a small number of characters which
    @@ -4078,16 +4074,16 @@ public java.util.Map getNameToTraceId() {
          * map<string, fixed64> name_to_trace_id = 5;
          */
         @java.lang.Override
    -
         public java.util.Map getNameToTraceIdMap() {
           return internalGetNameToTraceId().getMap();
         }
         /**
          * 
          * This maps a node name to a trace id contained in `traces_by_id`.
    +     *
          * The map key is a mangling of the containing function and op name with
          * syntax:
    -     *   op.name '@' func_name
    +     * op.name '@' func_name
          * For ops in the top-level graph, the func_name is the empty string and hence
          * the `@` may be ommitted.
          * Note that op names are restricted to a small number of characters which
    @@ -4100,7 +4096,6 @@ public java.util.Map getNameToTraceIdMap() {
          * map<string, fixed64> name_to_trace_id = 5;
          */
         @java.lang.Override
    -
         public long getNameToTraceIdOrDefault(
             java.lang.String key,
             long defaultValue) {
    @@ -4112,9 +4107,10 @@ public long getNameToTraceIdOrDefault(
         /**
          * 
          * This maps a node name to a trace id contained in `traces_by_id`.
    +     *
          * The map key is a mangling of the containing function and op name with
          * syntax:
    -     *   op.name '@' func_name
    +     * op.name '@' func_name
          * For ops in the top-level graph, the func_name is the empty string and hence
          * the `@` may be ommitted.
          * Note that op names are restricted to a small number of characters which
    @@ -4127,7 +4123,6 @@ public long getNameToTraceIdOrDefault(
          * map<string, fixed64> name_to_trace_id = 5;
          */
         @java.lang.Override
    -
         public long getNameToTraceIdOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -4138,8 +4133,8 @@ public long getNameToTraceIdOrThrow(
           }
           return map.get(key);
         }
    -
         public Builder clearNameToTraceId() {
    +      bitField0_ = (bitField0_ & ~0x00000010);
           internalGetMutableNameToTraceId().getMutableMap()
               .clear();
           return this;
    @@ -4147,9 +4142,10 @@ public Builder clearNameToTraceId() {
         /**
          * 
          * This maps a node name to a trace id contained in `traces_by_id`.
    +     *
          * The map key is a mangling of the containing function and op name with
          * syntax:
    -     *   op.name '@' func_name
    +     * op.name '@' func_name
          * For ops in the top-level graph, the func_name is the empty string and hence
          * the `@` may be ommitted.
          * Note that op names are restricted to a small number of characters which
    @@ -4161,7 +4157,6 @@ public Builder clearNameToTraceId() {
          *
          * map<string, fixed64> name_to_trace_id = 5;
          */
    -
         public Builder removeNameToTraceId(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -4174,15 +4169,17 @@ public Builder removeNameToTraceId(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableNameToTraceId() {
    +        getMutableNameToTraceId() {
    +      bitField0_ |= 0x00000010;
           return internalGetMutableNameToTraceId().getMutableMap();
         }
         /**
          * 
          * This maps a node name to a trace id contained in `traces_by_id`.
    +     *
          * The map key is a mangling of the containing function and op name with
          * syntax:
    -     *   op.name '@' func_name
    +     * op.name '@' func_name
          * For ops in the top-level graph, the func_name is the empty string and hence
          * the `@` may be ommitted.
          * Note that op names are restricted to a small number of characters which
    @@ -4198,17 +4195,19 @@ public Builder putNameToTraceId(
             java.lang.String key,
             long value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      
    +
           internalGetMutableNameToTraceId().getMutableMap()
               .put(key, value);
    +      bitField0_ |= 0x00000010;
           return this;
         }
         /**
          * 
          * This maps a node name to a trace id contained in `traces_by_id`.
    +     *
          * The map key is a mangling of the containing function and op name with
          * syntax:
    -     *   op.name '@' func_name
    +     * op.name '@' func_name
          * For ops in the top-level graph, the func_name is the empty string and hence
          * the `@` may be ommitted.
          * Note that op names are restricted to a small number of characters which
    @@ -4220,25 +4219,13 @@ public Builder putNameToTraceId(
          *
          * map<string, fixed64> name_to_trace_id = 5;
          */
    -
         public Builder putAllNameToTraceId(
             java.util.Map values) {
           internalGetMutableNameToTraceId().getMutableMap()
               .putAll(values);
    +      bitField0_ |= 0x00000010;
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.GraphDebugInfo)
       }
    @@ -4253,7 +4240,7 @@ public static org.tensorflow.proto.GraphDebugInfo getDefaultInstance() {
         return DEFAULT_INSTANCE;
       }
     
    -  @java.lang.Deprecated public static final com.google.protobuf.Parser
    +  private static final com.google.protobuf.Parser
           PARSER = new com.google.protobuf.AbstractParser() {
         @java.lang.Override
         public GraphDebugInfo parsePartialFrom(
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDebugInfoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDebugInfoOrBuilder.java
    index cebdb4772c0..1219fa49740 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDebugInfoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDebugInfoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_debug_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -95,7 +97,6 @@ boolean containsFramesById(
        *
        * map<fixed64, .tensorflow.GraphDebugInfo.FileLineCol> frames_by_id = 4;
        */
    -
       /* nullable */
     org.tensorflow.proto.GraphDebugInfo.FileLineCol getFramesByIdOrDefault(
           long key,
    @@ -109,7 +110,6 @@ org.tensorflow.proto.GraphDebugInfo.FileLineCol getFramesByIdOrDefault(
        *
        * map<fixed64, .tensorflow.GraphDebugInfo.FileLineCol> frames_by_id = 4;
        */
    -
       org.tensorflow.proto.GraphDebugInfo.FileLineCol getFramesByIdOrThrow(
           long key);
     
    @@ -136,7 +136,6 @@ boolean containsTracesById(
       /**
        * map<fixed64, .tensorflow.GraphDebugInfo.StackTrace> traces_by_id = 6;
        */
    -
       /* nullable */
     org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesByIdOrDefault(
           long key,
    @@ -145,7 +144,6 @@ org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesByIdOrDefault(
       /**
        * map<fixed64, .tensorflow.GraphDebugInfo.StackTrace> traces_by_id = 6;
        */
    -
       org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesByIdOrThrow(
           long key);
     
    @@ -188,7 +186,6 @@ boolean containsTraces(
        *
        * map<string, .tensorflow.GraphDebugInfo.StackTrace> traces = 2;
        */
    -
       /* nullable */
     org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesOrDefault(
           java.lang.String key,
    @@ -201,16 +198,16 @@ org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesOrDefault(
        *
        * map<string, .tensorflow.GraphDebugInfo.StackTrace> traces = 2;
        */
    -
       org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesOrThrow(
           java.lang.String key);
     
       /**
        * 
        * This maps a node name to a trace id contained in `traces_by_id`.
    +   *
        * The map key is a mangling of the containing function and op name with
        * syntax:
    -   *   op.name '@' func_name
    +   * op.name '@' func_name
        * For ops in the top-level graph, the func_name is the empty string and hence
        * the `@` may be ommitted.
        * Note that op names are restricted to a small number of characters which
    @@ -226,9 +223,10 @@ org.tensorflow.proto.GraphDebugInfo.StackTrace getTracesOrThrow(
       /**
        * 
        * This maps a node name to a trace id contained in `traces_by_id`.
    +   *
        * The map key is a mangling of the containing function and op name with
        * syntax:
    -   *   op.name '@' func_name
    +   * op.name '@' func_name
        * For ops in the top-level graph, the func_name is the empty string and hence
        * the `@` may be ommitted.
        * Note that op names are restricted to a small number of characters which
    @@ -251,9 +249,10 @@ boolean containsNameToTraceId(
       /**
        * 
        * This maps a node name to a trace id contained in `traces_by_id`.
    +   *
        * The map key is a mangling of the containing function and op name with
        * syntax:
    -   *   op.name '@' func_name
    +   * op.name '@' func_name
        * For ops in the top-level graph, the func_name is the empty string and hence
        * the `@` may be ommitted.
        * Note that op names are restricted to a small number of characters which
    @@ -270,9 +269,10 @@ boolean containsNameToTraceId(
       /**
        * 
        * This maps a node name to a trace id contained in `traces_by_id`.
    +   *
        * The map key is a mangling of the containing function and op name with
        * syntax:
    -   *   op.name '@' func_name
    +   * op.name '@' func_name
        * For ops in the top-level graph, the func_name is the empty string and hence
        * the `@` may be ommitted.
        * Note that op names are restricted to a small number of characters which
    @@ -284,16 +284,16 @@ boolean containsNameToTraceId(
        *
        * map<string, fixed64> name_to_trace_id = 5;
        */
    -
       long getNameToTraceIdOrDefault(
           java.lang.String key,
           long defaultValue);
       /**
        * 
        * This maps a node name to a trace id contained in `traces_by_id`.
    +   *
        * The map key is a mangling of the containing function and op name with
        * syntax:
    -   *   op.name '@' func_name
    +   * op.name '@' func_name
        * For ops in the top-level graph, the func_name is the empty string and hence
        * the `@` may be ommitted.
        * Note that op names are restricted to a small number of characters which
    @@ -305,7 +305,6 @@ long getNameToTraceIdOrDefault(
        *
        * map<string, fixed64> name_to_trace_id = 5;
        */
    -
       long getNameToTraceIdOrThrow(
           java.lang.String key);
     }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDebugInfoProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDebugInfoProtos.java
    index ea8e2709a0f..65504f7b57b 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDebugInfoProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDebugInfoProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_debug_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class GraphDebugInfoProtos {
       private GraphDebugInfoProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      GraphDebugInfoProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,37 +28,37 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_GraphDebugInfo_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_GraphDebugInfo_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_GraphDebugInfo_FileLineCol_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_GraphDebugInfo_FileLineCol_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_GraphDebugInfo_StackTrace_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_GraphDebugInfo_StackTrace_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_GraphDebugInfo_FramesByIdEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_GraphDebugInfo_FramesByIdEntry_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_GraphDebugInfo_TracesByIdEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_GraphDebugInfo_TracesByIdEntry_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_GraphDebugInfo_TracesEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_GraphDebugInfo_TracesEntry_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_GraphDebugInfo_NameToTraceIdEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_GraphDebugInfo_NameToTraceIdEntry_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -92,45 +103,46 @@ public static void registerAllExtensions(
         internal_static_tensorflow_GraphDebugInfo_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_GraphDebugInfo_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_GraphDebugInfo_descriptor,
             new java.lang.String[] { "Files", "FramesById", "TracesById", "Traces", "NameToTraceId", });
         internal_static_tensorflow_GraphDebugInfo_FileLineCol_descriptor =
           internal_static_tensorflow_GraphDebugInfo_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_GraphDebugInfo_FileLineCol_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_GraphDebugInfo_FileLineCol_descriptor,
             new java.lang.String[] { "FileIndex", "Line", "Col", "Func", "Code", });
         internal_static_tensorflow_GraphDebugInfo_StackTrace_descriptor =
           internal_static_tensorflow_GraphDebugInfo_descriptor.getNestedTypes().get(1);
         internal_static_tensorflow_GraphDebugInfo_StackTrace_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_GraphDebugInfo_StackTrace_descriptor,
             new java.lang.String[] { "FileLineCols", "FrameId", });
         internal_static_tensorflow_GraphDebugInfo_FramesByIdEntry_descriptor =
           internal_static_tensorflow_GraphDebugInfo_descriptor.getNestedTypes().get(2);
         internal_static_tensorflow_GraphDebugInfo_FramesByIdEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_GraphDebugInfo_FramesByIdEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_GraphDebugInfo_TracesByIdEntry_descriptor =
           internal_static_tensorflow_GraphDebugInfo_descriptor.getNestedTypes().get(3);
         internal_static_tensorflow_GraphDebugInfo_TracesByIdEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_GraphDebugInfo_TracesByIdEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_GraphDebugInfo_TracesEntry_descriptor =
           internal_static_tensorflow_GraphDebugInfo_descriptor.getNestedTypes().get(4);
         internal_static_tensorflow_GraphDebugInfo_TracesEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_GraphDebugInfo_TracesEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_GraphDebugInfo_NameToTraceIdEntry_descriptor =
           internal_static_tensorflow_GraphDebugInfo_descriptor.getNestedTypes().get(5);
         internal_static_tensorflow_GraphDebugInfo_NameToTraceIdEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_GraphDebugInfo_NameToTraceIdEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDef.java
    index aa542fe4a5e..412913cf499 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDef.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDef.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,44 +13,43 @@
      * Protobuf type {@code tensorflow.GraphDef}
      */
     public final class GraphDef extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.GraphDef)
         GraphDefOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      GraphDef.class.getName());
    +  }
       // Use GraphDef.newBuilder() to construct.
    -  private GraphDef(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private GraphDef(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private GraphDef() {
         node_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new GraphDef();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.GraphProtos.internal_static_tensorflow_GraphDef_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.GraphProtos.internal_static_tensorflow_GraphDef_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.GraphDef.class, org.tensorflow.proto.GraphDef.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int NODE_FIELD_NUMBER = 1;
    +  @SuppressWarnings("serial")
       private java.util.List node_;
       /**
        * repeated .tensorflow.NodeDef node = 1;
    @@ -102,7 +103,7 @@ public org.tensorflow.proto.NodeDefOrBuilder getNodeOrBuilder(
        */
       @java.lang.Override
       public boolean hasVersions() {
    -    return versions_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -129,11 +130,11 @@ public org.tensorflow.proto.VersionDef getVersions() {
        */
       @java.lang.Override
       public org.tensorflow.proto.VersionDefOrBuilder getVersionsOrBuilder() {
    -    return getVersions();
    +    return versions_ == null ? org.tensorflow.proto.VersionDef.getDefaultInstance() : versions_;
       }
     
       public static final int VERSION_FIELD_NUMBER = 3;
    -  private int version_;
    +  private int version_ = 0;
       /**
        * 
        * Deprecated single version field; use versions above instead.  Since all
    @@ -156,26 +157,31 @@ public org.tensorflow.proto.VersionDefOrBuilder getVersionsOrBuilder() {
       /**
        * 
        * "library" provides user-defined functions.
    +   *
        * Naming:
    -   *   * library.function.name are in a flat namespace.
    -   *     NOTE: We may need to change it to be hierarchical to support
    -   *     different orgs. E.g.,
    -   *     { "/google/nn", { ... }},
    -   *     { "/google/vision", { ... }}
    -   *     { "/org_foo/module_bar", { ... }}
    -   *     map<string, FunctionDefLib> named_lib;
    -   *   * If node[i].op is the name of one function in "library",
    -   *     node[i] is deemed as a function call. Otherwise, node[i].op
    -   *     must be a primitive operation supported by the runtime.
    +   * * library.function.name are in a flat namespace.
    +   * NOTE: We may need to change it to be hierarchical to support
    +   * different orgs. E.g.,
    +   * { "/google/nn", { ... }},
    +   * { "/google/vision", { ... }}
    +   * { "/org_foo/module_bar", { ... }}
    +   * map<string, FunctionDefLib> named_lib;
    +   * * If node[i].op is the name of one function in "library",
    +   * node[i] is deemed as a function call. Otherwise, node[i].op
    +   * must be a primitive operation supported by the runtime.
    +   *
    +   *
        * Function call semantics:
    -   *   * The callee may start execution as soon as some of its inputs
    -   *     are ready. The caller may want to use Tuple() mechanism to
    -   *     ensure all inputs are ready in the same time.
    -   *   * The consumer of return values may start executing as soon as
    -   *     the return values the consumer depends on are ready.  The
    -   *     consumer may want to use Tuple() mechanism to ensure the
    -   *     consumer does not start until all return values of the callee
    -   *     function are ready.
    +   *
    +   * * The callee may start execution as soon as some of its inputs
    +   * are ready. The caller may want to use Tuple() mechanism to
    +   * ensure all inputs are ready in the same time.
    +   *
    +   * * The consumer of return values may start executing as soon as
    +   * the return values the consumer depends on are ready.  The
    +   * consumer may want to use Tuple() mechanism to ensure the
    +   * consumer does not start until all return values of the callee
    +   * function are ready.
        * 
    * * .tensorflow.FunctionDefLibrary library = 2; @@ -183,31 +189,36 @@ public org.tensorflow.proto.VersionDefOrBuilder getVersionsOrBuilder() { */ @java.lang.Override public boolean hasLibrary() { - return library_ != null; + return ((bitField0_ & 0x00000002) != 0); } /** *
        * "library" provides user-defined functions.
    +   *
        * Naming:
    -   *   * library.function.name are in a flat namespace.
    -   *     NOTE: We may need to change it to be hierarchical to support
    -   *     different orgs. E.g.,
    -   *     { "/google/nn", { ... }},
    -   *     { "/google/vision", { ... }}
    -   *     { "/org_foo/module_bar", { ... }}
    -   *     map<string, FunctionDefLib> named_lib;
    -   *   * If node[i].op is the name of one function in "library",
    -   *     node[i] is deemed as a function call. Otherwise, node[i].op
    -   *     must be a primitive operation supported by the runtime.
    +   * * library.function.name are in a flat namespace.
    +   * NOTE: We may need to change it to be hierarchical to support
    +   * different orgs. E.g.,
    +   * { "/google/nn", { ... }},
    +   * { "/google/vision", { ... }}
    +   * { "/org_foo/module_bar", { ... }}
    +   * map<string, FunctionDefLib> named_lib;
    +   * * If node[i].op is the name of one function in "library",
    +   * node[i] is deemed as a function call. Otherwise, node[i].op
    +   * must be a primitive operation supported by the runtime.
    +   *
    +   *
        * Function call semantics:
    -   *   * The callee may start execution as soon as some of its inputs
    -   *     are ready. The caller may want to use Tuple() mechanism to
    -   *     ensure all inputs are ready in the same time.
    -   *   * The consumer of return values may start executing as soon as
    -   *     the return values the consumer depends on are ready.  The
    -   *     consumer may want to use Tuple() mechanism to ensure the
    -   *     consumer does not start until all return values of the callee
    -   *     function are ready.
    +   *
    +   * * The callee may start execution as soon as some of its inputs
    +   * are ready. The caller may want to use Tuple() mechanism to
    +   * ensure all inputs are ready in the same time.
    +   *
    +   * * The consumer of return values may start executing as soon as
    +   * the return values the consumer depends on are ready.  The
    +   * consumer may want to use Tuple() mechanism to ensure the
    +   * consumer does not start until all return values of the callee
    +   * function are ready.
        * 
    * * .tensorflow.FunctionDefLibrary library = 2; @@ -220,33 +231,38 @@ public org.tensorflow.proto.FunctionDefLibrary getLibrary() { /** *
        * "library" provides user-defined functions.
    +   *
        * Naming:
    -   *   * library.function.name are in a flat namespace.
    -   *     NOTE: We may need to change it to be hierarchical to support
    -   *     different orgs. E.g.,
    -   *     { "/google/nn", { ... }},
    -   *     { "/google/vision", { ... }}
    -   *     { "/org_foo/module_bar", { ... }}
    -   *     map<string, FunctionDefLib> named_lib;
    -   *   * If node[i].op is the name of one function in "library",
    -   *     node[i] is deemed as a function call. Otherwise, node[i].op
    -   *     must be a primitive operation supported by the runtime.
    +   * * library.function.name are in a flat namespace.
    +   * NOTE: We may need to change it to be hierarchical to support
    +   * different orgs. E.g.,
    +   * { "/google/nn", { ... }},
    +   * { "/google/vision", { ... }}
    +   * { "/org_foo/module_bar", { ... }}
    +   * map<string, FunctionDefLib> named_lib;
    +   * * If node[i].op is the name of one function in "library",
    +   * node[i] is deemed as a function call. Otherwise, node[i].op
    +   * must be a primitive operation supported by the runtime.
    +   *
    +   *
        * Function call semantics:
    -   *   * The callee may start execution as soon as some of its inputs
    -   *     are ready. The caller may want to use Tuple() mechanism to
    -   *     ensure all inputs are ready in the same time.
    -   *   * The consumer of return values may start executing as soon as
    -   *     the return values the consumer depends on are ready.  The
    -   *     consumer may want to use Tuple() mechanism to ensure the
    -   *     consumer does not start until all return values of the callee
    -   *     function are ready.
    +   *
    +   * * The callee may start execution as soon as some of its inputs
    +   * are ready. The caller may want to use Tuple() mechanism to
    +   * ensure all inputs are ready in the same time.
    +   *
    +   * * The consumer of return values may start executing as soon as
    +   * the return values the consumer depends on are ready.  The
    +   * consumer may want to use Tuple() mechanism to ensure the
    +   * consumer does not start until all return values of the callee
    +   * function are ready.
        * 
    * * .tensorflow.FunctionDefLibrary library = 2; */ @java.lang.Override public org.tensorflow.proto.FunctionDefLibraryOrBuilder getLibraryOrBuilder() { - return getLibrary(); + return library_ == null ? org.tensorflow.proto.FunctionDefLibrary.getDefaultInstance() : library_; } public static final int DEBUG_INFO_FIELD_NUMBER = 5; @@ -261,7 +277,7 @@ public org.tensorflow.proto.FunctionDefLibraryOrBuilder getLibraryOrBuilder() { */ @java.lang.Override public boolean hasDebugInfo() { - return debugInfo_ != null; + return ((bitField0_ & 0x00000004) != 0); } /** *
    @@ -284,7 +300,7 @@ public org.tensorflow.proto.GraphDebugInfo getDebugInfo() {
        */
       @java.lang.Override
       public org.tensorflow.proto.GraphDebugInfoOrBuilder getDebugInfoOrBuilder() {
    -    return getDebugInfo();
    +    return debugInfo_ == null ? org.tensorflow.proto.GraphDebugInfo.getDefaultInstance() : debugInfo_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -304,16 +320,16 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         for (int i = 0; i < node_.size(); i++) {
           output.writeMessage(1, node_.get(i));
         }
    -    if (library_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           output.writeMessage(2, getLibrary());
         }
         if (version_ != 0) {
           output.writeInt32(3, version_);
         }
    -    if (versions_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(4, getVersions());
         }
    -    if (debugInfo_ != null) {
    +    if (((bitField0_ & 0x00000004) != 0)) {
           output.writeMessage(5, getDebugInfo());
         }
         getUnknownFields().writeTo(output);
    @@ -329,7 +345,7 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(1, node_.get(i));
         }
    -    if (library_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(2, getLibrary());
         }
    @@ -337,11 +353,11 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeInt32Size(3, version_);
         }
    -    if (versions_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(4, getVersions());
         }
    -    if (debugInfo_ != null) {
    +    if (((bitField0_ & 0x00000004) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(5, getDebugInfo());
         }
    @@ -447,39 +463,41 @@ public static org.tensorflow.proto.GraphDef parseFrom(
       }
       public static org.tensorflow.proto.GraphDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.GraphDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.GraphDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.GraphDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -499,7 +517,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -511,7 +529,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.GraphDef}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.GraphDef)
           org.tensorflow.proto.GraphDefOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -520,7 +538,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.GraphProtos.internal_static_tensorflow_GraphDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -529,17 +547,27 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.GraphDef.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getNodeFieldBuilder();
    +        getVersionsFieldBuilder();
    +        getLibraryFieldBuilder();
    +        getDebugInfoFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           if (nodeBuilder_ == null) {
             node_ = java.util.Collections.emptyList();
           } else {
    @@ -547,24 +575,20 @@ public Builder clear() {
             nodeBuilder_.clear();
           }
           bitField0_ = (bitField0_ & ~0x00000001);
    -      if (versionsBuilder_ == null) {
    -        versions_ = null;
    -      } else {
    -        versions_ = null;
    +      versions_ = null;
    +      if (versionsBuilder_ != null) {
    +        versionsBuilder_.dispose();
             versionsBuilder_ = null;
           }
           version_ = 0;
    -
    -      if (libraryBuilder_ == null) {
    -        library_ = null;
    -      } else {
    -        library_ = null;
    +      library_ = null;
    +      if (libraryBuilder_ != null) {
    +        libraryBuilder_.dispose();
             libraryBuilder_ = null;
           }
    -      if (debugInfoBuilder_ == null) {
    -        debugInfo_ = null;
    -      } else {
    -        debugInfo_ = null;
    +      debugInfo_ = null;
    +      if (debugInfoBuilder_ != null) {
    +        debugInfoBuilder_.dispose();
             debugInfoBuilder_ = null;
           }
           return this;
    @@ -593,7 +617,13 @@ public org.tensorflow.proto.GraphDef build() {
         @java.lang.Override
         public org.tensorflow.proto.GraphDef buildPartial() {
           org.tensorflow.proto.GraphDef result = new org.tensorflow.proto.GraphDef(this);
    -      int from_bitField0_ = bitField0_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.GraphDef result) {
           if (nodeBuilder_ == null) {
             if (((bitField0_ & 0x00000001) != 0)) {
               node_ = java.util.Collections.unmodifiableList(node_);
    @@ -603,58 +633,35 @@ public org.tensorflow.proto.GraphDef buildPartial() {
           } else {
             result.node_ = nodeBuilder_.build();
           }
    -      if (versionsBuilder_ == null) {
    -        result.versions_ = versions_;
    -      } else {
    -        result.versions_ = versionsBuilder_.build();
    +    }
    +
    +    private void buildPartial0(org.tensorflow.proto.GraphDef result) {
    +      int from_bitField0_ = bitField0_;
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.versions_ = versionsBuilder_ == null
    +            ? versions_
    +            : versionsBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
           }
    -      result.version_ = version_;
    -      if (libraryBuilder_ == null) {
    -        result.library_ = library_;
    -      } else {
    -        result.library_ = libraryBuilder_.build();
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.version_ = version_;
           }
    -      if (debugInfoBuilder_ == null) {
    -        result.debugInfo_ = debugInfo_;
    -      } else {
    -        result.debugInfo_ = debugInfoBuilder_.build();
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.library_ = libraryBuilder_ == null
    +            ? library_
    +            : libraryBuilder_.build();
    +        to_bitField0_ |= 0x00000002;
           }
    -      onBuilt();
    -      return result;
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.debugInfo_ = debugInfoBuilder_ == null
    +            ? debugInfo_
    +            : debugInfoBuilder_.build();
    +        to_bitField0_ |= 0x00000004;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    -    }
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.GraphDef) {
    @@ -686,7 +693,7 @@ public Builder mergeFrom(org.tensorflow.proto.GraphDef other) {
                 node_ = other.node_;
                 bitField0_ = (bitField0_ & ~0x00000001);
                 nodeBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getNodeFieldBuilder() : null;
               } else {
                 nodeBuilder_.addAllMessages(other.node_);
    @@ -748,26 +755,26 @@ public Builder mergeFrom(
                   input.readMessage(
                       getLibraryFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 18
                 case 24: {
                   version_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 24
                 case 34: {
                   input.readMessage(
                       getVersionsFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 34
                 case 42: {
                   input.readMessage(
                       getDebugInfoFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 42
                 default: {
    @@ -796,7 +803,7 @@ private void ensureNodeIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.NodeDef, org.tensorflow.proto.NodeDef.Builder, org.tensorflow.proto.NodeDefOrBuilder> nodeBuilder_;
     
         /**
    @@ -1012,11 +1019,11 @@ public org.tensorflow.proto.NodeDef.Builder addNodeBuilder(
              getNodeBuilderList() {
           return getNodeFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.NodeDef, org.tensorflow.proto.NodeDef.Builder, org.tensorflow.proto.NodeDefOrBuilder> 
             getNodeFieldBuilder() {
           if (nodeBuilder_ == null) {
    -        nodeBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        nodeBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.NodeDef, org.tensorflow.proto.NodeDef.Builder, org.tensorflow.proto.NodeDefOrBuilder>(
                     node_,
                     ((bitField0_ & 0x00000001) != 0),
    @@ -1028,7 +1035,7 @@ public org.tensorflow.proto.NodeDef.Builder addNodeBuilder(
         }
     
         private org.tensorflow.proto.VersionDef versions_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.VersionDef, org.tensorflow.proto.VersionDef.Builder, org.tensorflow.proto.VersionDefOrBuilder> versionsBuilder_;
         /**
          * 
    @@ -1041,7 +1048,7 @@ public org.tensorflow.proto.NodeDef.Builder addNodeBuilder(
          * @return Whether the versions field is set.
          */
         public boolean hasVersions() {
    -      return versionsBuilder_ != null || versions_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -1075,11 +1082,11 @@ public Builder setVersions(org.tensorflow.proto.VersionDef value) {
               throw new NullPointerException();
             }
             versions_ = value;
    -        onChanged();
           } else {
             versionsBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -1095,11 +1102,11 @@ public Builder setVersions(
             org.tensorflow.proto.VersionDef.Builder builderForValue) {
           if (versionsBuilder_ == null) {
             versions_ = builderForValue.build();
    -        onChanged();
           } else {
             versionsBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -1113,17 +1120,20 @@ public Builder setVersions(
          */
         public Builder mergeVersions(org.tensorflow.proto.VersionDef value) {
           if (versionsBuilder_ == null) {
    -        if (versions_ != null) {
    -          versions_ =
    -            org.tensorflow.proto.VersionDef.newBuilder(versions_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000002) != 0) &&
    +          versions_ != null &&
    +          versions_ != org.tensorflow.proto.VersionDef.getDefaultInstance()) {
    +          getVersionsBuilder().mergeFrom(value);
             } else {
               versions_ = value;
             }
    -        onChanged();
           } else {
             versionsBuilder_.mergeFrom(value);
           }
    -
    +      if (versions_ != null) {
    +        bitField0_ |= 0x00000002;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -1136,14 +1146,13 @@ public Builder mergeVersions(org.tensorflow.proto.VersionDef value) {
          * .tensorflow.VersionDef versions = 4;
          */
         public Builder clearVersions() {
    -      if (versionsBuilder_ == null) {
    -        versions_ = null;
    -        onChanged();
    -      } else {
    -        versions_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      versions_ = null;
    +      if (versionsBuilder_ != null) {
    +        versionsBuilder_.dispose();
             versionsBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -1156,7 +1165,7 @@ public Builder clearVersions() {
          * .tensorflow.VersionDef versions = 4;
          */
         public org.tensorflow.proto.VersionDef.Builder getVersionsBuilder() {
    -      
    +      bitField0_ |= 0x00000002;
           onChanged();
           return getVersionsFieldBuilder().getBuilder();
         }
    @@ -1186,11 +1195,11 @@ public org.tensorflow.proto.VersionDefOrBuilder getVersionsOrBuilder() {
          *
          * .tensorflow.VersionDef versions = 4;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.VersionDef, org.tensorflow.proto.VersionDef.Builder, org.tensorflow.proto.VersionDefOrBuilder> 
             getVersionsFieldBuilder() {
           if (versionsBuilder_ == null) {
    -        versionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        versionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.VersionDef, org.tensorflow.proto.VersionDef.Builder, org.tensorflow.proto.VersionDefOrBuilder>(
                     getVersions(),
                     getParentForChildren(),
    @@ -1231,8 +1240,9 @@ public org.tensorflow.proto.VersionDefOrBuilder getVersionsOrBuilder() {
          * @return This builder for chaining.
          */
         @java.lang.Deprecated public Builder setVersion(int value) {
    -      
    +
           version_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1249,69 +1259,79 @@ public org.tensorflow.proto.VersionDefOrBuilder getVersionsOrBuilder() {
          * @return This builder for chaining.
          */
         @java.lang.Deprecated public Builder clearVersion() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           version_ = 0;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.FunctionDefLibrary library_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.FunctionDefLibrary, org.tensorflow.proto.FunctionDefLibrary.Builder, org.tensorflow.proto.FunctionDefLibraryOrBuilder> libraryBuilder_;
         /**
          * 
          * "library" provides user-defined functions.
    +     *
          * Naming:
    -     *   * library.function.name are in a flat namespace.
    -     *     NOTE: We may need to change it to be hierarchical to support
    -     *     different orgs. E.g.,
    -     *     { "/google/nn", { ... }},
    -     *     { "/google/vision", { ... }}
    -     *     { "/org_foo/module_bar", { ... }}
    -     *     map<string, FunctionDefLib> named_lib;
    -     *   * If node[i].op is the name of one function in "library",
    -     *     node[i] is deemed as a function call. Otherwise, node[i].op
    -     *     must be a primitive operation supported by the runtime.
    +     * * library.function.name are in a flat namespace.
    +     * NOTE: We may need to change it to be hierarchical to support
    +     * different orgs. E.g.,
    +     * { "/google/nn", { ... }},
    +     * { "/google/vision", { ... }}
    +     * { "/org_foo/module_bar", { ... }}
    +     * map<string, FunctionDefLib> named_lib;
    +     * * If node[i].op is the name of one function in "library",
    +     * node[i] is deemed as a function call. Otherwise, node[i].op
    +     * must be a primitive operation supported by the runtime.
    +     *
    +     *
          * Function call semantics:
    -     *   * The callee may start execution as soon as some of its inputs
    -     *     are ready. The caller may want to use Tuple() mechanism to
    -     *     ensure all inputs are ready in the same time.
    -     *   * The consumer of return values may start executing as soon as
    -     *     the return values the consumer depends on are ready.  The
    -     *     consumer may want to use Tuple() mechanism to ensure the
    -     *     consumer does not start until all return values of the callee
    -     *     function are ready.
    +     *
    +     * * The callee may start execution as soon as some of its inputs
    +     * are ready. The caller may want to use Tuple() mechanism to
    +     * ensure all inputs are ready in the same time.
    +     *
    +     * * The consumer of return values may start executing as soon as
    +     * the return values the consumer depends on are ready.  The
    +     * consumer may want to use Tuple() mechanism to ensure the
    +     * consumer does not start until all return values of the callee
    +     * function are ready.
          * 
    * * .tensorflow.FunctionDefLibrary library = 2; * @return Whether the library field is set. */ public boolean hasLibrary() { - return libraryBuilder_ != null || library_ != null; + return ((bitField0_ & 0x00000008) != 0); } /** *
          * "library" provides user-defined functions.
    +     *
          * Naming:
    -     *   * library.function.name are in a flat namespace.
    -     *     NOTE: We may need to change it to be hierarchical to support
    -     *     different orgs. E.g.,
    -     *     { "/google/nn", { ... }},
    -     *     { "/google/vision", { ... }}
    -     *     { "/org_foo/module_bar", { ... }}
    -     *     map<string, FunctionDefLib> named_lib;
    -     *   * If node[i].op is the name of one function in "library",
    -     *     node[i] is deemed as a function call. Otherwise, node[i].op
    -     *     must be a primitive operation supported by the runtime.
    +     * * library.function.name are in a flat namespace.
    +     * NOTE: We may need to change it to be hierarchical to support
    +     * different orgs. E.g.,
    +     * { "/google/nn", { ... }},
    +     * { "/google/vision", { ... }}
    +     * { "/org_foo/module_bar", { ... }}
    +     * map<string, FunctionDefLib> named_lib;
    +     * * If node[i].op is the name of one function in "library",
    +     * node[i] is deemed as a function call. Otherwise, node[i].op
    +     * must be a primitive operation supported by the runtime.
    +     *
    +     *
          * Function call semantics:
    -     *   * The callee may start execution as soon as some of its inputs
    -     *     are ready. The caller may want to use Tuple() mechanism to
    -     *     ensure all inputs are ready in the same time.
    -     *   * The consumer of return values may start executing as soon as
    -     *     the return values the consumer depends on are ready.  The
    -     *     consumer may want to use Tuple() mechanism to ensure the
    -     *     consumer does not start until all return values of the callee
    -     *     function are ready.
    +     *
    +     * * The callee may start execution as soon as some of its inputs
    +     * are ready. The caller may want to use Tuple() mechanism to
    +     * ensure all inputs are ready in the same time.
    +     *
    +     * * The consumer of return values may start executing as soon as
    +     * the return values the consumer depends on are ready.  The
    +     * consumer may want to use Tuple() mechanism to ensure the
    +     * consumer does not start until all return values of the callee
    +     * function are ready.
          * 
    * * .tensorflow.FunctionDefLibrary library = 2; @@ -1327,26 +1347,31 @@ public org.tensorflow.proto.FunctionDefLibrary getLibrary() { /** *
          * "library" provides user-defined functions.
    +     *
          * Naming:
    -     *   * library.function.name are in a flat namespace.
    -     *     NOTE: We may need to change it to be hierarchical to support
    -     *     different orgs. E.g.,
    -     *     { "/google/nn", { ... }},
    -     *     { "/google/vision", { ... }}
    -     *     { "/org_foo/module_bar", { ... }}
    -     *     map<string, FunctionDefLib> named_lib;
    -     *   * If node[i].op is the name of one function in "library",
    -     *     node[i] is deemed as a function call. Otherwise, node[i].op
    -     *     must be a primitive operation supported by the runtime.
    +     * * library.function.name are in a flat namespace.
    +     * NOTE: We may need to change it to be hierarchical to support
    +     * different orgs. E.g.,
    +     * { "/google/nn", { ... }},
    +     * { "/google/vision", { ... }}
    +     * { "/org_foo/module_bar", { ... }}
    +     * map<string, FunctionDefLib> named_lib;
    +     * * If node[i].op is the name of one function in "library",
    +     * node[i] is deemed as a function call. Otherwise, node[i].op
    +     * must be a primitive operation supported by the runtime.
    +     *
    +     *
          * Function call semantics:
    -     *   * The callee may start execution as soon as some of its inputs
    -     *     are ready. The caller may want to use Tuple() mechanism to
    -     *     ensure all inputs are ready in the same time.
    -     *   * The consumer of return values may start executing as soon as
    -     *     the return values the consumer depends on are ready.  The
    -     *     consumer may want to use Tuple() mechanism to ensure the
    -     *     consumer does not start until all return values of the callee
    -     *     function are ready.
    +     *
    +     * * The callee may start execution as soon as some of its inputs
    +     * are ready. The caller may want to use Tuple() mechanism to
    +     * ensure all inputs are ready in the same time.
    +     *
    +     * * The consumer of return values may start executing as soon as
    +     * the return values the consumer depends on are ready.  The
    +     * consumer may want to use Tuple() mechanism to ensure the
    +     * consumer does not start until all return values of the callee
    +     * function are ready.
          * 
    * * .tensorflow.FunctionDefLibrary library = 2; @@ -1357,36 +1382,41 @@ public Builder setLibrary(org.tensorflow.proto.FunctionDefLibrary value) { throw new NullPointerException(); } library_ = value; - onChanged(); } else { libraryBuilder_.setMessage(value); } - + bitField0_ |= 0x00000008; + onChanged(); return this; } /** *
          * "library" provides user-defined functions.
    +     *
          * Naming:
    -     *   * library.function.name are in a flat namespace.
    -     *     NOTE: We may need to change it to be hierarchical to support
    -     *     different orgs. E.g.,
    -     *     { "/google/nn", { ... }},
    -     *     { "/google/vision", { ... }}
    -     *     { "/org_foo/module_bar", { ... }}
    -     *     map<string, FunctionDefLib> named_lib;
    -     *   * If node[i].op is the name of one function in "library",
    -     *     node[i] is deemed as a function call. Otherwise, node[i].op
    -     *     must be a primitive operation supported by the runtime.
    +     * * library.function.name are in a flat namespace.
    +     * NOTE: We may need to change it to be hierarchical to support
    +     * different orgs. E.g.,
    +     * { "/google/nn", { ... }},
    +     * { "/google/vision", { ... }}
    +     * { "/org_foo/module_bar", { ... }}
    +     * map<string, FunctionDefLib> named_lib;
    +     * * If node[i].op is the name of one function in "library",
    +     * node[i] is deemed as a function call. Otherwise, node[i].op
    +     * must be a primitive operation supported by the runtime.
    +     *
    +     *
          * Function call semantics:
    -     *   * The callee may start execution as soon as some of its inputs
    -     *     are ready. The caller may want to use Tuple() mechanism to
    -     *     ensure all inputs are ready in the same time.
    -     *   * The consumer of return values may start executing as soon as
    -     *     the return values the consumer depends on are ready.  The
    -     *     consumer may want to use Tuple() mechanism to ensure the
    -     *     consumer does not start until all return values of the callee
    -     *     function are ready.
    +     *
    +     * * The callee may start execution as soon as some of its inputs
    +     * are ready. The caller may want to use Tuple() mechanism to
    +     * ensure all inputs are ready in the same time.
    +     *
    +     * * The consumer of return values may start executing as soon as
    +     * the return values the consumer depends on are ready.  The
    +     * consumer may want to use Tuple() mechanism to ensure the
    +     * consumer does not start until all return values of the callee
    +     * function are ready.
          * 
    * * .tensorflow.FunctionDefLibrary library = 2; @@ -1395,148 +1425,170 @@ public Builder setLibrary( org.tensorflow.proto.FunctionDefLibrary.Builder builderForValue) { if (libraryBuilder_ == null) { library_ = builderForValue.build(); - onChanged(); } else { libraryBuilder_.setMessage(builderForValue.build()); } - + bitField0_ |= 0x00000008; + onChanged(); return this; } /** *
          * "library" provides user-defined functions.
    +     *
          * Naming:
    -     *   * library.function.name are in a flat namespace.
    -     *     NOTE: We may need to change it to be hierarchical to support
    -     *     different orgs. E.g.,
    -     *     { "/google/nn", { ... }},
    -     *     { "/google/vision", { ... }}
    -     *     { "/org_foo/module_bar", { ... }}
    -     *     map<string, FunctionDefLib> named_lib;
    -     *   * If node[i].op is the name of one function in "library",
    -     *     node[i] is deemed as a function call. Otherwise, node[i].op
    -     *     must be a primitive operation supported by the runtime.
    +     * * library.function.name are in a flat namespace.
    +     * NOTE: We may need to change it to be hierarchical to support
    +     * different orgs. E.g.,
    +     * { "/google/nn", { ... }},
    +     * { "/google/vision", { ... }}
    +     * { "/org_foo/module_bar", { ... }}
    +     * map<string, FunctionDefLib> named_lib;
    +     * * If node[i].op is the name of one function in "library",
    +     * node[i] is deemed as a function call. Otherwise, node[i].op
    +     * must be a primitive operation supported by the runtime.
    +     *
    +     *
          * Function call semantics:
    -     *   * The callee may start execution as soon as some of its inputs
    -     *     are ready. The caller may want to use Tuple() mechanism to
    -     *     ensure all inputs are ready in the same time.
    -     *   * The consumer of return values may start executing as soon as
    -     *     the return values the consumer depends on are ready.  The
    -     *     consumer may want to use Tuple() mechanism to ensure the
    -     *     consumer does not start until all return values of the callee
    -     *     function are ready.
    +     *
    +     * * The callee may start execution as soon as some of its inputs
    +     * are ready. The caller may want to use Tuple() mechanism to
    +     * ensure all inputs are ready in the same time.
    +     *
    +     * * The consumer of return values may start executing as soon as
    +     * the return values the consumer depends on are ready.  The
    +     * consumer may want to use Tuple() mechanism to ensure the
    +     * consumer does not start until all return values of the callee
    +     * function are ready.
          * 
    * * .tensorflow.FunctionDefLibrary library = 2; */ public Builder mergeLibrary(org.tensorflow.proto.FunctionDefLibrary value) { if (libraryBuilder_ == null) { - if (library_ != null) { - library_ = - org.tensorflow.proto.FunctionDefLibrary.newBuilder(library_).mergeFrom(value).buildPartial(); + if (((bitField0_ & 0x00000008) != 0) && + library_ != null && + library_ != org.tensorflow.proto.FunctionDefLibrary.getDefaultInstance()) { + getLibraryBuilder().mergeFrom(value); } else { library_ = value; } - onChanged(); } else { libraryBuilder_.mergeFrom(value); } - + if (library_ != null) { + bitField0_ |= 0x00000008; + onChanged(); + } return this; } /** *
          * "library" provides user-defined functions.
    +     *
          * Naming:
    -     *   * library.function.name are in a flat namespace.
    -     *     NOTE: We may need to change it to be hierarchical to support
    -     *     different orgs. E.g.,
    -     *     { "/google/nn", { ... }},
    -     *     { "/google/vision", { ... }}
    -     *     { "/org_foo/module_bar", { ... }}
    -     *     map<string, FunctionDefLib> named_lib;
    -     *   * If node[i].op is the name of one function in "library",
    -     *     node[i] is deemed as a function call. Otherwise, node[i].op
    -     *     must be a primitive operation supported by the runtime.
    +     * * library.function.name are in a flat namespace.
    +     * NOTE: We may need to change it to be hierarchical to support
    +     * different orgs. E.g.,
    +     * { "/google/nn", { ... }},
    +     * { "/google/vision", { ... }}
    +     * { "/org_foo/module_bar", { ... }}
    +     * map<string, FunctionDefLib> named_lib;
    +     * * If node[i].op is the name of one function in "library",
    +     * node[i] is deemed as a function call. Otherwise, node[i].op
    +     * must be a primitive operation supported by the runtime.
    +     *
    +     *
          * Function call semantics:
    -     *   * The callee may start execution as soon as some of its inputs
    -     *     are ready. The caller may want to use Tuple() mechanism to
    -     *     ensure all inputs are ready in the same time.
    -     *   * The consumer of return values may start executing as soon as
    -     *     the return values the consumer depends on are ready.  The
    -     *     consumer may want to use Tuple() mechanism to ensure the
    -     *     consumer does not start until all return values of the callee
    -     *     function are ready.
    +     *
    +     * * The callee may start execution as soon as some of its inputs
    +     * are ready. The caller may want to use Tuple() mechanism to
    +     * ensure all inputs are ready in the same time.
    +     *
    +     * * The consumer of return values may start executing as soon as
    +     * the return values the consumer depends on are ready.  The
    +     * consumer may want to use Tuple() mechanism to ensure the
    +     * consumer does not start until all return values of the callee
    +     * function are ready.
          * 
    * * .tensorflow.FunctionDefLibrary library = 2; */ public Builder clearLibrary() { - if (libraryBuilder_ == null) { - library_ = null; - onChanged(); - } else { - library_ = null; + bitField0_ = (bitField0_ & ~0x00000008); + library_ = null; + if (libraryBuilder_ != null) { + libraryBuilder_.dispose(); libraryBuilder_ = null; } - + onChanged(); return this; } /** *
          * "library" provides user-defined functions.
    +     *
          * Naming:
    -     *   * library.function.name are in a flat namespace.
    -     *     NOTE: We may need to change it to be hierarchical to support
    -     *     different orgs. E.g.,
    -     *     { "/google/nn", { ... }},
    -     *     { "/google/vision", { ... }}
    -     *     { "/org_foo/module_bar", { ... }}
    -     *     map<string, FunctionDefLib> named_lib;
    -     *   * If node[i].op is the name of one function in "library",
    -     *     node[i] is deemed as a function call. Otherwise, node[i].op
    -     *     must be a primitive operation supported by the runtime.
    +     * * library.function.name are in a flat namespace.
    +     * NOTE: We may need to change it to be hierarchical to support
    +     * different orgs. E.g.,
    +     * { "/google/nn", { ... }},
    +     * { "/google/vision", { ... }}
    +     * { "/org_foo/module_bar", { ... }}
    +     * map<string, FunctionDefLib> named_lib;
    +     * * If node[i].op is the name of one function in "library",
    +     * node[i] is deemed as a function call. Otherwise, node[i].op
    +     * must be a primitive operation supported by the runtime.
    +     *
    +     *
          * Function call semantics:
    -     *   * The callee may start execution as soon as some of its inputs
    -     *     are ready. The caller may want to use Tuple() mechanism to
    -     *     ensure all inputs are ready in the same time.
    -     *   * The consumer of return values may start executing as soon as
    -     *     the return values the consumer depends on are ready.  The
    -     *     consumer may want to use Tuple() mechanism to ensure the
    -     *     consumer does not start until all return values of the callee
    -     *     function are ready.
    +     *
    +     * * The callee may start execution as soon as some of its inputs
    +     * are ready. The caller may want to use Tuple() mechanism to
    +     * ensure all inputs are ready in the same time.
    +     *
    +     * * The consumer of return values may start executing as soon as
    +     * the return values the consumer depends on are ready.  The
    +     * consumer may want to use Tuple() mechanism to ensure the
    +     * consumer does not start until all return values of the callee
    +     * function are ready.
          * 
    * * .tensorflow.FunctionDefLibrary library = 2; */ public org.tensorflow.proto.FunctionDefLibrary.Builder getLibraryBuilder() { - + bitField0_ |= 0x00000008; onChanged(); return getLibraryFieldBuilder().getBuilder(); } /** *
          * "library" provides user-defined functions.
    +     *
          * Naming:
    -     *   * library.function.name are in a flat namespace.
    -     *     NOTE: We may need to change it to be hierarchical to support
    -     *     different orgs. E.g.,
    -     *     { "/google/nn", { ... }},
    -     *     { "/google/vision", { ... }}
    -     *     { "/org_foo/module_bar", { ... }}
    -     *     map<string, FunctionDefLib> named_lib;
    -     *   * If node[i].op is the name of one function in "library",
    -     *     node[i] is deemed as a function call. Otherwise, node[i].op
    -     *     must be a primitive operation supported by the runtime.
    +     * * library.function.name are in a flat namespace.
    +     * NOTE: We may need to change it to be hierarchical to support
    +     * different orgs. E.g.,
    +     * { "/google/nn", { ... }},
    +     * { "/google/vision", { ... }}
    +     * { "/org_foo/module_bar", { ... }}
    +     * map<string, FunctionDefLib> named_lib;
    +     * * If node[i].op is the name of one function in "library",
    +     * node[i] is deemed as a function call. Otherwise, node[i].op
    +     * must be a primitive operation supported by the runtime.
    +     *
    +     *
          * Function call semantics:
    -     *   * The callee may start execution as soon as some of its inputs
    -     *     are ready. The caller may want to use Tuple() mechanism to
    -     *     ensure all inputs are ready in the same time.
    -     *   * The consumer of return values may start executing as soon as
    -     *     the return values the consumer depends on are ready.  The
    -     *     consumer may want to use Tuple() mechanism to ensure the
    -     *     consumer does not start until all return values of the callee
    -     *     function are ready.
    +     *
    +     * * The callee may start execution as soon as some of its inputs
    +     * are ready. The caller may want to use Tuple() mechanism to
    +     * ensure all inputs are ready in the same time.
    +     *
    +     * * The consumer of return values may start executing as soon as
    +     * the return values the consumer depends on are ready.  The
    +     * consumer may want to use Tuple() mechanism to ensure the
    +     * consumer does not start until all return values of the callee
    +     * function are ready.
          * 
    * * .tensorflow.FunctionDefLibrary library = 2; @@ -1552,35 +1604,40 @@ public org.tensorflow.proto.FunctionDefLibraryOrBuilder getLibraryOrBuilder() { /** *
          * "library" provides user-defined functions.
    +     *
          * Naming:
    -     *   * library.function.name are in a flat namespace.
    -     *     NOTE: We may need to change it to be hierarchical to support
    -     *     different orgs. E.g.,
    -     *     { "/google/nn", { ... }},
    -     *     { "/google/vision", { ... }}
    -     *     { "/org_foo/module_bar", { ... }}
    -     *     map<string, FunctionDefLib> named_lib;
    -     *   * If node[i].op is the name of one function in "library",
    -     *     node[i] is deemed as a function call. Otherwise, node[i].op
    -     *     must be a primitive operation supported by the runtime.
    +     * * library.function.name are in a flat namespace.
    +     * NOTE: We may need to change it to be hierarchical to support
    +     * different orgs. E.g.,
    +     * { "/google/nn", { ... }},
    +     * { "/google/vision", { ... }}
    +     * { "/org_foo/module_bar", { ... }}
    +     * map<string, FunctionDefLib> named_lib;
    +     * * If node[i].op is the name of one function in "library",
    +     * node[i] is deemed as a function call. Otherwise, node[i].op
    +     * must be a primitive operation supported by the runtime.
    +     *
    +     *
          * Function call semantics:
    -     *   * The callee may start execution as soon as some of its inputs
    -     *     are ready. The caller may want to use Tuple() mechanism to
    -     *     ensure all inputs are ready in the same time.
    -     *   * The consumer of return values may start executing as soon as
    -     *     the return values the consumer depends on are ready.  The
    -     *     consumer may want to use Tuple() mechanism to ensure the
    -     *     consumer does not start until all return values of the callee
    -     *     function are ready.
    +     *
    +     * * The callee may start execution as soon as some of its inputs
    +     * are ready. The caller may want to use Tuple() mechanism to
    +     * ensure all inputs are ready in the same time.
    +     *
    +     * * The consumer of return values may start executing as soon as
    +     * the return values the consumer depends on are ready.  The
    +     * consumer may want to use Tuple() mechanism to ensure the
    +     * consumer does not start until all return values of the callee
    +     * function are ready.
          * 
    * * .tensorflow.FunctionDefLibrary library = 2; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.FunctionDefLibrary, org.tensorflow.proto.FunctionDefLibrary.Builder, org.tensorflow.proto.FunctionDefLibraryOrBuilder> getLibraryFieldBuilder() { if (libraryBuilder_ == null) { - libraryBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + libraryBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.FunctionDefLibrary, org.tensorflow.proto.FunctionDefLibrary.Builder, org.tensorflow.proto.FunctionDefLibraryOrBuilder>( getLibrary(), getParentForChildren(), @@ -1591,7 +1648,7 @@ public org.tensorflow.proto.FunctionDefLibraryOrBuilder getLibraryOrBuilder() { } private org.tensorflow.proto.GraphDebugInfo debugInfo_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.GraphDebugInfo, org.tensorflow.proto.GraphDebugInfo.Builder, org.tensorflow.proto.GraphDebugInfoOrBuilder> debugInfoBuilder_; /** *
    @@ -1602,7 +1659,7 @@ public org.tensorflow.proto.FunctionDefLibraryOrBuilder getLibraryOrBuilder() {
          * @return Whether the debugInfo field is set.
          */
         public boolean hasDebugInfo() {
    -      return debugInfoBuilder_ != null || debugInfo_ != null;
    +      return ((bitField0_ & 0x00000010) != 0);
         }
         /**
          * 
    @@ -1632,11 +1689,11 @@ public Builder setDebugInfo(org.tensorflow.proto.GraphDebugInfo value) {
               throw new NullPointerException();
             }
             debugInfo_ = value;
    -        onChanged();
           } else {
             debugInfoBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000010;
    +      onChanged();
           return this;
         }
         /**
    @@ -1650,11 +1707,11 @@ public Builder setDebugInfo(
             org.tensorflow.proto.GraphDebugInfo.Builder builderForValue) {
           if (debugInfoBuilder_ == null) {
             debugInfo_ = builderForValue.build();
    -        onChanged();
           } else {
             debugInfoBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000010;
    +      onChanged();
           return this;
         }
         /**
    @@ -1666,17 +1723,20 @@ public Builder setDebugInfo(
          */
         public Builder mergeDebugInfo(org.tensorflow.proto.GraphDebugInfo value) {
           if (debugInfoBuilder_ == null) {
    -        if (debugInfo_ != null) {
    -          debugInfo_ =
    -            org.tensorflow.proto.GraphDebugInfo.newBuilder(debugInfo_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000010) != 0) &&
    +          debugInfo_ != null &&
    +          debugInfo_ != org.tensorflow.proto.GraphDebugInfo.getDefaultInstance()) {
    +          getDebugInfoBuilder().mergeFrom(value);
             } else {
               debugInfo_ = value;
             }
    -        onChanged();
           } else {
             debugInfoBuilder_.mergeFrom(value);
           }
    -
    +      if (debugInfo_ != null) {
    +        bitField0_ |= 0x00000010;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -1687,14 +1747,13 @@ public Builder mergeDebugInfo(org.tensorflow.proto.GraphDebugInfo value) {
          * .tensorflow.GraphDebugInfo debug_info = 5;
          */
         public Builder clearDebugInfo() {
    -      if (debugInfoBuilder_ == null) {
    -        debugInfo_ = null;
    -        onChanged();
    -      } else {
    -        debugInfo_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000010);
    +      debugInfo_ = null;
    +      if (debugInfoBuilder_ != null) {
    +        debugInfoBuilder_.dispose();
             debugInfoBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -1705,7 +1764,7 @@ public Builder clearDebugInfo() {
          * .tensorflow.GraphDebugInfo debug_info = 5;
          */
         public org.tensorflow.proto.GraphDebugInfo.Builder getDebugInfoBuilder() {
    -      
    +      bitField0_ |= 0x00000010;
           onChanged();
           return getDebugInfoFieldBuilder().getBuilder();
         }
    @@ -1731,11 +1790,11 @@ public org.tensorflow.proto.GraphDebugInfoOrBuilder getDebugInfoOrBuilder() {
          *
          * .tensorflow.GraphDebugInfo debug_info = 5;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.GraphDebugInfo, org.tensorflow.proto.GraphDebugInfo.Builder, org.tensorflow.proto.GraphDebugInfoOrBuilder> 
             getDebugInfoFieldBuilder() {
           if (debugInfoBuilder_ == null) {
    -        debugInfoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        debugInfoBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.GraphDebugInfo, org.tensorflow.proto.GraphDebugInfo.Builder, org.tensorflow.proto.GraphDebugInfoOrBuilder>(
                     getDebugInfo(),
                     getParentForChildren(),
    @@ -1744,18 +1803,6 @@ public org.tensorflow.proto.GraphDebugInfoOrBuilder getDebugInfoOrBuilder() {
           }
           return debugInfoBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.GraphDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDefOrBuilder.java
    index fcfda580c22..aae20baf2ed 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -81,26 +83,31 @@ org.tensorflow.proto.NodeDefOrBuilder getNodeOrBuilder(
       /**
        * 
        * "library" provides user-defined functions.
    +   *
        * Naming:
    -   *   * library.function.name are in a flat namespace.
    -   *     NOTE: We may need to change it to be hierarchical to support
    -   *     different orgs. E.g.,
    -   *     { "/google/nn", { ... }},
    -   *     { "/google/vision", { ... }}
    -   *     { "/org_foo/module_bar", { ... }}
    -   *     map<string, FunctionDefLib> named_lib;
    -   *   * If node[i].op is the name of one function in "library",
    -   *     node[i] is deemed as a function call. Otherwise, node[i].op
    -   *     must be a primitive operation supported by the runtime.
    +   * * library.function.name are in a flat namespace.
    +   * NOTE: We may need to change it to be hierarchical to support
    +   * different orgs. E.g.,
    +   * { "/google/nn", { ... }},
    +   * { "/google/vision", { ... }}
    +   * { "/org_foo/module_bar", { ... }}
    +   * map<string, FunctionDefLib> named_lib;
    +   * * If node[i].op is the name of one function in "library",
    +   * node[i] is deemed as a function call. Otherwise, node[i].op
    +   * must be a primitive operation supported by the runtime.
    +   *
    +   *
        * Function call semantics:
    -   *   * The callee may start execution as soon as some of its inputs
    -   *     are ready. The caller may want to use Tuple() mechanism to
    -   *     ensure all inputs are ready in the same time.
    -   *   * The consumer of return values may start executing as soon as
    -   *     the return values the consumer depends on are ready.  The
    -   *     consumer may want to use Tuple() mechanism to ensure the
    -   *     consumer does not start until all return values of the callee
    -   *     function are ready.
    +   *
    +   * * The callee may start execution as soon as some of its inputs
    +   * are ready. The caller may want to use Tuple() mechanism to
    +   * ensure all inputs are ready in the same time.
    +   *
    +   * * The consumer of return values may start executing as soon as
    +   * the return values the consumer depends on are ready.  The
    +   * consumer may want to use Tuple() mechanism to ensure the
    +   * consumer does not start until all return values of the callee
    +   * function are ready.
        * 
    * * .tensorflow.FunctionDefLibrary library = 2; @@ -110,26 +117,31 @@ org.tensorflow.proto.NodeDefOrBuilder getNodeOrBuilder( /** *
        * "library" provides user-defined functions.
    +   *
        * Naming:
    -   *   * library.function.name are in a flat namespace.
    -   *     NOTE: We may need to change it to be hierarchical to support
    -   *     different orgs. E.g.,
    -   *     { "/google/nn", { ... }},
    -   *     { "/google/vision", { ... }}
    -   *     { "/org_foo/module_bar", { ... }}
    -   *     map<string, FunctionDefLib> named_lib;
    -   *   * If node[i].op is the name of one function in "library",
    -   *     node[i] is deemed as a function call. Otherwise, node[i].op
    -   *     must be a primitive operation supported by the runtime.
    +   * * library.function.name are in a flat namespace.
    +   * NOTE: We may need to change it to be hierarchical to support
    +   * different orgs. E.g.,
    +   * { "/google/nn", { ... }},
    +   * { "/google/vision", { ... }}
    +   * { "/org_foo/module_bar", { ... }}
    +   * map<string, FunctionDefLib> named_lib;
    +   * * If node[i].op is the name of one function in "library",
    +   * node[i] is deemed as a function call. Otherwise, node[i].op
    +   * must be a primitive operation supported by the runtime.
    +   *
    +   *
        * Function call semantics:
    -   *   * The callee may start execution as soon as some of its inputs
    -   *     are ready. The caller may want to use Tuple() mechanism to
    -   *     ensure all inputs are ready in the same time.
    -   *   * The consumer of return values may start executing as soon as
    -   *     the return values the consumer depends on are ready.  The
    -   *     consumer may want to use Tuple() mechanism to ensure the
    -   *     consumer does not start until all return values of the callee
    -   *     function are ready.
    +   *
    +   * * The callee may start execution as soon as some of its inputs
    +   * are ready. The caller may want to use Tuple() mechanism to
    +   * ensure all inputs are ready in the same time.
    +   *
    +   * * The consumer of return values may start executing as soon as
    +   * the return values the consumer depends on are ready.  The
    +   * consumer may want to use Tuple() mechanism to ensure the
    +   * consumer does not start until all return values of the callee
    +   * function are ready.
        * 
    * * .tensorflow.FunctionDefLibrary library = 2; @@ -139,26 +151,31 @@ org.tensorflow.proto.NodeDefOrBuilder getNodeOrBuilder( /** *
        * "library" provides user-defined functions.
    +   *
        * Naming:
    -   *   * library.function.name are in a flat namespace.
    -   *     NOTE: We may need to change it to be hierarchical to support
    -   *     different orgs. E.g.,
    -   *     { "/google/nn", { ... }},
    -   *     { "/google/vision", { ... }}
    -   *     { "/org_foo/module_bar", { ... }}
    -   *     map<string, FunctionDefLib> named_lib;
    -   *   * If node[i].op is the name of one function in "library",
    -   *     node[i] is deemed as a function call. Otherwise, node[i].op
    -   *     must be a primitive operation supported by the runtime.
    +   * * library.function.name are in a flat namespace.
    +   * NOTE: We may need to change it to be hierarchical to support
    +   * different orgs. E.g.,
    +   * { "/google/nn", { ... }},
    +   * { "/google/vision", { ... }}
    +   * { "/org_foo/module_bar", { ... }}
    +   * map<string, FunctionDefLib> named_lib;
    +   * * If node[i].op is the name of one function in "library",
    +   * node[i] is deemed as a function call. Otherwise, node[i].op
    +   * must be a primitive operation supported by the runtime.
    +   *
    +   *
        * Function call semantics:
    -   *   * The callee may start execution as soon as some of its inputs
    -   *     are ready. The caller may want to use Tuple() mechanism to
    -   *     ensure all inputs are ready in the same time.
    -   *   * The consumer of return values may start executing as soon as
    -   *     the return values the consumer depends on are ready.  The
    -   *     consumer may want to use Tuple() mechanism to ensure the
    -   *     consumer does not start until all return values of the callee
    -   *     function are ready.
    +   *
    +   * * The callee may start execution as soon as some of its inputs
    +   * are ready. The caller may want to use Tuple() mechanism to
    +   * ensure all inputs are ready in the same time.
    +   *
    +   * * The consumer of return values may start executing as soon as
    +   * the return values the consumer depends on are ready.  The
    +   * consumer may want to use Tuple() mechanism to ensure the
    +   * consumer does not start until all return values of the callee
    +   * function are ready.
        * 
    * * .tensorflow.FunctionDefLibrary library = 2; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphExecutionTrace.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphExecutionTrace.java index 3458ea9b7e1..6295c31c0b3 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphExecutionTrace.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphExecutionTrace.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/debug_event.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -16,12 +18,21 @@ * Protobuf type {@code tensorflow.GraphExecutionTrace} */ public final class GraphExecutionTrace extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.GraphExecutionTrace) GraphExecutionTraceOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + GraphExecutionTrace.class.getName()); + } // Use GraphExecutionTrace.newBuilder() to construct. - private GraphExecutionTrace(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private GraphExecutionTrace(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private GraphExecutionTrace() { @@ -31,33 +42,23 @@ private GraphExecutionTrace() { deviceName_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new GraphExecutionTrace(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_GraphExecutionTrace_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_GraphExecutionTrace_fieldAccessorTable .ensureFieldAccessorsInitialized( org.tensorflow.proto.GraphExecutionTrace.class, org.tensorflow.proto.GraphExecutionTrace.Builder.class); } + private int bitField0_; public static final int TFDBG_CONTEXT_ID_FIELD_NUMBER = 1; - private volatile java.lang.Object tfdbgContextId_; + @SuppressWarnings("serial") + private volatile java.lang.Object tfdbgContextId_ = ""; /** *
        * Unique ID of the context that the executed op(s) belong to (e.g., a
    @@ -105,7 +106,8 @@ public java.lang.String getTfdbgContextId() {
       }
     
       public static final int OP_NAME_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object opName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object opName_ = "";
       /**
        * 
        * Name of the op (applicable only in the case of the `FULL_TENSOR` trace
    @@ -153,7 +155,7 @@ public java.lang.String getOpName() {
       }
     
       public static final int OUTPUT_SLOT_FIELD_NUMBER = 3;
    -  private int outputSlot_;
    +  private int outputSlot_ = 0;
       /**
        * 
        * Output slot of the tensor (applicable only in the case of the `FULL_TENSOR`
    @@ -169,7 +171,7 @@ public int getOutputSlot() {
       }
     
       public static final int TENSOR_DEBUG_MODE_FIELD_NUMBER = 4;
    -  private int tensorDebugMode_;
    +  private int tensorDebugMode_ = 0;
       /**
        * 
        * Type of the tensor value encapsulated in this proto.
    @@ -190,8 +192,7 @@ public int getOutputSlot() {
        * @return The tensorDebugMode.
        */
       @java.lang.Override public org.tensorflow.proto.TensorDebugMode getTensorDebugMode() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.TensorDebugMode result = org.tensorflow.proto.TensorDebugMode.valueOf(tensorDebugMode_);
    +    org.tensorflow.proto.TensorDebugMode result = org.tensorflow.proto.TensorDebugMode.forNumber(tensorDebugMode_);
         return result == null ? org.tensorflow.proto.TensorDebugMode.UNRECOGNIZED : result;
       }
     
    @@ -209,7 +210,7 @@ public int getOutputSlot() {
        */
       @java.lang.Override
       public boolean hasTensorProto() {
    -    return tensorProto_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -236,11 +237,12 @@ public org.tensorflow.proto.TensorProto getTensorProto() {
        */
       @java.lang.Override
       public org.tensorflow.proto.TensorProtoOrBuilder getTensorProtoOrBuilder() {
    -    return getTensorProto();
    +    return tensorProto_ == null ? org.tensorflow.proto.TensorProto.getDefaultInstance() : tensorProto_;
       }
     
       public static final int DEVICE_NAME_FIELD_NUMBER = 6;
    -  private volatile java.lang.Object deviceName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object deviceName_ = "";
       /**
        * 
        * Name of the device that the op belongs to.
    @@ -299,11 +301,11 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tfdbgContextId_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, tfdbgContextId_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(tfdbgContextId_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, tfdbgContextId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(opName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, opName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(opName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, opName_);
         }
         if (outputSlot_ != 0) {
           output.writeInt32(3, outputSlot_);
    @@ -311,11 +313,11 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (tensorDebugMode_ != org.tensorflow.proto.TensorDebugMode.UNSPECIFIED.getNumber()) {
           output.writeEnum(4, tensorDebugMode_);
         }
    -    if (tensorProto_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(5, getTensorProto());
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 6, deviceName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 6, deviceName_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -326,11 +328,11 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tfdbgContextId_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, tfdbgContextId_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(tfdbgContextId_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, tfdbgContextId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(opName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, opName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(opName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, opName_);
         }
         if (outputSlot_ != 0) {
           size += com.google.protobuf.CodedOutputStream
    @@ -340,12 +342,12 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeEnumSize(4, tensorDebugMode_);
         }
    -    if (tensorProto_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(5, getTensorProto());
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, deviceName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(6, deviceName_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -440,39 +442,41 @@ public static org.tensorflow.proto.GraphExecutionTrace parseFrom(
       }
       public static org.tensorflow.proto.GraphExecutionTrace parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphExecutionTrace parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.GraphExecutionTrace parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.GraphExecutionTrace parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.GraphExecutionTrace parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphExecutionTrace parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -492,7 +496,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -509,7 +513,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.GraphExecutionTrace}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.GraphExecutionTrace)
           org.tensorflow.proto.GraphExecutionTraceOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -518,7 +522,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_GraphExecutionTrace_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -527,33 +531,34 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.GraphExecutionTrace.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getTensorProtoFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           tfdbgContextId_ = "";
    -
           opName_ = "";
    -
           outputSlot_ = 0;
    -
           tensorDebugMode_ = 0;
    -
    -      if (tensorProtoBuilder_ == null) {
    -        tensorProto_ = null;
    -      } else {
    -        tensorProto_ = null;
    +      tensorProto_ = null;
    +      if (tensorProtoBuilder_ != null) {
    +        tensorProtoBuilder_.dispose();
             tensorProtoBuilder_ = null;
           }
           deviceName_ = "";
    -
           return this;
         }
     
    @@ -580,52 +585,38 @@ public org.tensorflow.proto.GraphExecutionTrace build() {
         @java.lang.Override
         public org.tensorflow.proto.GraphExecutionTrace buildPartial() {
           org.tensorflow.proto.GraphExecutionTrace result = new org.tensorflow.proto.GraphExecutionTrace(this);
    -      result.tfdbgContextId_ = tfdbgContextId_;
    -      result.opName_ = opName_;
    -      result.outputSlot_ = outputSlot_;
    -      result.tensorDebugMode_ = tensorDebugMode_;
    -      if (tensorProtoBuilder_ == null) {
    -        result.tensorProto_ = tensorProto_;
    -      } else {
    -        result.tensorProto_ = tensorProtoBuilder_.build();
    -      }
    -      result.deviceName_ = deviceName_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.GraphExecutionTrace result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.tfdbgContextId_ = tfdbgContextId_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.opName_ = opName_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.outputSlot_ = outputSlot_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.tensorDebugMode_ = tensorDebugMode_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.tensorProto_ = tensorProtoBuilder_ == null
    +            ? tensorProto_
    +            : tensorProtoBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.deviceName_ = deviceName_;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.GraphExecutionTrace) {
    @@ -640,10 +631,12 @@ public Builder mergeFrom(org.tensorflow.proto.GraphExecutionTrace other) {
           if (other == org.tensorflow.proto.GraphExecutionTrace.getDefaultInstance()) return this;
           if (!other.getTfdbgContextId().isEmpty()) {
             tfdbgContextId_ = other.tfdbgContextId_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getOpName().isEmpty()) {
             opName_ = other.opName_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (other.getOutputSlot() != 0) {
    @@ -657,6 +650,7 @@ public Builder mergeFrom(org.tensorflow.proto.GraphExecutionTrace other) {
           }
           if (!other.getDeviceName().isEmpty()) {
             deviceName_ = other.deviceName_;
    +        bitField0_ |= 0x00000020;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -687,34 +681,34 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   tfdbgContextId_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   opName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 24: {
                   outputSlot_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 24
                 case 32: {
                   tensorDebugMode_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 32
                 case 42: {
                   input.readMessage(
                       getTensorProtoFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 42
                 case 50: {
                   deviceName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 50
                 default: {
    @@ -732,6 +726,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object tfdbgContextId_ = "";
         /**
    @@ -789,11 +784,9 @@ public java.lang.String getTfdbgContextId() {
          */
         public Builder setTfdbgContextId(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           tfdbgContextId_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -807,8 +800,8 @@ public Builder setTfdbgContextId(
          * @return This builder for chaining.
          */
         public Builder clearTfdbgContextId() {
    -      
           tfdbgContextId_ = getDefaultInstance().getTfdbgContextId();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -824,12 +817,10 @@ public Builder clearTfdbgContextId() {
          */
         public Builder setTfdbgContextIdBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           tfdbgContextId_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -890,11 +881,9 @@ public java.lang.String getOpName() {
          */
         public Builder setOpName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           opName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -908,8 +897,8 @@ public Builder setOpName(
          * @return This builder for chaining.
          */
         public Builder clearOpName() {
    -      
           opName_ = getDefaultInstance().getOpName();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -925,12 +914,10 @@ public Builder clearOpName() {
          */
         public Builder setOpNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           opName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -960,8 +947,9 @@ public int getOutputSlot() {
          * @return This builder for chaining.
          */
         public Builder setOutputSlot(int value) {
    -      
    +
           outputSlot_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -975,7 +963,7 @@ public Builder setOutputSlot(int value) {
          * @return This builder for chaining.
          */
         public Builder clearOutputSlot() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           outputSlot_ = 0;
           onChanged();
           return this;
    @@ -1003,8 +991,8 @@ public Builder clearOutputSlot() {
          * @return This builder for chaining.
          */
         public Builder setTensorDebugModeValue(int value) {
    -      
           tensorDebugMode_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1018,8 +1006,7 @@ public Builder setTensorDebugModeValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.TensorDebugMode getTensorDebugMode() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.TensorDebugMode result = org.tensorflow.proto.TensorDebugMode.valueOf(tensorDebugMode_);
    +      org.tensorflow.proto.TensorDebugMode result = org.tensorflow.proto.TensorDebugMode.forNumber(tensorDebugMode_);
           return result == null ? org.tensorflow.proto.TensorDebugMode.UNRECOGNIZED : result;
         }
         /**
    @@ -1035,7 +1022,7 @@ public Builder setTensorDebugMode(org.tensorflow.proto.TensorDebugMode value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000008;
           tensorDebugMode_ = value.getNumber();
           onChanged();
           return this;
    @@ -1049,14 +1036,14 @@ public Builder setTensorDebugMode(org.tensorflow.proto.TensorDebugMode value) {
          * @return This builder for chaining.
          */
         public Builder clearTensorDebugMode() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           tensorDebugMode_ = 0;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.TensorProto tensorProto_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> tensorProtoBuilder_;
         /**
          * 
    @@ -1069,7 +1056,7 @@ public Builder clearTensorDebugMode() {
          * @return Whether the tensorProto field is set.
          */
         public boolean hasTensorProto() {
    -      return tensorProtoBuilder_ != null || tensorProto_ != null;
    +      return ((bitField0_ & 0x00000010) != 0);
         }
         /**
          * 
    @@ -1103,11 +1090,11 @@ public Builder setTensorProto(org.tensorflow.proto.TensorProto value) {
               throw new NullPointerException();
             }
             tensorProto_ = value;
    -        onChanged();
           } else {
             tensorProtoBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000010;
    +      onChanged();
           return this;
         }
         /**
    @@ -1123,11 +1110,11 @@ public Builder setTensorProto(
             org.tensorflow.proto.TensorProto.Builder builderForValue) {
           if (tensorProtoBuilder_ == null) {
             tensorProto_ = builderForValue.build();
    -        onChanged();
           } else {
             tensorProtoBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000010;
    +      onChanged();
           return this;
         }
         /**
    @@ -1141,17 +1128,20 @@ public Builder setTensorProto(
          */
         public Builder mergeTensorProto(org.tensorflow.proto.TensorProto value) {
           if (tensorProtoBuilder_ == null) {
    -        if (tensorProto_ != null) {
    -          tensorProto_ =
    -            org.tensorflow.proto.TensorProto.newBuilder(tensorProto_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000010) != 0) &&
    +          tensorProto_ != null &&
    +          tensorProto_ != org.tensorflow.proto.TensorProto.getDefaultInstance()) {
    +          getTensorProtoBuilder().mergeFrom(value);
             } else {
               tensorProto_ = value;
             }
    -        onChanged();
           } else {
             tensorProtoBuilder_.mergeFrom(value);
           }
    -
    +      if (tensorProto_ != null) {
    +        bitField0_ |= 0x00000010;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -1164,14 +1154,13 @@ public Builder mergeTensorProto(org.tensorflow.proto.TensorProto value) {
          * .tensorflow.TensorProto tensor_proto = 5;
          */
         public Builder clearTensorProto() {
    -      if (tensorProtoBuilder_ == null) {
    -        tensorProto_ = null;
    -        onChanged();
    -      } else {
    -        tensorProto_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000010);
    +      tensorProto_ = null;
    +      if (tensorProtoBuilder_ != null) {
    +        tensorProtoBuilder_.dispose();
             tensorProtoBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -1184,7 +1173,7 @@ public Builder clearTensorProto() {
          * .tensorflow.TensorProto tensor_proto = 5;
          */
         public org.tensorflow.proto.TensorProto.Builder getTensorProtoBuilder() {
    -      
    +      bitField0_ |= 0x00000010;
           onChanged();
           return getTensorProtoFieldBuilder().getBuilder();
         }
    @@ -1214,11 +1203,11 @@ public org.tensorflow.proto.TensorProtoOrBuilder getTensorProtoOrBuilder() {
          *
          * .tensorflow.TensorProto tensor_proto = 5;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> 
             getTensorProtoFieldBuilder() {
           if (tensorProtoBuilder_ == null) {
    -        tensorProtoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        tensorProtoBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder>(
                     getTensorProto(),
                     getParentForChildren(),
    @@ -1281,11 +1270,9 @@ public java.lang.String getDeviceName() {
          */
         public Builder setDeviceName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           deviceName_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -1298,8 +1285,8 @@ public Builder setDeviceName(
          * @return This builder for chaining.
          */
         public Builder clearDeviceName() {
    -      
           deviceName_ = getDefaultInstance().getDeviceName();
    +      bitField0_ = (bitField0_ & ~0x00000020);
           onChanged();
           return this;
         }
    @@ -1314,27 +1301,13 @@ public Builder clearDeviceName() {
          */
         public Builder setDeviceNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           deviceName_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.GraphExecutionTrace)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphExecutionTraceOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphExecutionTraceOrBuilder.java
    index b01de73732e..8ee56f2d353 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphExecutionTraceOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphExecutionTraceOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug_event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphOpCreation.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphOpCreation.java
    index ca85e208dd1..1cfdf8f521b 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphOpCreation.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphOpCreation.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug_event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,12 +13,21 @@
      * Protobuf type {@code tensorflow.GraphOpCreation}
      */
     public final class GraphOpCreation extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.GraphOpCreation)
         GraphOpCreationOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      GraphOpCreation.class.getName());
    +  }
       // Use GraphOpCreation.newBuilder() to construct.
    -  private GraphOpCreation(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private GraphOpCreation(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private GraphOpCreation() {
    @@ -25,37 +36,28 @@ private GraphOpCreation() {
         graphName_ = "";
         graphId_ = "";
         deviceName_ = "";
    -    inputNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    inputNames_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         outputTensorIds_ = emptyIntList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new GraphOpCreation();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_GraphOpCreation_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_GraphOpCreation_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.GraphOpCreation.class, org.tensorflow.proto.GraphOpCreation.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int OP_TYPE_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object opType_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object opType_ = "";
       /**
        * 
        * Type of the op (e.g., "MatMul").
    @@ -101,7 +103,8 @@ public java.lang.String getOpType() {
       }
     
       public static final int OP_NAME_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object opName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object opName_ = "";
       /**
        * 
        * Name of the op (e.g., "Dense/MatMul_1").
    @@ -147,7 +150,8 @@ public java.lang.String getOpName() {
       }
     
       public static final int GRAPH_NAME_FIELD_NUMBER = 3;
    -  private volatile java.lang.Object graphName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object graphName_ = "";
       /**
        * 
        * Name of the graph that the op is a part of (if available).
    @@ -193,7 +197,8 @@ public java.lang.String getGraphName() {
       }
     
       public static final int GRAPH_ID_FIELD_NUMBER = 4;
    -  private volatile java.lang.Object graphId_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object graphId_ = "";
       /**
        * 
        * Unique ID of the graph (generated by debugger).
    @@ -241,7 +246,8 @@ public java.lang.String getGraphId() {
       }
     
       public static final int DEVICE_NAME_FIELD_NUMBER = 5;
    -  private volatile java.lang.Object deviceName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object deviceName_ = "";
       /**
        * 
        * Name of the device that the op is assigned to (if available).
    @@ -287,7 +293,9 @@ public java.lang.String getDeviceName() {
       }
     
       public static final int INPUT_NAMES_FIELD_NUMBER = 6;
    -  private com.google.protobuf.LazyStringList inputNames_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList inputNames_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * Names of the input tensors to the op.
    @@ -338,7 +346,7 @@ public java.lang.String getInputNames(int index) {
       }
     
       public static final int NUM_OUTPUTS_FIELD_NUMBER = 7;
    -  private int numOutputs_;
    +  private int numOutputs_ = 0;
       /**
        * 
        * Number of output tensors emitted by the op.
    @@ -364,7 +372,7 @@ public int getNumOutputs() {
        */
       @java.lang.Override
       public boolean hasCodeLocation() {
    -    return codeLocation_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -387,11 +395,13 @@ public org.tensorflow.proto.CodeLocation getCodeLocation() {
        */
       @java.lang.Override
       public org.tensorflow.proto.CodeLocationOrBuilder getCodeLocationOrBuilder() {
    -    return getCodeLocation();
    +    return codeLocation_ == null ? org.tensorflow.proto.CodeLocation.getDefaultInstance() : codeLocation_;
       }
     
       public static final int OUTPUT_TENSOR_IDS_FIELD_NUMBER = 9;
    -  private com.google.protobuf.Internal.IntList outputTensorIds_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.IntList outputTensorIds_ =
    +      emptyIntList();
       /**
        * 
        * Unique IDs for the output tensors of this op.
    @@ -445,28 +455,28 @@ public final boolean isInitialized() {
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
         getSerializedSize();
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(opType_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, opType_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(opType_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, opType_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(opName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, opName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(opName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, opName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(graphName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, graphName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(graphName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, graphName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(graphId_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 4, graphId_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(graphId_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 4, graphId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 5, deviceName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 5, deviceName_);
         }
         for (int i = 0; i < inputNames_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 6, inputNames_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 6, inputNames_.getRaw(i));
         }
         if (numOutputs_ != 0) {
           output.writeInt32(7, numOutputs_);
         }
    -    if (codeLocation_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(8, getCodeLocation());
         }
         if (getOutputTensorIdsList().size() > 0) {
    @@ -485,20 +495,20 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(opType_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, opType_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(opType_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, opType_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(opName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, opName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(opName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, opName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(graphName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, graphName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(graphName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, graphName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(graphId_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, graphId_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(graphId_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(4, graphId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, deviceName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(5, deviceName_);
         }
         {
           int dataSize = 0;
    @@ -512,7 +522,7 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeInt32Size(7, numOutputs_);
         }
    -    if (codeLocation_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(8, getCodeLocation());
         }
    @@ -640,39 +650,41 @@ public static org.tensorflow.proto.GraphOpCreation parseFrom(
       }
       public static org.tensorflow.proto.GraphOpCreation parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphOpCreation parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.GraphOpCreation parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.GraphOpCreation parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.GraphOpCreation parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphOpCreation parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -692,7 +704,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -704,7 +716,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.GraphOpCreation}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.GraphOpCreation)
           org.tensorflow.proto.GraphOpCreationOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -713,7 +725,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_GraphOpCreation_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -722,39 +734,38 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.GraphOpCreation.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getCodeLocationFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           opType_ = "";
    -
           opName_ = "";
    -
           graphName_ = "";
    -
           graphId_ = "";
    -
           deviceName_ = "";
    -
    -      inputNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      inputNames_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           numOutputs_ = 0;
    -
    -      if (codeLocationBuilder_ == null) {
    -        codeLocation_ = null;
    -      } else {
    -        codeLocation_ = null;
    +      codeLocation_ = null;
    +      if (codeLocationBuilder_ != null) {
    +        codeLocationBuilder_.dispose();
             codeLocationBuilder_ = null;
           }
           outputTensorIds_ = emptyIntList();
    -      bitField0_ = (bitField0_ & ~0x00000002);
           return this;
         }
     
    @@ -781,64 +792,49 @@ public org.tensorflow.proto.GraphOpCreation build() {
         @java.lang.Override
         public org.tensorflow.proto.GraphOpCreation buildPartial() {
           org.tensorflow.proto.GraphOpCreation result = new org.tensorflow.proto.GraphOpCreation(this);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartial0(org.tensorflow.proto.GraphOpCreation result) {
           int from_bitField0_ = bitField0_;
    -      result.opType_ = opType_;
    -      result.opName_ = opName_;
    -      result.graphName_ = graphName_;
    -      result.graphId_ = graphId_;
    -      result.deviceName_ = deviceName_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        inputNames_ = inputNames_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.opType_ = opType_;
           }
    -      result.inputNames_ = inputNames_;
    -      result.numOutputs_ = numOutputs_;
    -      if (codeLocationBuilder_ == null) {
    -        result.codeLocation_ = codeLocation_;
    -      } else {
    -        result.codeLocation_ = codeLocationBuilder_.build();
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.opName_ = opName_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.graphName_ = graphName_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.graphId_ = graphId_;
           }
    -      if (((bitField0_ & 0x00000002) != 0)) {
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.deviceName_ = deviceName_;
    +      }
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        inputNames_.makeImmutable();
    +        result.inputNames_ = inputNames_;
    +      }
    +      if (((from_bitField0_ & 0x00000040) != 0)) {
    +        result.numOutputs_ = numOutputs_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000080) != 0)) {
    +        result.codeLocation_ = codeLocationBuilder_ == null
    +            ? codeLocation_
    +            : codeLocationBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000100) != 0)) {
             outputTensorIds_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        result.outputTensorIds_ = outputTensorIds_;
           }
    -      result.outputTensorIds_ = outputTensorIds_;
    -      onBuilt();
    -      return result;
    +      result.bitField0_ |= to_bitField0_;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    -    }
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.GraphOpCreation) {
    @@ -853,28 +849,33 @@ public Builder mergeFrom(org.tensorflow.proto.GraphOpCreation other) {
           if (other == org.tensorflow.proto.GraphOpCreation.getDefaultInstance()) return this;
           if (!other.getOpType().isEmpty()) {
             opType_ = other.opType_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getOpName().isEmpty()) {
             opName_ = other.opName_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (!other.getGraphName().isEmpty()) {
             graphName_ = other.graphName_;
    +        bitField0_ |= 0x00000004;
             onChanged();
           }
           if (!other.getGraphId().isEmpty()) {
             graphId_ = other.graphId_;
    +        bitField0_ |= 0x00000008;
             onChanged();
           }
           if (!other.getDeviceName().isEmpty()) {
             deviceName_ = other.deviceName_;
    +        bitField0_ |= 0x00000010;
             onChanged();
           }
           if (!other.inputNames_.isEmpty()) {
             if (inputNames_.isEmpty()) {
               inputNames_ = other.inputNames_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ |= 0x00000020;
             } else {
               ensureInputNamesIsMutable();
               inputNames_.addAll(other.inputNames_);
    @@ -890,7 +891,8 @@ public Builder mergeFrom(org.tensorflow.proto.GraphOpCreation other) {
           if (!other.outputTensorIds_.isEmpty()) {
             if (outputTensorIds_.isEmpty()) {
               outputTensorIds_ = other.outputTensorIds_;
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          outputTensorIds_.makeImmutable();
    +          bitField0_ |= 0x00000100;
             } else {
               ensureOutputTensorIdsIsMutable();
               outputTensorIds_.addAll(other.outputTensorIds_);
    @@ -925,27 +927,27 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   opType_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   opName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
                   graphName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 case 34: {
                   graphId_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 34
                 case 42: {
                   deviceName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 42
                 case 50: {
    @@ -956,14 +958,14 @@ public Builder mergeFrom(
                 } // case 50
                 case 56: {
                   numOutputs_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000040;
                   break;
                 } // case 56
                 case 66: {
                   input.readMessage(
                       getCodeLocationFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000080;
                   break;
                 } // case 66
                 case 72: {
    @@ -1052,11 +1054,9 @@ public java.lang.String getOpType() {
          */
         public Builder setOpType(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           opType_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1069,8 +1069,8 @@ public Builder setOpType(
          * @return This builder for chaining.
          */
         public Builder clearOpType() {
    -      
           opType_ = getDefaultInstance().getOpType();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -1085,12 +1085,10 @@ public Builder clearOpType() {
          */
         public Builder setOpTypeBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           opType_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1148,11 +1146,9 @@ public java.lang.String getOpName() {
          */
         public Builder setOpName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           opName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1165,8 +1161,8 @@ public Builder setOpName(
          * @return This builder for chaining.
          */
         public Builder clearOpName() {
    -      
           opName_ = getDefaultInstance().getOpName();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -1181,12 +1177,10 @@ public Builder clearOpName() {
          */
         public Builder setOpNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           opName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1244,11 +1238,9 @@ public java.lang.String getGraphName() {
          */
         public Builder setGraphName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           graphName_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1261,8 +1253,8 @@ public Builder setGraphName(
          * @return This builder for chaining.
          */
         public Builder clearGraphName() {
    -      
           graphName_ = getDefaultInstance().getGraphName();
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -1277,12 +1269,10 @@ public Builder clearGraphName() {
          */
         public Builder setGraphNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           graphName_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1343,11 +1333,9 @@ public java.lang.String getGraphId() {
          */
         public Builder setGraphId(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           graphId_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1361,8 +1349,8 @@ public Builder setGraphId(
          * @return This builder for chaining.
          */
         public Builder clearGraphId() {
    -      
           graphId_ = getDefaultInstance().getGraphId();
    +      bitField0_ = (bitField0_ & ~0x00000008);
           onChanged();
           return this;
         }
    @@ -1378,12 +1366,10 @@ public Builder clearGraphId() {
          */
         public Builder setGraphIdBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           graphId_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1441,11 +1427,9 @@ public java.lang.String getDeviceName() {
          */
         public Builder setDeviceName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           deviceName_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1458,8 +1442,8 @@ public Builder setDeviceName(
          * @return This builder for chaining.
          */
         public Builder clearDeviceName() {
    -      
           deviceName_ = getDefaultInstance().getDeviceName();
    +      bitField0_ = (bitField0_ & ~0x00000010);
           onChanged();
           return this;
         }
    @@ -1474,22 +1458,21 @@ public Builder clearDeviceName() {
          */
         public Builder setDeviceNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           deviceName_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.LazyStringList inputNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList inputNames_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureInputNamesIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!inputNames_.isModifiable()) {
             inputNames_ = new com.google.protobuf.LazyStringArrayList(inputNames_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      }
    +      bitField0_ |= 0x00000020;
         }
         /**
          * 
    @@ -1501,7 +1484,8 @@ private void ensureInputNamesIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getInputNamesList() {
    -      return inputNames_.getUnmodifiableView();
    +      inputNames_.makeImmutable();
    +      return inputNames_;
         }
         /**
          * 
    @@ -1551,11 +1535,10 @@ public java.lang.String getInputNames(int index) {
          */
         public Builder setInputNames(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureInputNamesIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureInputNamesIsMutable();
           inputNames_.set(index, value);
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -1570,11 +1553,10 @@ public Builder setInputNames(
          */
         public Builder addInputNames(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureInputNamesIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureInputNamesIsMutable();
           inputNames_.add(value);
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -1592,6 +1574,7 @@ public Builder addAllInputNames(
           ensureInputNamesIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, inputNames_);
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -1604,8 +1587,9 @@ public Builder addAllInputNames(
          * @return This builder for chaining.
          */
         public Builder clearInputNames() {
    -      inputNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      inputNames_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000020);;
           onChanged();
           return this;
         }
    @@ -1620,12 +1604,11 @@ public Builder clearInputNames() {
          */
         public Builder addInputNamesBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureInputNamesIsMutable();
           inputNames_.add(value);
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -1653,8 +1636,9 @@ public int getNumOutputs() {
          * @return This builder for chaining.
          */
         public Builder setNumOutputs(int value) {
    -      
    +
           numOutputs_ = value;
    +      bitField0_ |= 0x00000040;
           onChanged();
           return this;
         }
    @@ -1667,14 +1651,14 @@ public Builder setNumOutputs(int value) {
          * @return This builder for chaining.
          */
         public Builder clearNumOutputs() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000040);
           numOutputs_ = 0;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.CodeLocation codeLocation_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.CodeLocation, org.tensorflow.proto.CodeLocation.Builder, org.tensorflow.proto.CodeLocationOrBuilder> codeLocationBuilder_;
         /**
          * 
    @@ -1685,7 +1669,7 @@ public Builder clearNumOutputs() {
          * @return Whether the codeLocation field is set.
          */
         public boolean hasCodeLocation() {
    -      return codeLocationBuilder_ != null || codeLocation_ != null;
    +      return ((bitField0_ & 0x00000080) != 0);
         }
         /**
          * 
    @@ -1715,11 +1699,11 @@ public Builder setCodeLocation(org.tensorflow.proto.CodeLocation value) {
               throw new NullPointerException();
             }
             codeLocation_ = value;
    -        onChanged();
           } else {
             codeLocationBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000080;
    +      onChanged();
           return this;
         }
         /**
    @@ -1733,11 +1717,11 @@ public Builder setCodeLocation(
             org.tensorflow.proto.CodeLocation.Builder builderForValue) {
           if (codeLocationBuilder_ == null) {
             codeLocation_ = builderForValue.build();
    -        onChanged();
           } else {
             codeLocationBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000080;
    +      onChanged();
           return this;
         }
         /**
    @@ -1749,17 +1733,20 @@ public Builder setCodeLocation(
          */
         public Builder mergeCodeLocation(org.tensorflow.proto.CodeLocation value) {
           if (codeLocationBuilder_ == null) {
    -        if (codeLocation_ != null) {
    -          codeLocation_ =
    -            org.tensorflow.proto.CodeLocation.newBuilder(codeLocation_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000080) != 0) &&
    +          codeLocation_ != null &&
    +          codeLocation_ != org.tensorflow.proto.CodeLocation.getDefaultInstance()) {
    +          getCodeLocationBuilder().mergeFrom(value);
             } else {
               codeLocation_ = value;
             }
    -        onChanged();
           } else {
             codeLocationBuilder_.mergeFrom(value);
           }
    -
    +      if (codeLocation_ != null) {
    +        bitField0_ |= 0x00000080;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -1770,14 +1757,13 @@ public Builder mergeCodeLocation(org.tensorflow.proto.CodeLocation value) {
          * .tensorflow.CodeLocation code_location = 8;
          */
         public Builder clearCodeLocation() {
    -      if (codeLocationBuilder_ == null) {
    -        codeLocation_ = null;
    -        onChanged();
    -      } else {
    -        codeLocation_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000080);
    +      codeLocation_ = null;
    +      if (codeLocationBuilder_ != null) {
    +        codeLocationBuilder_.dispose();
             codeLocationBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -1788,7 +1774,7 @@ public Builder clearCodeLocation() {
          * .tensorflow.CodeLocation code_location = 8;
          */
         public org.tensorflow.proto.CodeLocation.Builder getCodeLocationBuilder() {
    -      
    +      bitField0_ |= 0x00000080;
           onChanged();
           return getCodeLocationFieldBuilder().getBuilder();
         }
    @@ -1814,11 +1800,11 @@ public org.tensorflow.proto.CodeLocationOrBuilder getCodeLocationOrBuilder() {
          *
          * .tensorflow.CodeLocation code_location = 8;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.CodeLocation, org.tensorflow.proto.CodeLocation.Builder, org.tensorflow.proto.CodeLocationOrBuilder> 
             getCodeLocationFieldBuilder() {
           if (codeLocationBuilder_ == null) {
    -        codeLocationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        codeLocationBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.CodeLocation, org.tensorflow.proto.CodeLocation.Builder, org.tensorflow.proto.CodeLocationOrBuilder>(
                     getCodeLocation(),
                     getParentForChildren(),
    @@ -1830,10 +1816,10 @@ public org.tensorflow.proto.CodeLocationOrBuilder getCodeLocationOrBuilder() {
     
         private com.google.protobuf.Internal.IntList outputTensorIds_ = emptyIntList();
         private void ensureOutputTensorIdsIsMutable() {
    -      if (!((bitField0_ & 0x00000002) != 0)) {
    -        outputTensorIds_ = mutableCopy(outputTensorIds_);
    -        bitField0_ |= 0x00000002;
    -       }
    +      if (!outputTensorIds_.isModifiable()) {
    +        outputTensorIds_ = makeMutableCopy(outputTensorIds_);
    +      }
    +      bitField0_ |= 0x00000100;
         }
         /**
          * 
    @@ -1845,8 +1831,8 @@ private void ensureOutputTensorIdsIsMutable() {
          */
         public java.util.List
             getOutputTensorIdsList() {
    -      return ((bitField0_ & 0x00000002) != 0) ?
    -               java.util.Collections.unmodifiableList(outputTensorIds_) : outputTensorIds_;
    +      outputTensorIds_.makeImmutable();
    +      return outputTensorIds_;
         }
         /**
          * 
    @@ -1883,8 +1869,10 @@ public int getOutputTensorIds(int index) {
          */
         public Builder setOutputTensorIds(
             int index, int value) {
    +
           ensureOutputTensorIdsIsMutable();
           outputTensorIds_.setInt(index, value);
    +      bitField0_ |= 0x00000100;
           onChanged();
           return this;
         }
    @@ -1898,8 +1886,10 @@ public Builder setOutputTensorIds(
          * @return This builder for chaining.
          */
         public Builder addOutputTensorIds(int value) {
    +
           ensureOutputTensorIdsIsMutable();
           outputTensorIds_.addInt(value);
    +      bitField0_ |= 0x00000100;
           onChanged();
           return this;
         }
    @@ -1917,6 +1907,7 @@ public Builder addAllOutputTensorIds(
           ensureOutputTensorIdsIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, outputTensorIds_);
    +      bitField0_ |= 0x00000100;
           onChanged();
           return this;
         }
    @@ -1930,22 +1921,10 @@ public Builder addAllOutputTensorIds(
          */
         public Builder clearOutputTensorIds() {
           outputTensorIds_ = emptyIntList();
    -      bitField0_ = (bitField0_ & ~0x00000002);
    +      bitField0_ = (bitField0_ & ~0x00000100);
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.GraphOpCreation)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphOpCreationOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphOpCreationOrBuilder.java
    index b89ff27bd26..f2a77fe07be 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphOpCreationOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphOpCreationOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug_event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphOptions.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphOptions.java
    index 062e96016bd..db16e305ded 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphOptions.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphOptions.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,44 +9,42 @@
      * Protobuf type {@code tensorflow.GraphOptions}
      */
     public final class GraphOptions extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.GraphOptions)
         GraphOptionsOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      GraphOptions.class.getName());
    +  }
       // Use GraphOptions.newBuilder() to construct.
    -  private GraphOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private GraphOptions(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private GraphOptions() {
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new GraphOptions();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_GraphOptions_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_GraphOptions_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.GraphOptions.class, org.tensorflow.proto.GraphOptions.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int ENABLE_RECV_SCHEDULING_FIELD_NUMBER = 2;
    -  private boolean enableRecvScheduling_;
    +  private boolean enableRecvScheduling_ = false;
       /**
        * 
        * If true, use control flow to schedule the activation of Recv nodes.
    @@ -71,7 +71,7 @@ public boolean getEnableRecvScheduling() {
        */
       @java.lang.Override
       public boolean hasOptimizerOptions() {
    -    return optimizerOptions_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -94,11 +94,11 @@ public org.tensorflow.proto.OptimizerOptions getOptimizerOptions() {
        */
       @java.lang.Override
       public org.tensorflow.proto.OptimizerOptionsOrBuilder getOptimizerOptionsOrBuilder() {
    -    return getOptimizerOptions();
    +    return optimizerOptions_ == null ? org.tensorflow.proto.OptimizerOptions.getDefaultInstance() : optimizerOptions_;
       }
     
       public static final int BUILD_COST_MODEL_FIELD_NUMBER = 4;
    -  private long buildCostModel_;
    +  private long buildCostModel_ = 0L;
       /**
        * 
        * The number of steps to run before returning a cost model detailing
    @@ -115,7 +115,7 @@ public long getBuildCostModel() {
       }
     
       public static final int BUILD_COST_MODEL_AFTER_FIELD_NUMBER = 9;
    -  private long buildCostModelAfter_;
    +  private long buildCostModelAfter_ = 0L;
       /**
        * 
        * The number of steps to skip before collecting statistics for the
    @@ -131,7 +131,7 @@ public long getBuildCostModelAfter() {
       }
     
       public static final int INFER_SHAPES_FIELD_NUMBER = 5;
    -  private boolean inferShapes_;
    +  private boolean inferShapes_ = false;
       /**
        * 
        * Annotate each Node with Op output shape data, to the extent it can
    @@ -147,10 +147,11 @@ public boolean getInferShapes() {
       }
     
       public static final int PLACE_PRUNED_GRAPH_FIELD_NUMBER = 6;
    -  private boolean placePrunedGraph_;
    +  private boolean placePrunedGraph_ = false;
       /**
        * 
        * Only place the subgraphs that are run, rather than the entire graph.
    +   *
        * This is useful for interactive graph building, where one might
        * produce graphs that cannot be placed during the debugging
        * process.  In particular, it allows the client to continue work in
    @@ -167,7 +168,7 @@ public boolean getPlacePrunedGraph() {
       }
     
       public static final int ENABLE_BFLOAT16_SENDRECV_FIELD_NUMBER = 7;
    -  private boolean enableBfloat16Sendrecv_;
    +  private boolean enableBfloat16Sendrecv_ = false;
       /**
        * 
        * If true, transfer float values between processes as bfloat16.
    @@ -182,7 +183,7 @@ public boolean getEnableBfloat16Sendrecv() {
       }
     
       public static final int TIMELINE_STEP_FIELD_NUMBER = 8;
    -  private int timelineStep_;
    +  private int timelineStep_ = 0;
       /**
        * 
        * If > 0, record a timeline every this many steps.
    @@ -211,7 +212,7 @@ public int getTimelineStep() {
        */
       @java.lang.Override
       public boolean hasRewriteOptions() {
    -    return rewriteOptions_ != null;
    +    return ((bitField0_ & 0x00000002) != 0);
       }
       /**
        * 
    @@ -238,7 +239,7 @@ public org.tensorflow.proto.RewriterConfig getRewriteOptions() {
        */
       @java.lang.Override
       public org.tensorflow.proto.RewriterConfigOrBuilder getRewriteOptionsOrBuilder() {
    -    return getRewriteOptions();
    +    return rewriteOptions_ == null ? org.tensorflow.proto.RewriterConfig.getDefaultInstance() : rewriteOptions_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -258,7 +259,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (enableRecvScheduling_ != false) {
           output.writeBool(2, enableRecvScheduling_);
         }
    -    if (optimizerOptions_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(3, getOptimizerOptions());
         }
         if (buildCostModel_ != 0L) {
    @@ -279,7 +280,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (buildCostModelAfter_ != 0L) {
           output.writeInt64(9, buildCostModelAfter_);
         }
    -    if (rewriteOptions_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           output.writeMessage(10, getRewriteOptions());
         }
         getUnknownFields().writeTo(output);
    @@ -295,7 +296,7 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeBoolSize(2, enableRecvScheduling_);
         }
    -    if (optimizerOptions_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(3, getOptimizerOptions());
         }
    @@ -323,7 +324,7 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeInt64Size(9, buildCostModelAfter_);
         }
    -    if (rewriteOptions_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(10, getRewriteOptions());
         }
    @@ -444,39 +445,41 @@ public static org.tensorflow.proto.GraphOptions parseFrom(
       }
       public static org.tensorflow.proto.GraphOptions parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphOptions parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.GraphOptions parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.GraphOptions parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.GraphOptions parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphOptions parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -496,7 +499,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -504,7 +507,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.GraphOptions}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.GraphOptions)
           org.tensorflow.proto.GraphOptionsOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -513,7 +516,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_GraphOptions_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -522,41 +525,40 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.GraphOptions.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getOptimizerOptionsFieldBuilder();
    +        getRewriteOptionsFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           enableRecvScheduling_ = false;
    -
    -      if (optimizerOptionsBuilder_ == null) {
    -        optimizerOptions_ = null;
    -      } else {
    -        optimizerOptions_ = null;
    +      optimizerOptions_ = null;
    +      if (optimizerOptionsBuilder_ != null) {
    +        optimizerOptionsBuilder_.dispose();
             optimizerOptionsBuilder_ = null;
           }
           buildCostModel_ = 0L;
    -
           buildCostModelAfter_ = 0L;
    -
           inferShapes_ = false;
    -
           placePrunedGraph_ = false;
    -
           enableBfloat16Sendrecv_ = false;
    -
           timelineStep_ = 0;
    -
    -      if (rewriteOptionsBuilder_ == null) {
    -        rewriteOptions_ = null;
    -      } else {
    -        rewriteOptions_ = null;
    +      rewriteOptions_ = null;
    +      if (rewriteOptionsBuilder_ != null) {
    +        rewriteOptionsBuilder_.dispose();
             rewriteOptionsBuilder_ = null;
           }
           return this;
    @@ -585,59 +587,50 @@ public org.tensorflow.proto.GraphOptions build() {
         @java.lang.Override
         public org.tensorflow.proto.GraphOptions buildPartial() {
           org.tensorflow.proto.GraphOptions result = new org.tensorflow.proto.GraphOptions(this);
    -      result.enableRecvScheduling_ = enableRecvScheduling_;
    -      if (optimizerOptionsBuilder_ == null) {
    -        result.optimizerOptions_ = optimizerOptions_;
    -      } else {
    -        result.optimizerOptions_ = optimizerOptionsBuilder_.build();
    -      }
    -      result.buildCostModel_ = buildCostModel_;
    -      result.buildCostModelAfter_ = buildCostModelAfter_;
    -      result.inferShapes_ = inferShapes_;
    -      result.placePrunedGraph_ = placePrunedGraph_;
    -      result.enableBfloat16Sendrecv_ = enableBfloat16Sendrecv_;
    -      result.timelineStep_ = timelineStep_;
    -      if (rewriteOptionsBuilder_ == null) {
    -        result.rewriteOptions_ = rewriteOptions_;
    -      } else {
    -        result.rewriteOptions_ = rewriteOptionsBuilder_.build();
    -      }
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.GraphOptions result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.enableRecvScheduling_ = enableRecvScheduling_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.optimizerOptions_ = optimizerOptionsBuilder_ == null
    +            ? optimizerOptions_
    +            : optimizerOptionsBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.buildCostModel_ = buildCostModel_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.buildCostModelAfter_ = buildCostModelAfter_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.inferShapes_ = inferShapes_;
    +      }
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.placePrunedGraph_ = placePrunedGraph_;
    +      }
    +      if (((from_bitField0_ & 0x00000040) != 0)) {
    +        result.enableBfloat16Sendrecv_ = enableBfloat16Sendrecv_;
    +      }
    +      if (((from_bitField0_ & 0x00000080) != 0)) {
    +        result.timelineStep_ = timelineStep_;
    +      }
    +      if (((from_bitField0_ & 0x00000100) != 0)) {
    +        result.rewriteOptions_ = rewriteOptionsBuilder_ == null
    +            ? rewriteOptions_
    +            : rewriteOptionsBuilder_.build();
    +        to_bitField0_ |= 0x00000002;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.GraphOptions) {
    @@ -705,51 +698,51 @@ public Builder mergeFrom(
                   break;
                 case 16: {
                   enableRecvScheduling_ = input.readBool();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 16
                 case 26: {
                   input.readMessage(
                       getOptimizerOptionsFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 26
                 case 32: {
                   buildCostModel_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 32
                 case 40: {
                   inferShapes_ = input.readBool();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 40
                 case 48: {
                   placePrunedGraph_ = input.readBool();
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 48
                 case 56: {
                   enableBfloat16Sendrecv_ = input.readBool();
    -
    +              bitField0_ |= 0x00000040;
                   break;
                 } // case 56
                 case 64: {
                   timelineStep_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000080;
                   break;
                 } // case 64
                 case 72: {
                   buildCostModelAfter_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 72
                 case 82: {
                   input.readMessage(
                       getRewriteOptionsFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000100;
                   break;
                 } // case 82
                 default: {
    @@ -767,6 +760,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private boolean enableRecvScheduling_ ;
         /**
    @@ -793,8 +787,9 @@ public boolean getEnableRecvScheduling() {
          * @return This builder for chaining.
          */
         public Builder setEnableRecvScheduling(boolean value) {
    -      
    +
           enableRecvScheduling_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -808,14 +803,14 @@ public Builder setEnableRecvScheduling(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearEnableRecvScheduling() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           enableRecvScheduling_ = false;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.OptimizerOptions optimizerOptions_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.OptimizerOptions, org.tensorflow.proto.OptimizerOptions.Builder, org.tensorflow.proto.OptimizerOptionsOrBuilder> optimizerOptionsBuilder_;
         /**
          * 
    @@ -826,7 +821,7 @@ public Builder clearEnableRecvScheduling() {
          * @return Whether the optimizerOptions field is set.
          */
         public boolean hasOptimizerOptions() {
    -      return optimizerOptionsBuilder_ != null || optimizerOptions_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -856,11 +851,11 @@ public Builder setOptimizerOptions(org.tensorflow.proto.OptimizerOptions value)
               throw new NullPointerException();
             }
             optimizerOptions_ = value;
    -        onChanged();
           } else {
             optimizerOptionsBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -874,11 +869,11 @@ public Builder setOptimizerOptions(
             org.tensorflow.proto.OptimizerOptions.Builder builderForValue) {
           if (optimizerOptionsBuilder_ == null) {
             optimizerOptions_ = builderForValue.build();
    -        onChanged();
           } else {
             optimizerOptionsBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -890,17 +885,20 @@ public Builder setOptimizerOptions(
          */
         public Builder mergeOptimizerOptions(org.tensorflow.proto.OptimizerOptions value) {
           if (optimizerOptionsBuilder_ == null) {
    -        if (optimizerOptions_ != null) {
    -          optimizerOptions_ =
    -            org.tensorflow.proto.OptimizerOptions.newBuilder(optimizerOptions_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000002) != 0) &&
    +          optimizerOptions_ != null &&
    +          optimizerOptions_ != org.tensorflow.proto.OptimizerOptions.getDefaultInstance()) {
    +          getOptimizerOptionsBuilder().mergeFrom(value);
             } else {
               optimizerOptions_ = value;
             }
    -        onChanged();
           } else {
             optimizerOptionsBuilder_.mergeFrom(value);
           }
    -
    +      if (optimizerOptions_ != null) {
    +        bitField0_ |= 0x00000002;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -911,14 +909,13 @@ public Builder mergeOptimizerOptions(org.tensorflow.proto.OptimizerOptions value
          * .tensorflow.OptimizerOptions optimizer_options = 3;
          */
         public Builder clearOptimizerOptions() {
    -      if (optimizerOptionsBuilder_ == null) {
    -        optimizerOptions_ = null;
    -        onChanged();
    -      } else {
    -        optimizerOptions_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      optimizerOptions_ = null;
    +      if (optimizerOptionsBuilder_ != null) {
    +        optimizerOptionsBuilder_.dispose();
             optimizerOptionsBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -929,7 +926,7 @@ public Builder clearOptimizerOptions() {
          * .tensorflow.OptimizerOptions optimizer_options = 3;
          */
         public org.tensorflow.proto.OptimizerOptions.Builder getOptimizerOptionsBuilder() {
    -      
    +      bitField0_ |= 0x00000002;
           onChanged();
           return getOptimizerOptionsFieldBuilder().getBuilder();
         }
    @@ -955,11 +952,11 @@ public org.tensorflow.proto.OptimizerOptionsOrBuilder getOptimizerOptionsOrBuild
          *
          * .tensorflow.OptimizerOptions optimizer_options = 3;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.OptimizerOptions, org.tensorflow.proto.OptimizerOptions.Builder, org.tensorflow.proto.OptimizerOptionsOrBuilder> 
             getOptimizerOptionsFieldBuilder() {
           if (optimizerOptionsBuilder_ == null) {
    -        optimizerOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        optimizerOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.OptimizerOptions, org.tensorflow.proto.OptimizerOptions.Builder, org.tensorflow.proto.OptimizerOptionsOrBuilder>(
                     getOptimizerOptions(),
                     getParentForChildren(),
    @@ -996,8 +993,9 @@ public long getBuildCostModel() {
          * @return This builder for chaining.
          */
         public Builder setBuildCostModel(long value) {
    -      
    +
           buildCostModel_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1012,7 +1010,7 @@ public Builder setBuildCostModel(long value) {
          * @return This builder for chaining.
          */
         public Builder clearBuildCostModel() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           buildCostModel_ = 0L;
           onChanged();
           return this;
    @@ -1043,8 +1041,9 @@ public long getBuildCostModelAfter() {
          * @return This builder for chaining.
          */
         public Builder setBuildCostModelAfter(long value) {
    -      
    +
           buildCostModelAfter_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1058,7 +1057,7 @@ public Builder setBuildCostModelAfter(long value) {
          * @return This builder for chaining.
          */
         public Builder clearBuildCostModelAfter() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           buildCostModelAfter_ = 0L;
           onChanged();
           return this;
    @@ -1089,8 +1088,9 @@ public boolean getInferShapes() {
          * @return This builder for chaining.
          */
         public Builder setInferShapes(boolean value) {
    -      
    +
           inferShapes_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1104,7 +1104,7 @@ public Builder setInferShapes(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearInferShapes() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000010);
           inferShapes_ = false;
           onChanged();
           return this;
    @@ -1114,6 +1114,7 @@ public Builder clearInferShapes() {
         /**
          * 
          * Only place the subgraphs that are run, rather than the entire graph.
    +     *
          * This is useful for interactive graph building, where one might
          * produce graphs that cannot be placed during the debugging
          * process.  In particular, it allows the client to continue work in
    @@ -1131,6 +1132,7 @@ public boolean getPlacePrunedGraph() {
         /**
          * 
          * Only place the subgraphs that are run, rather than the entire graph.
    +     *
          * This is useful for interactive graph building, where one might
          * produce graphs that cannot be placed during the debugging
          * process.  In particular, it allows the client to continue work in
    @@ -1143,14 +1145,16 @@ public boolean getPlacePrunedGraph() {
          * @return This builder for chaining.
          */
         public Builder setPlacePrunedGraph(boolean value) {
    -      
    +
           placePrunedGraph_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
         /**
          * 
          * Only place the subgraphs that are run, rather than the entire graph.
    +     *
          * This is useful for interactive graph building, where one might
          * produce graphs that cannot be placed during the debugging
          * process.  In particular, it allows the client to continue work in
    @@ -1162,7 +1166,7 @@ public Builder setPlacePrunedGraph(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearPlacePrunedGraph() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000020);
           placePrunedGraph_ = false;
           onChanged();
           return this;
    @@ -1191,8 +1195,9 @@ public boolean getEnableBfloat16Sendrecv() {
          * @return This builder for chaining.
          */
         public Builder setEnableBfloat16Sendrecv(boolean value) {
    -      
    +
           enableBfloat16Sendrecv_ = value;
    +      bitField0_ |= 0x00000040;
           onChanged();
           return this;
         }
    @@ -1205,7 +1210,7 @@ public Builder setEnableBfloat16Sendrecv(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearEnableBfloat16Sendrecv() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000040);
           enableBfloat16Sendrecv_ = false;
           onChanged();
           return this;
    @@ -1236,8 +1241,9 @@ public int getTimelineStep() {
          * @return This builder for chaining.
          */
         public Builder setTimelineStep(int value) {
    -      
    +
           timelineStep_ = value;
    +      bitField0_ |= 0x00000080;
           onChanged();
           return this;
         }
    @@ -1251,14 +1257,14 @@ public Builder setTimelineStep(int value) {
          * @return This builder for chaining.
          */
         public Builder clearTimelineStep() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000080);
           timelineStep_ = 0;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.RewriterConfig rewriteOptions_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.RewriterConfig, org.tensorflow.proto.RewriterConfig.Builder, org.tensorflow.proto.RewriterConfigOrBuilder> rewriteOptionsBuilder_;
         /**
          * 
    @@ -1271,7 +1277,7 @@ public Builder clearTimelineStep() {
          * @return Whether the rewriteOptions field is set.
          */
         public boolean hasRewriteOptions() {
    -      return rewriteOptionsBuilder_ != null || rewriteOptions_ != null;
    +      return ((bitField0_ & 0x00000100) != 0);
         }
         /**
          * 
    @@ -1305,11 +1311,11 @@ public Builder setRewriteOptions(org.tensorflow.proto.RewriterConfig value) {
               throw new NullPointerException();
             }
             rewriteOptions_ = value;
    -        onChanged();
           } else {
             rewriteOptionsBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000100;
    +      onChanged();
           return this;
         }
         /**
    @@ -1325,11 +1331,11 @@ public Builder setRewriteOptions(
             org.tensorflow.proto.RewriterConfig.Builder builderForValue) {
           if (rewriteOptionsBuilder_ == null) {
             rewriteOptions_ = builderForValue.build();
    -        onChanged();
           } else {
             rewriteOptionsBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000100;
    +      onChanged();
           return this;
         }
         /**
    @@ -1343,17 +1349,20 @@ public Builder setRewriteOptions(
          */
         public Builder mergeRewriteOptions(org.tensorflow.proto.RewriterConfig value) {
           if (rewriteOptionsBuilder_ == null) {
    -        if (rewriteOptions_ != null) {
    -          rewriteOptions_ =
    -            org.tensorflow.proto.RewriterConfig.newBuilder(rewriteOptions_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000100) != 0) &&
    +          rewriteOptions_ != null &&
    +          rewriteOptions_ != org.tensorflow.proto.RewriterConfig.getDefaultInstance()) {
    +          getRewriteOptionsBuilder().mergeFrom(value);
             } else {
               rewriteOptions_ = value;
             }
    -        onChanged();
           } else {
             rewriteOptionsBuilder_.mergeFrom(value);
           }
    -
    +      if (rewriteOptions_ != null) {
    +        bitField0_ |= 0x00000100;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -1366,14 +1375,13 @@ public Builder mergeRewriteOptions(org.tensorflow.proto.RewriterConfig value) {
          * .tensorflow.RewriterConfig rewrite_options = 10;
          */
         public Builder clearRewriteOptions() {
    -      if (rewriteOptionsBuilder_ == null) {
    -        rewriteOptions_ = null;
    -        onChanged();
    -      } else {
    -        rewriteOptions_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000100);
    +      rewriteOptions_ = null;
    +      if (rewriteOptionsBuilder_ != null) {
    +        rewriteOptionsBuilder_.dispose();
             rewriteOptionsBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -1386,7 +1394,7 @@ public Builder clearRewriteOptions() {
          * .tensorflow.RewriterConfig rewrite_options = 10;
          */
         public org.tensorflow.proto.RewriterConfig.Builder getRewriteOptionsBuilder() {
    -      
    +      bitField0_ |= 0x00000100;
           onChanged();
           return getRewriteOptionsFieldBuilder().getBuilder();
         }
    @@ -1416,11 +1424,11 @@ public org.tensorflow.proto.RewriterConfigOrBuilder getRewriteOptionsOrBuilder()
          *
          * .tensorflow.RewriterConfig rewrite_options = 10;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.RewriterConfig, org.tensorflow.proto.RewriterConfig.Builder, org.tensorflow.proto.RewriterConfigOrBuilder> 
             getRewriteOptionsFieldBuilder() {
           if (rewriteOptionsBuilder_ == null) {
    -        rewriteOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        rewriteOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.RewriterConfig, org.tensorflow.proto.RewriterConfig.Builder, org.tensorflow.proto.RewriterConfigOrBuilder>(
                     getRewriteOptions(),
                     getParentForChildren(),
    @@ -1429,18 +1437,6 @@ public org.tensorflow.proto.RewriterConfigOrBuilder getRewriteOptionsOrBuilder()
           }
           return rewriteOptionsBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.GraphOptions)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphOptionsOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphOptionsOrBuilder.java
    index 279f39ab0b1..7f2113d9509 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphOptionsOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphOptionsOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -82,6 +84,7 @@ public interface GraphOptionsOrBuilder extends
       /**
        * 
        * Only place the subgraphs that are run, rather than the entire graph.
    +   *
        * This is useful for interactive graph building, where one might
        * produce graphs that cannot be placed during the debugging
        * process.  In particular, it allows the client to continue work in
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphProtos.java
    index 05e2337b81e..213acdde175 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class GraphProtos {
       private GraphProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      GraphProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,7 +28,7 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_GraphDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_GraphDef_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -55,9 +66,10 @@ public static void registerAllExtensions(
         internal_static_tensorflow_GraphDef_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_GraphDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_GraphDef_descriptor,
             new java.lang.String[] { "Node", "Versions", "Version", "Library", "DebugInfo", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.FunctionProtos.getDescriptor();
         org.tensorflow.proto.GraphDebugInfoProtos.getDescriptor();
         org.tensorflow.proto.NodeProto.getDescriptor();
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferConstNodeInfo.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferConstNodeInfo.java
    index 9671b60a763..4c40a27b902 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferConstNodeInfo.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferConstNodeInfo.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_transfer_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,12 +9,21 @@
      * Protobuf type {@code tensorflow.GraphTransferConstNodeInfo}
      */
     public final class GraphTransferConstNodeInfo extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.GraphTransferConstNodeInfo)
         GraphTransferConstNodeInfoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      GraphTransferConstNodeInfo.class.getName());
    +  }
       // Use GraphTransferConstNodeInfo.newBuilder() to construct.
    -  private GraphTransferConstNodeInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private GraphTransferConstNodeInfo(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private GraphTransferConstNodeInfo() {
    @@ -22,25 +33,13 @@ private GraphTransferConstNodeInfo() {
         dtype_ = 0;
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new GraphTransferConstNodeInfo();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferConstNodeInfo_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferConstNodeInfo_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -48,7 +47,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object name_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object name_ = "";
       /**
        * string name = 1;
        * @return The name.
    @@ -86,7 +86,7 @@ public java.lang.String getName() {
       }
     
       public static final int NODE_ID_FIELD_NUMBER = 2;
    -  private int nodeId_;
    +  private int nodeId_ = 0;
       /**
        * int32 node_id = 2;
        * @return The nodeId.
    @@ -97,7 +97,9 @@ public int getNodeId() {
       }
     
       public static final int SHAPE_FIELD_NUMBER = 3;
    -  private com.google.protobuf.Internal.LongList shape_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.LongList shape_ =
    +      emptyLongList();
       /**
        * repeated int64 shape = 3;
        * @return A list containing the shape.
    @@ -125,7 +127,7 @@ public long getShape(int index) {
       private int shapeMemoizedSerializedSize = -1;
     
       public static final int DATA_FIELD_NUMBER = 4;
    -  private com.google.protobuf.ByteString data_;
    +  private com.google.protobuf.ByteString data_ = com.google.protobuf.ByteString.EMPTY;
       /**
        * bytes data = 4;
        * @return The data.
    @@ -136,7 +138,7 @@ public com.google.protobuf.ByteString getData() {
       }
     
       public static final int DTYPE_FIELD_NUMBER = 5;
    -  private int dtype_;
    +  private int dtype_ = 0;
       /**
        * .tensorflow.DataType dtype = 5;
        * @return The enum numeric value on the wire for dtype.
    @@ -149,8 +151,7 @@ public com.google.protobuf.ByteString getData() {
        * @return The dtype.
        */
       @java.lang.Override public org.tensorflow.proto.DataType getDtype() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
         return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
       }
     
    @@ -169,8 +170,8 @@ public final boolean isInitialized() {
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
         getSerializedSize();
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
         }
         if (nodeId_ != 0) {
           output.writeInt32(2, nodeId_);
    @@ -197,8 +198,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
         }
         if (nodeId_ != 0) {
           size += com.google.protobuf.CodedOutputStream
    @@ -312,39 +313,41 @@ public static org.tensorflow.proto.GraphTransferConstNodeInfo parseFrom(
       }
       public static org.tensorflow.proto.GraphTransferConstNodeInfo parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphTransferConstNodeInfo parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.GraphTransferConstNodeInfo parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.GraphTransferConstNodeInfo parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.GraphTransferConstNodeInfo parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphTransferConstNodeInfo parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -364,7 +367,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -372,7 +375,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.GraphTransferConstNodeInfo}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.GraphTransferConstNodeInfo)
           org.tensorflow.proto.GraphTransferConstNodeInfoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -381,7 +384,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferConstNodeInfo_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -394,23 +397,19 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           name_ = "";
    -
           nodeId_ = 0;
    -
           shape_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000001);
           data_ = com.google.protobuf.ByteString.EMPTY;
    -
           dtype_ = 0;
    -
           return this;
         }
     
    @@ -437,52 +436,31 @@ public org.tensorflow.proto.GraphTransferConstNodeInfo build() {
         @java.lang.Override
         public org.tensorflow.proto.GraphTransferConstNodeInfo buildPartial() {
           org.tensorflow.proto.GraphTransferConstNodeInfo result = new org.tensorflow.proto.GraphTransferConstNodeInfo(this);
    -      int from_bitField0_ = bitField0_;
    -      result.name_ = name_;
    -      result.nodeId_ = nodeId_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        shape_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.shape_ = shape_;
    -      result.data_ = data_;
    -      result.dtype_ = dtype_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.GraphTransferConstNodeInfo result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.name_ = name_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.nodeId_ = nodeId_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        shape_.makeImmutable();
    +        result.shape_ = shape_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.data_ = data_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.dtype_ = dtype_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.GraphTransferConstNodeInfo) {
    @@ -497,6 +475,7 @@ public Builder mergeFrom(org.tensorflow.proto.GraphTransferConstNodeInfo other)
           if (other == org.tensorflow.proto.GraphTransferConstNodeInfo.getDefaultInstance()) return this;
           if (!other.getName().isEmpty()) {
             name_ = other.name_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (other.getNodeId() != 0) {
    @@ -505,7 +484,8 @@ public Builder mergeFrom(org.tensorflow.proto.GraphTransferConstNodeInfo other)
           if (!other.shape_.isEmpty()) {
             if (shape_.isEmpty()) {
               shape_ = other.shape_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          shape_.makeImmutable();
    +          bitField0_ |= 0x00000004;
             } else {
               ensureShapeIsMutable();
               shape_.addAll(other.shape_);
    @@ -546,12 +526,12 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   name_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 16: {
                   nodeId_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 case 24: {
    @@ -572,12 +552,12 @@ public Builder mergeFrom(
                 } // case 26
                 case 34: {
                   data_ = input.readBytes();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 34
                 case 40: {
                   dtype_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 40
                 default: {
    @@ -638,11 +618,9 @@ public java.lang.String getName() {
          */
         public Builder setName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -651,8 +629,8 @@ public Builder setName(
          * @return This builder for chaining.
          */
         public Builder clearName() {
    -      
           name_ = getDefaultInstance().getName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -663,12 +641,10 @@ public Builder clearName() {
          */
         public Builder setNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -688,8 +664,9 @@ public int getNodeId() {
          * @return This builder for chaining.
          */
         public Builder setNodeId(int value) {
    -      
    +
           nodeId_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -698,7 +675,7 @@ public Builder setNodeId(int value) {
          * @return This builder for chaining.
          */
         public Builder clearNodeId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           nodeId_ = 0;
           onChanged();
           return this;
    @@ -706,10 +683,10 @@ public Builder clearNodeId() {
     
         private com.google.protobuf.Internal.LongList shape_ = emptyLongList();
         private void ensureShapeIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    -        shape_ = mutableCopy(shape_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      if (!shape_.isModifiable()) {
    +        shape_ = makeMutableCopy(shape_);
    +      }
    +      bitField0_ |= 0x00000004;
         }
         /**
          * repeated int64 shape = 3;
    @@ -717,8 +694,8 @@ private void ensureShapeIsMutable() {
          */
         public java.util.List
             getShapeList() {
    -      return ((bitField0_ & 0x00000001) != 0) ?
    -               java.util.Collections.unmodifiableList(shape_) : shape_;
    +      shape_.makeImmutable();
    +      return shape_;
         }
         /**
          * repeated int64 shape = 3;
    @@ -743,8 +720,10 @@ public long getShape(int index) {
          */
         public Builder setShape(
             int index, long value) {
    +
           ensureShapeIsMutable();
           shape_.setLong(index, value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -754,8 +733,10 @@ public Builder setShape(
          * @return This builder for chaining.
          */
         public Builder addShape(long value) {
    +
           ensureShapeIsMutable();
           shape_.addLong(value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -769,6 +750,7 @@ public Builder addAllShape(
           ensureShapeIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, shape_);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -778,7 +760,7 @@ public Builder addAllShape(
          */
         public Builder clearShape() {
           shape_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -798,11 +780,9 @@ public com.google.protobuf.ByteString getData() {
          * @return This builder for chaining.
          */
         public Builder setData(com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           data_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -811,7 +791,7 @@ public Builder setData(com.google.protobuf.ByteString value) {
          * @return This builder for chaining.
          */
         public Builder clearData() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           data_ = getDefaultInstance().getData();
           onChanged();
           return this;
    @@ -831,8 +811,8 @@ public Builder clearData() {
          * @return This builder for chaining.
          */
         public Builder setDtypeValue(int value) {
    -      
           dtype_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -842,8 +822,7 @@ public Builder setDtypeValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.DataType getDtype() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
           return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
         }
         /**
    @@ -855,7 +834,7 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000010;
           dtype_ = value.getNumber();
           onChanged();
           return this;
    @@ -865,23 +844,11 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
          * @return This builder for chaining.
          */
         public Builder clearDtype() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000010);
           dtype_ = 0;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.GraphTransferConstNodeInfo)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferConstNodeInfoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferConstNodeInfoOrBuilder.java
    index b77bf57be9c..642428d772f 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferConstNodeInfoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferConstNodeInfoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_transfer_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferGraphInputNodeInfo.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferGraphInputNodeInfo.java
    index 12f7c5ae7f6..2c57c86a711 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferGraphInputNodeInfo.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferGraphInputNodeInfo.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_transfer_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,12 +9,21 @@
      * Protobuf type {@code tensorflow.GraphTransferGraphInputNodeInfo}
      */
     public final class GraphTransferGraphInputNodeInfo extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.GraphTransferGraphInputNodeInfo)
         GraphTransferGraphInputNodeInfoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      GraphTransferGraphInputNodeInfo.class.getName());
    +  }
       // Use GraphTransferGraphInputNodeInfo.newBuilder() to construct.
    -  private GraphTransferGraphInputNodeInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private GraphTransferGraphInputNodeInfo(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private GraphTransferGraphInputNodeInfo() {
    @@ -21,25 +32,13 @@ private GraphTransferGraphInputNodeInfo() {
         dtype_ = 0;
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new GraphTransferGraphInputNodeInfo();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferGraphInputNodeInfo_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferGraphInputNodeInfo_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -47,7 +46,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object name_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object name_ = "";
       /**
        * string name = 1;
        * @return The name.
    @@ -85,7 +85,9 @@ public java.lang.String getName() {
       }
     
       public static final int SHAPE_FIELD_NUMBER = 2;
    -  private com.google.protobuf.Internal.LongList shape_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.LongList shape_ =
    +      emptyLongList();
       /**
        * repeated int64 shape = 2;
        * @return A list containing the shape.
    @@ -113,7 +115,7 @@ public long getShape(int index) {
       private int shapeMemoizedSerializedSize = -1;
     
       public static final int DTYPE_FIELD_NUMBER = 3;
    -  private int dtype_;
    +  private int dtype_ = 0;
       /**
        * .tensorflow.DataType dtype = 3;
        * @return The enum numeric value on the wire for dtype.
    @@ -126,8 +128,7 @@ public long getShape(int index) {
        * @return The dtype.
        */
       @java.lang.Override public org.tensorflow.proto.DataType getDtype() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
         return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
       }
     
    @@ -146,8 +147,8 @@ public final boolean isInitialized() {
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
         getSerializedSize();
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
         }
         if (getShapeList().size() > 0) {
           output.writeUInt32NoTag(18);
    @@ -168,8 +169,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
         }
         {
           int dataSize = 0;
    @@ -267,39 +268,41 @@ public static org.tensorflow.proto.GraphTransferGraphInputNodeInfo parseFrom(
       }
       public static org.tensorflow.proto.GraphTransferGraphInputNodeInfo parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphTransferGraphInputNodeInfo parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.GraphTransferGraphInputNodeInfo parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.GraphTransferGraphInputNodeInfo parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.GraphTransferGraphInputNodeInfo parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphTransferGraphInputNodeInfo parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -319,7 +322,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -327,7 +330,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.GraphTransferGraphInputNodeInfo}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.GraphTransferGraphInputNodeInfo)
           org.tensorflow.proto.GraphTransferGraphInputNodeInfoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -336,7 +339,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferGraphInputNodeInfo_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -349,19 +352,17 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           name_ = "";
    -
           shape_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000001);
           dtype_ = 0;
    -
           return this;
         }
     
    @@ -388,50 +389,25 @@ public org.tensorflow.proto.GraphTransferGraphInputNodeInfo build() {
         @java.lang.Override
         public org.tensorflow.proto.GraphTransferGraphInputNodeInfo buildPartial() {
           org.tensorflow.proto.GraphTransferGraphInputNodeInfo result = new org.tensorflow.proto.GraphTransferGraphInputNodeInfo(this);
    -      int from_bitField0_ = bitField0_;
    -      result.name_ = name_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        shape_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.shape_ = shape_;
    -      result.dtype_ = dtype_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.GraphTransferGraphInputNodeInfo result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.name_ = name_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        shape_.makeImmutable();
    +        result.shape_ = shape_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.dtype_ = dtype_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.GraphTransferGraphInputNodeInfo) {
    @@ -446,12 +422,14 @@ public Builder mergeFrom(org.tensorflow.proto.GraphTransferGraphInputNodeInfo ot
           if (other == org.tensorflow.proto.GraphTransferGraphInputNodeInfo.getDefaultInstance()) return this;
           if (!other.getName().isEmpty()) {
             name_ = other.name_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.shape_.isEmpty()) {
             if (shape_.isEmpty()) {
               shape_ = other.shape_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          shape_.makeImmutable();
    +          bitField0_ |= 0x00000002;
             } else {
               ensureShapeIsMutable();
               shape_.addAll(other.shape_);
    @@ -489,7 +467,7 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   name_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 16: {
    @@ -510,7 +488,7 @@ public Builder mergeFrom(
                 } // case 18
                 case 24: {
                   dtype_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 24
                 default: {
    @@ -571,11 +549,9 @@ public java.lang.String getName() {
          */
         public Builder setName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -584,8 +560,8 @@ public Builder setName(
          * @return This builder for chaining.
          */
         public Builder clearName() {
    -      
           name_ = getDefaultInstance().getName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -596,22 +572,20 @@ public Builder clearName() {
          */
         public Builder setNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
     
         private com.google.protobuf.Internal.LongList shape_ = emptyLongList();
         private void ensureShapeIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    -        shape_ = mutableCopy(shape_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      if (!shape_.isModifiable()) {
    +        shape_ = makeMutableCopy(shape_);
    +      }
    +      bitField0_ |= 0x00000002;
         }
         /**
          * repeated int64 shape = 2;
    @@ -619,8 +593,8 @@ private void ensureShapeIsMutable() {
          */
         public java.util.List
             getShapeList() {
    -      return ((bitField0_ & 0x00000001) != 0) ?
    -               java.util.Collections.unmodifiableList(shape_) : shape_;
    +      shape_.makeImmutable();
    +      return shape_;
         }
         /**
          * repeated int64 shape = 2;
    @@ -645,8 +619,10 @@ public long getShape(int index) {
          */
         public Builder setShape(
             int index, long value) {
    +
           ensureShapeIsMutable();
           shape_.setLong(index, value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -656,8 +632,10 @@ public Builder setShape(
          * @return This builder for chaining.
          */
         public Builder addShape(long value) {
    +
           ensureShapeIsMutable();
           shape_.addLong(value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -671,6 +649,7 @@ public Builder addAllShape(
           ensureShapeIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, shape_);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -680,7 +659,7 @@ public Builder addAllShape(
          */
         public Builder clearShape() {
           shape_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -699,8 +678,8 @@ public Builder clearShape() {
          * @return This builder for chaining.
          */
         public Builder setDtypeValue(int value) {
    -      
           dtype_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -710,8 +689,7 @@ public Builder setDtypeValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.DataType getDtype() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
           return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
         }
         /**
    @@ -723,7 +701,7 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000004;
           dtype_ = value.getNumber();
           onChanged();
           return this;
    @@ -733,23 +711,11 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
          * @return This builder for chaining.
          */
         public Builder clearDtype() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           dtype_ = 0;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.GraphTransferGraphInputNodeInfo)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferGraphInputNodeInfoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferGraphInputNodeInfoOrBuilder.java
    index cf9985eff27..3b063adca63 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferGraphInputNodeInfoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferGraphInputNodeInfoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_transfer_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferGraphOutputNodeInfo.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferGraphOutputNodeInfo.java
    index 530c70ff61f..2968ce25539 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferGraphOutputNodeInfo.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferGraphOutputNodeInfo.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_transfer_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,12 +9,21 @@
      * Protobuf type {@code tensorflow.GraphTransferGraphOutputNodeInfo}
      */
     public final class GraphTransferGraphOutputNodeInfo extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.GraphTransferGraphOutputNodeInfo)
         GraphTransferGraphOutputNodeInfoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      GraphTransferGraphOutputNodeInfo.class.getName());
    +  }
       // Use GraphTransferGraphOutputNodeInfo.newBuilder() to construct.
    -  private GraphTransferGraphOutputNodeInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private GraphTransferGraphOutputNodeInfo(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private GraphTransferGraphOutputNodeInfo() {
    @@ -21,25 +32,13 @@ private GraphTransferGraphOutputNodeInfo() {
         dtype_ = 0;
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new GraphTransferGraphOutputNodeInfo();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferGraphOutputNodeInfo_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferGraphOutputNodeInfo_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -47,7 +46,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object name_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object name_ = "";
       /**
        * string name = 1;
        * @return The name.
    @@ -85,7 +85,9 @@ public java.lang.String getName() {
       }
     
       public static final int SHAPE_FIELD_NUMBER = 2;
    -  private com.google.protobuf.Internal.LongList shape_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.LongList shape_ =
    +      emptyLongList();
       /**
        * repeated int64 shape = 2;
        * @return A list containing the shape.
    @@ -113,7 +115,7 @@ public long getShape(int index) {
       private int shapeMemoizedSerializedSize = -1;
     
       public static final int DTYPE_FIELD_NUMBER = 3;
    -  private int dtype_;
    +  private int dtype_ = 0;
       /**
        * .tensorflow.DataType dtype = 3;
        * @return The enum numeric value on the wire for dtype.
    @@ -126,8 +128,7 @@ public long getShape(int index) {
        * @return The dtype.
        */
       @java.lang.Override public org.tensorflow.proto.DataType getDtype() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
         return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
       }
     
    @@ -146,8 +147,8 @@ public final boolean isInitialized() {
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
         getSerializedSize();
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
         }
         if (getShapeList().size() > 0) {
           output.writeUInt32NoTag(18);
    @@ -168,8 +169,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
         }
         {
           int dataSize = 0;
    @@ -267,39 +268,41 @@ public static org.tensorflow.proto.GraphTransferGraphOutputNodeInfo parseFrom(
       }
       public static org.tensorflow.proto.GraphTransferGraphOutputNodeInfo parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphTransferGraphOutputNodeInfo parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.GraphTransferGraphOutputNodeInfo parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.GraphTransferGraphOutputNodeInfo parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.GraphTransferGraphOutputNodeInfo parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphTransferGraphOutputNodeInfo parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -319,7 +322,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -327,7 +330,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.GraphTransferGraphOutputNodeInfo}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.GraphTransferGraphOutputNodeInfo)
           org.tensorflow.proto.GraphTransferGraphOutputNodeInfoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -336,7 +339,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferGraphOutputNodeInfo_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -349,19 +352,17 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           name_ = "";
    -
           shape_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000001);
           dtype_ = 0;
    -
           return this;
         }
     
    @@ -388,50 +389,25 @@ public org.tensorflow.proto.GraphTransferGraphOutputNodeInfo build() {
         @java.lang.Override
         public org.tensorflow.proto.GraphTransferGraphOutputNodeInfo buildPartial() {
           org.tensorflow.proto.GraphTransferGraphOutputNodeInfo result = new org.tensorflow.proto.GraphTransferGraphOutputNodeInfo(this);
    -      int from_bitField0_ = bitField0_;
    -      result.name_ = name_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        shape_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.shape_ = shape_;
    -      result.dtype_ = dtype_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.GraphTransferGraphOutputNodeInfo result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.name_ = name_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        shape_.makeImmutable();
    +        result.shape_ = shape_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.dtype_ = dtype_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.GraphTransferGraphOutputNodeInfo) {
    @@ -446,12 +422,14 @@ public Builder mergeFrom(org.tensorflow.proto.GraphTransferGraphOutputNodeInfo o
           if (other == org.tensorflow.proto.GraphTransferGraphOutputNodeInfo.getDefaultInstance()) return this;
           if (!other.getName().isEmpty()) {
             name_ = other.name_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.shape_.isEmpty()) {
             if (shape_.isEmpty()) {
               shape_ = other.shape_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          shape_.makeImmutable();
    +          bitField0_ |= 0x00000002;
             } else {
               ensureShapeIsMutable();
               shape_.addAll(other.shape_);
    @@ -489,7 +467,7 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   name_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 16: {
    @@ -510,7 +488,7 @@ public Builder mergeFrom(
                 } // case 18
                 case 24: {
                   dtype_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 24
                 default: {
    @@ -571,11 +549,9 @@ public java.lang.String getName() {
          */
         public Builder setName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -584,8 +560,8 @@ public Builder setName(
          * @return This builder for chaining.
          */
         public Builder clearName() {
    -      
           name_ = getDefaultInstance().getName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -596,22 +572,20 @@ public Builder clearName() {
          */
         public Builder setNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
     
         private com.google.protobuf.Internal.LongList shape_ = emptyLongList();
         private void ensureShapeIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    -        shape_ = mutableCopy(shape_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      if (!shape_.isModifiable()) {
    +        shape_ = makeMutableCopy(shape_);
    +      }
    +      bitField0_ |= 0x00000002;
         }
         /**
          * repeated int64 shape = 2;
    @@ -619,8 +593,8 @@ private void ensureShapeIsMutable() {
          */
         public java.util.List
             getShapeList() {
    -      return ((bitField0_ & 0x00000001) != 0) ?
    -               java.util.Collections.unmodifiableList(shape_) : shape_;
    +      shape_.makeImmutable();
    +      return shape_;
         }
         /**
          * repeated int64 shape = 2;
    @@ -645,8 +619,10 @@ public long getShape(int index) {
          */
         public Builder setShape(
             int index, long value) {
    +
           ensureShapeIsMutable();
           shape_.setLong(index, value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -656,8 +632,10 @@ public Builder setShape(
          * @return This builder for chaining.
          */
         public Builder addShape(long value) {
    +
           ensureShapeIsMutable();
           shape_.addLong(value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -671,6 +649,7 @@ public Builder addAllShape(
           ensureShapeIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, shape_);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -680,7 +659,7 @@ public Builder addAllShape(
          */
         public Builder clearShape() {
           shape_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -699,8 +678,8 @@ public Builder clearShape() {
          * @return This builder for chaining.
          */
         public Builder setDtypeValue(int value) {
    -      
           dtype_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -710,8 +689,7 @@ public Builder setDtypeValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.DataType getDtype() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
           return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
         }
         /**
    @@ -723,7 +701,7 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000004;
           dtype_ = value.getNumber();
           onChanged();
           return this;
    @@ -733,23 +711,11 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
          * @return This builder for chaining.
          */
         public Builder clearDtype() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           dtype_ = 0;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.GraphTransferGraphOutputNodeInfo)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferGraphOutputNodeInfoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferGraphOutputNodeInfoOrBuilder.java
    index 5ab55651662..f645fdf04f7 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferGraphOutputNodeInfoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferGraphOutputNodeInfoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_transfer_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferInfo.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferInfo.java
    index f7f38d543f8..b5bf73cd37c 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferInfo.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferInfo.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_transfer_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -13,12 +15,21 @@
      * Protobuf type {@code tensorflow.GraphTransferInfo}
      */
     public final class GraphTransferInfo extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.GraphTransferInfo)
         GraphTransferInfoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      GraphTransferInfo.class.getName());
    +  }
       // Use GraphTransferInfo.newBuilder() to construct.
    -  private GraphTransferInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private GraphTransferInfo(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private GraphTransferInfo() {
    @@ -31,25 +42,13 @@ private GraphTransferInfo() {
         destination_ = 0;
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new GraphTransferInfo();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferInfo_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferInfo_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -72,6 +71,15 @@ public enum Destination
         UNRECOGNIZED(-1),
         ;
     
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        Destination.class.getName());
    +    }
         /**
          * NOP = 0;
          */
    @@ -165,6 +173,7 @@ private Destination(int value) {
       }
     
       public static final int NODE_INFO_FIELD_NUMBER = 1;
    +  @SuppressWarnings("serial")
       private java.util.List nodeInfo_;
       /**
        * repeated .tensorflow.GraphTransferNodeInfo node_info = 1;
    @@ -205,6 +214,7 @@ public org.tensorflow.proto.GraphTransferNodeInfoOrBuilder getNodeInfoOrBuilder(
       }
     
       public static final int CONST_NODE_INFO_FIELD_NUMBER = 2;
    +  @SuppressWarnings("serial")
       private java.util.List constNodeInfo_;
       /**
        * repeated .tensorflow.GraphTransferConstNodeInfo const_node_info = 2;
    @@ -245,6 +255,7 @@ public org.tensorflow.proto.GraphTransferConstNodeInfoOrBuilder getConstNodeInfo
       }
     
       public static final int NODE_INPUT_INFO_FIELD_NUMBER = 3;
    +  @SuppressWarnings("serial")
       private java.util.List nodeInputInfo_;
       /**
        * repeated .tensorflow.GraphTransferNodeInputInfo node_input_info = 3;
    @@ -285,6 +296,7 @@ public org.tensorflow.proto.GraphTransferNodeInputInfoOrBuilder getNodeInputInfo
       }
     
       public static final int NODE_OUTPUT_INFO_FIELD_NUMBER = 4;
    +  @SuppressWarnings("serial")
       private java.util.List nodeOutputInfo_;
       /**
        * repeated .tensorflow.GraphTransferNodeOutputInfo node_output_info = 4;
    @@ -325,6 +337,7 @@ public org.tensorflow.proto.GraphTransferNodeOutputInfoOrBuilder getNodeOutputIn
       }
     
       public static final int GRAPH_INPUT_NODE_INFO_FIELD_NUMBER = 5;
    +  @SuppressWarnings("serial")
       private java.util.List graphInputNodeInfo_;
       /**
        * 
    @@ -385,6 +398,7 @@ public org.tensorflow.proto.GraphTransferGraphInputNodeInfoOrBuilder getGraphInp
       }
     
       public static final int GRAPH_OUTPUT_NODE_INFO_FIELD_NUMBER = 6;
    +  @SuppressWarnings("serial")
       private java.util.List graphOutputNodeInfo_;
       /**
        * repeated .tensorflow.GraphTransferGraphOutputNodeInfo graph_output_node_info = 6;
    @@ -425,7 +439,7 @@ public org.tensorflow.proto.GraphTransferGraphOutputNodeInfoOrBuilder getGraphOu
       }
     
       public static final int DESTINATION_FIELD_NUMBER = 7;
    -  private int destination_;
    +  private int destination_ = 0;
       /**
        * 
        * Destination of graph transfer
    @@ -446,8 +460,7 @@ public org.tensorflow.proto.GraphTransferGraphOutputNodeInfoOrBuilder getGraphOu
        * @return The destination.
        */
       @java.lang.Override public org.tensorflow.proto.GraphTransferInfo.Destination getDestination() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.GraphTransferInfo.Destination result = org.tensorflow.proto.GraphTransferInfo.Destination.valueOf(destination_);
    +    org.tensorflow.proto.GraphTransferInfo.Destination result = org.tensorflow.proto.GraphTransferInfo.Destination.forNumber(destination_);
         return result == null ? org.tensorflow.proto.GraphTransferInfo.Destination.UNRECOGNIZED : result;
       }
     
    @@ -627,39 +640,41 @@ public static org.tensorflow.proto.GraphTransferInfo parseFrom(
       }
       public static org.tensorflow.proto.GraphTransferInfo parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphTransferInfo parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.GraphTransferInfo parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.GraphTransferInfo parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.GraphTransferInfo parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphTransferInfo parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -679,7 +694,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -693,7 +708,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.GraphTransferInfo}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.GraphTransferInfo)
           org.tensorflow.proto.GraphTransferInfoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -702,7 +717,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferInfo_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -715,13 +730,14 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           if (nodeInfoBuilder_ == null) {
             nodeInfo_ = java.util.Collections.emptyList();
           } else {
    @@ -765,7 +781,6 @@ public Builder clear() {
           }
           bitField0_ = (bitField0_ & ~0x00000020);
           destination_ = 0;
    -
           return this;
         }
     
    @@ -792,7 +807,13 @@ public org.tensorflow.proto.GraphTransferInfo build() {
         @java.lang.Override
         public org.tensorflow.proto.GraphTransferInfo buildPartial() {
           org.tensorflow.proto.GraphTransferInfo result = new org.tensorflow.proto.GraphTransferInfo(this);
    -      int from_bitField0_ = bitField0_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.GraphTransferInfo result) {
           if (nodeInfoBuilder_ == null) {
             if (((bitField0_ & 0x00000001) != 0)) {
               nodeInfo_ = java.util.Collections.unmodifiableList(nodeInfo_);
    @@ -847,43 +868,15 @@ public org.tensorflow.proto.GraphTransferInfo buildPartial() {
           } else {
             result.graphOutputNodeInfo_ = graphOutputNodeInfoBuilder_.build();
           }
    -      result.destination_ = destination_;
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.GraphTransferInfo result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000040) != 0)) {
    +        result.destination_ = destination_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.GraphTransferInfo) {
    @@ -915,7 +908,7 @@ public Builder mergeFrom(org.tensorflow.proto.GraphTransferInfo other) {
                 nodeInfo_ = other.nodeInfo_;
                 bitField0_ = (bitField0_ & ~0x00000001);
                 nodeInfoBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getNodeInfoFieldBuilder() : null;
               } else {
                 nodeInfoBuilder_.addAllMessages(other.nodeInfo_);
    @@ -941,7 +934,7 @@ public Builder mergeFrom(org.tensorflow.proto.GraphTransferInfo other) {
                 constNodeInfo_ = other.constNodeInfo_;
                 bitField0_ = (bitField0_ & ~0x00000002);
                 constNodeInfoBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getConstNodeInfoFieldBuilder() : null;
               } else {
                 constNodeInfoBuilder_.addAllMessages(other.constNodeInfo_);
    @@ -967,7 +960,7 @@ public Builder mergeFrom(org.tensorflow.proto.GraphTransferInfo other) {
                 nodeInputInfo_ = other.nodeInputInfo_;
                 bitField0_ = (bitField0_ & ~0x00000004);
                 nodeInputInfoBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getNodeInputInfoFieldBuilder() : null;
               } else {
                 nodeInputInfoBuilder_.addAllMessages(other.nodeInputInfo_);
    @@ -993,7 +986,7 @@ public Builder mergeFrom(org.tensorflow.proto.GraphTransferInfo other) {
                 nodeOutputInfo_ = other.nodeOutputInfo_;
                 bitField0_ = (bitField0_ & ~0x00000008);
                 nodeOutputInfoBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getNodeOutputInfoFieldBuilder() : null;
               } else {
                 nodeOutputInfoBuilder_.addAllMessages(other.nodeOutputInfo_);
    @@ -1019,7 +1012,7 @@ public Builder mergeFrom(org.tensorflow.proto.GraphTransferInfo other) {
                 graphInputNodeInfo_ = other.graphInputNodeInfo_;
                 bitField0_ = (bitField0_ & ~0x00000010);
                 graphInputNodeInfoBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getGraphInputNodeInfoFieldBuilder() : null;
               } else {
                 graphInputNodeInfoBuilder_.addAllMessages(other.graphInputNodeInfo_);
    @@ -1045,7 +1038,7 @@ public Builder mergeFrom(org.tensorflow.proto.GraphTransferInfo other) {
                 graphOutputNodeInfo_ = other.graphOutputNodeInfo_;
                 bitField0_ = (bitField0_ & ~0x00000020);
                 graphOutputNodeInfoBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getGraphOutputNodeInfoFieldBuilder() : null;
               } else {
                 graphOutputNodeInfoBuilder_.addAllMessages(other.graphOutputNodeInfo_);
    @@ -1161,7 +1154,7 @@ public Builder mergeFrom(
                 } // case 50
                 case 56: {
                   destination_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000040;
                   break;
                 } // case 56
                 default: {
    @@ -1190,7 +1183,7 @@ private void ensureNodeInfoIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.GraphTransferNodeInfo, org.tensorflow.proto.GraphTransferNodeInfo.Builder, org.tensorflow.proto.GraphTransferNodeInfoOrBuilder> nodeInfoBuilder_;
     
         /**
    @@ -1406,11 +1399,11 @@ public org.tensorflow.proto.GraphTransferNodeInfo.Builder addNodeInfoBuilder(
              getNodeInfoBuilderList() {
           return getNodeInfoFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.GraphTransferNodeInfo, org.tensorflow.proto.GraphTransferNodeInfo.Builder, org.tensorflow.proto.GraphTransferNodeInfoOrBuilder> 
             getNodeInfoFieldBuilder() {
           if (nodeInfoBuilder_ == null) {
    -        nodeInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        nodeInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.GraphTransferNodeInfo, org.tensorflow.proto.GraphTransferNodeInfo.Builder, org.tensorflow.proto.GraphTransferNodeInfoOrBuilder>(
                     nodeInfo_,
                     ((bitField0_ & 0x00000001) != 0),
    @@ -1430,7 +1423,7 @@ private void ensureConstNodeInfoIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.GraphTransferConstNodeInfo, org.tensorflow.proto.GraphTransferConstNodeInfo.Builder, org.tensorflow.proto.GraphTransferConstNodeInfoOrBuilder> constNodeInfoBuilder_;
     
         /**
    @@ -1646,11 +1639,11 @@ public org.tensorflow.proto.GraphTransferConstNodeInfo.Builder addConstNodeInfoB
              getConstNodeInfoBuilderList() {
           return getConstNodeInfoFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.GraphTransferConstNodeInfo, org.tensorflow.proto.GraphTransferConstNodeInfo.Builder, org.tensorflow.proto.GraphTransferConstNodeInfoOrBuilder> 
             getConstNodeInfoFieldBuilder() {
           if (constNodeInfoBuilder_ == null) {
    -        constNodeInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        constNodeInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.GraphTransferConstNodeInfo, org.tensorflow.proto.GraphTransferConstNodeInfo.Builder, org.tensorflow.proto.GraphTransferConstNodeInfoOrBuilder>(
                     constNodeInfo_,
                     ((bitField0_ & 0x00000002) != 0),
    @@ -1670,7 +1663,7 @@ private void ensureNodeInputInfoIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.GraphTransferNodeInputInfo, org.tensorflow.proto.GraphTransferNodeInputInfo.Builder, org.tensorflow.proto.GraphTransferNodeInputInfoOrBuilder> nodeInputInfoBuilder_;
     
         /**
    @@ -1886,11 +1879,11 @@ public org.tensorflow.proto.GraphTransferNodeInputInfo.Builder addNodeInputInfoB
              getNodeInputInfoBuilderList() {
           return getNodeInputInfoFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.GraphTransferNodeInputInfo, org.tensorflow.proto.GraphTransferNodeInputInfo.Builder, org.tensorflow.proto.GraphTransferNodeInputInfoOrBuilder> 
             getNodeInputInfoFieldBuilder() {
           if (nodeInputInfoBuilder_ == null) {
    -        nodeInputInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        nodeInputInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.GraphTransferNodeInputInfo, org.tensorflow.proto.GraphTransferNodeInputInfo.Builder, org.tensorflow.proto.GraphTransferNodeInputInfoOrBuilder>(
                     nodeInputInfo_,
                     ((bitField0_ & 0x00000004) != 0),
    @@ -1910,7 +1903,7 @@ private void ensureNodeOutputInfoIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.GraphTransferNodeOutputInfo, org.tensorflow.proto.GraphTransferNodeOutputInfo.Builder, org.tensorflow.proto.GraphTransferNodeOutputInfoOrBuilder> nodeOutputInfoBuilder_;
     
         /**
    @@ -2126,11 +2119,11 @@ public org.tensorflow.proto.GraphTransferNodeOutputInfo.Builder addNodeOutputInf
              getNodeOutputInfoBuilderList() {
           return getNodeOutputInfoFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.GraphTransferNodeOutputInfo, org.tensorflow.proto.GraphTransferNodeOutputInfo.Builder, org.tensorflow.proto.GraphTransferNodeOutputInfoOrBuilder> 
             getNodeOutputInfoFieldBuilder() {
           if (nodeOutputInfoBuilder_ == null) {
    -        nodeOutputInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        nodeOutputInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.GraphTransferNodeOutputInfo, org.tensorflow.proto.GraphTransferNodeOutputInfo.Builder, org.tensorflow.proto.GraphTransferNodeOutputInfoOrBuilder>(
                     nodeOutputInfo_,
                     ((bitField0_ & 0x00000008) != 0),
    @@ -2150,7 +2143,7 @@ private void ensureGraphInputNodeInfoIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.GraphTransferGraphInputNodeInfo, org.tensorflow.proto.GraphTransferGraphInputNodeInfo.Builder, org.tensorflow.proto.GraphTransferGraphInputNodeInfoOrBuilder> graphInputNodeInfoBuilder_;
     
         /**
    @@ -2438,11 +2431,11 @@ public org.tensorflow.proto.GraphTransferGraphInputNodeInfo.Builder addGraphInpu
              getGraphInputNodeInfoBuilderList() {
           return getGraphInputNodeInfoFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.GraphTransferGraphInputNodeInfo, org.tensorflow.proto.GraphTransferGraphInputNodeInfo.Builder, org.tensorflow.proto.GraphTransferGraphInputNodeInfoOrBuilder> 
             getGraphInputNodeInfoFieldBuilder() {
           if (graphInputNodeInfoBuilder_ == null) {
    -        graphInputNodeInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        graphInputNodeInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.GraphTransferGraphInputNodeInfo, org.tensorflow.proto.GraphTransferGraphInputNodeInfo.Builder, org.tensorflow.proto.GraphTransferGraphInputNodeInfoOrBuilder>(
                     graphInputNodeInfo_,
                     ((bitField0_ & 0x00000010) != 0),
    @@ -2462,7 +2455,7 @@ private void ensureGraphOutputNodeInfoIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.GraphTransferGraphOutputNodeInfo, org.tensorflow.proto.GraphTransferGraphOutputNodeInfo.Builder, org.tensorflow.proto.GraphTransferGraphOutputNodeInfoOrBuilder> graphOutputNodeInfoBuilder_;
     
         /**
    @@ -2678,11 +2671,11 @@ public org.tensorflow.proto.GraphTransferGraphOutputNodeInfo.Builder addGraphOut
              getGraphOutputNodeInfoBuilderList() {
           return getGraphOutputNodeInfoFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.GraphTransferGraphOutputNodeInfo, org.tensorflow.proto.GraphTransferGraphOutputNodeInfo.Builder, org.tensorflow.proto.GraphTransferGraphOutputNodeInfoOrBuilder> 
             getGraphOutputNodeInfoFieldBuilder() {
           if (graphOutputNodeInfoBuilder_ == null) {
    -        graphOutputNodeInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        graphOutputNodeInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.GraphTransferGraphOutputNodeInfo, org.tensorflow.proto.GraphTransferGraphOutputNodeInfo.Builder, org.tensorflow.proto.GraphTransferGraphOutputNodeInfoOrBuilder>(
                     graphOutputNodeInfo_,
                     ((bitField0_ & 0x00000020) != 0),
    @@ -2715,8 +2708,8 @@ public org.tensorflow.proto.GraphTransferGraphOutputNodeInfo.Builder addGraphOut
          * @return This builder for chaining.
          */
         public Builder setDestinationValue(int value) {
    -      
           destination_ = value;
    +      bitField0_ |= 0x00000040;
           onChanged();
           return this;
         }
    @@ -2730,8 +2723,7 @@ public Builder setDestinationValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.GraphTransferInfo.Destination getDestination() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.GraphTransferInfo.Destination result = org.tensorflow.proto.GraphTransferInfo.Destination.valueOf(destination_);
    +      org.tensorflow.proto.GraphTransferInfo.Destination result = org.tensorflow.proto.GraphTransferInfo.Destination.forNumber(destination_);
           return result == null ? org.tensorflow.proto.GraphTransferInfo.Destination.UNRECOGNIZED : result;
         }
         /**
    @@ -2747,7 +2739,7 @@ public Builder setDestination(org.tensorflow.proto.GraphTransferInfo.Destination
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000040;
           destination_ = value.getNumber();
           onChanged();
           return this;
    @@ -2761,23 +2753,11 @@ public Builder setDestination(org.tensorflow.proto.GraphTransferInfo.Destination
          * @return This builder for chaining.
          */
         public Builder clearDestination() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000040);
           destination_ = 0;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.GraphTransferInfo)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferInfoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferInfoOrBuilder.java
    index 82d8c157811..037aa6c37d2 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferInfoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferInfoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_transfer_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferInfoProto.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferInfoProto.java
    index ac0ad341e2a..2bc9df9dcf6 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferInfoProto.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferInfoProto.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_transfer_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class GraphTransferInfoProto {
       private GraphTransferInfoProto() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      GraphTransferInfoProto.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,42 +28,42 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_GraphTransferNodeInput_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_GraphTransferNodeInput_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_GraphTransferNodeInfo_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_GraphTransferNodeInfo_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_GraphTransferConstNodeInfo_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_GraphTransferConstNodeInfo_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_GraphTransferNodeInputInfo_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_GraphTransferNodeInputInfo_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_GraphTransferNodeOutputInfo_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_GraphTransferNodeOutputInfo_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_GraphTransferGraphInputNodeInfo_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_GraphTransferGraphInputNodeInfo_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_GraphTransferGraphOutputNodeInfo_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_GraphTransferGraphOutputNodeInfo_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_GraphTransferInfo_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_GraphTransferInfo_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -110,51 +121,52 @@ public static void registerAllExtensions(
         internal_static_tensorflow_GraphTransferNodeInput_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_GraphTransferNodeInput_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_GraphTransferNodeInput_descriptor,
             new java.lang.String[] { "NodeId", "OutputPort", });
         internal_static_tensorflow_GraphTransferNodeInfo_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_GraphTransferNodeInfo_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_GraphTransferNodeInfo_descriptor,
             new java.lang.String[] { "Name", "NodeId", "TypeName", "SocOpId", "PaddingId", "InputCount", "OutputCount", });
         internal_static_tensorflow_GraphTransferConstNodeInfo_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_GraphTransferConstNodeInfo_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_GraphTransferConstNodeInfo_descriptor,
             new java.lang.String[] { "Name", "NodeId", "Shape", "Data", "Dtype", });
         internal_static_tensorflow_GraphTransferNodeInputInfo_descriptor =
           getDescriptor().getMessageTypes().get(3);
         internal_static_tensorflow_GraphTransferNodeInputInfo_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_GraphTransferNodeInputInfo_descriptor,
             new java.lang.String[] { "NodeId", "NodeInput", });
         internal_static_tensorflow_GraphTransferNodeOutputInfo_descriptor =
           getDescriptor().getMessageTypes().get(4);
         internal_static_tensorflow_GraphTransferNodeOutputInfo_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_GraphTransferNodeOutputInfo_descriptor,
             new java.lang.String[] { "NodeId", "MaxByteSize", });
         internal_static_tensorflow_GraphTransferGraphInputNodeInfo_descriptor =
           getDescriptor().getMessageTypes().get(5);
         internal_static_tensorflow_GraphTransferGraphInputNodeInfo_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_GraphTransferGraphInputNodeInfo_descriptor,
             new java.lang.String[] { "Name", "Shape", "Dtype", });
         internal_static_tensorflow_GraphTransferGraphOutputNodeInfo_descriptor =
           getDescriptor().getMessageTypes().get(6);
         internal_static_tensorflow_GraphTransferGraphOutputNodeInfo_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_GraphTransferGraphOutputNodeInfo_descriptor,
             new java.lang.String[] { "Name", "Shape", "Dtype", });
         internal_static_tensorflow_GraphTransferInfo_descriptor =
           getDescriptor().getMessageTypes().get(7);
         internal_static_tensorflow_GraphTransferInfo_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_GraphTransferInfo_descriptor,
             new java.lang.String[] { "NodeInfo", "ConstNodeInfo", "NodeInputInfo", "NodeOutputInfo", "GraphInputNodeInfo", "GraphOutputNodeInfo", "Destination", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.TypesProtos.getDescriptor();
       }
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInfo.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInfo.java
    index 4b2dd25d352..9dba76360d4 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInfo.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInfo.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_transfer_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,12 +9,21 @@
      * Protobuf type {@code tensorflow.GraphTransferNodeInfo}
      */
     public final class GraphTransferNodeInfo extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.GraphTransferNodeInfo)
         GraphTransferNodeInfoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      GraphTransferNodeInfo.class.getName());
    +  }
       // Use GraphTransferNodeInfo.newBuilder() to construct.
    -  private GraphTransferNodeInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private GraphTransferNodeInfo(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private GraphTransferNodeInfo() {
    @@ -20,25 +31,13 @@ private GraphTransferNodeInfo() {
         typeName_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new GraphTransferNodeInfo();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferNodeInfo_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferNodeInfo_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -46,7 +45,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object name_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object name_ = "";
       /**
        * string name = 1;
        * @return The name.
    @@ -84,7 +84,7 @@ public java.lang.String getName() {
       }
     
       public static final int NODE_ID_FIELD_NUMBER = 2;
    -  private int nodeId_;
    +  private int nodeId_ = 0;
       /**
        * int32 node_id = 2;
        * @return The nodeId.
    @@ -95,7 +95,8 @@ public int getNodeId() {
       }
     
       public static final int TYPE_NAME_FIELD_NUMBER = 3;
    -  private volatile java.lang.Object typeName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object typeName_ = "";
       /**
        * string type_name = 3;
        * @return The typeName.
    @@ -133,7 +134,7 @@ public java.lang.String getTypeName() {
       }
     
       public static final int SOC_OP_ID_FIELD_NUMBER = 4;
    -  private int socOpId_;
    +  private int socOpId_ = 0;
       /**
        * int32 soc_op_id = 4;
        * @return The socOpId.
    @@ -144,7 +145,7 @@ public int getSocOpId() {
       }
     
       public static final int PADDING_ID_FIELD_NUMBER = 5;
    -  private int paddingId_;
    +  private int paddingId_ = 0;
       /**
        * int32 padding_id = 5;
        * @return The paddingId.
    @@ -155,7 +156,7 @@ public int getPaddingId() {
       }
     
       public static final int INPUT_COUNT_FIELD_NUMBER = 6;
    -  private int inputCount_;
    +  private int inputCount_ = 0;
       /**
        * int32 input_count = 6;
        * @return The inputCount.
    @@ -166,7 +167,7 @@ public int getInputCount() {
       }
     
       public static final int OUTPUT_COUNT_FIELD_NUMBER = 7;
    -  private int outputCount_;
    +  private int outputCount_ = 0;
       /**
        * int32 output_count = 7;
        * @return The outputCount.
    @@ -190,14 +191,14 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
         }
         if (nodeId_ != 0) {
           output.writeInt32(2, nodeId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(typeName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, typeName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(typeName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, typeName_);
         }
         if (socOpId_ != 0) {
           output.writeInt32(4, socOpId_);
    @@ -220,15 +221,15 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
         }
         if (nodeId_ != 0) {
           size += com.google.protobuf.CodedOutputStream
             .computeInt32Size(2, nodeId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(typeName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, typeName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(typeName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, typeName_);
         }
         if (socOpId_ != 0) {
           size += com.google.protobuf.CodedOutputStream
    @@ -339,39 +340,41 @@ public static org.tensorflow.proto.GraphTransferNodeInfo parseFrom(
       }
       public static org.tensorflow.proto.GraphTransferNodeInfo parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphTransferNodeInfo parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.GraphTransferNodeInfo parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.GraphTransferNodeInfo parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.GraphTransferNodeInfo parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphTransferNodeInfo parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -391,7 +394,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -399,7 +402,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.GraphTransferNodeInfo}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.GraphTransferNodeInfo)
           org.tensorflow.proto.GraphTransferNodeInfoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -408,7 +411,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferNodeInfo_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -421,27 +424,21 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           name_ = "";
    -
           nodeId_ = 0;
    -
           typeName_ = "";
    -
           socOpId_ = 0;
    -
           paddingId_ = 0;
    -
           inputCount_ = 0;
    -
           outputCount_ = 0;
    -
           return this;
         }
     
    @@ -468,49 +465,36 @@ public org.tensorflow.proto.GraphTransferNodeInfo build() {
         @java.lang.Override
         public org.tensorflow.proto.GraphTransferNodeInfo buildPartial() {
           org.tensorflow.proto.GraphTransferNodeInfo result = new org.tensorflow.proto.GraphTransferNodeInfo(this);
    -      result.name_ = name_;
    -      result.nodeId_ = nodeId_;
    -      result.typeName_ = typeName_;
    -      result.socOpId_ = socOpId_;
    -      result.paddingId_ = paddingId_;
    -      result.inputCount_ = inputCount_;
    -      result.outputCount_ = outputCount_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.GraphTransferNodeInfo result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.name_ = name_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.nodeId_ = nodeId_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.typeName_ = typeName_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.socOpId_ = socOpId_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.paddingId_ = paddingId_;
    +      }
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.inputCount_ = inputCount_;
    +      }
    +      if (((from_bitField0_ & 0x00000040) != 0)) {
    +        result.outputCount_ = outputCount_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.GraphTransferNodeInfo) {
    @@ -525,6 +509,7 @@ public Builder mergeFrom(org.tensorflow.proto.GraphTransferNodeInfo other) {
           if (other == org.tensorflow.proto.GraphTransferNodeInfo.getDefaultInstance()) return this;
           if (!other.getName().isEmpty()) {
             name_ = other.name_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (other.getNodeId() != 0) {
    @@ -532,6 +517,7 @@ public Builder mergeFrom(org.tensorflow.proto.GraphTransferNodeInfo other) {
           }
           if (!other.getTypeName().isEmpty()) {
             typeName_ = other.typeName_;
    +        bitField0_ |= 0x00000004;
             onChanged();
           }
           if (other.getSocOpId() != 0) {
    @@ -574,37 +560,37 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   name_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 16: {
                   nodeId_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 case 26: {
                   typeName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 case 32: {
                   socOpId_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 32
                 case 40: {
                   paddingId_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 40
                 case 48: {
                   inputCount_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 48
                 case 56: {
                   outputCount_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000040;
                   break;
                 } // case 56
                 default: {
    @@ -622,6 +608,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object name_ = "";
         /**
    @@ -664,11 +651,9 @@ public java.lang.String getName() {
          */
         public Builder setName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -677,8 +662,8 @@ public Builder setName(
          * @return This builder for chaining.
          */
         public Builder clearName() {
    -      
           name_ = getDefaultInstance().getName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -689,12 +674,10 @@ public Builder clearName() {
          */
         public Builder setNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -714,8 +697,9 @@ public int getNodeId() {
          * @return This builder for chaining.
          */
         public Builder setNodeId(int value) {
    -      
    +
           nodeId_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -724,7 +708,7 @@ public Builder setNodeId(int value) {
          * @return This builder for chaining.
          */
         public Builder clearNodeId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           nodeId_ = 0;
           onChanged();
           return this;
    @@ -771,11 +755,9 @@ public java.lang.String getTypeName() {
          */
         public Builder setTypeName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           typeName_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -784,8 +766,8 @@ public Builder setTypeName(
          * @return This builder for chaining.
          */
         public Builder clearTypeName() {
    -      
           typeName_ = getDefaultInstance().getTypeName();
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -796,12 +778,10 @@ public Builder clearTypeName() {
          */
         public Builder setTypeNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           typeName_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -821,8 +801,9 @@ public int getSocOpId() {
          * @return This builder for chaining.
          */
         public Builder setSocOpId(int value) {
    -      
    +
           socOpId_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -831,7 +812,7 @@ public Builder setSocOpId(int value) {
          * @return This builder for chaining.
          */
         public Builder clearSocOpId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           socOpId_ = 0;
           onChanged();
           return this;
    @@ -852,8 +833,9 @@ public int getPaddingId() {
          * @return This builder for chaining.
          */
         public Builder setPaddingId(int value) {
    -      
    +
           paddingId_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -862,7 +844,7 @@ public Builder setPaddingId(int value) {
          * @return This builder for chaining.
          */
         public Builder clearPaddingId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000010);
           paddingId_ = 0;
           onChanged();
           return this;
    @@ -883,8 +865,9 @@ public int getInputCount() {
          * @return This builder for chaining.
          */
         public Builder setInputCount(int value) {
    -      
    +
           inputCount_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -893,7 +876,7 @@ public Builder setInputCount(int value) {
          * @return This builder for chaining.
          */
         public Builder clearInputCount() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000020);
           inputCount_ = 0;
           onChanged();
           return this;
    @@ -914,8 +897,9 @@ public int getOutputCount() {
          * @return This builder for chaining.
          */
         public Builder setOutputCount(int value) {
    -      
    +
           outputCount_ = value;
    +      bitField0_ |= 0x00000040;
           onChanged();
           return this;
         }
    @@ -924,23 +908,11 @@ public Builder setOutputCount(int value) {
          * @return This builder for chaining.
          */
         public Builder clearOutputCount() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000040);
           outputCount_ = 0;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.GraphTransferNodeInfo)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInfoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInfoOrBuilder.java
    index 0eb48a9479c..01ef2545a87 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInfoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInfoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_transfer_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInput.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInput.java
    index ec051732443..0400ad21f83 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInput.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInput.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_transfer_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,36 +9,33 @@
      * Protobuf type {@code tensorflow.GraphTransferNodeInput}
      */
     public final class GraphTransferNodeInput extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.GraphTransferNodeInput)
         GraphTransferNodeInputOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      GraphTransferNodeInput.class.getName());
    +  }
       // Use GraphTransferNodeInput.newBuilder() to construct.
    -  private GraphTransferNodeInput(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private GraphTransferNodeInput(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private GraphTransferNodeInput() {
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new GraphTransferNodeInput();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferNodeInput_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferNodeInput_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -44,7 +43,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int NODE_ID_FIELD_NUMBER = 1;
    -  private int nodeId_;
    +  private int nodeId_ = 0;
       /**
        * int32 node_id = 1;
        * @return The nodeId.
    @@ -55,7 +54,7 @@ public int getNodeId() {
       }
     
       public static final int OUTPUT_PORT_FIELD_NUMBER = 2;
    -  private int outputPort_;
    +  private int outputPort_ = 0;
       /**
        * int32 output_port = 2;
        * @return The outputPort.
    @@ -175,39 +174,41 @@ public static org.tensorflow.proto.GraphTransferNodeInput parseFrom(
       }
       public static org.tensorflow.proto.GraphTransferNodeInput parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphTransferNodeInput parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.GraphTransferNodeInput parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.GraphTransferNodeInput parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.GraphTransferNodeInput parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphTransferNodeInput parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -227,7 +228,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -235,7 +236,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.GraphTransferNodeInput}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.GraphTransferNodeInput)
           org.tensorflow.proto.GraphTransferNodeInputOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -244,7 +245,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferNodeInput_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -257,17 +258,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           nodeId_ = 0;
    -
           outputPort_ = 0;
    -
           return this;
         }
     
    @@ -294,44 +294,21 @@ public org.tensorflow.proto.GraphTransferNodeInput build() {
         @java.lang.Override
         public org.tensorflow.proto.GraphTransferNodeInput buildPartial() {
           org.tensorflow.proto.GraphTransferNodeInput result = new org.tensorflow.proto.GraphTransferNodeInput(this);
    -      result.nodeId_ = nodeId_;
    -      result.outputPort_ = outputPort_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.GraphTransferNodeInput result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.nodeId_ = nodeId_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.outputPort_ = outputPort_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.GraphTransferNodeInput) {
    @@ -378,12 +355,12 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   nodeId_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 16: {
                   outputPort_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 default: {
    @@ -401,6 +378,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private int nodeId_ ;
         /**
    @@ -417,8 +395,9 @@ public int getNodeId() {
          * @return This builder for chaining.
          */
         public Builder setNodeId(int value) {
    -      
    +
           nodeId_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -427,7 +406,7 @@ public Builder setNodeId(int value) {
          * @return This builder for chaining.
          */
         public Builder clearNodeId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           nodeId_ = 0;
           onChanged();
           return this;
    @@ -448,8 +427,9 @@ public int getOutputPort() {
          * @return This builder for chaining.
          */
         public Builder setOutputPort(int value) {
    -      
    +
           outputPort_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -458,23 +438,11 @@ public Builder setOutputPort(int value) {
          * @return This builder for chaining.
          */
         public Builder clearOutputPort() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           outputPort_ = 0;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.GraphTransferNodeInput)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInputInfo.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInputInfo.java
    index 5c374398df3..93f82e0e8c8 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInputInfo.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInputInfo.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_transfer_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,37 +9,34 @@
      * Protobuf type {@code tensorflow.GraphTransferNodeInputInfo}
      */
     public final class GraphTransferNodeInputInfo extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.GraphTransferNodeInputInfo)
         GraphTransferNodeInputInfoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      GraphTransferNodeInputInfo.class.getName());
    +  }
       // Use GraphTransferNodeInputInfo.newBuilder() to construct.
    -  private GraphTransferNodeInputInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private GraphTransferNodeInputInfo(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private GraphTransferNodeInputInfo() {
         nodeInput_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new GraphTransferNodeInputInfo();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferNodeInputInfo_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferNodeInputInfo_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -45,7 +44,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int NODE_ID_FIELD_NUMBER = 1;
    -  private int nodeId_;
    +  private int nodeId_ = 0;
       /**
        * int32 node_id = 1;
        * @return The nodeId.
    @@ -56,6 +55,7 @@ public int getNodeId() {
       }
     
       public static final int NODE_INPUT_FIELD_NUMBER = 2;
    +  @SuppressWarnings("serial")
       private java.util.List nodeInput_;
       /**
        * repeated .tensorflow.GraphTransferNodeInput node_input = 2;
    @@ -207,39 +207,41 @@ public static org.tensorflow.proto.GraphTransferNodeInputInfo parseFrom(
       }
       public static org.tensorflow.proto.GraphTransferNodeInputInfo parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphTransferNodeInputInfo parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.GraphTransferNodeInputInfo parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.GraphTransferNodeInputInfo parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.GraphTransferNodeInputInfo parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphTransferNodeInputInfo parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -259,7 +261,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -267,7 +269,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.GraphTransferNodeInputInfo}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.GraphTransferNodeInputInfo)
           org.tensorflow.proto.GraphTransferNodeInputInfoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -276,7 +278,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferNodeInputInfo_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -289,22 +291,22 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           nodeId_ = 0;
    -
           if (nodeInputBuilder_ == null) {
             nodeInput_ = java.util.Collections.emptyList();
           } else {
             nodeInput_ = null;
             nodeInputBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000002);
           return this;
         }
     
    @@ -331,53 +333,31 @@ public org.tensorflow.proto.GraphTransferNodeInputInfo build() {
         @java.lang.Override
         public org.tensorflow.proto.GraphTransferNodeInputInfo buildPartial() {
           org.tensorflow.proto.GraphTransferNodeInputInfo result = new org.tensorflow.proto.GraphTransferNodeInputInfo(this);
    -      int from_bitField0_ = bitField0_;
    -      result.nodeId_ = nodeId_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.GraphTransferNodeInputInfo result) {
           if (nodeInputBuilder_ == null) {
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((bitField0_ & 0x00000002) != 0)) {
               nodeInput_ = java.util.Collections.unmodifiableList(nodeInput_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000002);
             }
             result.nodeInput_ = nodeInput_;
           } else {
             result.nodeInput_ = nodeInputBuilder_.build();
           }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.GraphTransferNodeInputInfo result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.nodeId_ = nodeId_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.GraphTransferNodeInputInfo) {
    @@ -397,7 +377,7 @@ public Builder mergeFrom(org.tensorflow.proto.GraphTransferNodeInputInfo other)
             if (!other.nodeInput_.isEmpty()) {
               if (nodeInput_.isEmpty()) {
                 nodeInput_ = other.nodeInput_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000002);
               } else {
                 ensureNodeInputIsMutable();
                 nodeInput_.addAll(other.nodeInput_);
    @@ -410,9 +390,9 @@ public Builder mergeFrom(org.tensorflow.proto.GraphTransferNodeInputInfo other)
                 nodeInputBuilder_.dispose();
                 nodeInputBuilder_ = null;
                 nodeInput_ = other.nodeInput_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000002);
                 nodeInputBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getNodeInputFieldBuilder() : null;
               } else {
                 nodeInputBuilder_.addAllMessages(other.nodeInput_);
    @@ -447,7 +427,7 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   nodeId_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 18: {
    @@ -495,8 +475,9 @@ public int getNodeId() {
          * @return This builder for chaining.
          */
         public Builder setNodeId(int value) {
    -      
    +
           nodeId_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -505,7 +486,7 @@ public Builder setNodeId(int value) {
          * @return This builder for chaining.
          */
         public Builder clearNodeId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           nodeId_ = 0;
           onChanged();
           return this;
    @@ -514,13 +495,13 @@ public Builder clearNodeId() {
         private java.util.List nodeInput_ =
           java.util.Collections.emptyList();
         private void ensureNodeInputIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!((bitField0_ & 0x00000002) != 0)) {
             nodeInput_ = new java.util.ArrayList(nodeInput_);
    -        bitField0_ |= 0x00000001;
    +        bitField0_ |= 0x00000002;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.GraphTransferNodeInput, org.tensorflow.proto.GraphTransferNodeInput.Builder, org.tensorflow.proto.GraphTransferNodeInputOrBuilder> nodeInputBuilder_;
     
         /**
    @@ -666,7 +647,7 @@ public Builder addAllNodeInput(
         public Builder clearNodeInput() {
           if (nodeInputBuilder_ == null) {
             nodeInput_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
           } else {
             nodeInputBuilder_.clear();
    @@ -736,32 +717,20 @@ public org.tensorflow.proto.GraphTransferNodeInput.Builder addNodeInputBuilder(
              getNodeInputBuilderList() {
           return getNodeInputFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.GraphTransferNodeInput, org.tensorflow.proto.GraphTransferNodeInput.Builder, org.tensorflow.proto.GraphTransferNodeInputOrBuilder> 
             getNodeInputFieldBuilder() {
           if (nodeInputBuilder_ == null) {
    -        nodeInputBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        nodeInputBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.GraphTransferNodeInput, org.tensorflow.proto.GraphTransferNodeInput.Builder, org.tensorflow.proto.GraphTransferNodeInputOrBuilder>(
                     nodeInput_,
    -                ((bitField0_ & 0x00000001) != 0),
    +                ((bitField0_ & 0x00000002) != 0),
                     getParentForChildren(),
                     isClean());
             nodeInput_ = null;
           }
           return nodeInputBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.GraphTransferNodeInputInfo)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInputInfoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInputInfoOrBuilder.java
    index 3d093918c21..391ca3f1e24 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInputInfoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInputInfoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_transfer_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInputOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInputOrBuilder.java
    index 91bac32cd4c..dd8ac32649e 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInputOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeInputOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_transfer_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeOutputInfo.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeOutputInfo.java
    index b12463e4c80..b42b3fb547c 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeOutputInfo.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeOutputInfo.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_transfer_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,37 +9,34 @@
      * Protobuf type {@code tensorflow.GraphTransferNodeOutputInfo}
      */
     public final class GraphTransferNodeOutputInfo extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.GraphTransferNodeOutputInfo)
         GraphTransferNodeOutputInfoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      GraphTransferNodeOutputInfo.class.getName());
    +  }
       // Use GraphTransferNodeOutputInfo.newBuilder() to construct.
    -  private GraphTransferNodeOutputInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private GraphTransferNodeOutputInfo(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private GraphTransferNodeOutputInfo() {
         maxByteSize_ = emptyIntList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new GraphTransferNodeOutputInfo();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferNodeOutputInfo_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferNodeOutputInfo_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -45,7 +44,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int NODE_ID_FIELD_NUMBER = 1;
    -  private int nodeId_;
    +  private int nodeId_ = 0;
       /**
        * int32 node_id = 1;
        * @return The nodeId.
    @@ -56,7 +55,9 @@ public int getNodeId() {
       }
     
       public static final int MAX_BYTE_SIZE_FIELD_NUMBER = 2;
    -  private com.google.protobuf.Internal.IntList maxByteSize_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.IntList maxByteSize_ =
    +      emptyIntList();
       /**
        * repeated int32 max_byte_size = 2;
        * @return A list containing the maxByteSize.
    @@ -210,39 +211,41 @@ public static org.tensorflow.proto.GraphTransferNodeOutputInfo parseFrom(
       }
       public static org.tensorflow.proto.GraphTransferNodeOutputInfo parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphTransferNodeOutputInfo parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.GraphTransferNodeOutputInfo parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.GraphTransferNodeOutputInfo parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.GraphTransferNodeOutputInfo parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.GraphTransferNodeOutputInfo parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -262,7 +265,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -270,7 +273,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.GraphTransferNodeOutputInfo}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.GraphTransferNodeOutputInfo)
           org.tensorflow.proto.GraphTransferNodeOutputInfoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -279,7 +282,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.GraphTransferInfoProto.internal_static_tensorflow_GraphTransferNodeOutputInfo_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -292,17 +295,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           nodeId_ = 0;
    -
           maxByteSize_ = emptyIntList();
    -      bitField0_ = (bitField0_ & ~0x00000001);
           return this;
         }
     
    @@ -329,49 +331,22 @@ public org.tensorflow.proto.GraphTransferNodeOutputInfo build() {
         @java.lang.Override
         public org.tensorflow.proto.GraphTransferNodeOutputInfo buildPartial() {
           org.tensorflow.proto.GraphTransferNodeOutputInfo result = new org.tensorflow.proto.GraphTransferNodeOutputInfo(this);
    -      int from_bitField0_ = bitField0_;
    -      result.nodeId_ = nodeId_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        maxByteSize_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.maxByteSize_ = maxByteSize_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.GraphTransferNodeOutputInfo result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.nodeId_ = nodeId_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        maxByteSize_.makeImmutable();
    +        result.maxByteSize_ = maxByteSize_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.GraphTransferNodeOutputInfo) {
    @@ -390,7 +365,8 @@ public Builder mergeFrom(org.tensorflow.proto.GraphTransferNodeOutputInfo other)
           if (!other.maxByteSize_.isEmpty()) {
             if (maxByteSize_.isEmpty()) {
               maxByteSize_ = other.maxByteSize_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          maxByteSize_.makeImmutable();
    +          bitField0_ |= 0x00000002;
             } else {
               ensureMaxByteSizeIsMutable();
               maxByteSize_.addAll(other.maxByteSize_);
    @@ -425,7 +401,7 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   nodeId_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 16: {
    @@ -476,8 +452,9 @@ public int getNodeId() {
          * @return This builder for chaining.
          */
         public Builder setNodeId(int value) {
    -      
    +
           nodeId_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -486,7 +463,7 @@ public Builder setNodeId(int value) {
          * @return This builder for chaining.
          */
         public Builder clearNodeId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           nodeId_ = 0;
           onChanged();
           return this;
    @@ -494,10 +471,10 @@ public Builder clearNodeId() {
     
         private com.google.protobuf.Internal.IntList maxByteSize_ = emptyIntList();
         private void ensureMaxByteSizeIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    -        maxByteSize_ = mutableCopy(maxByteSize_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      if (!maxByteSize_.isModifiable()) {
    +        maxByteSize_ = makeMutableCopy(maxByteSize_);
    +      }
    +      bitField0_ |= 0x00000002;
         }
         /**
          * repeated int32 max_byte_size = 2;
    @@ -505,8 +482,8 @@ private void ensureMaxByteSizeIsMutable() {
          */
         public java.util.List
             getMaxByteSizeList() {
    -      return ((bitField0_ & 0x00000001) != 0) ?
    -               java.util.Collections.unmodifiableList(maxByteSize_) : maxByteSize_;
    +      maxByteSize_.makeImmutable();
    +      return maxByteSize_;
         }
         /**
          * repeated int32 max_byte_size = 2;
    @@ -531,8 +508,10 @@ public int getMaxByteSize(int index) {
          */
         public Builder setMaxByteSize(
             int index, int value) {
    +
           ensureMaxByteSizeIsMutable();
           maxByteSize_.setInt(index, value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -542,8 +521,10 @@ public Builder setMaxByteSize(
          * @return This builder for chaining.
          */
         public Builder addMaxByteSize(int value) {
    +
           ensureMaxByteSizeIsMutable();
           maxByteSize_.addInt(value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -557,6 +538,7 @@ public Builder addAllMaxByteSize(
           ensureMaxByteSizeIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, maxByteSize_);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -566,22 +548,10 @@ public Builder addAllMaxByteSize(
          */
         public Builder clearMaxByteSize() {
           maxByteSize_ = emptyIntList();
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.GraphTransferNodeOutputInfo)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeOutputInfoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeOutputInfoOrBuilder.java
    index a9bd5aa77a8..562283cc21f 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeOutputInfoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/GraphTransferNodeOutputInfoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/graph_transfer_info.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Histogram.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Histogram.java
    index 3b6ed7fa83e..5567c346630 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Histogram.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Histogram.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/histogram.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/histogram.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class Histogram {
       private Histogram() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      Histogram.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,7 +28,7 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_HistogramProto_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_HistogramProto_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -28,13 +39,14 @@ public static void registerAllExtensions(
           descriptor;
       static {
         java.lang.String[] descriptorData = {
    -      "\n\034tsl/protobuf/histogram.proto\022\ntensorfl" +
    -      "ow\"\207\001\n\016HistogramProto\022\013\n\003min\030\001 \001(\001\022\013\n\003ma" +
    -      "x\030\002 \001(\001\022\013\n\003num\030\003 \001(\001\022\013\n\003sum\030\004 \001(\001\022\023\n\013sum" +
    -      "_squares\030\005 \001(\001\022\030\n\014bucket_limit\030\006 \003(\001B\002\020\001" +
    -      "\022\022\n\006bucket\030\007 \003(\001B\002\020\001BX\n\024org.tensorflow.p" +
    -      "rotoP\001Z;github.com/google/tsl/tsl/go/cor" +
    -      "e/protobuf/summary_go_proto\370\001\001b\006proto3"
    +      "\n xla/tsl/protobuf/histogram.proto\022\ntens" +
    +      "orflow\"\207\001\n\016HistogramProto\022\013\n\003min\030\001 \001(\001\022\013" +
    +      "\n\003max\030\002 \001(\001\022\013\n\003num\030\003 \001(\001\022\013\n\003sum\030\004 \001(\001\022\023\n" +
    +      "\013sum_squares\030\005 \001(\001\022\030\n\014bucket_limit\030\006 \003(\001" +
    +      "B\002\020\001\022\022\n\006bucket\030\007 \003(\001B\002\020\001BX\n\024org.tensorfl" +
    +      "ow.protoP\001Z;github.com/google/tsl/tsl/go" +
    +      "/core/protobuf/summary_go_proto\370\001\001b\006prot" +
    +      "o3"
         };
         descriptor = com.google.protobuf.Descriptors.FileDescriptor
           .internalBuildGeneratedFileFrom(descriptorData,
    @@ -43,9 +55,10 @@ public static void registerAllExtensions(
         internal_static_tensorflow_HistogramProto_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_HistogramProto_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_HistogramProto_descriptor,
             new java.lang.String[] { "Min", "Max", "Num", "Sum", "SumSquares", "BucketLimit", "Bucket", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/HistogramProto.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/HistogramProto.java
    index a07ba3f74de..669741c85a8 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/HistogramProto.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/HistogramProto.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/histogram.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/histogram.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -12,12 +14,21 @@
      * Protobuf type {@code tensorflow.HistogramProto}
      */
     public final class HistogramProto extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.HistogramProto)
         HistogramProtoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      HistogramProto.class.getName());
    +  }
       // Use HistogramProto.newBuilder() to construct.
    -  private HistogramProto(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private HistogramProto(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private HistogramProto() {
    @@ -25,25 +36,13 @@ private HistogramProto() {
         bucket_ = emptyDoubleList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new HistogramProto();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.Histogram.internal_static_tensorflow_HistogramProto_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.Histogram.internal_static_tensorflow_HistogramProto_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -51,7 +50,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int MIN_FIELD_NUMBER = 1;
    -  private double min_;
    +  private double min_ = 0D;
       /**
        * double min = 1;
        * @return The min.
    @@ -62,7 +61,7 @@ public double getMin() {
       }
     
       public static final int MAX_FIELD_NUMBER = 2;
    -  private double max_;
    +  private double max_ = 0D;
       /**
        * double max = 2;
        * @return The max.
    @@ -73,7 +72,7 @@ public double getMax() {
       }
     
       public static final int NUM_FIELD_NUMBER = 3;
    -  private double num_;
    +  private double num_ = 0D;
       /**
        * double num = 3;
        * @return The num.
    @@ -84,7 +83,7 @@ public double getNum() {
       }
     
       public static final int SUM_FIELD_NUMBER = 4;
    -  private double sum_;
    +  private double sum_ = 0D;
       /**
        * double sum = 4;
        * @return The sum.
    @@ -95,7 +94,7 @@ public double getSum() {
       }
     
       public static final int SUM_SQUARES_FIELD_NUMBER = 5;
    -  private double sumSquares_;
    +  private double sumSquares_ = 0D;
       /**
        * double sum_squares = 5;
        * @return The sumSquares.
    @@ -106,14 +105,16 @@ public double getSumSquares() {
       }
     
       public static final int BUCKET_LIMIT_FIELD_NUMBER = 6;
    -  private com.google.protobuf.Internal.DoubleList bucketLimit_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.DoubleList bucketLimit_ =
    +      emptyDoubleList();
       /**
        * 
        * Parallel arrays encoding the bucket boundaries and the bucket values.
        * bucket(i) is the count for the bucket i.  The range for
        * a bucket is:
    -   *   i == 0:  -DBL_MAX .. bucket_limit(0)
    -   *   i != 0:  bucket_limit(i-1) .. bucket_limit(i)
    +   * i == 0:  -DBL_MAX .. bucket_limit(0)
    +   * i != 0:  bucket_limit(i-1) .. bucket_limit(i)
        * 
    * * repeated double bucket_limit = 6 [packed = true]; @@ -129,8 +130,8 @@ public double getSumSquares() { * Parallel arrays encoding the bucket boundaries and the bucket values. * bucket(i) is the count for the bucket i. The range for * a bucket is: - * i == 0: -DBL_MAX .. bucket_limit(0) - * i != 0: bucket_limit(i-1) .. bucket_limit(i) + * i == 0: -DBL_MAX .. bucket_limit(0) + * i != 0: bucket_limit(i-1) .. bucket_limit(i) *
    * * repeated double bucket_limit = 6 [packed = true]; @@ -144,8 +145,8 @@ public int getBucketLimitCount() { * Parallel arrays encoding the bucket boundaries and the bucket values. * bucket(i) is the count for the bucket i. The range for * a bucket is: - * i == 0: -DBL_MAX .. bucket_limit(0) - * i != 0: bucket_limit(i-1) .. bucket_limit(i) + * i == 0: -DBL_MAX .. bucket_limit(0) + * i != 0: bucket_limit(i-1) .. bucket_limit(i) *
    * * repeated double bucket_limit = 6 [packed = true]; @@ -158,7 +159,9 @@ public double getBucketLimit(int index) { private int bucketLimitMemoizedSerializedSize = -1; public static final int BUCKET_FIELD_NUMBER = 7; - private com.google.protobuf.Internal.DoubleList bucket_; + @SuppressWarnings("serial") + private com.google.protobuf.Internal.DoubleList bucket_ = + emptyDoubleList(); /** * repeated double bucket = 7 [packed = true]; * @return A list containing the bucket. @@ -387,39 +390,41 @@ public static org.tensorflow.proto.HistogramProto parseFrom( } public static org.tensorflow.proto.HistogramProto parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.HistogramProto parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.HistogramProto parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.HistogramProto parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.HistogramProto parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.HistogramProto parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -439,7 +444,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -452,7 +457,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.HistogramProto} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.HistogramProto) org.tensorflow.proto.HistogramProtoOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -461,7 +466,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.Histogram.internal_static_tensorflow_HistogramProto_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -474,27 +479,21 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; min_ = 0D; - max_ = 0D; - num_ = 0D; - sum_ = 0D; - sumSquares_ = 0D; - bucketLimit_ = emptyDoubleList(); - bitField0_ = (bitField0_ & ~0x00000001); bucket_ = emptyDoubleList(); - bitField0_ = (bitField0_ & ~0x00000002); return this; } @@ -521,58 +520,38 @@ public org.tensorflow.proto.HistogramProto build() { @java.lang.Override public org.tensorflow.proto.HistogramProto buildPartial() { org.tensorflow.proto.HistogramProto result = new org.tensorflow.proto.HistogramProto(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(org.tensorflow.proto.HistogramProto result) { int from_bitField0_ = bitField0_; - result.min_ = min_; - result.max_ = max_; - result.num_ = num_; - result.sum_ = sum_; - result.sumSquares_ = sumSquares_; - if (((bitField0_ & 0x00000001) != 0)) { + if (((from_bitField0_ & 0x00000001) != 0)) { + result.min_ = min_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.max_ = max_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.num_ = num_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.sum_ = sum_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.sumSquares_ = sumSquares_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { bucketLimit_.makeImmutable(); - bitField0_ = (bitField0_ & ~0x00000001); + result.bucketLimit_ = bucketLimit_; } - result.bucketLimit_ = bucketLimit_; - if (((bitField0_ & 0x00000002) != 0)) { + if (((from_bitField0_ & 0x00000040) != 0)) { bucket_.makeImmutable(); - bitField0_ = (bitField0_ & ~0x00000002); + result.bucket_ = bucket_; } - result.bucket_ = bucket_; - onBuilt(); - return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); - } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.HistogramProto) { @@ -603,7 +582,8 @@ public Builder mergeFrom(org.tensorflow.proto.HistogramProto other) { if (!other.bucketLimit_.isEmpty()) { if (bucketLimit_.isEmpty()) { bucketLimit_ = other.bucketLimit_; - bitField0_ = (bitField0_ & ~0x00000001); + bucketLimit_.makeImmutable(); + bitField0_ |= 0x00000020; } else { ensureBucketLimitIsMutable(); bucketLimit_.addAll(other.bucketLimit_); @@ -613,7 +593,8 @@ public Builder mergeFrom(org.tensorflow.proto.HistogramProto other) { if (!other.bucket_.isEmpty()) { if (bucket_.isEmpty()) { bucket_ = other.bucket_; - bitField0_ = (bitField0_ & ~0x00000002); + bucket_.makeImmutable(); + bitField0_ |= 0x00000040; } else { ensureBucketIsMutable(); bucket_.addAll(other.bucket_); @@ -648,27 +629,27 @@ public Builder mergeFrom( break; case 9: { min_ = input.readDouble(); - + bitField0_ |= 0x00000001; break; } // case 9 case 17: { max_ = input.readDouble(); - + bitField0_ |= 0x00000002; break; } // case 17 case 25: { num_ = input.readDouble(); - + bitField0_ |= 0x00000004; break; } // case 25 case 33: { sum_ = input.readDouble(); - + bitField0_ |= 0x00000008; break; } // case 33 case 41: { sumSquares_ = input.readDouble(); - + bitField0_ |= 0x00000010; break; } // case 41 case 49: { @@ -680,7 +661,8 @@ public Builder mergeFrom( case 50: { int length = input.readRawVarint32(); int limit = input.pushLimit(length); - ensureBucketLimitIsMutable(); + int alloc = length > 4096 ? 4096 : length; + ensureBucketLimitIsMutable(alloc / 8); while (input.getBytesUntilLimit() > 0) { bucketLimit_.addDouble(input.readDouble()); } @@ -696,7 +678,8 @@ public Builder mergeFrom( case 58: { int length = input.readRawVarint32(); int limit = input.pushLimit(length); - ensureBucketIsMutable(); + int alloc = length > 4096 ? 4096 : length; + ensureBucketIsMutable(alloc / 8); while (input.getBytesUntilLimit() > 0) { bucket_.addDouble(input.readDouble()); } @@ -735,8 +718,9 @@ public double getMin() { * @return This builder for chaining. */ public Builder setMin(double value) { - + min_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -745,7 +729,7 @@ public Builder setMin(double value) { * @return This builder for chaining. */ public Builder clearMin() { - + bitField0_ = (bitField0_ & ~0x00000001); min_ = 0D; onChanged(); return this; @@ -766,8 +750,9 @@ public double getMax() { * @return This builder for chaining. */ public Builder setMax(double value) { - + max_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -776,7 +761,7 @@ public Builder setMax(double value) { * @return This builder for chaining. */ public Builder clearMax() { - + bitField0_ = (bitField0_ & ~0x00000002); max_ = 0D; onChanged(); return this; @@ -797,8 +782,9 @@ public double getNum() { * @return This builder for chaining. */ public Builder setNum(double value) { - + num_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -807,7 +793,7 @@ public Builder setNum(double value) { * @return This builder for chaining. */ public Builder clearNum() { - + bitField0_ = (bitField0_ & ~0x00000004); num_ = 0D; onChanged(); return this; @@ -828,8 +814,9 @@ public double getSum() { * @return This builder for chaining. */ public Builder setSum(double value) { - + sum_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -838,7 +825,7 @@ public Builder setSum(double value) { * @return This builder for chaining. */ public Builder clearSum() { - + bitField0_ = (bitField0_ & ~0x00000008); sum_ = 0D; onChanged(); return this; @@ -859,8 +846,9 @@ public double getSumSquares() { * @return This builder for chaining. */ public Builder setSumSquares(double value) { - + sumSquares_ = value; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -869,7 +857,7 @@ public Builder setSumSquares(double value) { * @return This builder for chaining. */ public Builder clearSumSquares() { - + bitField0_ = (bitField0_ & ~0x00000010); sumSquares_ = 0D; onChanged(); return this; @@ -877,18 +865,24 @@ public Builder clearSumSquares() { private com.google.protobuf.Internal.DoubleList bucketLimit_ = emptyDoubleList(); private void ensureBucketLimitIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - bucketLimit_ = mutableCopy(bucketLimit_); - bitField0_ |= 0x00000001; - } + if (!bucketLimit_.isModifiable()) { + bucketLimit_ = makeMutableCopy(bucketLimit_); + } + bitField0_ |= 0x00000020; + } + private void ensureBucketLimitIsMutable(int capacity) { + if (!bucketLimit_.isModifiable()) { + bucketLimit_ = makeMutableCopy(bucketLimit_, capacity); + } + bitField0_ |= 0x00000020; } /** *
          * Parallel arrays encoding the bucket boundaries and the bucket values.
          * bucket(i) is the count for the bucket i.  The range for
          * a bucket is:
    -     *   i == 0:  -DBL_MAX .. bucket_limit(0)
    -     *   i != 0:  bucket_limit(i-1) .. bucket_limit(i)
    +     * i == 0:  -DBL_MAX .. bucket_limit(0)
    +     * i != 0:  bucket_limit(i-1) .. bucket_limit(i)
          * 
    * * repeated double bucket_limit = 6 [packed = true]; @@ -896,16 +890,16 @@ private void ensureBucketLimitIsMutable() { */ public java.util.List getBucketLimitList() { - return ((bitField0_ & 0x00000001) != 0) ? - java.util.Collections.unmodifiableList(bucketLimit_) : bucketLimit_; + bucketLimit_.makeImmutable(); + return bucketLimit_; } /** *
          * Parallel arrays encoding the bucket boundaries and the bucket values.
          * bucket(i) is the count for the bucket i.  The range for
          * a bucket is:
    -     *   i == 0:  -DBL_MAX .. bucket_limit(0)
    -     *   i != 0:  bucket_limit(i-1) .. bucket_limit(i)
    +     * i == 0:  -DBL_MAX .. bucket_limit(0)
    +     * i != 0:  bucket_limit(i-1) .. bucket_limit(i)
          * 
    * * repeated double bucket_limit = 6 [packed = true]; @@ -919,8 +913,8 @@ public int getBucketLimitCount() { * Parallel arrays encoding the bucket boundaries and the bucket values. * bucket(i) is the count for the bucket i. The range for * a bucket is: - * i == 0: -DBL_MAX .. bucket_limit(0) - * i != 0: bucket_limit(i-1) .. bucket_limit(i) + * i == 0: -DBL_MAX .. bucket_limit(0) + * i != 0: bucket_limit(i-1) .. bucket_limit(i) *
    * * repeated double bucket_limit = 6 [packed = true]; @@ -935,8 +929,8 @@ public double getBucketLimit(int index) { * Parallel arrays encoding the bucket boundaries and the bucket values. * bucket(i) is the count for the bucket i. The range for * a bucket is: - * i == 0: -DBL_MAX .. bucket_limit(0) - * i != 0: bucket_limit(i-1) .. bucket_limit(i) + * i == 0: -DBL_MAX .. bucket_limit(0) + * i != 0: bucket_limit(i-1) .. bucket_limit(i) *
    * * repeated double bucket_limit = 6 [packed = true]; @@ -946,8 +940,10 @@ public double getBucketLimit(int index) { */ public Builder setBucketLimit( int index, double value) { + ensureBucketLimitIsMutable(); bucketLimit_.setDouble(index, value); + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -956,8 +952,8 @@ public Builder setBucketLimit( * Parallel arrays encoding the bucket boundaries and the bucket values. * bucket(i) is the count for the bucket i. The range for * a bucket is: - * i == 0: -DBL_MAX .. bucket_limit(0) - * i != 0: bucket_limit(i-1) .. bucket_limit(i) + * i == 0: -DBL_MAX .. bucket_limit(0) + * i != 0: bucket_limit(i-1) .. bucket_limit(i) *
    * * repeated double bucket_limit = 6 [packed = true]; @@ -965,8 +961,10 @@ public Builder setBucketLimit( * @return This builder for chaining. */ public Builder addBucketLimit(double value) { + ensureBucketLimitIsMutable(); bucketLimit_.addDouble(value); + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -975,8 +973,8 @@ public Builder addBucketLimit(double value) { * Parallel arrays encoding the bucket boundaries and the bucket values. * bucket(i) is the count for the bucket i. The range for * a bucket is: - * i == 0: -DBL_MAX .. bucket_limit(0) - * i != 0: bucket_limit(i-1) .. bucket_limit(i) + * i == 0: -DBL_MAX .. bucket_limit(0) + * i != 0: bucket_limit(i-1) .. bucket_limit(i) *
    * * repeated double bucket_limit = 6 [packed = true]; @@ -988,6 +986,7 @@ public Builder addAllBucketLimit( ensureBucketLimitIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, bucketLimit_); + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -996,8 +995,8 @@ public Builder addAllBucketLimit( * Parallel arrays encoding the bucket boundaries and the bucket values. * bucket(i) is the count for the bucket i. The range for * a bucket is: - * i == 0: -DBL_MAX .. bucket_limit(0) - * i != 0: bucket_limit(i-1) .. bucket_limit(i) + * i == 0: -DBL_MAX .. bucket_limit(0) + * i != 0: bucket_limit(i-1) .. bucket_limit(i) *
    * * repeated double bucket_limit = 6 [packed = true]; @@ -1005,17 +1004,23 @@ public Builder addAllBucketLimit( */ public Builder clearBucketLimit() { bucketLimit_ = emptyDoubleList(); - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000020); onChanged(); return this; } private com.google.protobuf.Internal.DoubleList bucket_ = emptyDoubleList(); private void ensureBucketIsMutable() { - if (!((bitField0_ & 0x00000002) != 0)) { - bucket_ = mutableCopy(bucket_); - bitField0_ |= 0x00000002; - } + if (!bucket_.isModifiable()) { + bucket_ = makeMutableCopy(bucket_); + } + bitField0_ |= 0x00000040; + } + private void ensureBucketIsMutable(int capacity) { + if (!bucket_.isModifiable()) { + bucket_ = makeMutableCopy(bucket_, capacity); + } + bitField0_ |= 0x00000040; } /** * repeated double bucket = 7 [packed = true]; @@ -1023,8 +1028,8 @@ private void ensureBucketIsMutable() { */ public java.util.List getBucketList() { - return ((bitField0_ & 0x00000002) != 0) ? - java.util.Collections.unmodifiableList(bucket_) : bucket_; + bucket_.makeImmutable(); + return bucket_; } /** * repeated double bucket = 7 [packed = true]; @@ -1049,8 +1054,10 @@ public double getBucket(int index) { */ public Builder setBucket( int index, double value) { + ensureBucketIsMutable(); bucket_.setDouble(index, value); + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -1060,8 +1067,10 @@ public Builder setBucket( * @return This builder for chaining. */ public Builder addBucket(double value) { + ensureBucketIsMutable(); bucket_.addDouble(value); + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -1075,6 +1084,7 @@ public Builder addAllBucket( ensureBucketIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, bucket_); + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -1084,22 +1094,10 @@ public Builder addAllBucket( */ public Builder clearBucket() { bucket_ = emptyDoubleList(); - bitField0_ = (bitField0_ & ~0x00000002); + bitField0_ = (bitField0_ & ~0x00000040); onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.HistogramProto) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/HistogramProtoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/HistogramProtoOrBuilder.java index 1430829e55e..9c644fa0611 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/HistogramProtoOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/HistogramProtoOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! -// source: tsl/protobuf/histogram.proto +// NO CHECKED-IN PROTOBUF GENCODE +// source: xla/tsl/protobuf/histogram.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -42,8 +44,8 @@ public interface HistogramProtoOrBuilder extends * Parallel arrays encoding the bucket boundaries and the bucket values. * bucket(i) is the count for the bucket i. The range for * a bucket is: - * i == 0: -DBL_MAX .. bucket_limit(0) - * i != 0: bucket_limit(i-1) .. bucket_limit(i) + * i == 0: -DBL_MAX .. bucket_limit(0) + * i != 0: bucket_limit(i-1) .. bucket_limit(i) *
    * * repeated double bucket_limit = 6 [packed = true]; @@ -55,8 +57,8 @@ public interface HistogramProtoOrBuilder extends * Parallel arrays encoding the bucket boundaries and the bucket values. * bucket(i) is the count for the bucket i. The range for * a bucket is: - * i == 0: -DBL_MAX .. bucket_limit(0) - * i != 0: bucket_limit(i-1) .. bucket_limit(i) + * i == 0: -DBL_MAX .. bucket_limit(0) + * i != 0: bucket_limit(i-1) .. bucket_limit(i) *
    * * repeated double bucket_limit = 6 [packed = true]; @@ -68,8 +70,8 @@ public interface HistogramProtoOrBuilder extends * Parallel arrays encoding the bucket boundaries and the bucket values. * bucket(i) is the count for the bucket i. The range for * a bucket is: - * i == 0: -DBL_MAX .. bucket_limit(0) - * i != 0: bucket_limit(i-1) .. bucket_limit(i) + * i == 0: -DBL_MAX .. bucket_limit(0) + * i != 0: bucket_limit(i-1) .. bucket_limit(i) *
    * * repeated double bucket_limit = 6 [packed = true]; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Int64List.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Int64List.java index b136f0d1862..82bf09b381d 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Int64List.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Int64List.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/example/feature.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,37 +9,34 @@ * Protobuf type {@code tensorflow.Int64List} */ public final class Int64List extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.Int64List) Int64ListOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + Int64List.class.getName()); + } // Use Int64List.newBuilder() to construct. - private Int64List(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private Int64List(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private Int64List() { value_ = emptyLongList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new Int64List(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_Int64List_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_Int64List_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -45,9 +44,11 @@ protected java.lang.Object newInstance( } public static final int VALUE_FIELD_NUMBER = 1; - private com.google.protobuf.Internal.LongList value_; + @SuppressWarnings("serial") + private com.google.protobuf.Internal.LongList value_ = + emptyLongList(); /** - * repeated int64 value = 1 [packed = true]; + * repeated int64 value = 1 [packed = true, jstype = JS_STRING]; * @return A list containing the value. */ @java.lang.Override @@ -56,14 +57,14 @@ protected java.lang.Object newInstance( return value_; } /** - * repeated int64 value = 1 [packed = true]; + * repeated int64 value = 1 [packed = true, jstype = JS_STRING]; * @return The count of value. */ public int getValueCount() { return value_.size(); } /** - * repeated int64 value = 1 [packed = true]; + * repeated int64 value = 1 [packed = true, jstype = JS_STRING]; * @param index The index of the element to return. * @return The value at the given index. */ @@ -188,39 +189,41 @@ public static org.tensorflow.proto.Int64List parseFrom( } public static org.tensorflow.proto.Int64List parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.Int64List parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.Int64List parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.Int64List parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.Int64List parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.Int64List parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -240,7 +243,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -248,7 +251,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.Int64List} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.Int64List) org.tensorflow.proto.Int64ListOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -257,7 +260,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.FeatureProtos.internal_static_tensorflow_Int64List_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -270,15 +273,15 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; value_ = emptyLongList(); - bitField0_ = (bitField0_ & ~0x00000001); return this; } @@ -305,48 +308,19 @@ public org.tensorflow.proto.Int64List build() { @java.lang.Override public org.tensorflow.proto.Int64List buildPartial() { org.tensorflow.proto.Int64List result = new org.tensorflow.proto.Int64List(this); - int from_bitField0_ = bitField0_; - if (((bitField0_ & 0x00000001) != 0)) { - value_.makeImmutable(); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.value_ = value_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.Int64List result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + value_.makeImmutable(); + result.value_ = value_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.Int64List) { @@ -362,7 +336,8 @@ public Builder mergeFrom(org.tensorflow.proto.Int64List other) { if (!other.value_.isEmpty()) { if (value_.isEmpty()) { value_ = other.value_; - bitField0_ = (bitField0_ & ~0x00000001); + value_.makeImmutable(); + bitField0_ |= 0x00000001; } else { ensureValueIsMutable(); value_.addAll(other.value_); @@ -430,29 +405,29 @@ public Builder mergeFrom( private com.google.protobuf.Internal.LongList value_ = emptyLongList(); private void ensureValueIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - value_ = mutableCopy(value_); - bitField0_ |= 0x00000001; - } + if (!value_.isModifiable()) { + value_ = makeMutableCopy(value_); + } + bitField0_ |= 0x00000001; } /** - * repeated int64 value = 1 [packed = true]; + * repeated int64 value = 1 [packed = true, jstype = JS_STRING]; * @return A list containing the value. */ public java.util.List getValueList() { - return ((bitField0_ & 0x00000001) != 0) ? - java.util.Collections.unmodifiableList(value_) : value_; + value_.makeImmutable(); + return value_; } /** - * repeated int64 value = 1 [packed = true]; + * repeated int64 value = 1 [packed = true, jstype = JS_STRING]; * @return The count of value. */ public int getValueCount() { return value_.size(); } /** - * repeated int64 value = 1 [packed = true]; + * repeated int64 value = 1 [packed = true, jstype = JS_STRING]; * @param index The index of the element to return. * @return The value at the given index. */ @@ -460,31 +435,35 @@ public long getValue(int index) { return value_.getLong(index); } /** - * repeated int64 value = 1 [packed = true]; + * repeated int64 value = 1 [packed = true, jstype = JS_STRING]; * @param index The index to set the value at. * @param value The value to set. * @return This builder for chaining. */ public Builder setValue( int index, long value) { + ensureValueIsMutable(); value_.setLong(index, value); + bitField0_ |= 0x00000001; onChanged(); return this; } /** - * repeated int64 value = 1 [packed = true]; + * repeated int64 value = 1 [packed = true, jstype = JS_STRING]; * @param value The value to add. * @return This builder for chaining. */ public Builder addValue(long value) { + ensureValueIsMutable(); value_.addLong(value); + bitField0_ |= 0x00000001; onChanged(); return this; } /** - * repeated int64 value = 1 [packed = true]; + * repeated int64 value = 1 [packed = true, jstype = JS_STRING]; * @param values The value to add. * @return This builder for chaining. */ @@ -493,11 +472,12 @@ public Builder addAllValue( ensureValueIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, value_); + bitField0_ |= 0x00000001; onChanged(); return this; } /** - * repeated int64 value = 1 [packed = true]; + * repeated int64 value = 1 [packed = true, jstype = JS_STRING]; * @return This builder for chaining. */ public Builder clearValue() { @@ -506,18 +486,6 @@ public Builder clearValue() { onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.Int64List) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Int64ListOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Int64ListOrBuilder.java index bd79fb6e240..e1d8271d30d 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Int64ListOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Int64ListOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/example/feature.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -8,17 +10,17 @@ public interface Int64ListOrBuilder extends com.google.protobuf.MessageOrBuilder { /** - * repeated int64 value = 1 [packed = true]; + * repeated int64 value = 1 [packed = true, jstype = JS_STRING]; * @return A list containing the value. */ java.util.List getValueList(); /** - * repeated int64 value = 1 [packed = true]; + * repeated int64 value = 1 [packed = true, jstype = JS_STRING]; * @return The count of value. */ int getValueCount(); /** - * repeated int64 value = 1 [packed = true]; + * repeated int64 value = 1 [packed = true, jstype = JS_STRING]; * @param index The index of the element to return. * @return The value at the given index. */ diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/InterconnectLink.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/InterconnectLink.java index 46794a5cdfe..e544fdbcd0e 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/InterconnectLink.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/InterconnectLink.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/device_attributes.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,37 +9,34 @@ * Protobuf type {@code tensorflow.InterconnectLink} */ public final class InterconnectLink extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.InterconnectLink) InterconnectLinkOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + InterconnectLink.class.getName()); + } // Use InterconnectLink.newBuilder() to construct. - private InterconnectLink(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private InterconnectLink(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private InterconnectLink() { type_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new InterconnectLink(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.DeviceAttributesProtos.internal_static_tensorflow_InterconnectLink_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.DeviceAttributesProtos.internal_static_tensorflow_InterconnectLink_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -45,7 +44,7 @@ protected java.lang.Object newInstance( } public static final int DEVICE_ID_FIELD_NUMBER = 1; - private int deviceId_; + private int deviceId_ = 0; /** * int32 device_id = 1; * @return The deviceId. @@ -56,7 +55,8 @@ public int getDeviceId() { } public static final int TYPE_FIELD_NUMBER = 2; - private volatile java.lang.Object type_; + @SuppressWarnings("serial") + private volatile java.lang.Object type_ = ""; /** * string type = 2; * @return The type. @@ -94,7 +94,7 @@ public java.lang.String getType() { } public static final int STRENGTH_FIELD_NUMBER = 3; - private int strength_; + private int strength_ = 0; /** * int32 strength = 3; * @return The strength. @@ -121,8 +121,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (deviceId_ != 0) { output.writeInt32(1, deviceId_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(type_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, type_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(type_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, type_); } if (strength_ != 0) { output.writeInt32(3, strength_); @@ -140,8 +140,8 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeInt32Size(1, deviceId_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(type_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, type_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(type_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, type_); } if (strength_ != 0) { size += com.google.protobuf.CodedOutputStream @@ -224,39 +224,41 @@ public static org.tensorflow.proto.InterconnectLink parseFrom( } public static org.tensorflow.proto.InterconnectLink parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.InterconnectLink parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.InterconnectLink parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.InterconnectLink parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.InterconnectLink parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.InterconnectLink parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -276,7 +278,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -284,7 +286,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.InterconnectLink} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.InterconnectLink) org.tensorflow.proto.InterconnectLinkOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -293,7 +295,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.DeviceAttributesProtos.internal_static_tensorflow_InterconnectLink_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -306,19 +308,17 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; deviceId_ = 0; - type_ = ""; - strength_ = 0; - return this; } @@ -345,45 +345,24 @@ public org.tensorflow.proto.InterconnectLink build() { @java.lang.Override public org.tensorflow.proto.InterconnectLink buildPartial() { org.tensorflow.proto.InterconnectLink result = new org.tensorflow.proto.InterconnectLink(this); - result.deviceId_ = deviceId_; - result.type_ = type_; - result.strength_ = strength_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.InterconnectLink result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.deviceId_ = deviceId_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.type_ = type_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.strength_ = strength_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.InterconnectLink) { @@ -401,6 +380,7 @@ public Builder mergeFrom(org.tensorflow.proto.InterconnectLink other) { } if (!other.getType().isEmpty()) { type_ = other.type_; + bitField0_ |= 0x00000002; onChanged(); } if (other.getStrength() != 0) { @@ -434,17 +414,17 @@ public Builder mergeFrom( break; case 8: { deviceId_ = input.readInt32(); - + bitField0_ |= 0x00000001; break; } // case 8 case 18: { type_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000002; break; } // case 18 case 24: { strength_ = input.readInt32(); - + bitField0_ |= 0x00000004; break; } // case 24 default: { @@ -462,6 +442,7 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private int deviceId_ ; /** @@ -478,8 +459,9 @@ public int getDeviceId() { * @return This builder for chaining. */ public Builder setDeviceId(int value) { - + deviceId_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -488,7 +470,7 @@ public Builder setDeviceId(int value) { * @return This builder for chaining. */ public Builder clearDeviceId() { - + bitField0_ = (bitField0_ & ~0x00000001); deviceId_ = 0; onChanged(); return this; @@ -535,11 +517,9 @@ public java.lang.String getType() { */ public Builder setType( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } type_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -548,8 +528,8 @@ public Builder setType( * @return This builder for chaining. */ public Builder clearType() { - type_ = getDefaultInstance().getType(); + bitField0_ = (bitField0_ & ~0x00000002); onChanged(); return this; } @@ -560,12 +540,10 @@ public Builder clearType() { */ public Builder setTypeBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); type_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -585,8 +563,9 @@ public int getStrength() { * @return This builder for chaining. */ public Builder setStrength(int value) { - + strength_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -595,23 +574,11 @@ public Builder setStrength(int value) { * @return This builder for chaining. */ public Builder clearStrength() { - + bitField0_ = (bitField0_ & ~0x00000004); strength_ = 0; onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.InterconnectLink) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/InterconnectLinkOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/InterconnectLinkOrBuilder.java index cfa368ba915..fa3786c27ca 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/InterconnectLinkOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/InterconnectLinkOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/device_attributes.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/JobDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/JobDef.java index e131789b1fc..0e6e8660937 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/JobDef.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/JobDef.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/cluster.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -11,30 +13,27 @@ * Protobuf type {@code tensorflow.JobDef} */ public final class JobDef extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.JobDef) JobDefOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + JobDef.class.getName()); + } // Use JobDef.newBuilder() to construct. - private JobDef(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private JobDef(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private JobDef() { name_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new JobDef(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.ClusterProtos.internal_static_tensorflow_JobDef_descriptor; @@ -42,7 +41,7 @@ protected java.lang.Object newInstance( @SuppressWarnings({"rawtypes"}) @java.lang.Override - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 2: @@ -53,7 +52,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ClusterProtos.internal_static_tensorflow_JobDef_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -61,7 +60,8 @@ protected com.google.protobuf.MapField internalGetMapField( } public static final int NAME_FIELD_NUMBER = 1; - private volatile java.lang.Object name_; + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; /** *
        * The name of this job.
    @@ -118,6 +118,7 @@ private static final class TasksDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.STRING,
                     "");
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.Integer, java.lang.String> tasks_;
       private com.google.protobuf.MapField
    @@ -128,27 +129,27 @@ private static final class TasksDefaultEntryHolder {
         }
         return tasks_;
       }
    -
       public int getTasksCount() {
         return internalGetTasks().getMap().size();
       }
       /**
        * 
        * Mapping from task ID to "hostname:port" string.
    +   *
        * If the `name` field contains "worker", and the `tasks` map contains a
        * mapping from 7 to "example.org:2222", then the device prefix
        * "/job:worker/task:7" will be assigned to "example.org:2222".
    +   *
        * If a job has multiple replicas, host-ports will be comma-delimited, with
        * one entry for each replica.
        * 
    * * map<int32, string> tasks = 2; */ - @java.lang.Override public boolean containsTasks( int key) { - + return internalGetTasks().getMap().containsKey(key); } /** @@ -162,9 +163,11 @@ public java.util.Map getTasks() { /** *
        * Mapping from task ID to "hostname:port" string.
    +   *
        * If the `name` field contains "worker", and the `tasks` map contains a
        * mapping from 7 to "example.org:2222", then the device prefix
        * "/job:worker/task:7" will be assigned to "example.org:2222".
    +   *
        * If a job has multiple replicas, host-ports will be comma-delimited, with
        * one entry for each replica.
        * 
    @@ -172,16 +175,17 @@ public java.util.Map getTasks() { * map<int32, string> tasks = 2; */ @java.lang.Override - public java.util.Map getTasksMap() { return internalGetTasks().getMap(); } /** *
        * Mapping from task ID to "hostname:port" string.
    +   *
        * If the `name` field contains "worker", and the `tasks` map contains a
        * mapping from 7 to "example.org:2222", then the device prefix
        * "/job:worker/task:7" will be assigned to "example.org:2222".
    +   *
        * If a job has multiple replicas, host-ports will be comma-delimited, with
        * one entry for each replica.
        * 
    @@ -189,11 +193,12 @@ public java.util.Map getTasksMap() { * map<int32, string> tasks = 2; */ @java.lang.Override - - public java.lang.String getTasksOrDefault( + public /* nullable */ +java.lang.String getTasksOrDefault( int key, - java.lang.String defaultValue) { - + /* nullable */ +java.lang.String defaultValue) { + java.util.Map map = internalGetTasks().getMap(); return map.containsKey(key) ? map.get(key) : defaultValue; @@ -201,9 +206,11 @@ public java.lang.String getTasksOrDefault( /** *
        * Mapping from task ID to "hostname:port" string.
    +   *
        * If the `name` field contains "worker", and the `tasks` map contains a
        * mapping from 7 to "example.org:2222", then the device prefix
        * "/job:worker/task:7" will be assigned to "example.org:2222".
    +   *
        * If a job has multiple replicas, host-ports will be comma-delimited, with
        * one entry for each replica.
        * 
    @@ -211,10 +218,9 @@ public java.lang.String getTasksOrDefault( * map<int32, string> tasks = 2; */ @java.lang.Override - public java.lang.String getTasksOrThrow( int key) { - + java.util.Map map = internalGetTasks().getMap(); if (!map.containsKey(key)) { @@ -237,10 +243,10 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, name_); } - com.google.protobuf.GeneratedMessageV3 + com.google.protobuf.GeneratedMessage .serializeIntegerMapTo( output, internalGetTasks(), @@ -255,8 +261,8 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_); } for (java.util.Map.Entry entry : internalGetTasks().getMap().entrySet()) { @@ -343,39 +349,41 @@ public static org.tensorflow.proto.JobDef parseFrom( } public static org.tensorflow.proto.JobDef parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.JobDef parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.JobDef parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.JobDef parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.JobDef parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.JobDef parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -395,7 +403,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -407,7 +415,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.JobDef} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.JobDef) org.tensorflow.proto.JobDefOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -416,7 +424,7 @@ public static final class Builder extends } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 2: @@ -427,7 +435,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMutableMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( int number) { switch (number) { case 2: @@ -438,7 +446,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ClusterProtos.internal_static_tensorflow_JobDef_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -451,15 +459,15 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; name_ = ""; - internalGetMutableTasks().clear(); return this; } @@ -487,46 +495,22 @@ public org.tensorflow.proto.JobDef build() { @java.lang.Override public org.tensorflow.proto.JobDef buildPartial() { org.tensorflow.proto.JobDef result = new org.tensorflow.proto.JobDef(this); - int from_bitField0_ = bitField0_; - result.name_ = name_; - result.tasks_ = internalGetTasks(); - result.tasks_.makeImmutable(); + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.JobDef result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.tasks_ = internalGetTasks(); + result.tasks_.makeImmutable(); + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.JobDef) { @@ -541,10 +525,12 @@ public Builder mergeFrom(org.tensorflow.proto.JobDef other) { if (other == org.tensorflow.proto.JobDef.getDefaultInstance()) return this; if (!other.getName().isEmpty()) { name_ = other.name_; + bitField0_ |= 0x00000001; onChanged(); } internalGetMutableTasks().mergeFrom( other.internalGetTasks()); + bitField0_ |= 0x00000002; this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -573,7 +559,7 @@ public Builder mergeFrom( break; case 10: { name_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000001; break; } // case 10 case 18: { @@ -582,6 +568,7 @@ public Builder mergeFrom( TasksDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); internalGetMutableTasks().getMutableMap().put( tasks__.getKey(), tasks__.getValue()); + bitField0_ |= 0x00000002; break; } // case 18 default: { @@ -654,11 +641,9 @@ public java.lang.String getName() { */ public Builder setName( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } name_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -671,8 +656,8 @@ public Builder setName( * @return This builder for chaining. */ public Builder clearName() { - name_ = getDefaultInstance().getName(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } @@ -687,12 +672,10 @@ public Builder clearName() { */ public Builder setNameBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); name_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -700,7 +683,7 @@ public Builder setNameBytes( private com.google.protobuf.MapField< java.lang.Integer, java.lang.String> tasks_; private com.google.protobuf.MapField - internalGetTasks() { + internalGetTasks() { if (tasks_ == null) { return com.google.protobuf.MapField.emptyMapField( TasksDefaultEntryHolder.defaultEntry); @@ -708,8 +691,7 @@ public Builder setNameBytes( return tasks_; } private com.google.protobuf.MapField - internalGetMutableTasks() { - onChanged();; + internalGetMutableTasks() { if (tasks_ == null) { tasks_ = com.google.protobuf.MapField.newMapField( TasksDefaultEntryHolder.defaultEntry); @@ -717,29 +699,31 @@ public Builder setNameBytes( if (!tasks_.isMutable()) { tasks_ = tasks_.copy(); } + bitField0_ |= 0x00000002; + onChanged(); return tasks_; } - public int getTasksCount() { return internalGetTasks().getMap().size(); } /** *
          * Mapping from task ID to "hostname:port" string.
    +     *
          * If the `name` field contains "worker", and the `tasks` map contains a
          * mapping from 7 to "example.org:2222", then the device prefix
          * "/job:worker/task:7" will be assigned to "example.org:2222".
    +     *
          * If a job has multiple replicas, host-ports will be comma-delimited, with
          * one entry for each replica.
          * 
    * * map<int32, string> tasks = 2; */ - @java.lang.Override public boolean containsTasks( int key) { - + return internalGetTasks().getMap().containsKey(key); } /** @@ -753,9 +737,11 @@ public java.util.Map getTasks() { /** *
          * Mapping from task ID to "hostname:port" string.
    +     *
          * If the `name` field contains "worker", and the `tasks` map contains a
          * mapping from 7 to "example.org:2222", then the device prefix
          * "/job:worker/task:7" will be assigned to "example.org:2222".
    +     *
          * If a job has multiple replicas, host-ports will be comma-delimited, with
          * one entry for each replica.
          * 
    @@ -763,16 +749,17 @@ public java.util.Map getTasks() { * map<int32, string> tasks = 2; */ @java.lang.Override - public java.util.Map getTasksMap() { return internalGetTasks().getMap(); } /** *
          * Mapping from task ID to "hostname:port" string.
    +     *
          * If the `name` field contains "worker", and the `tasks` map contains a
          * mapping from 7 to "example.org:2222", then the device prefix
          * "/job:worker/task:7" will be assigned to "example.org:2222".
    +     *
          * If a job has multiple replicas, host-ports will be comma-delimited, with
          * one entry for each replica.
          * 
    @@ -780,11 +767,12 @@ public java.util.Map getTasksMap() { * map<int32, string> tasks = 2; */ @java.lang.Override - - public java.lang.String getTasksOrDefault( + public /* nullable */ +java.lang.String getTasksOrDefault( int key, - java.lang.String defaultValue) { - + /* nullable */ +java.lang.String defaultValue) { + java.util.Map map = internalGetTasks().getMap(); return map.containsKey(key) ? map.get(key) : defaultValue; @@ -792,9 +780,11 @@ public java.lang.String getTasksOrDefault( /** *
          * Mapping from task ID to "hostname:port" string.
    +     *
          * If the `name` field contains "worker", and the `tasks` map contains a
          * mapping from 7 to "example.org:2222", then the device prefix
          * "/job:worker/task:7" will be assigned to "example.org:2222".
    +     *
          * If a job has multiple replicas, host-ports will be comma-delimited, with
          * one entry for each replica.
          * 
    @@ -802,10 +792,9 @@ public java.lang.String getTasksOrDefault( * map<int32, string> tasks = 2; */ @java.lang.Override - public java.lang.String getTasksOrThrow( int key) { - + java.util.Map map = internalGetTasks().getMap(); if (!map.containsKey(key)) { @@ -813,8 +802,8 @@ public java.lang.String getTasksOrThrow( } return map.get(key); } - public Builder clearTasks() { + bitField0_ = (bitField0_ & ~0x00000002); internalGetMutableTasks().getMutableMap() .clear(); return this; @@ -822,19 +811,20 @@ public Builder clearTasks() { /** *
          * Mapping from task ID to "hostname:port" string.
    +     *
          * If the `name` field contains "worker", and the `tasks` map contains a
          * mapping from 7 to "example.org:2222", then the device prefix
          * "/job:worker/task:7" will be assigned to "example.org:2222".
    +     *
          * If a job has multiple replicas, host-ports will be comma-delimited, with
          * one entry for each replica.
          * 
    * * map<int32, string> tasks = 2; */ - public Builder removeTasks( int key) { - + internalGetMutableTasks().getMutableMap() .remove(key); return this; @@ -844,15 +834,18 @@ public Builder removeTasks( */ @java.lang.Deprecated public java.util.Map - getMutableTasks() { + getMutableTasks() { + bitField0_ |= 0x00000002; return internalGetMutableTasks().getMutableMap(); } /** *
          * Mapping from task ID to "hostname:port" string.
    +     *
          * If the `name` field contains "worker", and the `tasks` map contains a
          * mapping from 7 to "example.org:2222", then the device prefix
          * "/job:worker/task:7" will be assigned to "example.org:2222".
    +     *
          * If a job has multiple replicas, host-ports will be comma-delimited, with
          * one entry for each replica.
          * 
    @@ -862,46 +855,34 @@ public Builder removeTasks( public Builder putTasks( int key, java.lang.String value) { - - if (value == null) { - throw new NullPointerException("map value"); -} + if (value == null) { throw new NullPointerException("map value"); } internalGetMutableTasks().getMutableMap() .put(key, value); + bitField0_ |= 0x00000002; return this; } /** *
          * Mapping from task ID to "hostname:port" string.
    +     *
          * If the `name` field contains "worker", and the `tasks` map contains a
          * mapping from 7 to "example.org:2222", then the device prefix
          * "/job:worker/task:7" will be assigned to "example.org:2222".
    +     *
          * If a job has multiple replicas, host-ports will be comma-delimited, with
          * one entry for each replica.
          * 
    * * map<int32, string> tasks = 2; */ - public Builder putAllTasks( java.util.Map values) { internalGetMutableTasks().getMutableMap() .putAll(values); + bitField0_ |= 0x00000002; return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.JobDef) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/JobDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/JobDefOrBuilder.java index f7ba9e5e2f7..3de76e91c40 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/JobDefOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/JobDefOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/cluster.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -30,9 +32,11 @@ public interface JobDefOrBuilder extends /** *
        * Mapping from task ID to "hostname:port" string.
    +   *
        * If the `name` field contains "worker", and the `tasks` map contains a
        * mapping from 7 to "example.org:2222", then the device prefix
        * "/job:worker/task:7" will be assigned to "example.org:2222".
    +   *
        * If a job has multiple replicas, host-ports will be comma-delimited, with
        * one entry for each replica.
        * 
    @@ -43,9 +47,11 @@ public interface JobDefOrBuilder extends /** *
        * Mapping from task ID to "hostname:port" string.
    +   *
        * If the `name` field contains "worker", and the `tasks` map contains a
        * mapping from 7 to "example.org:2222", then the device prefix
        * "/job:worker/task:7" will be assigned to "example.org:2222".
    +   *
        * If a job has multiple replicas, host-ports will be comma-delimited, with
        * one entry for each replica.
        * 
    @@ -63,9 +69,11 @@ boolean containsTasks( /** *
        * Mapping from task ID to "hostname:port" string.
    +   *
        * If the `name` field contains "worker", and the `tasks` map contains a
        * mapping from 7 to "example.org:2222", then the device prefix
        * "/job:worker/task:7" will be assigned to "example.org:2222".
    +   *
        * If a job has multiple replicas, host-ports will be comma-delimited, with
        * one entry for each replica.
        * 
    @@ -77,16 +85,17 @@ boolean containsTasks( /** *
        * Mapping from task ID to "hostname:port" string.
    +   *
        * If the `name` field contains "worker", and the `tasks` map contains a
        * mapping from 7 to "example.org:2222", then the device prefix
        * "/job:worker/task:7" will be assigned to "example.org:2222".
    +   *
        * If a job has multiple replicas, host-ports will be comma-delimited, with
        * one entry for each replica.
        * 
    * * map<int32, string> tasks = 2; */ - /* nullable */ java.lang.String getTasksOrDefault( int key, @@ -95,16 +104,17 @@ java.lang.String getTasksOrDefault( /** *
        * Mapping from task ID to "hostname:port" string.
    +   *
        * If the `name` field contains "worker", and the `tasks` map contains a
        * mapping from 7 to "example.org:2222", then the device prefix
        * "/job:worker/task:7" will be assigned to "example.org:2222".
    +   *
        * If a job has multiple replicas, host-ports will be comma-delimited, with
        * one entry for each replica.
        * 
    * * map<int32, string> tasks = 2; */ - java.lang.String getTasksOrThrow( int key); } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/JobDeviceFilters.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/JobDeviceFilters.java index 606381d8fb2..cbddbbfd0d0 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/JobDeviceFilters.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/JobDeviceFilters.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/device_filters.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -11,30 +13,27 @@ * Protobuf type {@code tensorflow.JobDeviceFilters} */ public final class JobDeviceFilters extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.JobDeviceFilters) JobDeviceFiltersOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + JobDeviceFilters.class.getName()); + } // Use JobDeviceFilters.newBuilder() to construct. - private JobDeviceFilters(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private JobDeviceFilters(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private JobDeviceFilters() { name_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new JobDeviceFilters(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.DeviceFiltersProtos.internal_static_tensorflow_JobDeviceFilters_descriptor; @@ -42,7 +41,7 @@ protected java.lang.Object newInstance( @SuppressWarnings({"rawtypes"}) @java.lang.Override - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 2: @@ -53,7 +52,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.DeviceFiltersProtos.internal_static_tensorflow_JobDeviceFilters_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -61,7 +60,8 @@ protected com.google.protobuf.MapField internalGetMapField( } public static final int NAME_FIELD_NUMBER = 1; - private volatile java.lang.Object name_; + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; /** *
        * The name of this job.
    @@ -118,6 +118,7 @@ private static final class TasksDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.MESSAGE,
                     org.tensorflow.proto.TaskDeviceFilters.getDefaultInstance());
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.Integer, org.tensorflow.proto.TaskDeviceFilters> tasks_;
       private com.google.protobuf.MapField
    @@ -128,7 +129,6 @@ private static final class TasksDefaultEntryHolder {
         }
         return tasks_;
       }
    -
       public int getTasksCount() {
         return internalGetTasks().getMap().size();
       }
    @@ -139,11 +139,10 @@ public int getTasksCount() {
        *
        * map<int32, .tensorflow.TaskDeviceFilters> tasks = 2;
        */
    -
       @java.lang.Override
       public boolean containsTasks(
           int key) {
    -    
    +
         return internalGetTasks().getMap().containsKey(key);
       }
       /**
    @@ -162,7 +161,6 @@ public java.util.Map
        * map<int32, .tensorflow.TaskDeviceFilters> tasks = 2;
        */
       @java.lang.Override
    -
       public java.util.Map getTasksMap() {
         return internalGetTasks().getMap();
       }
    @@ -174,11 +172,12 @@ public java.util.Map
        * map<int32, .tensorflow.TaskDeviceFilters> tasks = 2;
        */
       @java.lang.Override
    -
    -  public org.tensorflow.proto.TaskDeviceFilters getTasksOrDefault(
    +  public /* nullable */
    +org.tensorflow.proto.TaskDeviceFilters getTasksOrDefault(
           int key,
    -      org.tensorflow.proto.TaskDeviceFilters defaultValue) {
    -    
    +      /* nullable */
    +org.tensorflow.proto.TaskDeviceFilters defaultValue) {
    +
         java.util.Map map =
             internalGetTasks().getMap();
         return map.containsKey(key) ? map.get(key) : defaultValue;
    @@ -191,10 +190,9 @@ public org.tensorflow.proto.TaskDeviceFilters getTasksOrDefault(
        * map<int32, .tensorflow.TaskDeviceFilters> tasks = 2;
        */
       @java.lang.Override
    -
       public org.tensorflow.proto.TaskDeviceFilters getTasksOrThrow(
           int key) {
    -    
    +
         java.util.Map map =
             internalGetTasks().getMap();
         if (!map.containsKey(key)) {
    @@ -217,10 +215,10 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
         }
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeIntegerMapTo(
             output,
             internalGetTasks(),
    @@ -235,8 +233,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
         }
         for (java.util.Map.Entry entry
              : internalGetTasks().getMap().entrySet()) {
    @@ -323,39 +321,41 @@ public static org.tensorflow.proto.JobDeviceFilters parseFrom(
       }
       public static org.tensorflow.proto.JobDeviceFilters parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.JobDeviceFilters parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.JobDeviceFilters parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.JobDeviceFilters parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.JobDeviceFilters parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.JobDeviceFilters parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -375,7 +375,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -387,7 +387,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.JobDeviceFilters}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.JobDeviceFilters)
           org.tensorflow.proto.JobDeviceFiltersOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -396,7 +396,7 @@ public static final class Builder extends
         }
     
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
             int number) {
           switch (number) {
             case 2:
    @@ -407,7 +407,7 @@ protected com.google.protobuf.MapField internalGetMapField(
           }
         }
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMutableMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(
             int number) {
           switch (number) {
             case 2:
    @@ -418,7 +418,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
           }
         }
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DeviceFiltersProtos.internal_static_tensorflow_JobDeviceFilters_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -431,15 +431,15 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           name_ = "";
    -
           internalGetMutableTasks().clear();
           return this;
         }
    @@ -467,46 +467,21 @@ public org.tensorflow.proto.JobDeviceFilters build() {
         @java.lang.Override
         public org.tensorflow.proto.JobDeviceFilters buildPartial() {
           org.tensorflow.proto.JobDeviceFilters result = new org.tensorflow.proto.JobDeviceFilters(this);
    -      int from_bitField0_ = bitField0_;
    -      result.name_ = name_;
    -      result.tasks_ = internalGetTasks();
    -      result.tasks_.makeImmutable();
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.JobDeviceFilters result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.name_ = name_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.tasks_ = internalGetTasks().build(TasksDefaultEntryHolder.defaultEntry);
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.JobDeviceFilters) {
    @@ -521,10 +496,12 @@ public Builder mergeFrom(org.tensorflow.proto.JobDeviceFilters other) {
           if (other == org.tensorflow.proto.JobDeviceFilters.getDefaultInstance()) return this;
           if (!other.getName().isEmpty()) {
             name_ = other.name_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           internalGetMutableTasks().mergeFrom(
               other.internalGetTasks());
    +      bitField0_ |= 0x00000002;
           this.mergeUnknownFields(other.getUnknownFields());
           onChanged();
           return this;
    @@ -553,15 +530,16 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   name_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   com.google.protobuf.MapEntry
                   tasks__ = input.readMessage(
                       TasksDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
    -              internalGetMutableTasks().getMutableMap().put(
    +              internalGetMutableTasks().ensureBuilderMap().put(
                       tasks__.getKey(), tasks__.getValue());
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 default: {
    @@ -634,11 +612,9 @@ public java.lang.String getName() {
          */
         public Builder setName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -651,8 +627,8 @@ public Builder setName(
          * @return This builder for chaining.
          */
         public Builder clearName() {
    -      
           name_ = getDefaultInstance().getName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -667,41 +643,48 @@ public Builder clearName() {
          */
         public Builder setNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.MapField<
    -        java.lang.Integer, org.tensorflow.proto.TaskDeviceFilters> tasks_;
    -    private com.google.protobuf.MapField
    -    internalGetTasks() {
    +    private static final class TasksConverter implements com.google.protobuf.MapFieldBuilder.Converter {
    +      @java.lang.Override
    +      public org.tensorflow.proto.TaskDeviceFilters build(org.tensorflow.proto.TaskDeviceFiltersOrBuilder val) {
    +        if (val instanceof org.tensorflow.proto.TaskDeviceFilters) { return (org.tensorflow.proto.TaskDeviceFilters) val; }
    +        return ((org.tensorflow.proto.TaskDeviceFilters.Builder) val).build();
    +      }
    +
    +      @java.lang.Override
    +      public com.google.protobuf.MapEntry defaultEntry() {
    +        return TasksDefaultEntryHolder.defaultEntry;
    +      }
    +    };
    +    private static final TasksConverter tasksConverter = new TasksConverter();
    +
    +    private com.google.protobuf.MapFieldBuilder<
    +        java.lang.Integer, org.tensorflow.proto.TaskDeviceFiltersOrBuilder, org.tensorflow.proto.TaskDeviceFilters, org.tensorflow.proto.TaskDeviceFilters.Builder> tasks_;
    +    private com.google.protobuf.MapFieldBuilder
    +        internalGetTasks() {
           if (tasks_ == null) {
    -        return com.google.protobuf.MapField.emptyMapField(
    -            TasksDefaultEntryHolder.defaultEntry);
    +        return new com.google.protobuf.MapFieldBuilder<>(tasksConverter);
           }
           return tasks_;
         }
    -    private com.google.protobuf.MapField
    -    internalGetMutableTasks() {
    -      onChanged();;
    +    private com.google.protobuf.MapFieldBuilder
    +        internalGetMutableTasks() {
           if (tasks_ == null) {
    -        tasks_ = com.google.protobuf.MapField.newMapField(
    -            TasksDefaultEntryHolder.defaultEntry);
    -      }
    -      if (!tasks_.isMutable()) {
    -        tasks_ = tasks_.copy();
    +        tasks_ = new com.google.protobuf.MapFieldBuilder<>(tasksConverter);
           }
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return tasks_;
         }
    -
         public int getTasksCount() {
    -      return internalGetTasks().getMap().size();
    +      return internalGetTasks().ensureBuilderMap().size();
         }
         /**
          * 
    @@ -710,12 +693,11 @@ public int getTasksCount() {
          *
          * map<int32, .tensorflow.TaskDeviceFilters> tasks = 2;
          */
    -
         @java.lang.Override
         public boolean containsTasks(
             int key) {
    -      
    -      return internalGetTasks().getMap().containsKey(key);
    +
    +      return internalGetTasks().ensureBuilderMap().containsKey(key);
         }
         /**
          * Use {@link #getTasksMap()} instead.
    @@ -733,9 +715,8 @@ public java.util.Map
          * map<int32, .tensorflow.TaskDeviceFilters> tasks = 2;
          */
         @java.lang.Override
    -
         public java.util.Map getTasksMap() {
    -      return internalGetTasks().getMap();
    +      return internalGetTasks().getImmutableMap();
         }
         /**
          * 
    @@ -745,14 +726,14 @@ public java.util.Map
          * map<int32, .tensorflow.TaskDeviceFilters> tasks = 2;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.TaskDeviceFilters getTasksOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.TaskDeviceFilters getTasksOrDefault(
             int key,
    -        org.tensorflow.proto.TaskDeviceFilters defaultValue) {
    -      
    -      java.util.Map map =
    -          internalGetTasks().getMap();
    -      return map.containsKey(key) ? map.get(key) : defaultValue;
    +        /* nullable */
    +org.tensorflow.proto.TaskDeviceFilters defaultValue) {
    +
    +      java.util.Map map = internalGetMutableTasks().ensureBuilderMap();
    +      return map.containsKey(key) ? tasksConverter.build(map.get(key)) : defaultValue;
         }
         /**
          * 
    @@ -762,21 +743,18 @@ public org.tensorflow.proto.TaskDeviceFilters getTasksOrDefault(
          * map<int32, .tensorflow.TaskDeviceFilters> tasks = 2;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.TaskDeviceFilters getTasksOrThrow(
             int key) {
    -      
    -      java.util.Map map =
    -          internalGetTasks().getMap();
    +
    +      java.util.Map map = internalGetMutableTasks().ensureBuilderMap();
           if (!map.containsKey(key)) {
             throw new java.lang.IllegalArgumentException();
           }
    -      return map.get(key);
    +      return tasksConverter.build(map.get(key));
         }
    -
         public Builder clearTasks() {
    -      internalGetMutableTasks().getMutableMap()
    -          .clear();
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      internalGetMutableTasks().clear();
           return this;
         }
         /**
    @@ -786,11 +764,10 @@ public Builder clearTasks() {
          *
          * map<int32, .tensorflow.TaskDeviceFilters> tasks = 2;
          */
    -
         public Builder removeTasks(
             int key) {
    -      
    -      internalGetMutableTasks().getMutableMap()
    +
    +      internalGetMutableTasks().ensureBuilderMap()
               .remove(key);
           return this;
         }
    @@ -799,8 +776,9 @@ public Builder removeTasks(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableTasks() {
    -      return internalGetMutableTasks().getMutableMap();
    +        getMutableTasks() {
    +      bitField0_ |= 0x00000002;
    +      return internalGetMutableTasks().ensureMessageMap();
         }
         /**
          * 
    @@ -812,13 +790,11 @@ public Builder removeTasks(
         public Builder putTasks(
             int key,
             org.tensorflow.proto.TaskDeviceFilters value) {
    -      
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
     
    -      internalGetMutableTasks().getMutableMap()
    +      if (value == null) { throw new NullPointerException("map value"); }
    +      internalGetMutableTasks().ensureBuilderMap()
               .put(key, value);
    +      bitField0_ |= 0x00000002;
           return this;
         }
         /**
    @@ -828,26 +804,40 @@ public Builder putTasks(
          *
          * map<int32, .tensorflow.TaskDeviceFilters> tasks = 2;
          */
    -
         public Builder putAllTasks(
             java.util.Map values) {
    -      internalGetMutableTasks().getMutableMap()
    +      for (java.util.Map.Entry e : values.entrySet()) {
    +        if (e.getKey() == null || e.getValue() == null) {
    +          throw new NullPointerException();
    +        }
    +      }
    +      internalGetMutableTasks().ensureBuilderMap()
               .putAll(values);
    +      bitField0_ |= 0x00000002;
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    +    /**
    +     * 
    +     * Mapping from task ID to task device filters.
    +     * 
    + * + * map<int32, .tensorflow.TaskDeviceFilters> tasks = 2; + */ + public org.tensorflow.proto.TaskDeviceFilters.Builder putTasksBuilderIfAbsent( + int key) { + java.util.Map builderMap = internalGetMutableTasks().ensureBuilderMap(); + org.tensorflow.proto.TaskDeviceFiltersOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.TaskDeviceFilters.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.TaskDeviceFilters) { + entry = ((org.tensorflow.proto.TaskDeviceFilters) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.TaskDeviceFilters.Builder) entry; } - // @@protoc_insertion_point(builder_scope:tensorflow.JobDeviceFilters) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/JobDeviceFiltersOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/JobDeviceFiltersOrBuilder.java index 7108c3d23ce..3988b3ef971 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/JobDeviceFiltersOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/JobDeviceFiltersOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/device_filters.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -66,7 +68,6 @@ boolean containsTasks( * * map<int32, .tensorflow.TaskDeviceFilters> tasks = 2; */ - /* nullable */ org.tensorflow.proto.TaskDeviceFilters getTasksOrDefault( int key, @@ -79,7 +80,6 @@ org.tensorflow.proto.TaskDeviceFilters getTasksOrDefault( * * map<int32, .tensorflow.TaskDeviceFilters> tasks = 2; */ - org.tensorflow.proto.TaskDeviceFilters getTasksOrThrow( int key); } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelDef.java index 760847ecb03..8efe1c1e228 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelDef.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelDef.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/kernel_def.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,41 +9,39 @@ * Protobuf type {@code tensorflow.KernelDef} */ public final class KernelDef extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.KernelDef) KernelDefOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + KernelDef.class.getName()); + } // Use KernelDef.newBuilder() to construct. - private KernelDef(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private KernelDef(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private KernelDef() { op_ = ""; deviceType_ = ""; constraint_ = java.util.Collections.emptyList(); - hostMemoryArg_ = com.google.protobuf.LazyStringArrayList.EMPTY; + hostMemoryArg_ = + com.google.protobuf.LazyStringArrayList.emptyList(); label_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new KernelDef(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.KernelDefProtos.internal_static_tensorflow_KernelDef_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.KernelDefProtos.internal_static_tensorflow_KernelDef_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -106,45 +106,44 @@ public interface AttrConstraintOrBuilder extends * Protobuf type {@code tensorflow.KernelDef.AttrConstraint} */ public static final class AttrConstraint extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.KernelDef.AttrConstraint) AttrConstraintOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + AttrConstraint.class.getName()); + } // Use AttrConstraint.newBuilder() to construct. - private AttrConstraint(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private AttrConstraint(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private AttrConstraint() { name_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new AttrConstraint(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.KernelDefProtos.internal_static_tensorflow_KernelDef_AttrConstraint_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.KernelDefProtos.internal_static_tensorflow_KernelDef_AttrConstraint_fieldAccessorTable .ensureFieldAccessorsInitialized( org.tensorflow.proto.KernelDef.AttrConstraint.class, org.tensorflow.proto.KernelDef.AttrConstraint.Builder.class); } + private int bitField0_; public static final int NAME_FIELD_NUMBER = 1; - private volatile java.lang.Object name_; + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; /** *
          * Name of an attr from the Op.
    @@ -202,7 +201,7 @@ public java.lang.String getName() {
          */
         @java.lang.Override
         public boolean hasAllowedValues() {
    -      return allowedValues_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -227,7 +226,7 @@ public org.tensorflow.proto.AttrValue getAllowedValues() {
          */
         @java.lang.Override
         public org.tensorflow.proto.AttrValueOrBuilder getAllowedValuesOrBuilder() {
    -      return getAllowedValues();
    +      return allowedValues_ == null ? org.tensorflow.proto.AttrValue.getDefaultInstance() : allowedValues_;
         }
     
         private byte memoizedIsInitialized = -1;
    @@ -244,10 +243,10 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
           }
    -      if (allowedValues_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(2, getAllowedValues());
           }
           getUnknownFields().writeTo(output);
    @@ -259,10 +258,10 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
           }
    -      if (allowedValues_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(2, getAllowedValues());
           }
    @@ -344,39 +343,41 @@ public static org.tensorflow.proto.KernelDef.AttrConstraint parseFrom(
         }
         public static org.tensorflow.proto.KernelDef.AttrConstraint parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.KernelDef.AttrConstraint parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.KernelDef.AttrConstraint parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.KernelDef.AttrConstraint parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.KernelDef.AttrConstraint parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.KernelDef.AttrConstraint parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -396,7 +397,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -404,7 +405,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.KernelDef.AttrConstraint}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.KernelDef.AttrConstraint)
             org.tensorflow.proto.KernelDef.AttrConstraintOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -413,7 +414,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.KernelDefProtos.internal_static_tensorflow_KernelDef_AttrConstraint_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -422,23 +423,28 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.KernelDef.AttrConstraint.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getAllowedValuesFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             name_ = "";
    -
    -        if (allowedValuesBuilder_ == null) {
    -          allowedValues_ = null;
    -        } else {
    -          allowedValues_ = null;
    +        allowedValues_ = null;
    +        if (allowedValuesBuilder_ != null) {
    +          allowedValuesBuilder_.dispose();
               allowedValuesBuilder_ = null;
             }
             return this;
    @@ -467,48 +473,26 @@ public org.tensorflow.proto.KernelDef.AttrConstraint build() {
           @java.lang.Override
           public org.tensorflow.proto.KernelDef.AttrConstraint buildPartial() {
             org.tensorflow.proto.KernelDef.AttrConstraint result = new org.tensorflow.proto.KernelDef.AttrConstraint(this);
    -        result.name_ = name_;
    -        if (allowedValuesBuilder_ == null) {
    -          result.allowedValues_ = allowedValues_;
    -        } else {
    -          result.allowedValues_ = allowedValuesBuilder_.build();
    -        }
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.KernelDef.AttrConstraint result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.name_ = name_;
    +        }
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.allowedValues_ = allowedValuesBuilder_ == null
    +              ? allowedValues_
    +              : allowedValuesBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.KernelDef.AttrConstraint) {
    @@ -523,6 +507,7 @@ public Builder mergeFrom(org.tensorflow.proto.KernelDef.AttrConstraint other) {
             if (other == org.tensorflow.proto.KernelDef.AttrConstraint.getDefaultInstance()) return this;
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (other.hasAllowedValues()) {
    @@ -556,14 +541,14 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     input.readMessage(
                         getAllowedValuesFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   default: {
    @@ -581,6 +566,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private java.lang.Object name_ = "";
           /**
    @@ -635,11 +621,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -652,8 +636,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -668,18 +652,16 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
     
           private org.tensorflow.proto.AttrValue allowedValues_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.AttrValue, org.tensorflow.proto.AttrValue.Builder, org.tensorflow.proto.AttrValueOrBuilder> allowedValuesBuilder_;
           /**
            * 
    @@ -691,7 +673,7 @@ public Builder setNameBytes(
            * @return Whether the allowedValues field is set.
            */
           public boolean hasAllowedValues() {
    -        return allowedValuesBuilder_ != null || allowedValues_ != null;
    +        return ((bitField0_ & 0x00000002) != 0);
           }
           /**
            * 
    @@ -723,11 +705,11 @@ public Builder setAllowedValues(org.tensorflow.proto.AttrValue value) {
                 throw new NullPointerException();
               }
               allowedValues_ = value;
    -          onChanged();
             } else {
               allowedValuesBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -742,11 +724,11 @@ public Builder setAllowedValues(
               org.tensorflow.proto.AttrValue.Builder builderForValue) {
             if (allowedValuesBuilder_ == null) {
               allowedValues_ = builderForValue.build();
    -          onChanged();
             } else {
               allowedValuesBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -759,17 +741,20 @@ public Builder setAllowedValues(
            */
           public Builder mergeAllowedValues(org.tensorflow.proto.AttrValue value) {
             if (allowedValuesBuilder_ == null) {
    -          if (allowedValues_ != null) {
    -            allowedValues_ =
    -              org.tensorflow.proto.AttrValue.newBuilder(allowedValues_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000002) != 0) &&
    +            allowedValues_ != null &&
    +            allowedValues_ != org.tensorflow.proto.AttrValue.getDefaultInstance()) {
    +            getAllowedValuesBuilder().mergeFrom(value);
               } else {
                 allowedValues_ = value;
               }
    -          onChanged();
             } else {
               allowedValuesBuilder_.mergeFrom(value);
             }
    -
    +        if (allowedValues_ != null) {
    +          bitField0_ |= 0x00000002;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -781,14 +766,13 @@ public Builder mergeAllowedValues(org.tensorflow.proto.AttrValue value) {
            * .tensorflow.AttrValue allowed_values = 2;
            */
           public Builder clearAllowedValues() {
    -        if (allowedValuesBuilder_ == null) {
    -          allowedValues_ = null;
    -          onChanged();
    -        } else {
    -          allowedValues_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000002);
    +        allowedValues_ = null;
    +        if (allowedValuesBuilder_ != null) {
    +          allowedValuesBuilder_.dispose();
               allowedValuesBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -800,7 +784,7 @@ public Builder clearAllowedValues() {
            * .tensorflow.AttrValue allowed_values = 2;
            */
           public org.tensorflow.proto.AttrValue.Builder getAllowedValuesBuilder() {
    -        
    +        bitField0_ |= 0x00000002;
             onChanged();
             return getAllowedValuesFieldBuilder().getBuilder();
           }
    @@ -828,11 +812,11 @@ public org.tensorflow.proto.AttrValueOrBuilder getAllowedValuesOrBuilder() {
            *
            * .tensorflow.AttrValue allowed_values = 2;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.AttrValue, org.tensorflow.proto.AttrValue.Builder, org.tensorflow.proto.AttrValueOrBuilder> 
               getAllowedValuesFieldBuilder() {
             if (allowedValuesBuilder_ == null) {
    -          allowedValuesBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          allowedValuesBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.AttrValue, org.tensorflow.proto.AttrValue.Builder, org.tensorflow.proto.AttrValueOrBuilder>(
                       getAllowedValues(),
                       getParentForChildren(),
    @@ -841,18 +825,6 @@ public org.tensorflow.proto.AttrValueOrBuilder getAllowedValuesOrBuilder() {
             }
             return allowedValuesBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.KernelDef.AttrConstraint)
         }
    @@ -906,7 +878,8 @@ public org.tensorflow.proto.KernelDef.AttrConstraint getDefaultInstanceForType()
       }
     
       public static final int OP_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object op_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object op_ = "";
       /**
        * 
        * Must match the name of an Op.
    @@ -952,7 +925,8 @@ public java.lang.String getOp() {
       }
     
       public static final int DEVICE_TYPE_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object deviceType_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object deviceType_ = "";
       /**
        * 
        * Type of device this kernel runs on.
    @@ -998,6 +972,7 @@ public java.lang.String getDeviceType() {
       }
     
       public static final int CONSTRAINT_FIELD_NUMBER = 3;
    +  @SuppressWarnings("serial")
       private java.util.List constraint_;
       /**
        * repeated .tensorflow.KernelDef.AttrConstraint constraint = 3;
    @@ -1038,7 +1013,9 @@ public org.tensorflow.proto.KernelDef.AttrConstraintOrBuilder getConstraintOrBui
       }
     
       public static final int HOST_MEMORY_ARG_FIELD_NUMBER = 4;
    -  private com.google.protobuf.LazyStringList hostMemoryArg_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList hostMemoryArg_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * Names of the Op's input_/output_args that reside in host memory
    @@ -1093,7 +1070,8 @@ public java.lang.String getHostMemoryArg(int index) {
       }
     
       public static final int LABEL_FIELD_NUMBER = 5;
    -  private volatile java.lang.Object label_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object label_ = "";
       /**
        * 
        * This allows experimental kernels to be registered for an op that
    @@ -1143,7 +1121,7 @@ public java.lang.String getLabel() {
       }
     
       public static final int PRIORITY_FIELD_NUMBER = 6;
    -  private int priority_;
    +  private int priority_ = 0;
       /**
        * 
        * Prioritization of kernel amongst different devices. By default we assume
    @@ -1173,20 +1151,20 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(op_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, op_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(op_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, op_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceType_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, deviceType_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceType_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, deviceType_);
         }
         for (int i = 0; i < constraint_.size(); i++) {
           output.writeMessage(3, constraint_.get(i));
         }
         for (int i = 0; i < hostMemoryArg_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 4, hostMemoryArg_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 4, hostMemoryArg_.getRaw(i));
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(label_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 5, label_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(label_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 5, label_);
         }
         if (priority_ != 0) {
           output.writeInt32(6, priority_);
    @@ -1200,11 +1178,11 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(op_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, op_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(op_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, op_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(deviceType_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, deviceType_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceType_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, deviceType_);
         }
         for (int i = 0; i < constraint_.size(); i++) {
           size += com.google.protobuf.CodedOutputStream
    @@ -1218,8 +1196,8 @@ public int getSerializedSize() {
           size += dataSize;
           size += 1 * getHostMemoryArgList().size();
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(label_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, label_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(label_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(5, label_);
         }
         if (priority_ != 0) {
           size += com.google.protobuf.CodedOutputStream
    @@ -1318,39 +1296,41 @@ public static org.tensorflow.proto.KernelDef parseFrom(
       }
       public static org.tensorflow.proto.KernelDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.KernelDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.KernelDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.KernelDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.KernelDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.KernelDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -1370,7 +1350,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -1378,7 +1358,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.KernelDef}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.KernelDef)
           org.tensorflow.proto.KernelDefOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1387,7 +1367,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.KernelDefProtos.internal_static_tensorflow_KernelDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -1400,30 +1380,27 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           op_ = "";
    -
           deviceType_ = "";
    -
           if (constraintBuilder_ == null) {
             constraint_ = java.util.Collections.emptyList();
           } else {
             constraint_ = null;
             constraintBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000001);
    -      hostMemoryArg_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000002);
    +      bitField0_ = (bitField0_ & ~0x00000004);
    +      hostMemoryArg_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           label_ = "";
    -
           priority_ = 0;
    -
           return this;
         }
     
    @@ -1450,61 +1427,44 @@ public org.tensorflow.proto.KernelDef build() {
         @java.lang.Override
         public org.tensorflow.proto.KernelDef buildPartial() {
           org.tensorflow.proto.KernelDef result = new org.tensorflow.proto.KernelDef(this);
    -      int from_bitField0_ = bitField0_;
    -      result.op_ = op_;
    -      result.deviceType_ = deviceType_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.KernelDef result) {
           if (constraintBuilder_ == null) {
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((bitField0_ & 0x00000004) != 0)) {
               constraint_ = java.util.Collections.unmodifiableList(constraint_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000004);
             }
             result.constraint_ = constraint_;
           } else {
             result.constraint_ = constraintBuilder_.build();
           }
    -      if (((bitField0_ & 0x00000002) != 0)) {
    -        hostMemoryArg_ = hostMemoryArg_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000002);
    -      }
    -      result.hostMemoryArg_ = hostMemoryArg_;
    -      result.label_ = label_;
    -      result.priority_ = priority_;
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.KernelDef result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.op_ = op_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.deviceType_ = deviceType_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        hostMemoryArg_.makeImmutable();
    +        result.hostMemoryArg_ = hostMemoryArg_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.label_ = label_;
    +      }
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.priority_ = priority_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.KernelDef) {
    @@ -1519,17 +1479,19 @@ public Builder mergeFrom(org.tensorflow.proto.KernelDef other) {
           if (other == org.tensorflow.proto.KernelDef.getDefaultInstance()) return this;
           if (!other.getOp().isEmpty()) {
             op_ = other.op_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getDeviceType().isEmpty()) {
             deviceType_ = other.deviceType_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (constraintBuilder_ == null) {
             if (!other.constraint_.isEmpty()) {
               if (constraint_.isEmpty()) {
                 constraint_ = other.constraint_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000004);
               } else {
                 ensureConstraintIsMutable();
                 constraint_.addAll(other.constraint_);
    @@ -1542,9 +1504,9 @@ public Builder mergeFrom(org.tensorflow.proto.KernelDef other) {
                 constraintBuilder_.dispose();
                 constraintBuilder_ = null;
                 constraint_ = other.constraint_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000004);
                 constraintBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getConstraintFieldBuilder() : null;
               } else {
                 constraintBuilder_.addAllMessages(other.constraint_);
    @@ -1554,7 +1516,7 @@ public Builder mergeFrom(org.tensorflow.proto.KernelDef other) {
           if (!other.hostMemoryArg_.isEmpty()) {
             if (hostMemoryArg_.isEmpty()) {
               hostMemoryArg_ = other.hostMemoryArg_;
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          bitField0_ |= 0x00000008;
             } else {
               ensureHostMemoryArgIsMutable();
               hostMemoryArg_.addAll(other.hostMemoryArg_);
    @@ -1563,6 +1525,7 @@ public Builder mergeFrom(org.tensorflow.proto.KernelDef other) {
           }
           if (!other.getLabel().isEmpty()) {
             label_ = other.label_;
    +        bitField0_ |= 0x00000010;
             onChanged();
           }
           if (other.getPriority() != 0) {
    @@ -1596,12 +1559,12 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   op_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   deviceType_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
    @@ -1625,12 +1588,12 @@ public Builder mergeFrom(
                 } // case 34
                 case 42: {
                   label_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 42
                 case 48: {
                   priority_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 48
                 default: {
    @@ -1703,11 +1666,9 @@ public java.lang.String getOp() {
          */
         public Builder setOp(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           op_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1720,8 +1681,8 @@ public Builder setOp(
          * @return This builder for chaining.
          */
         public Builder clearOp() {
    -      
           op_ = getDefaultInstance().getOp();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -1736,12 +1697,10 @@ public Builder clearOp() {
          */
         public Builder setOpBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           op_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1799,11 +1758,9 @@ public java.lang.String getDeviceType() {
          */
         public Builder setDeviceType(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           deviceType_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1816,8 +1773,8 @@ public Builder setDeviceType(
          * @return This builder for chaining.
          */
         public Builder clearDeviceType() {
    -      
           deviceType_ = getDefaultInstance().getDeviceType();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -1832,12 +1789,10 @@ public Builder clearDeviceType() {
          */
         public Builder setDeviceTypeBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           deviceType_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1845,13 +1800,13 @@ public Builder setDeviceTypeBytes(
         private java.util.List constraint_ =
           java.util.Collections.emptyList();
         private void ensureConstraintIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!((bitField0_ & 0x00000004) != 0)) {
             constraint_ = new java.util.ArrayList(constraint_);
    -        bitField0_ |= 0x00000001;
    +        bitField0_ |= 0x00000004;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.KernelDef.AttrConstraint, org.tensorflow.proto.KernelDef.AttrConstraint.Builder, org.tensorflow.proto.KernelDef.AttrConstraintOrBuilder> constraintBuilder_;
     
         /**
    @@ -1997,7 +1952,7 @@ public Builder addAllConstraint(
         public Builder clearConstraint() {
           if (constraintBuilder_ == null) {
             constraint_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000004);
             onChanged();
           } else {
             constraintBuilder_.clear();
    @@ -2067,14 +2022,14 @@ public org.tensorflow.proto.KernelDef.AttrConstraint.Builder addConstraintBuilde
              getConstraintBuilderList() {
           return getConstraintFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.KernelDef.AttrConstraint, org.tensorflow.proto.KernelDef.AttrConstraint.Builder, org.tensorflow.proto.KernelDef.AttrConstraintOrBuilder> 
             getConstraintFieldBuilder() {
           if (constraintBuilder_ == null) {
    -        constraintBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        constraintBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.KernelDef.AttrConstraint, org.tensorflow.proto.KernelDef.AttrConstraint.Builder, org.tensorflow.proto.KernelDef.AttrConstraintOrBuilder>(
                     constraint_,
    -                ((bitField0_ & 0x00000001) != 0),
    +                ((bitField0_ & 0x00000004) != 0),
                     getParentForChildren(),
                     isClean());
             constraint_ = null;
    @@ -2082,12 +2037,13 @@ public org.tensorflow.proto.KernelDef.AttrConstraint.Builder addConstraintBuilde
           return constraintBuilder_;
         }
     
    -    private com.google.protobuf.LazyStringList hostMemoryArg_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList hostMemoryArg_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureHostMemoryArgIsMutable() {
    -      if (!((bitField0_ & 0x00000002) != 0)) {
    +      if (!hostMemoryArg_.isModifiable()) {
             hostMemoryArg_ = new com.google.protobuf.LazyStringArrayList(hostMemoryArg_);
    -        bitField0_ |= 0x00000002;
    -       }
    +      }
    +      bitField0_ |= 0x00000008;
         }
         /**
          * 
    @@ -2100,7 +2056,8 @@ private void ensureHostMemoryArgIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getHostMemoryArgList() {
    -      return hostMemoryArg_.getUnmodifiableView();
    +      hostMemoryArg_.makeImmutable();
    +      return hostMemoryArg_;
         }
         /**
          * 
    @@ -2154,11 +2111,10 @@ public java.lang.String getHostMemoryArg(int index) {
          */
         public Builder setHostMemoryArg(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureHostMemoryArgIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureHostMemoryArgIsMutable();
           hostMemoryArg_.set(index, value);
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -2174,11 +2130,10 @@ public Builder setHostMemoryArg(
          */
         public Builder addHostMemoryArg(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureHostMemoryArgIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureHostMemoryArgIsMutable();
           hostMemoryArg_.add(value);
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -2197,6 +2152,7 @@ public Builder addAllHostMemoryArg(
           ensureHostMemoryArgIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, hostMemoryArg_);
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -2210,8 +2166,9 @@ public Builder addAllHostMemoryArg(
          * @return This builder for chaining.
          */
         public Builder clearHostMemoryArg() {
    -      hostMemoryArg_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000002);
    +      hostMemoryArg_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000008);;
           onChanged();
           return this;
         }
    @@ -2227,12 +2184,11 @@ public Builder clearHostMemoryArg() {
          */
         public Builder addHostMemoryArgBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureHostMemoryArgIsMutable();
           hostMemoryArg_.add(value);
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -2296,11 +2252,9 @@ public java.lang.String getLabel() {
          */
         public Builder setLabel(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           label_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -2315,8 +2269,8 @@ public Builder setLabel(
          * @return This builder for chaining.
          */
         public Builder clearLabel() {
    -      
           label_ = getDefaultInstance().getLabel();
    +      bitField0_ = (bitField0_ & ~0x00000010);
           onChanged();
           return this;
         }
    @@ -2333,12 +2287,10 @@ public Builder clearLabel() {
          */
         public Builder setLabelBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           label_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -2370,8 +2322,9 @@ public int getPriority() {
          * @return This builder for chaining.
          */
         public Builder setPriority(int value) {
    -      
    +
           priority_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -2386,23 +2339,11 @@ public Builder setPriority(int value) {
          * @return This builder for chaining.
          */
         public Builder clearPriority() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000020);
           priority_ = 0;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.KernelDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelDefOrBuilder.java
    index 52343e9893f..33d6bc783ed 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/kernel_def.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelDefProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelDefProtos.java
    index d2ed48b1d61..6186e35bccd 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelDefProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelDefProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/kernel_def.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class KernelDefProtos {
       private KernelDefProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      KernelDefProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,17 +28,17 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_KernelDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_KernelDef_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_KernelDef_AttrConstraint_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_KernelDef_AttrConstraint_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_KernelList_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_KernelList_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -61,21 +72,22 @@ public static void registerAllExtensions(
         internal_static_tensorflow_KernelDef_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_KernelDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_KernelDef_descriptor,
             new java.lang.String[] { "Op", "DeviceType", "Constraint", "HostMemoryArg", "Label", "Priority", });
         internal_static_tensorflow_KernelDef_AttrConstraint_descriptor =
           internal_static_tensorflow_KernelDef_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_KernelDef_AttrConstraint_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_KernelDef_AttrConstraint_descriptor,
             new java.lang.String[] { "Name", "AllowedValues", });
         internal_static_tensorflow_KernelList_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_KernelList_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_KernelList_descriptor,
             new java.lang.String[] { "Kernel", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.AttrValueProtos.getDescriptor();
       }
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelList.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelList.java
    index 500c9070a49..add0709c673 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelList.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelList.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/kernel_def.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,37 +13,34 @@
      * Protobuf type {@code tensorflow.KernelList}
      */
     public final class KernelList extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.KernelList)
         KernelListOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      KernelList.class.getName());
    +  }
       // Use KernelList.newBuilder() to construct.
    -  private KernelList(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private KernelList(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private KernelList() {
         kernel_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new KernelList();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.KernelDefProtos.internal_static_tensorflow_KernelList_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.KernelDefProtos.internal_static_tensorflow_KernelList_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -49,6 +48,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int KERNEL_FIELD_NUMBER = 1;
    +  @SuppressWarnings("serial")
       private java.util.List kernel_;
       /**
        * repeated .tensorflow.KernelDef kernel = 1;
    @@ -189,39 +189,41 @@ public static org.tensorflow.proto.KernelList parseFrom(
       }
       public static org.tensorflow.proto.KernelList parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.KernelList parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.KernelList parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.KernelList parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.KernelList parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.KernelList parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -241,7 +243,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -253,7 +255,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.KernelList}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.KernelList)
           org.tensorflow.proto.KernelListOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -262,7 +264,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.KernelDefProtos.internal_static_tensorflow_KernelList_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -275,13 +277,14 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           if (kernelBuilder_ == null) {
             kernel_ = java.util.Collections.emptyList();
           } else {
    @@ -315,7 +318,13 @@ public org.tensorflow.proto.KernelList build() {
         @java.lang.Override
         public org.tensorflow.proto.KernelList buildPartial() {
           org.tensorflow.proto.KernelList result = new org.tensorflow.proto.KernelList(this);
    -      int from_bitField0_ = bitField0_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.KernelList result) {
           if (kernelBuilder_ == null) {
             if (((bitField0_ & 0x00000001) != 0)) {
               kernel_ = java.util.Collections.unmodifiableList(kernel_);
    @@ -325,42 +334,12 @@ public org.tensorflow.proto.KernelList buildPartial() {
           } else {
             result.kernel_ = kernelBuilder_.build();
           }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.KernelList result) {
    +      int from_bitField0_ = bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.KernelList) {
    @@ -392,7 +371,7 @@ public Builder mergeFrom(org.tensorflow.proto.KernelList other) {
                 kernel_ = other.kernel_;
                 bitField0_ = (bitField0_ & ~0x00000001);
                 kernelBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getKernelFieldBuilder() : null;
               } else {
                 kernelBuilder_.addAllMessages(other.kernel_);
    @@ -464,7 +443,7 @@ private void ensureKernelIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.KernelDef, org.tensorflow.proto.KernelDef.Builder, org.tensorflow.proto.KernelDefOrBuilder> kernelBuilder_;
     
         /**
    @@ -680,11 +659,11 @@ public org.tensorflow.proto.KernelDef.Builder addKernelBuilder(
              getKernelBuilderList() {
           return getKernelFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.KernelDef, org.tensorflow.proto.KernelDef.Builder, org.tensorflow.proto.KernelDefOrBuilder> 
             getKernelFieldBuilder() {
           if (kernelBuilder_ == null) {
    -        kernelBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        kernelBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.KernelDef, org.tensorflow.proto.KernelDef.Builder, org.tensorflow.proto.KernelDefOrBuilder>(
                     kernel_,
                     ((bitField0_ & 0x00000001) != 0),
    @@ -694,18 +673,6 @@ public org.tensorflow.proto.KernelDef.Builder addKernelBuilder(
           }
           return kernelBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.KernelList)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelListOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelListOrBuilder.java
    index a9ec75e9381..ef703603a2b 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelListOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/KernelListOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/kernel_def.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LocalLinks.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LocalLinks.java
    index 4733ac82cb9..d17b6ea169f 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LocalLinks.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LocalLinks.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/device_attributes.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,37 +9,34 @@
      * Protobuf type {@code tensorflow.LocalLinks}
      */
     public final class LocalLinks extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.LocalLinks)
         LocalLinksOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      LocalLinks.class.getName());
    +  }
       // Use LocalLinks.newBuilder() to construct.
    -  private LocalLinks(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private LocalLinks(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private LocalLinks() {
         link_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new LocalLinks();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.DeviceAttributesProtos.internal_static_tensorflow_LocalLinks_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.DeviceAttributesProtos.internal_static_tensorflow_LocalLinks_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -45,6 +44,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int LINK_FIELD_NUMBER = 1;
    +  @SuppressWarnings("serial")
       private java.util.List link_;
       /**
        * repeated .tensorflow.InterconnectLink link = 1;
    @@ -185,39 +185,41 @@ public static org.tensorflow.proto.LocalLinks parseFrom(
       }
       public static org.tensorflow.proto.LocalLinks parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.LocalLinks parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.LocalLinks parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.LocalLinks parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.LocalLinks parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.LocalLinks parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -237,7 +239,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -245,7 +247,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.LocalLinks}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.LocalLinks)
           org.tensorflow.proto.LocalLinksOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -254,7 +256,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DeviceAttributesProtos.internal_static_tensorflow_LocalLinks_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -267,13 +269,14 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           if (linkBuilder_ == null) {
             link_ = java.util.Collections.emptyList();
           } else {
    @@ -307,7 +310,13 @@ public org.tensorflow.proto.LocalLinks build() {
         @java.lang.Override
         public org.tensorflow.proto.LocalLinks buildPartial() {
           org.tensorflow.proto.LocalLinks result = new org.tensorflow.proto.LocalLinks(this);
    -      int from_bitField0_ = bitField0_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.LocalLinks result) {
           if (linkBuilder_ == null) {
             if (((bitField0_ & 0x00000001) != 0)) {
               link_ = java.util.Collections.unmodifiableList(link_);
    @@ -317,42 +326,12 @@ public org.tensorflow.proto.LocalLinks buildPartial() {
           } else {
             result.link_ = linkBuilder_.build();
           }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.LocalLinks result) {
    +      int from_bitField0_ = bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.LocalLinks) {
    @@ -384,7 +363,7 @@ public Builder mergeFrom(org.tensorflow.proto.LocalLinks other) {
                 link_ = other.link_;
                 bitField0_ = (bitField0_ & ~0x00000001);
                 linkBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getLinkFieldBuilder() : null;
               } else {
                 linkBuilder_.addAllMessages(other.link_);
    @@ -456,7 +435,7 @@ private void ensureLinkIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.InterconnectLink, org.tensorflow.proto.InterconnectLink.Builder, org.tensorflow.proto.InterconnectLinkOrBuilder> linkBuilder_;
     
         /**
    @@ -672,11 +651,11 @@ public org.tensorflow.proto.InterconnectLink.Builder addLinkBuilder(
              getLinkBuilderList() {
           return getLinkFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.InterconnectLink, org.tensorflow.proto.InterconnectLink.Builder, org.tensorflow.proto.InterconnectLinkOrBuilder> 
             getLinkFieldBuilder() {
           if (linkBuilder_ == null) {
    -        linkBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        linkBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.InterconnectLink, org.tensorflow.proto.InterconnectLink.Builder, org.tensorflow.proto.InterconnectLinkOrBuilder>(
                     link_,
                     ((bitField0_ & 0x00000001) != 0),
    @@ -686,18 +665,6 @@ public org.tensorflow.proto.InterconnectLink.Builder addLinkBuilder(
           }
           return linkBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.LocalLinks)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LocalLinksOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LocalLinksOrBuilder.java
    index 7a512b29fd0..408b99a6c97 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LocalLinksOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LocalLinksOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/device_attributes.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LogMemoryProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LogMemoryProtos.java
    index 47a2758c7a0..847171ae16e 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LogMemoryProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LogMemoryProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/log_memory.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class LogMemoryProtos {
       private LogMemoryProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      LogMemoryProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,32 +28,32 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_MemoryLogStep_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_MemoryLogStep_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_MemoryLogTensorAllocation_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_MemoryLogTensorAllocation_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_MemoryLogTensorDeallocation_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_MemoryLogTensorDeallocation_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_MemoryLogTensorOutput_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_MemoryLogTensorOutput_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_MemoryLogRawAllocation_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_MemoryLogRawAllocation_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_MemoryLogRawDeallocation_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_MemoryLogRawDeallocation_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -85,39 +96,40 @@ public static void registerAllExtensions(
         internal_static_tensorflow_MemoryLogStep_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_MemoryLogStep_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_MemoryLogStep_descriptor,
             new java.lang.String[] { "StepId", "Handle", });
         internal_static_tensorflow_MemoryLogTensorAllocation_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_MemoryLogTensorAllocation_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_MemoryLogTensorAllocation_descriptor,
             new java.lang.String[] { "StepId", "KernelName", "Tensor", });
         internal_static_tensorflow_MemoryLogTensorDeallocation_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_MemoryLogTensorDeallocation_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_MemoryLogTensorDeallocation_descriptor,
             new java.lang.String[] { "AllocationId", "AllocatorName", });
         internal_static_tensorflow_MemoryLogTensorOutput_descriptor =
           getDescriptor().getMessageTypes().get(3);
         internal_static_tensorflow_MemoryLogTensorOutput_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_MemoryLogTensorOutput_descriptor,
             new java.lang.String[] { "StepId", "KernelName", "Index", "Tensor", });
         internal_static_tensorflow_MemoryLogRawAllocation_descriptor =
           getDescriptor().getMessageTypes().get(4);
         internal_static_tensorflow_MemoryLogRawAllocation_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_MemoryLogRawAllocation_descriptor,
             new java.lang.String[] { "StepId", "Operation", "NumBytes", "Ptr", "AllocationId", "AllocatorName", });
         internal_static_tensorflow_MemoryLogRawDeallocation_descriptor =
           getDescriptor().getMessageTypes().get(5);
         internal_static_tensorflow_MemoryLogRawDeallocation_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_MemoryLogRawDeallocation_descriptor,
             new java.lang.String[] { "StepId", "Operation", "AllocationId", "AllocatorName", "Deferred", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.TensorDescriptionProtos.getDescriptor();
       }
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LogMessage.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LogMessage.java
    index 2000eb7bfdc..d18b8648fbd 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LogMessage.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LogMessage.java
    @@ -1,11 +1,14 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     /**
      * 
      * Protocol buffer used for logging messages to the events file.
    + *
      * This was theoretically used by the defunct tensorboard_logging module, which
      * has been removed; this message is now deprecated and should not be used.
      * 
    @@ -13,12 +16,21 @@ * Protobuf type {@code tensorflow.LogMessage} */ @java.lang.Deprecated public final class LogMessage extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.LogMessage) LogMessageOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + LogMessage.class.getName()); + } // Use LogMessage.newBuilder() to construct. - private LogMessage(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private LogMessage(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private LogMessage() { @@ -26,25 +38,13 @@ private LogMessage() { message_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new LogMessage(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.EventProtos.internal_static_tensorflow_LogMessage_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.EventProtos.internal_static_tensorflow_LogMessage_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -90,6 +90,15 @@ protected java.lang.Object newInstance( UNRECOGNIZED(-1), ; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + Level.class.getName()); + } /** * UNKNOWN = 0; */ @@ -210,7 +219,7 @@ private Level(int value) { } public static final int LEVEL_FIELD_NUMBER = 1; - private int level_; + private int level_ = 0; /** * .tensorflow.LogMessage.Level level = 1; * @return The enum numeric value on the wire for level. @@ -223,13 +232,13 @@ private Level(int value) { * @return The level. */ @java.lang.Override public org.tensorflow.proto.LogMessage.Level getLevel() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.LogMessage.Level result = org.tensorflow.proto.LogMessage.Level.valueOf(level_); + org.tensorflow.proto.LogMessage.Level result = org.tensorflow.proto.LogMessage.Level.forNumber(level_); return result == null ? org.tensorflow.proto.LogMessage.Level.UNRECOGNIZED : result; } public static final int MESSAGE_FIELD_NUMBER = 2; - private volatile java.lang.Object message_; + @SuppressWarnings("serial") + private volatile java.lang.Object message_ = ""; /** * string message = 2; * @return The message. @@ -283,8 +292,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (level_ != org.tensorflow.proto.LogMessage.Level.UNKNOWN.getNumber()) { output.writeEnum(1, level_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(message_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, message_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(message_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, message_); } getUnknownFields().writeTo(output); } @@ -299,8 +308,8 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeEnumSize(1, level_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(message_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, message_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(message_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, message_); } size += getUnknownFields().getSerializedSize(); memoizedSize = size; @@ -374,39 +383,41 @@ public static org.tensorflow.proto.LogMessage parseFrom( } public static org.tensorflow.proto.LogMessage parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.LogMessage parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.LogMessage parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.LogMessage parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.LogMessage parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.LogMessage parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -426,13 +437,14 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
        * Protocol buffer used for logging messages to the events file.
    +   *
        * This was theoretically used by the defunct tensorboard_logging module, which
        * has been removed; this message is now deprecated and should not be used.
        * 
    @@ -440,7 +452,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.LogMessage} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.LogMessage) org.tensorflow.proto.LogMessageOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -449,7 +461,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.EventProtos.internal_static_tensorflow_LogMessage_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -462,17 +474,16 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; level_ = 0; - message_ = ""; - return this; } @@ -499,44 +510,21 @@ public org.tensorflow.proto.LogMessage build() { @java.lang.Override public org.tensorflow.proto.LogMessage buildPartial() { org.tensorflow.proto.LogMessage result = new org.tensorflow.proto.LogMessage(this); - result.level_ = level_; - result.message_ = message_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.LogMessage result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.level_ = level_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.message_ = message_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.LogMessage) { @@ -554,6 +542,7 @@ public Builder mergeFrom(org.tensorflow.proto.LogMessage other) { } if (!other.getMessage().isEmpty()) { message_ = other.message_; + bitField0_ |= 0x00000002; onChanged(); } this.mergeUnknownFields(other.getUnknownFields()); @@ -584,12 +573,12 @@ public Builder mergeFrom( break; case 8: { level_ = input.readEnum(); - + bitField0_ |= 0x00000001; break; } // case 8 case 18: { message_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000002; break; } // case 18 default: { @@ -607,6 +596,7 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private int level_ = 0; /** @@ -622,8 +612,8 @@ public Builder mergeFrom( * @return This builder for chaining. */ public Builder setLevelValue(int value) { - level_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -633,8 +623,7 @@ public Builder setLevelValue(int value) { */ @java.lang.Override public org.tensorflow.proto.LogMessage.Level getLevel() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.LogMessage.Level result = org.tensorflow.proto.LogMessage.Level.valueOf(level_); + org.tensorflow.proto.LogMessage.Level result = org.tensorflow.proto.LogMessage.Level.forNumber(level_); return result == null ? org.tensorflow.proto.LogMessage.Level.UNRECOGNIZED : result; } /** @@ -646,7 +635,7 @@ public Builder setLevel(org.tensorflow.proto.LogMessage.Level value) { if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00000001; level_ = value.getNumber(); onChanged(); return this; @@ -656,7 +645,7 @@ public Builder setLevel(org.tensorflow.proto.LogMessage.Level value) { * @return This builder for chaining. */ public Builder clearLevel() { - + bitField0_ = (bitField0_ & ~0x00000001); level_ = 0; onChanged(); return this; @@ -703,11 +692,9 @@ public java.lang.String getMessage() { */ public Builder setMessage( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } message_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -716,8 +703,8 @@ public Builder setMessage( * @return This builder for chaining. */ public Builder clearMessage() { - message_ = getDefaultInstance().getMessage(); + bitField0_ = (bitField0_ & ~0x00000002); onChanged(); return this; } @@ -728,27 +715,13 @@ public Builder clearMessage() { */ public Builder setMessageBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); message_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.LogMessage) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LogMessageOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LogMessageOrBuilder.java index d4aaa8c5471..4174158b973 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LogMessageOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/LogMessageOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/util/event.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MachineConfiguration.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MachineConfiguration.java index 56ab6b425d1..9d7cc47a571 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MachineConfiguration.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MachineConfiguration.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! -// source: tsl/protobuf/test_log.proto +// NO CHECKED-IN PROTOBUF GENCODE +// source: xla/tsl/protobuf/test_log.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,12 +9,21 @@ * Protobuf type {@code tensorflow.MachineConfiguration} */ public final class MachineConfiguration extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.MachineConfiguration) MachineConfigurationOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + MachineConfiguration.class.getName()); + } // Use MachineConfiguration.newBuilder() to construct. - private MachineConfiguration(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private MachineConfiguration(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private MachineConfiguration() { @@ -22,33 +33,23 @@ private MachineConfiguration() { availableDeviceInfo_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new MachineConfiguration(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_MachineConfiguration_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_MachineConfiguration_fieldAccessorTable .ensureFieldAccessorsInitialized( org.tensorflow.proto.MachineConfiguration.class, org.tensorflow.proto.MachineConfiguration.Builder.class); } + private int bitField0_; public static final int HOSTNAME_FIELD_NUMBER = 1; - private volatile java.lang.Object hostname_; + @SuppressWarnings("serial") + private volatile java.lang.Object hostname_ = ""; /** *
        * Host name of machine that ran the benchmark.
    @@ -94,7 +95,8 @@ public java.lang.String getHostname() {
       }
     
       public static final int SERIAL_IDENTIFIER_FIELD_NUMBER = 7;
    -  private volatile java.lang.Object serialIdentifier_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object serialIdentifier_ = "";
       /**
        * 
        * Unique serial number of the machine.
    @@ -151,7 +153,7 @@ public java.lang.String getSerialIdentifier() {
        */
       @java.lang.Override
       public boolean hasPlatformInfo() {
    -    return platformInfo_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -174,7 +176,7 @@ public org.tensorflow.proto.PlatformInfo getPlatformInfo() {
        */
       @java.lang.Override
       public org.tensorflow.proto.PlatformInfoOrBuilder getPlatformInfoOrBuilder() {
    -    return getPlatformInfo();
    +    return platformInfo_ == null ? org.tensorflow.proto.PlatformInfo.getDefaultInstance() : platformInfo_;
       }
     
       public static final int CPU_INFO_FIELD_NUMBER = 3;
    @@ -189,7 +191,7 @@ public org.tensorflow.proto.PlatformInfoOrBuilder getPlatformInfoOrBuilder() {
        */
       @java.lang.Override
       public boolean hasCpuInfo() {
    -    return cpuInfo_ != null;
    +    return ((bitField0_ & 0x00000002) != 0);
       }
       /**
        * 
    @@ -212,10 +214,11 @@ public org.tensorflow.proto.CPUInfo getCpuInfo() {
        */
       @java.lang.Override
       public org.tensorflow.proto.CPUInfoOrBuilder getCpuInfoOrBuilder() {
    -    return getCpuInfo();
    +    return cpuInfo_ == null ? org.tensorflow.proto.CPUInfo.getDefaultInstance() : cpuInfo_;
       }
     
       public static final int DEVICE_INFO_FIELD_NUMBER = 4;
    +  @SuppressWarnings("serial")
       private java.util.List deviceInfo_;
       /**
        * 
    @@ -276,6 +279,7 @@ public com.google.protobuf.AnyOrBuilder getDeviceInfoOrBuilder(
       }
     
       public static final int AVAILABLE_DEVICE_INFO_FIELD_NUMBER = 5;
    +  @SuppressWarnings("serial")
       private java.util.List availableDeviceInfo_;
       /**
        * 
    @@ -343,7 +347,7 @@ public org.tensorflow.proto.AvailableDeviceInfoOrBuilder getAvailableDeviceInfoO
        */
       @java.lang.Override
       public boolean hasMemoryInfo() {
    -    return memoryInfo_ != null;
    +    return ((bitField0_ & 0x00000004) != 0);
       }
       /**
        * .tensorflow.MemoryInfo memory_info = 6;
    @@ -358,7 +362,7 @@ public org.tensorflow.proto.MemoryInfo getMemoryInfo() {
        */
       @java.lang.Override
       public org.tensorflow.proto.MemoryInfoOrBuilder getMemoryInfoOrBuilder() {
    -    return getMemoryInfo();
    +    return memoryInfo_ == null ? org.tensorflow.proto.MemoryInfo.getDefaultInstance() : memoryInfo_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -375,13 +379,13 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hostname_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, hostname_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(hostname_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, hostname_);
         }
    -    if (platformInfo_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(2, getPlatformInfo());
         }
    -    if (cpuInfo_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           output.writeMessage(3, getCpuInfo());
         }
         for (int i = 0; i < deviceInfo_.size(); i++) {
    @@ -390,11 +394,11 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         for (int i = 0; i < availableDeviceInfo_.size(); i++) {
           output.writeMessage(5, availableDeviceInfo_.get(i));
         }
    -    if (memoryInfo_ != null) {
    +    if (((bitField0_ & 0x00000004) != 0)) {
           output.writeMessage(6, getMemoryInfo());
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(serialIdentifier_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 7, serialIdentifier_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(serialIdentifier_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 7, serialIdentifier_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -405,14 +409,14 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hostname_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, hostname_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(hostname_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, hostname_);
         }
    -    if (platformInfo_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(2, getPlatformInfo());
         }
    -    if (cpuInfo_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(3, getCpuInfo());
         }
    @@ -424,12 +428,12 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(5, availableDeviceInfo_.get(i));
         }
    -    if (memoryInfo_ != null) {
    +    if (((bitField0_ & 0x00000004) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(6, getMemoryInfo());
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(serialIdentifier_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, serialIdentifier_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(serialIdentifier_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(7, serialIdentifier_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -543,39 +547,41 @@ public static org.tensorflow.proto.MachineConfiguration parseFrom(
       }
       public static org.tensorflow.proto.MachineConfiguration parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MachineConfiguration parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.MachineConfiguration parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.MachineConfiguration parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.MachineConfiguration parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MachineConfiguration parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -595,7 +601,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -603,7 +609,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.MachineConfiguration}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.MachineConfiguration)
           org.tensorflow.proto.MachineConfigurationOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -612,7 +618,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_MachineConfiguration_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -621,31 +627,38 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.MachineConfiguration.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getPlatformInfoFieldBuilder();
    +        getCpuInfoFieldBuilder();
    +        getDeviceInfoFieldBuilder();
    +        getAvailableDeviceInfoFieldBuilder();
    +        getMemoryInfoFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           hostname_ = "";
    -
           serialIdentifier_ = "";
    -
    -      if (platformInfoBuilder_ == null) {
    -        platformInfo_ = null;
    -      } else {
    -        platformInfo_ = null;
    +      platformInfo_ = null;
    +      if (platformInfoBuilder_ != null) {
    +        platformInfoBuilder_.dispose();
             platformInfoBuilder_ = null;
           }
    -      if (cpuInfoBuilder_ == null) {
    -        cpuInfo_ = null;
    -      } else {
    -        cpuInfo_ = null;
    +      cpuInfo_ = null;
    +      if (cpuInfoBuilder_ != null) {
    +        cpuInfoBuilder_.dispose();
             cpuInfoBuilder_ = null;
           }
           if (deviceInfoBuilder_ == null) {
    @@ -654,18 +667,17 @@ public Builder clear() {
             deviceInfo_ = null;
             deviceInfoBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000010);
           if (availableDeviceInfoBuilder_ == null) {
             availableDeviceInfo_ = java.util.Collections.emptyList();
           } else {
             availableDeviceInfo_ = null;
             availableDeviceInfoBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000002);
    -      if (memoryInfoBuilder_ == null) {
    -        memoryInfo_ = null;
    -      } else {
    -        memoryInfo_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000020);
    +      memoryInfo_ = null;
    +      if (memoryInfoBuilder_ != null) {
    +        memoryInfoBuilder_.dispose();
             memoryInfoBuilder_ = null;
           }
           return this;
    @@ -694,78 +706,63 @@ public org.tensorflow.proto.MachineConfiguration build() {
         @java.lang.Override
         public org.tensorflow.proto.MachineConfiguration buildPartial() {
           org.tensorflow.proto.MachineConfiguration result = new org.tensorflow.proto.MachineConfiguration(this);
    -      int from_bitField0_ = bitField0_;
    -      result.hostname_ = hostname_;
    -      result.serialIdentifier_ = serialIdentifier_;
    -      if (platformInfoBuilder_ == null) {
    -        result.platformInfo_ = platformInfo_;
    -      } else {
    -        result.platformInfo_ = platformInfoBuilder_.build();
    -      }
    -      if (cpuInfoBuilder_ == null) {
    -        result.cpuInfo_ = cpuInfo_;
    -      } else {
    -        result.cpuInfo_ = cpuInfoBuilder_.build();
    -      }
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.MachineConfiguration result) {
           if (deviceInfoBuilder_ == null) {
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((bitField0_ & 0x00000010) != 0)) {
               deviceInfo_ = java.util.Collections.unmodifiableList(deviceInfo_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000010);
             }
             result.deviceInfo_ = deviceInfo_;
           } else {
             result.deviceInfo_ = deviceInfoBuilder_.build();
           }
           if (availableDeviceInfoBuilder_ == null) {
    -        if (((bitField0_ & 0x00000002) != 0)) {
    +        if (((bitField0_ & 0x00000020) != 0)) {
               availableDeviceInfo_ = java.util.Collections.unmodifiableList(availableDeviceInfo_);
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          bitField0_ = (bitField0_ & ~0x00000020);
             }
             result.availableDeviceInfo_ = availableDeviceInfo_;
           } else {
             result.availableDeviceInfo_ = availableDeviceInfoBuilder_.build();
           }
    -      if (memoryInfoBuilder_ == null) {
    -        result.memoryInfo_ = memoryInfo_;
    -      } else {
    -        result.memoryInfo_ = memoryInfoBuilder_.build();
    -      }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.MachineConfiguration result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.hostname_ = hostname_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.serialIdentifier_ = serialIdentifier_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.platformInfo_ = platformInfoBuilder_ == null
    +            ? platformInfo_
    +            : platformInfoBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.cpuInfo_ = cpuInfoBuilder_ == null
    +            ? cpuInfo_
    +            : cpuInfoBuilder_.build();
    +        to_bitField0_ |= 0x00000002;
    +      }
    +      if (((from_bitField0_ & 0x00000040) != 0)) {
    +        result.memoryInfo_ = memoryInfoBuilder_ == null
    +            ? memoryInfo_
    +            : memoryInfoBuilder_.build();
    +        to_bitField0_ |= 0x00000004;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.MachineConfiguration) {
    @@ -780,10 +777,12 @@ public Builder mergeFrom(org.tensorflow.proto.MachineConfiguration other) {
           if (other == org.tensorflow.proto.MachineConfiguration.getDefaultInstance()) return this;
           if (!other.getHostname().isEmpty()) {
             hostname_ = other.hostname_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getSerialIdentifier().isEmpty()) {
             serialIdentifier_ = other.serialIdentifier_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (other.hasPlatformInfo()) {
    @@ -796,7 +795,7 @@ public Builder mergeFrom(org.tensorflow.proto.MachineConfiguration other) {
             if (!other.deviceInfo_.isEmpty()) {
               if (deviceInfo_.isEmpty()) {
                 deviceInfo_ = other.deviceInfo_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000010);
               } else {
                 ensureDeviceInfoIsMutable();
                 deviceInfo_.addAll(other.deviceInfo_);
    @@ -809,9 +808,9 @@ public Builder mergeFrom(org.tensorflow.proto.MachineConfiguration other) {
                 deviceInfoBuilder_.dispose();
                 deviceInfoBuilder_ = null;
                 deviceInfo_ = other.deviceInfo_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000010);
                 deviceInfoBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getDeviceInfoFieldBuilder() : null;
               } else {
                 deviceInfoBuilder_.addAllMessages(other.deviceInfo_);
    @@ -822,7 +821,7 @@ public Builder mergeFrom(org.tensorflow.proto.MachineConfiguration other) {
             if (!other.availableDeviceInfo_.isEmpty()) {
               if (availableDeviceInfo_.isEmpty()) {
                 availableDeviceInfo_ = other.availableDeviceInfo_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            bitField0_ = (bitField0_ & ~0x00000020);
               } else {
                 ensureAvailableDeviceInfoIsMutable();
                 availableDeviceInfo_.addAll(other.availableDeviceInfo_);
    @@ -835,9 +834,9 @@ public Builder mergeFrom(org.tensorflow.proto.MachineConfiguration other) {
                 availableDeviceInfoBuilder_.dispose();
                 availableDeviceInfoBuilder_ = null;
                 availableDeviceInfo_ = other.availableDeviceInfo_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            bitField0_ = (bitField0_ & ~0x00000020);
                 availableDeviceInfoBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getAvailableDeviceInfoFieldBuilder() : null;
               } else {
                 availableDeviceInfoBuilder_.addAllMessages(other.availableDeviceInfo_);
    @@ -875,21 +874,21 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   hostname_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   input.readMessage(
                       getPlatformInfoFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 18
                 case 26: {
                   input.readMessage(
                       getCpuInfoFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 26
                 case 34: {
    @@ -922,12 +921,12 @@ public Builder mergeFrom(
                   input.readMessage(
                       getMemoryInfoFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000040;
                   break;
                 } // case 50
                 case 58: {
                   serialIdentifier_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 58
                 default: {
    @@ -1000,11 +999,9 @@ public java.lang.String getHostname() {
          */
         public Builder setHostname(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           hostname_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1017,8 +1014,8 @@ public Builder setHostname(
          * @return This builder for chaining.
          */
         public Builder clearHostname() {
    -      
           hostname_ = getDefaultInstance().getHostname();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -1033,12 +1030,10 @@ public Builder clearHostname() {
          */
         public Builder setHostnameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           hostname_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1096,11 +1091,9 @@ public java.lang.String getSerialIdentifier() {
          */
         public Builder setSerialIdentifier(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           serialIdentifier_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1113,8 +1106,8 @@ public Builder setSerialIdentifier(
          * @return This builder for chaining.
          */
         public Builder clearSerialIdentifier() {
    -      
           serialIdentifier_ = getDefaultInstance().getSerialIdentifier();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -1129,18 +1122,16 @@ public Builder clearSerialIdentifier() {
          */
         public Builder setSerialIdentifierBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           serialIdentifier_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.PlatformInfo platformInfo_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.PlatformInfo, org.tensorflow.proto.PlatformInfo.Builder, org.tensorflow.proto.PlatformInfoOrBuilder> platformInfoBuilder_;
         /**
          * 
    @@ -1151,7 +1142,7 @@ public Builder setSerialIdentifierBytes(
          * @return Whether the platformInfo field is set.
          */
         public boolean hasPlatformInfo() {
    -      return platformInfoBuilder_ != null || platformInfo_ != null;
    +      return ((bitField0_ & 0x00000004) != 0);
         }
         /**
          * 
    @@ -1181,11 +1172,11 @@ public Builder setPlatformInfo(org.tensorflow.proto.PlatformInfo value) {
               throw new NullPointerException();
             }
             platformInfo_ = value;
    -        onChanged();
           } else {
             platformInfoBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -1199,11 +1190,11 @@ public Builder setPlatformInfo(
             org.tensorflow.proto.PlatformInfo.Builder builderForValue) {
           if (platformInfoBuilder_ == null) {
             platformInfo_ = builderForValue.build();
    -        onChanged();
           } else {
             platformInfoBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -1215,17 +1206,20 @@ public Builder setPlatformInfo(
          */
         public Builder mergePlatformInfo(org.tensorflow.proto.PlatformInfo value) {
           if (platformInfoBuilder_ == null) {
    -        if (platformInfo_ != null) {
    -          platformInfo_ =
    -            org.tensorflow.proto.PlatformInfo.newBuilder(platformInfo_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000004) != 0) &&
    +          platformInfo_ != null &&
    +          platformInfo_ != org.tensorflow.proto.PlatformInfo.getDefaultInstance()) {
    +          getPlatformInfoBuilder().mergeFrom(value);
             } else {
               platformInfo_ = value;
             }
    -        onChanged();
           } else {
             platformInfoBuilder_.mergeFrom(value);
           }
    -
    +      if (platformInfo_ != null) {
    +        bitField0_ |= 0x00000004;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -1236,14 +1230,13 @@ public Builder mergePlatformInfo(org.tensorflow.proto.PlatformInfo value) {
          * .tensorflow.PlatformInfo platform_info = 2;
          */
         public Builder clearPlatformInfo() {
    -      if (platformInfoBuilder_ == null) {
    -        platformInfo_ = null;
    -        onChanged();
    -      } else {
    -        platformInfo_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000004);
    +      platformInfo_ = null;
    +      if (platformInfoBuilder_ != null) {
    +        platformInfoBuilder_.dispose();
             platformInfoBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -1254,7 +1247,7 @@ public Builder clearPlatformInfo() {
          * .tensorflow.PlatformInfo platform_info = 2;
          */
         public org.tensorflow.proto.PlatformInfo.Builder getPlatformInfoBuilder() {
    -      
    +      bitField0_ |= 0x00000004;
           onChanged();
           return getPlatformInfoFieldBuilder().getBuilder();
         }
    @@ -1280,11 +1273,11 @@ public org.tensorflow.proto.PlatformInfoOrBuilder getPlatformInfoOrBuilder() {
          *
          * .tensorflow.PlatformInfo platform_info = 2;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.PlatformInfo, org.tensorflow.proto.PlatformInfo.Builder, org.tensorflow.proto.PlatformInfoOrBuilder> 
             getPlatformInfoFieldBuilder() {
           if (platformInfoBuilder_ == null) {
    -        platformInfoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        platformInfoBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.PlatformInfo, org.tensorflow.proto.PlatformInfo.Builder, org.tensorflow.proto.PlatformInfoOrBuilder>(
                     getPlatformInfo(),
                     getParentForChildren(),
    @@ -1295,7 +1288,7 @@ public org.tensorflow.proto.PlatformInfoOrBuilder getPlatformInfoOrBuilder() {
         }
     
         private org.tensorflow.proto.CPUInfo cpuInfo_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.CPUInfo, org.tensorflow.proto.CPUInfo.Builder, org.tensorflow.proto.CPUInfoOrBuilder> cpuInfoBuilder_;
         /**
          * 
    @@ -1306,7 +1299,7 @@ public org.tensorflow.proto.PlatformInfoOrBuilder getPlatformInfoOrBuilder() {
          * @return Whether the cpuInfo field is set.
          */
         public boolean hasCpuInfo() {
    -      return cpuInfoBuilder_ != null || cpuInfo_ != null;
    +      return ((bitField0_ & 0x00000008) != 0);
         }
         /**
          * 
    @@ -1336,11 +1329,11 @@ public Builder setCpuInfo(org.tensorflow.proto.CPUInfo value) {
               throw new NullPointerException();
             }
             cpuInfo_ = value;
    -        onChanged();
           } else {
             cpuInfoBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000008;
    +      onChanged();
           return this;
         }
         /**
    @@ -1354,11 +1347,11 @@ public Builder setCpuInfo(
             org.tensorflow.proto.CPUInfo.Builder builderForValue) {
           if (cpuInfoBuilder_ == null) {
             cpuInfo_ = builderForValue.build();
    -        onChanged();
           } else {
             cpuInfoBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000008;
    +      onChanged();
           return this;
         }
         /**
    @@ -1370,17 +1363,20 @@ public Builder setCpuInfo(
          */
         public Builder mergeCpuInfo(org.tensorflow.proto.CPUInfo value) {
           if (cpuInfoBuilder_ == null) {
    -        if (cpuInfo_ != null) {
    -          cpuInfo_ =
    -            org.tensorflow.proto.CPUInfo.newBuilder(cpuInfo_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000008) != 0) &&
    +          cpuInfo_ != null &&
    +          cpuInfo_ != org.tensorflow.proto.CPUInfo.getDefaultInstance()) {
    +          getCpuInfoBuilder().mergeFrom(value);
             } else {
               cpuInfo_ = value;
             }
    -        onChanged();
           } else {
             cpuInfoBuilder_.mergeFrom(value);
           }
    -
    +      if (cpuInfo_ != null) {
    +        bitField0_ |= 0x00000008;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -1391,14 +1387,13 @@ public Builder mergeCpuInfo(org.tensorflow.proto.CPUInfo value) {
          * .tensorflow.CPUInfo cpu_info = 3;
          */
         public Builder clearCpuInfo() {
    -      if (cpuInfoBuilder_ == null) {
    -        cpuInfo_ = null;
    -        onChanged();
    -      } else {
    -        cpuInfo_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000008);
    +      cpuInfo_ = null;
    +      if (cpuInfoBuilder_ != null) {
    +        cpuInfoBuilder_.dispose();
             cpuInfoBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -1409,7 +1404,7 @@ public Builder clearCpuInfo() {
          * .tensorflow.CPUInfo cpu_info = 3;
          */
         public org.tensorflow.proto.CPUInfo.Builder getCpuInfoBuilder() {
    -      
    +      bitField0_ |= 0x00000008;
           onChanged();
           return getCpuInfoFieldBuilder().getBuilder();
         }
    @@ -1435,11 +1430,11 @@ public org.tensorflow.proto.CPUInfoOrBuilder getCpuInfoOrBuilder() {
          *
          * .tensorflow.CPUInfo cpu_info = 3;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.CPUInfo, org.tensorflow.proto.CPUInfo.Builder, org.tensorflow.proto.CPUInfoOrBuilder> 
             getCpuInfoFieldBuilder() {
           if (cpuInfoBuilder_ == null) {
    -        cpuInfoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        cpuInfoBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.CPUInfo, org.tensorflow.proto.CPUInfo.Builder, org.tensorflow.proto.CPUInfoOrBuilder>(
                     getCpuInfo(),
                     getParentForChildren(),
    @@ -1452,13 +1447,13 @@ public org.tensorflow.proto.CPUInfoOrBuilder getCpuInfoOrBuilder() {
         private java.util.List deviceInfo_ =
           java.util.Collections.emptyList();
         private void ensureDeviceInfoIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!((bitField0_ & 0x00000010) != 0)) {
             deviceInfo_ = new java.util.ArrayList(deviceInfo_);
    -        bitField0_ |= 0x00000001;
    +        bitField0_ |= 0x00000010;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             com.google.protobuf.Any, com.google.protobuf.Any.Builder, com.google.protobuf.AnyOrBuilder> deviceInfoBuilder_;
     
         /**
    @@ -1648,7 +1643,7 @@ public Builder addAllDeviceInfo(
         public Builder clearDeviceInfo() {
           if (deviceInfoBuilder_ == null) {
             deviceInfo_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000010);
             onChanged();
           } else {
             deviceInfoBuilder_.clear();
    @@ -1746,14 +1741,14 @@ public com.google.protobuf.Any.Builder addDeviceInfoBuilder(
              getDeviceInfoBuilderList() {
           return getDeviceInfoFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             com.google.protobuf.Any, com.google.protobuf.Any.Builder, com.google.protobuf.AnyOrBuilder> 
             getDeviceInfoFieldBuilder() {
           if (deviceInfoBuilder_ == null) {
    -        deviceInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        deviceInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 com.google.protobuf.Any, com.google.protobuf.Any.Builder, com.google.protobuf.AnyOrBuilder>(
                     deviceInfo_,
    -                ((bitField0_ & 0x00000001) != 0),
    +                ((bitField0_ & 0x00000010) != 0),
                     getParentForChildren(),
                     isClean());
             deviceInfo_ = null;
    @@ -1764,13 +1759,13 @@ public com.google.protobuf.Any.Builder addDeviceInfoBuilder(
         private java.util.List availableDeviceInfo_ =
           java.util.Collections.emptyList();
         private void ensureAvailableDeviceInfoIsMutable() {
    -      if (!((bitField0_ & 0x00000002) != 0)) {
    +      if (!((bitField0_ & 0x00000020) != 0)) {
             availableDeviceInfo_ = new java.util.ArrayList(availableDeviceInfo_);
    -        bitField0_ |= 0x00000002;
    +        bitField0_ |= 0x00000020;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.AvailableDeviceInfo, org.tensorflow.proto.AvailableDeviceInfo.Builder, org.tensorflow.proto.AvailableDeviceInfoOrBuilder> availableDeviceInfoBuilder_;
     
         /**
    @@ -1960,7 +1955,7 @@ public Builder addAllAvailableDeviceInfo(
         public Builder clearAvailableDeviceInfo() {
           if (availableDeviceInfoBuilder_ == null) {
             availableDeviceInfo_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        bitField0_ = (bitField0_ & ~0x00000020);
             onChanged();
           } else {
             availableDeviceInfoBuilder_.clear();
    @@ -2058,14 +2053,14 @@ public org.tensorflow.proto.AvailableDeviceInfo.Builder addAvailableDeviceInfoBu
              getAvailableDeviceInfoBuilderList() {
           return getAvailableDeviceInfoFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.AvailableDeviceInfo, org.tensorflow.proto.AvailableDeviceInfo.Builder, org.tensorflow.proto.AvailableDeviceInfoOrBuilder> 
             getAvailableDeviceInfoFieldBuilder() {
           if (availableDeviceInfoBuilder_ == null) {
    -        availableDeviceInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        availableDeviceInfoBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.AvailableDeviceInfo, org.tensorflow.proto.AvailableDeviceInfo.Builder, org.tensorflow.proto.AvailableDeviceInfoOrBuilder>(
                     availableDeviceInfo_,
    -                ((bitField0_ & 0x00000002) != 0),
    +                ((bitField0_ & 0x00000020) != 0),
                     getParentForChildren(),
                     isClean());
             availableDeviceInfo_ = null;
    @@ -2074,14 +2069,14 @@ public org.tensorflow.proto.AvailableDeviceInfo.Builder addAvailableDeviceInfoBu
         }
     
         private org.tensorflow.proto.MemoryInfo memoryInfo_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.MemoryInfo, org.tensorflow.proto.MemoryInfo.Builder, org.tensorflow.proto.MemoryInfoOrBuilder> memoryInfoBuilder_;
         /**
          * .tensorflow.MemoryInfo memory_info = 6;
          * @return Whether the memoryInfo field is set.
          */
         public boolean hasMemoryInfo() {
    -      return memoryInfoBuilder_ != null || memoryInfo_ != null;
    +      return ((bitField0_ & 0x00000040) != 0);
         }
         /**
          * .tensorflow.MemoryInfo memory_info = 6;
    @@ -2103,11 +2098,11 @@ public Builder setMemoryInfo(org.tensorflow.proto.MemoryInfo value) {
               throw new NullPointerException();
             }
             memoryInfo_ = value;
    -        onChanged();
           } else {
             memoryInfoBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000040;
    +      onChanged();
           return this;
         }
         /**
    @@ -2117,11 +2112,11 @@ public Builder setMemoryInfo(
             org.tensorflow.proto.MemoryInfo.Builder builderForValue) {
           if (memoryInfoBuilder_ == null) {
             memoryInfo_ = builderForValue.build();
    -        onChanged();
           } else {
             memoryInfoBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000040;
    +      onChanged();
           return this;
         }
         /**
    @@ -2129,38 +2124,40 @@ public Builder setMemoryInfo(
          */
         public Builder mergeMemoryInfo(org.tensorflow.proto.MemoryInfo value) {
           if (memoryInfoBuilder_ == null) {
    -        if (memoryInfo_ != null) {
    -          memoryInfo_ =
    -            org.tensorflow.proto.MemoryInfo.newBuilder(memoryInfo_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000040) != 0) &&
    +          memoryInfo_ != null &&
    +          memoryInfo_ != org.tensorflow.proto.MemoryInfo.getDefaultInstance()) {
    +          getMemoryInfoBuilder().mergeFrom(value);
             } else {
               memoryInfo_ = value;
             }
    -        onChanged();
           } else {
             memoryInfoBuilder_.mergeFrom(value);
           }
    -
    +      if (memoryInfo_ != null) {
    +        bitField0_ |= 0x00000040;
    +        onChanged();
    +      }
           return this;
         }
         /**
          * .tensorflow.MemoryInfo memory_info = 6;
          */
         public Builder clearMemoryInfo() {
    -      if (memoryInfoBuilder_ == null) {
    -        memoryInfo_ = null;
    -        onChanged();
    -      } else {
    -        memoryInfo_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000040);
    +      memoryInfo_ = null;
    +      if (memoryInfoBuilder_ != null) {
    +        memoryInfoBuilder_.dispose();
             memoryInfoBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
          * .tensorflow.MemoryInfo memory_info = 6;
          */
         public org.tensorflow.proto.MemoryInfo.Builder getMemoryInfoBuilder() {
    -      
    +      bitField0_ |= 0x00000040;
           onChanged();
           return getMemoryInfoFieldBuilder().getBuilder();
         }
    @@ -2178,11 +2175,11 @@ public org.tensorflow.proto.MemoryInfoOrBuilder getMemoryInfoOrBuilder() {
         /**
          * .tensorflow.MemoryInfo memory_info = 6;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.MemoryInfo, org.tensorflow.proto.MemoryInfo.Builder, org.tensorflow.proto.MemoryInfoOrBuilder> 
             getMemoryInfoFieldBuilder() {
           if (memoryInfoBuilder_ == null) {
    -        memoryInfoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        memoryInfoBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.MemoryInfo, org.tensorflow.proto.MemoryInfo.Builder, org.tensorflow.proto.MemoryInfoOrBuilder>(
                     getMemoryInfo(),
                     getParentForChildren(),
    @@ -2191,18 +2188,6 @@ public org.tensorflow.proto.MemoryInfoOrBuilder getMemoryInfoOrBuilder() {
           }
           return memoryInfoBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.MachineConfiguration)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MachineConfigurationOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MachineConfigurationOrBuilder.java
    index 5821218bf8f..05929ab4e94 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MachineConfigurationOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MachineConfigurationOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemmappedFileSystem.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemmappedFileSystem.java
    index 49ea2902bf0..e76113f6643 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemmappedFileSystem.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemmappedFileSystem.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/memmapped_file_system.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class MemmappedFileSystem {
       private MemmappedFileSystem() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      MemmappedFileSystem.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -50,37 +61,34 @@ public interface MemmappedFileSystemDirectoryElementOrBuilder extends
        * Protobuf type {@code tensorflow.MemmappedFileSystemDirectoryElement}
        */
       public static final class MemmappedFileSystemDirectoryElement extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.MemmappedFileSystemDirectoryElement)
           MemmappedFileSystemDirectoryElementOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        MemmappedFileSystemDirectoryElement.class.getName());
    +    }
         // Use MemmappedFileSystemDirectoryElement.newBuilder() to construct.
    -    private MemmappedFileSystemDirectoryElement(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private MemmappedFileSystemDirectoryElement(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private MemmappedFileSystemDirectoryElement() {
           name_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new MemmappedFileSystemDirectoryElement();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.MemmappedFileSystem.internal_static_tensorflow_MemmappedFileSystemDirectoryElement_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.MemmappedFileSystem.internal_static_tensorflow_MemmappedFileSystemDirectoryElement_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -88,7 +96,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int OFFSET_FIELD_NUMBER = 1;
    -    private long offset_;
    +    private long offset_ = 0L;
         /**
          * uint64 offset = 1;
          * @return The offset.
    @@ -99,7 +107,8 @@ public long getOffset() {
         }
     
         public static final int NAME_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object name_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object name_ = "";
         /**
          * string name = 2;
          * @return The name.
    @@ -137,7 +146,7 @@ public java.lang.String getName() {
         }
     
         public static final int LENGTH_FIELD_NUMBER = 3;
    -    private long length_;
    +    private long length_ = 0L;
         /**
          * uint64 length = 3;
          * @return The length.
    @@ -164,8 +173,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (offset_ != 0L) {
             output.writeUInt64(1, offset_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, name_);
           }
           if (length_ != 0L) {
             output.writeUInt64(3, length_);
    @@ -183,8 +192,8 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeUInt64Size(1, offset_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, name_);
           }
           if (length_ != 0L) {
             size += com.google.protobuf.CodedOutputStream
    @@ -269,39 +278,41 @@ public static org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirect
         }
         public static org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElement parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElement parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElement parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElement parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElement parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElement parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -321,7 +332,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -333,7 +344,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.MemmappedFileSystemDirectoryElement}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.MemmappedFileSystemDirectoryElement)
             org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElementOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -342,7 +353,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.MemmappedFileSystem.internal_static_tensorflow_MemmappedFileSystemDirectoryElement_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -355,19 +366,17 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             offset_ = 0L;
    -
             name_ = "";
    -
             length_ = 0L;
    -
             return this;
           }
     
    @@ -394,45 +403,24 @@ public org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElem
           @java.lang.Override
           public org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElement buildPartial() {
             org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElement result = new org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElement(this);
    -        result.offset_ = offset_;
    -        result.name_ = name_;
    -        result.length_ = length_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElement result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.offset_ = offset_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.name_ = name_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.length_ = length_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElement) {
    @@ -450,6 +438,7 @@ public Builder mergeFrom(org.tensorflow.proto.MemmappedFileSystem.MemmappedFileS
             }
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             if (other.getLength() != 0L) {
    @@ -483,17 +472,17 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     offset_ = input.readUInt64();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   case 18: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 24: {
                     length_ = input.readUInt64();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 24
                   default: {
    @@ -511,6 +500,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private long offset_ ;
           /**
    @@ -527,8 +517,9 @@ public long getOffset() {
            * @return This builder for chaining.
            */
           public Builder setOffset(long value) {
    -        
    +
             offset_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -537,7 +528,7 @@ public Builder setOffset(long value) {
            * @return This builder for chaining.
            */
           public Builder clearOffset() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             offset_ = 0L;
             onChanged();
             return this;
    @@ -584,11 +575,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -597,8 +586,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -609,12 +598,10 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -634,8 +621,9 @@ public long getLength() {
            * @return This builder for chaining.
            */
           public Builder setLength(long value) {
    -        
    +
             length_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -644,23 +632,11 @@ public Builder setLength(long value) {
            * @return This builder for chaining.
            */
           public Builder clearLength() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000004);
             length_ = 0L;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.MemmappedFileSystemDirectoryElement)
         }
    @@ -749,37 +725,34 @@ org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElementOrBu
        * Protobuf type {@code tensorflow.MemmappedFileSystemDirectory}
        */
       public static final class MemmappedFileSystemDirectory extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.MemmappedFileSystemDirectory)
           MemmappedFileSystemDirectoryOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        MemmappedFileSystemDirectory.class.getName());
    +    }
         // Use MemmappedFileSystemDirectory.newBuilder() to construct.
    -    private MemmappedFileSystemDirectory(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private MemmappedFileSystemDirectory(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private MemmappedFileSystemDirectory() {
           element_ = java.util.Collections.emptyList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new MemmappedFileSystemDirectory();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.MemmappedFileSystem.internal_static_tensorflow_MemmappedFileSystemDirectory_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.MemmappedFileSystem.internal_static_tensorflow_MemmappedFileSystemDirectory_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -787,6 +760,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int ELEMENT_FIELD_NUMBER = 1;
    +    @SuppressWarnings("serial")
         private java.util.List element_;
         /**
          * repeated .tensorflow.MemmappedFileSystemDirectoryElement element = 1;
    @@ -927,39 +901,41 @@ public static org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirect
         }
         public static org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectory parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectory parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectory parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectory parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectory parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectory parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -979,7 +955,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -991,7 +967,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.MemmappedFileSystemDirectory}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.MemmappedFileSystemDirectory)
             org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1000,7 +976,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.MemmappedFileSystem.internal_static_tensorflow_MemmappedFileSystemDirectory_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -1013,13 +989,14 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             if (elementBuilder_ == null) {
               element_ = java.util.Collections.emptyList();
             } else {
    @@ -1053,7 +1030,13 @@ public org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectory bui
           @java.lang.Override
           public org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectory buildPartial() {
             org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectory result = new org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectory(this);
    -        int from_bitField0_ = bitField0_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectory result) {
             if (elementBuilder_ == null) {
               if (((bitField0_ & 0x00000001) != 0)) {
                 element_ = java.util.Collections.unmodifiableList(element_);
    @@ -1063,42 +1046,12 @@ public org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectory bui
             } else {
               result.element_ = elementBuilder_.build();
             }
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectory result) {
    +        int from_bitField0_ = bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectory) {
    @@ -1130,7 +1083,7 @@ public Builder mergeFrom(org.tensorflow.proto.MemmappedFileSystem.MemmappedFileS
                   element_ = other.element_;
                   bitField0_ = (bitField0_ & ~0x00000001);
                   elementBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getElementFieldBuilder() : null;
                 } else {
                   elementBuilder_.addAllMessages(other.element_);
    @@ -1202,7 +1155,7 @@ private void ensureElementIsMutable() {
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElement, org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElement.Builder, org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElementOrBuilder> elementBuilder_;
     
           /**
    @@ -1418,11 +1371,11 @@ public org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElem
                getElementBuilderList() {
             return getElementFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElement, org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElement.Builder, org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElementOrBuilder> 
               getElementFieldBuilder() {
             if (elementBuilder_ == null) {
    -          elementBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          elementBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElement, org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElement.Builder, org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElementOrBuilder>(
                       element_,
                       ((bitField0_ & 0x00000001) != 0),
    @@ -1432,18 +1385,6 @@ public org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectoryElem
             }
             return elementBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.MemmappedFileSystemDirectory)
         }
    @@ -1499,12 +1440,12 @@ public org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectory get
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_MemmappedFileSystemDirectoryElement_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_MemmappedFileSystemDirectoryElement_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_MemmappedFileSystemDirectory_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_MemmappedFileSystemDirectory_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -1530,15 +1471,16 @@ public org.tensorflow.proto.MemmappedFileSystem.MemmappedFileSystemDirectory get
         internal_static_tensorflow_MemmappedFileSystemDirectoryElement_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_MemmappedFileSystemDirectoryElement_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_MemmappedFileSystemDirectoryElement_descriptor,
             new java.lang.String[] { "Offset", "Name", "Length", });
         internal_static_tensorflow_MemmappedFileSystemDirectory_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_MemmappedFileSystemDirectory_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_MemmappedFileSystemDirectory_descriptor,
             new java.lang.String[] { "Element", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryInfo.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryInfo.java
    index 8c4b5b692a6..7154821aa85 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryInfo.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryInfo.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,36 +9,33 @@
      * Protobuf type {@code tensorflow.MemoryInfo}
      */
     public final class MemoryInfo extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.MemoryInfo)
         MemoryInfoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      MemoryInfo.class.getName());
    +  }
       // Use MemoryInfo.newBuilder() to construct.
    -  private MemoryInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private MemoryInfo(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private MemoryInfo() {
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new MemoryInfo();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_MemoryInfo_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_MemoryInfo_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -44,7 +43,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int TOTAL_FIELD_NUMBER = 1;
    -  private long total_;
    +  private long total_ = 0L;
       /**
        * 
        * Total virtual memory in bytes
    @@ -59,7 +58,7 @@ public long getTotal() {
       }
     
       public static final int AVAILABLE_FIELD_NUMBER = 2;
    -  private long available_;
    +  private long available_ = 0L;
       /**
        * 
        * Immediately available memory in bytes
    @@ -185,39 +184,41 @@ public static org.tensorflow.proto.MemoryInfo parseFrom(
       }
       public static org.tensorflow.proto.MemoryInfo parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MemoryInfo parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.MemoryInfo parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.MemoryInfo parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.MemoryInfo parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MemoryInfo parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -237,7 +238,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -245,7 +246,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.MemoryInfo}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.MemoryInfo)
           org.tensorflow.proto.MemoryInfoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -254,7 +255,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_MemoryInfo_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -267,17 +268,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           total_ = 0L;
    -
           available_ = 0L;
    -
           return this;
         }
     
    @@ -304,44 +304,21 @@ public org.tensorflow.proto.MemoryInfo build() {
         @java.lang.Override
         public org.tensorflow.proto.MemoryInfo buildPartial() {
           org.tensorflow.proto.MemoryInfo result = new org.tensorflow.proto.MemoryInfo(this);
    -      result.total_ = total_;
    -      result.available_ = available_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.MemoryInfo result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.total_ = total_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.available_ = available_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.MemoryInfo) {
    @@ -388,12 +365,12 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   total_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 16: {
                   available_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 default: {
    @@ -411,6 +388,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private long total_ ;
         /**
    @@ -435,8 +413,9 @@ public long getTotal() {
          * @return This builder for chaining.
          */
         public Builder setTotal(long value) {
    -      
    +
           total_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -449,7 +428,7 @@ public Builder setTotal(long value) {
          * @return This builder for chaining.
          */
         public Builder clearTotal() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           total_ = 0L;
           onChanged();
           return this;
    @@ -478,8 +457,9 @@ public long getAvailable() {
          * @return This builder for chaining.
          */
         public Builder setAvailable(long value) {
    -      
    +
           available_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -492,23 +472,11 @@ public Builder setAvailable(long value) {
          * @return This builder for chaining.
          */
         public Builder clearAvailable() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           available_ = 0L;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.MemoryInfo)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryInfoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryInfoOrBuilder.java
    index 265206a7c19..15da16855ac 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryInfoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryInfoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogRawAllocation.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogRawAllocation.java
    index e4e9ac919d4..1f7d254c4cd 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogRawAllocation.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogRawAllocation.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/log_memory.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,12 +9,21 @@
      * Protobuf type {@code tensorflow.MemoryLogRawAllocation}
      */
     public final class MemoryLogRawAllocation extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.MemoryLogRawAllocation)
         MemoryLogRawAllocationOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      MemoryLogRawAllocation.class.getName());
    +  }
       // Use MemoryLogRawAllocation.newBuilder() to construct.
    -  private MemoryLogRawAllocation(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private MemoryLogRawAllocation(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private MemoryLogRawAllocation() {
    @@ -20,25 +31,13 @@ private MemoryLogRawAllocation() {
         allocatorName_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new MemoryLogRawAllocation();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.LogMemoryProtos.internal_static_tensorflow_MemoryLogRawAllocation_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.LogMemoryProtos.internal_static_tensorflow_MemoryLogRawAllocation_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -46,7 +45,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int STEP_ID_FIELD_NUMBER = 1;
    -  private long stepId_;
    +  private long stepId_ = 0L;
       /**
        * 
        * Process-unique step id.
    @@ -61,7 +60,8 @@ public long getStepId() {
       }
     
       public static final int OPERATION_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object operation_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object operation_ = "";
       /**
        * 
        * Name of the operation making the allocation.
    @@ -107,7 +107,7 @@ public java.lang.String getOperation() {
       }
     
       public static final int NUM_BYTES_FIELD_NUMBER = 3;
    -  private long numBytes_;
    +  private long numBytes_ = 0L;
       /**
        * 
        * Number of bytes in the allocation.
    @@ -122,7 +122,7 @@ public long getNumBytes() {
       }
     
       public static final int PTR_FIELD_NUMBER = 4;
    -  private long ptr_;
    +  private long ptr_ = 0L;
       /**
        * 
        * Address of the allocation.
    @@ -137,7 +137,7 @@ public long getPtr() {
       }
     
       public static final int ALLOCATION_ID_FIELD_NUMBER = 5;
    -  private long allocationId_;
    +  private long allocationId_ = 0L;
       /**
        * 
        * Id of the tensor buffer being allocated, used to match to a
    @@ -153,7 +153,8 @@ public long getAllocationId() {
       }
     
       public static final int ALLOCATOR_NAME_FIELD_NUMBER = 6;
    -  private volatile java.lang.Object allocatorName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object allocatorName_ = "";
       /**
        * 
        * Name of the allocator used.
    @@ -215,8 +216,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (stepId_ != 0L) {
           output.writeInt64(1, stepId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(operation_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, operation_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(operation_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, operation_);
         }
         if (numBytes_ != 0L) {
           output.writeInt64(3, numBytes_);
    @@ -227,8 +228,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (allocationId_ != 0L) {
           output.writeInt64(5, allocationId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(allocatorName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 6, allocatorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(allocatorName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 6, allocatorName_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -243,8 +244,8 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeInt64Size(1, stepId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(operation_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, operation_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(operation_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, operation_);
         }
         if (numBytes_ != 0L) {
           size += com.google.protobuf.CodedOutputStream
    @@ -258,8 +259,8 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeInt64Size(5, allocationId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(allocatorName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, allocatorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(allocatorName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(6, allocatorName_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -354,39 +355,41 @@ public static org.tensorflow.proto.MemoryLogRawAllocation parseFrom(
       }
       public static org.tensorflow.proto.MemoryLogRawAllocation parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MemoryLogRawAllocation parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.MemoryLogRawAllocation parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.MemoryLogRawAllocation parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.MemoryLogRawAllocation parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MemoryLogRawAllocation parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -406,7 +409,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -414,7 +417,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.MemoryLogRawAllocation}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.MemoryLogRawAllocation)
           org.tensorflow.proto.MemoryLogRawAllocationOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -423,7 +426,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.LogMemoryProtos.internal_static_tensorflow_MemoryLogRawAllocation_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -436,25 +439,20 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           stepId_ = 0L;
    -
           operation_ = "";
    -
           numBytes_ = 0L;
    -
           ptr_ = 0L;
    -
           allocationId_ = 0L;
    -
           allocatorName_ = "";
    -
           return this;
         }
     
    @@ -481,48 +479,33 @@ public org.tensorflow.proto.MemoryLogRawAllocation build() {
         @java.lang.Override
         public org.tensorflow.proto.MemoryLogRawAllocation buildPartial() {
           org.tensorflow.proto.MemoryLogRawAllocation result = new org.tensorflow.proto.MemoryLogRawAllocation(this);
    -      result.stepId_ = stepId_;
    -      result.operation_ = operation_;
    -      result.numBytes_ = numBytes_;
    -      result.ptr_ = ptr_;
    -      result.allocationId_ = allocationId_;
    -      result.allocatorName_ = allocatorName_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.MemoryLogRawAllocation result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.stepId_ = stepId_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.operation_ = operation_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.numBytes_ = numBytes_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.ptr_ = ptr_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.allocationId_ = allocationId_;
    +      }
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.allocatorName_ = allocatorName_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.MemoryLogRawAllocation) {
    @@ -540,6 +523,7 @@ public Builder mergeFrom(org.tensorflow.proto.MemoryLogRawAllocation other) {
           }
           if (!other.getOperation().isEmpty()) {
             operation_ = other.operation_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (other.getNumBytes() != 0L) {
    @@ -553,6 +537,7 @@ public Builder mergeFrom(org.tensorflow.proto.MemoryLogRawAllocation other) {
           }
           if (!other.getAllocatorName().isEmpty()) {
             allocatorName_ = other.allocatorName_;
    +        bitField0_ |= 0x00000020;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -583,32 +568,32 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   stepId_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 18: {
                   operation_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 24: {
                   numBytes_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 24
                 case 32: {
                   ptr_ = input.readUInt64();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 32
                 case 40: {
                   allocationId_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 40
                 case 50: {
                   allocatorName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 50
                 default: {
    @@ -626,6 +611,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private long stepId_ ;
         /**
    @@ -650,8 +636,9 @@ public long getStepId() {
          * @return This builder for chaining.
          */
         public Builder setStepId(long value) {
    -      
    +
           stepId_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -664,7 +651,7 @@ public Builder setStepId(long value) {
          * @return This builder for chaining.
          */
         public Builder clearStepId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           stepId_ = 0L;
           onChanged();
           return this;
    @@ -723,11 +710,9 @@ public java.lang.String getOperation() {
          */
         public Builder setOperation(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           operation_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -740,8 +725,8 @@ public Builder setOperation(
          * @return This builder for chaining.
          */
         public Builder clearOperation() {
    -      
           operation_ = getDefaultInstance().getOperation();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -756,12 +741,10 @@ public Builder clearOperation() {
          */
         public Builder setOperationBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           operation_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -789,8 +772,9 @@ public long getNumBytes() {
          * @return This builder for chaining.
          */
         public Builder setNumBytes(long value) {
    -      
    +
           numBytes_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -803,7 +787,7 @@ public Builder setNumBytes(long value) {
          * @return This builder for chaining.
          */
         public Builder clearNumBytes() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           numBytes_ = 0L;
           onChanged();
           return this;
    @@ -832,8 +816,9 @@ public long getPtr() {
          * @return This builder for chaining.
          */
         public Builder setPtr(long value) {
    -      
    +
           ptr_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -846,7 +831,7 @@ public Builder setPtr(long value) {
          * @return This builder for chaining.
          */
         public Builder clearPtr() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           ptr_ = 0L;
           onChanged();
           return this;
    @@ -877,8 +862,9 @@ public long getAllocationId() {
          * @return This builder for chaining.
          */
         public Builder setAllocationId(long value) {
    -      
    +
           allocationId_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -892,7 +878,7 @@ public Builder setAllocationId(long value) {
          * @return This builder for chaining.
          */
         public Builder clearAllocationId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000010);
           allocationId_ = 0L;
           onChanged();
           return this;
    @@ -951,11 +937,9 @@ public java.lang.String getAllocatorName() {
          */
         public Builder setAllocatorName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           allocatorName_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -968,8 +952,8 @@ public Builder setAllocatorName(
          * @return This builder for chaining.
          */
         public Builder clearAllocatorName() {
    -      
           allocatorName_ = getDefaultInstance().getAllocatorName();
    +      bitField0_ = (bitField0_ & ~0x00000020);
           onChanged();
           return this;
         }
    @@ -984,27 +968,13 @@ public Builder clearAllocatorName() {
          */
         public Builder setAllocatorNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           allocatorName_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.MemoryLogRawAllocation)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogRawAllocationOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogRawAllocationOrBuilder.java
    index 16ac2cd7764..82a9160572d 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogRawAllocationOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogRawAllocationOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/log_memory.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogRawDeallocation.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogRawDeallocation.java
    index 73c1437212c..1215138ec89 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogRawDeallocation.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogRawDeallocation.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/log_memory.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,12 +9,21 @@
      * Protobuf type {@code tensorflow.MemoryLogRawDeallocation}
      */
     public final class MemoryLogRawDeallocation extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.MemoryLogRawDeallocation)
         MemoryLogRawDeallocationOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      MemoryLogRawDeallocation.class.getName());
    +  }
       // Use MemoryLogRawDeallocation.newBuilder() to construct.
    -  private MemoryLogRawDeallocation(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private MemoryLogRawDeallocation(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private MemoryLogRawDeallocation() {
    @@ -20,25 +31,13 @@ private MemoryLogRawDeallocation() {
         allocatorName_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new MemoryLogRawDeallocation();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.LogMemoryProtos.internal_static_tensorflow_MemoryLogRawDeallocation_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.LogMemoryProtos.internal_static_tensorflow_MemoryLogRawDeallocation_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -46,7 +45,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int STEP_ID_FIELD_NUMBER = 1;
    -  private long stepId_;
    +  private long stepId_ = 0L;
       /**
        * 
        * Process-unique step id.
    @@ -61,7 +60,8 @@ public long getStepId() {
       }
     
       public static final int OPERATION_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object operation_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object operation_ = "";
       /**
        * 
        * Name of the operation making the deallocation.
    @@ -107,7 +107,7 @@ public java.lang.String getOperation() {
       }
     
       public static final int ALLOCATION_ID_FIELD_NUMBER = 3;
    -  private long allocationId_;
    +  private long allocationId_ = 0L;
       /**
        * 
        * Id of the tensor buffer being deallocated, used to match to a
    @@ -123,7 +123,8 @@ public long getAllocationId() {
       }
     
       public static final int ALLOCATOR_NAME_FIELD_NUMBER = 4;
    -  private volatile java.lang.Object allocatorName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object allocatorName_ = "";
       /**
        * 
        * Name of the allocator used.
    @@ -169,7 +170,7 @@ public java.lang.String getAllocatorName() {
       }
     
       public static final int DEFERRED_FIELD_NUMBER = 5;
    -  private boolean deferred_;
    +  private boolean deferred_ = false;
       /**
        * 
        * True if the deallocation is queued and will be performed later,
    @@ -201,14 +202,14 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (stepId_ != 0L) {
           output.writeInt64(1, stepId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(operation_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, operation_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(operation_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, operation_);
         }
         if (allocationId_ != 0L) {
           output.writeInt64(3, allocationId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(allocatorName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 4, allocatorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(allocatorName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 4, allocatorName_);
         }
         if (deferred_ != false) {
           output.writeBool(5, deferred_);
    @@ -226,15 +227,15 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeInt64Size(1, stepId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(operation_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, operation_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(operation_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, operation_);
         }
         if (allocationId_ != 0L) {
           size += com.google.protobuf.CodedOutputStream
             .computeInt64Size(3, allocationId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(allocatorName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, allocatorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(allocatorName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(4, allocatorName_);
         }
         if (deferred_ != false) {
           size += com.google.protobuf.CodedOutputStream
    @@ -328,39 +329,41 @@ public static org.tensorflow.proto.MemoryLogRawDeallocation parseFrom(
       }
       public static org.tensorflow.proto.MemoryLogRawDeallocation parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MemoryLogRawDeallocation parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.MemoryLogRawDeallocation parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.MemoryLogRawDeallocation parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.MemoryLogRawDeallocation parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MemoryLogRawDeallocation parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -380,7 +383,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -388,7 +391,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.MemoryLogRawDeallocation}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.MemoryLogRawDeallocation)
           org.tensorflow.proto.MemoryLogRawDeallocationOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -397,7 +400,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.LogMemoryProtos.internal_static_tensorflow_MemoryLogRawDeallocation_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -410,23 +413,19 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           stepId_ = 0L;
    -
           operation_ = "";
    -
           allocationId_ = 0L;
    -
           allocatorName_ = "";
    -
           deferred_ = false;
    -
           return this;
         }
     
    @@ -453,47 +452,30 @@ public org.tensorflow.proto.MemoryLogRawDeallocation build() {
         @java.lang.Override
         public org.tensorflow.proto.MemoryLogRawDeallocation buildPartial() {
           org.tensorflow.proto.MemoryLogRawDeallocation result = new org.tensorflow.proto.MemoryLogRawDeallocation(this);
    -      result.stepId_ = stepId_;
    -      result.operation_ = operation_;
    -      result.allocationId_ = allocationId_;
    -      result.allocatorName_ = allocatorName_;
    -      result.deferred_ = deferred_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.MemoryLogRawDeallocation result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.stepId_ = stepId_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.operation_ = operation_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.allocationId_ = allocationId_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.allocatorName_ = allocatorName_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.deferred_ = deferred_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.MemoryLogRawDeallocation) {
    @@ -511,6 +493,7 @@ public Builder mergeFrom(org.tensorflow.proto.MemoryLogRawDeallocation other) {
           }
           if (!other.getOperation().isEmpty()) {
             operation_ = other.operation_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (other.getAllocationId() != 0L) {
    @@ -518,6 +501,7 @@ public Builder mergeFrom(org.tensorflow.proto.MemoryLogRawDeallocation other) {
           }
           if (!other.getAllocatorName().isEmpty()) {
             allocatorName_ = other.allocatorName_;
    +        bitField0_ |= 0x00000008;
             onChanged();
           }
           if (other.getDeferred() != false) {
    @@ -551,27 +535,27 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   stepId_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 18: {
                   operation_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 24: {
                   allocationId_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 24
                 case 34: {
                   allocatorName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 34
                 case 40: {
                   deferred_ = input.readBool();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 40
                 default: {
    @@ -589,6 +573,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private long stepId_ ;
         /**
    @@ -613,8 +598,9 @@ public long getStepId() {
          * @return This builder for chaining.
          */
         public Builder setStepId(long value) {
    -      
    +
           stepId_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -627,7 +613,7 @@ public Builder setStepId(long value) {
          * @return This builder for chaining.
          */
         public Builder clearStepId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           stepId_ = 0L;
           onChanged();
           return this;
    @@ -686,11 +672,9 @@ public java.lang.String getOperation() {
          */
         public Builder setOperation(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           operation_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -703,8 +687,8 @@ public Builder setOperation(
          * @return This builder for chaining.
          */
         public Builder clearOperation() {
    -      
           operation_ = getDefaultInstance().getOperation();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -719,12 +703,10 @@ public Builder clearOperation() {
          */
         public Builder setOperationBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           operation_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -754,8 +736,9 @@ public long getAllocationId() {
          * @return This builder for chaining.
          */
         public Builder setAllocationId(long value) {
    -      
    +
           allocationId_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -769,7 +752,7 @@ public Builder setAllocationId(long value) {
          * @return This builder for chaining.
          */
         public Builder clearAllocationId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           allocationId_ = 0L;
           onChanged();
           return this;
    @@ -828,11 +811,9 @@ public java.lang.String getAllocatorName() {
          */
         public Builder setAllocatorName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           allocatorName_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -845,8 +826,8 @@ public Builder setAllocatorName(
          * @return This builder for chaining.
          */
         public Builder clearAllocatorName() {
    -      
           allocatorName_ = getDefaultInstance().getAllocatorName();
    +      bitField0_ = (bitField0_ & ~0x00000008);
           onChanged();
           return this;
         }
    @@ -861,12 +842,10 @@ public Builder clearAllocatorName() {
          */
         public Builder setAllocatorNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           allocatorName_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -896,8 +875,9 @@ public boolean getDeferred() {
          * @return This builder for chaining.
          */
         public Builder setDeferred(boolean value) {
    -      
    +
           deferred_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -911,23 +891,11 @@ public Builder setDeferred(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearDeferred() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000010);
           deferred_ = false;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.MemoryLogRawDeallocation)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogRawDeallocationOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogRawDeallocationOrBuilder.java
    index bd951f2940d..485bb3ff60d 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogRawDeallocationOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogRawDeallocationOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/log_memory.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogStep.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogStep.java
    index 44a87c97310..0f191d9751d 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogStep.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogStep.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/log_memory.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,37 +9,34 @@
      * Protobuf type {@code tensorflow.MemoryLogStep}
      */
     public final class MemoryLogStep extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.MemoryLogStep)
         MemoryLogStepOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      MemoryLogStep.class.getName());
    +  }
       // Use MemoryLogStep.newBuilder() to construct.
    -  private MemoryLogStep(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private MemoryLogStep(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private MemoryLogStep() {
         handle_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new MemoryLogStep();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.LogMemoryProtos.internal_static_tensorflow_MemoryLogStep_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.LogMemoryProtos.internal_static_tensorflow_MemoryLogStep_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -45,7 +44,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int STEP_ID_FIELD_NUMBER = 1;
    -  private long stepId_;
    +  private long stepId_ = 0L;
       /**
        * 
        * Process-unique step id.
    @@ -60,7 +59,8 @@ public long getStepId() {
       }
     
       public static final int HANDLE_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object handle_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object handle_ = "";
       /**
        * 
        * Handle describing the feeds and fetches of the step.
    @@ -122,8 +122,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (stepId_ != 0L) {
           output.writeInt64(1, stepId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(handle_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, handle_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(handle_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, handle_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -138,8 +138,8 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeInt64Size(1, stepId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(handle_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, handle_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(handle_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, handle_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -215,39 +215,41 @@ public static org.tensorflow.proto.MemoryLogStep parseFrom(
       }
       public static org.tensorflow.proto.MemoryLogStep parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MemoryLogStep parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.MemoryLogStep parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.MemoryLogStep parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.MemoryLogStep parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MemoryLogStep parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -267,7 +269,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -275,7 +277,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.MemoryLogStep}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.MemoryLogStep)
           org.tensorflow.proto.MemoryLogStepOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -284,7 +286,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.LogMemoryProtos.internal_static_tensorflow_MemoryLogStep_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -297,17 +299,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           stepId_ = 0L;
    -
           handle_ = "";
    -
           return this;
         }
     
    @@ -334,44 +335,21 @@ public org.tensorflow.proto.MemoryLogStep build() {
         @java.lang.Override
         public org.tensorflow.proto.MemoryLogStep buildPartial() {
           org.tensorflow.proto.MemoryLogStep result = new org.tensorflow.proto.MemoryLogStep(this);
    -      result.stepId_ = stepId_;
    -      result.handle_ = handle_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.MemoryLogStep result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.stepId_ = stepId_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.handle_ = handle_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.MemoryLogStep) {
    @@ -389,6 +367,7 @@ public Builder mergeFrom(org.tensorflow.proto.MemoryLogStep other) {
           }
           if (!other.getHandle().isEmpty()) {
             handle_ = other.handle_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -419,12 +398,12 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   stepId_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 18: {
                   handle_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 default: {
    @@ -442,6 +421,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private long stepId_ ;
         /**
    @@ -466,8 +446,9 @@ public long getStepId() {
          * @return This builder for chaining.
          */
         public Builder setStepId(long value) {
    -      
    +
           stepId_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -480,7 +461,7 @@ public Builder setStepId(long value) {
          * @return This builder for chaining.
          */
         public Builder clearStepId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           stepId_ = 0L;
           onChanged();
           return this;
    @@ -539,11 +520,9 @@ public java.lang.String getHandle() {
          */
         public Builder setHandle(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           handle_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -556,8 +535,8 @@ public Builder setHandle(
          * @return This builder for chaining.
          */
         public Builder clearHandle() {
    -      
           handle_ = getDefaultInstance().getHandle();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -572,27 +551,13 @@ public Builder clearHandle() {
          */
         public Builder setHandleBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           handle_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.MemoryLogStep)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogStepOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogStepOrBuilder.java
    index d6ff942a982..39d7ad3312b 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogStepOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogStepOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/log_memory.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorAllocation.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorAllocation.java
    index f80a91ed246..a2f153d0515 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorAllocation.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorAllocation.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/log_memory.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,45 +9,43 @@
      * Protobuf type {@code tensorflow.MemoryLogTensorAllocation}
      */
     public final class MemoryLogTensorAllocation extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.MemoryLogTensorAllocation)
         MemoryLogTensorAllocationOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      MemoryLogTensorAllocation.class.getName());
    +  }
       // Use MemoryLogTensorAllocation.newBuilder() to construct.
    -  private MemoryLogTensorAllocation(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private MemoryLogTensorAllocation(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private MemoryLogTensorAllocation() {
         kernelName_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new MemoryLogTensorAllocation();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.LogMemoryProtos.internal_static_tensorflow_MemoryLogTensorAllocation_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.LogMemoryProtos.internal_static_tensorflow_MemoryLogTensorAllocation_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.MemoryLogTensorAllocation.class, org.tensorflow.proto.MemoryLogTensorAllocation.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int STEP_ID_FIELD_NUMBER = 1;
    -  private long stepId_;
    +  private long stepId_ = 0L;
       /**
        * 
        * Process-unique step id.
    @@ -60,7 +60,8 @@ public long getStepId() {
       }
     
       public static final int KERNEL_NAME_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object kernelName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object kernelName_ = "";
       /**
        * 
        * Name of the kernel making the allocation as set in GraphDef,
    @@ -119,7 +120,7 @@ public java.lang.String getKernelName() {
        */
       @java.lang.Override
       public boolean hasTensor() {
    -    return tensor_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -142,7 +143,7 @@ public org.tensorflow.proto.TensorDescription getTensor() {
        */
       @java.lang.Override
       public org.tensorflow.proto.TensorDescriptionOrBuilder getTensorOrBuilder() {
    -    return getTensor();
    +    return tensor_ == null ? org.tensorflow.proto.TensorDescription.getDefaultInstance() : tensor_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -162,10 +163,10 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (stepId_ != 0L) {
           output.writeInt64(1, stepId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(kernelName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, kernelName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(kernelName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, kernelName_);
         }
    -    if (tensor_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(3, getTensor());
         }
         getUnknownFields().writeTo(output);
    @@ -181,10 +182,10 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeInt64Size(1, stepId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(kernelName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, kernelName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(kernelName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, kernelName_);
         }
    -    if (tensor_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(3, getTensor());
         }
    @@ -271,39 +272,41 @@ public static org.tensorflow.proto.MemoryLogTensorAllocation parseFrom(
       }
       public static org.tensorflow.proto.MemoryLogTensorAllocation parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MemoryLogTensorAllocation parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.MemoryLogTensorAllocation parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.MemoryLogTensorAllocation parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.MemoryLogTensorAllocation parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MemoryLogTensorAllocation parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -323,7 +326,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -331,7 +334,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.MemoryLogTensorAllocation}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.MemoryLogTensorAllocation)
           org.tensorflow.proto.MemoryLogTensorAllocationOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -340,7 +343,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.LogMemoryProtos.internal_static_tensorflow_MemoryLogTensorAllocation_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -349,25 +352,29 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.MemoryLogTensorAllocation.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getTensorFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           stepId_ = 0L;
    -
           kernelName_ = "";
    -
    -      if (tensorBuilder_ == null) {
    -        tensor_ = null;
    -      } else {
    -        tensor_ = null;
    +      tensor_ = null;
    +      if (tensorBuilder_ != null) {
    +        tensorBuilder_.dispose();
             tensorBuilder_ = null;
           }
           return this;
    @@ -396,49 +403,29 @@ public org.tensorflow.proto.MemoryLogTensorAllocation build() {
         @java.lang.Override
         public org.tensorflow.proto.MemoryLogTensorAllocation buildPartial() {
           org.tensorflow.proto.MemoryLogTensorAllocation result = new org.tensorflow.proto.MemoryLogTensorAllocation(this);
    -      result.stepId_ = stepId_;
    -      result.kernelName_ = kernelName_;
    -      if (tensorBuilder_ == null) {
    -        result.tensor_ = tensor_;
    -      } else {
    -        result.tensor_ = tensorBuilder_.build();
    -      }
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.MemoryLogTensorAllocation result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.stepId_ = stepId_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.kernelName_ = kernelName_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.tensor_ = tensorBuilder_ == null
    +            ? tensor_
    +            : tensorBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.MemoryLogTensorAllocation) {
    @@ -456,6 +443,7 @@ public Builder mergeFrom(org.tensorflow.proto.MemoryLogTensorAllocation other) {
           }
           if (!other.getKernelName().isEmpty()) {
             kernelName_ = other.kernelName_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (other.hasTensor()) {
    @@ -489,19 +477,19 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   stepId_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 18: {
                   kernelName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
                   input.readMessage(
                       getTensorFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 default: {
    @@ -519,6 +507,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private long stepId_ ;
         /**
    @@ -543,8 +532,9 @@ public long getStepId() {
          * @return This builder for chaining.
          */
         public Builder setStepId(long value) {
    -      
    +
           stepId_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -557,7 +547,7 @@ public Builder setStepId(long value) {
          * @return This builder for chaining.
          */
         public Builder clearStepId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           stepId_ = 0L;
           onChanged();
           return this;
    @@ -619,11 +609,9 @@ public java.lang.String getKernelName() {
          */
         public Builder setKernelName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           kernelName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -637,8 +625,8 @@ public Builder setKernelName(
          * @return This builder for chaining.
          */
         public Builder clearKernelName() {
    -      
           kernelName_ = getDefaultInstance().getKernelName();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -654,18 +642,16 @@ public Builder clearKernelName() {
          */
         public Builder setKernelNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           kernelName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.TensorDescription tensor_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorDescription, org.tensorflow.proto.TensorDescription.Builder, org.tensorflow.proto.TensorDescriptionOrBuilder> tensorBuilder_;
         /**
          * 
    @@ -676,7 +662,7 @@ public Builder setKernelNameBytes(
          * @return Whether the tensor field is set.
          */
         public boolean hasTensor() {
    -      return tensorBuilder_ != null || tensor_ != null;
    +      return ((bitField0_ & 0x00000004) != 0);
         }
         /**
          * 
    @@ -706,11 +692,11 @@ public Builder setTensor(org.tensorflow.proto.TensorDescription value) {
               throw new NullPointerException();
             }
             tensor_ = value;
    -        onChanged();
           } else {
             tensorBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -724,11 +710,11 @@ public Builder setTensor(
             org.tensorflow.proto.TensorDescription.Builder builderForValue) {
           if (tensorBuilder_ == null) {
             tensor_ = builderForValue.build();
    -        onChanged();
           } else {
             tensorBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -740,17 +726,20 @@ public Builder setTensor(
          */
         public Builder mergeTensor(org.tensorflow.proto.TensorDescription value) {
           if (tensorBuilder_ == null) {
    -        if (tensor_ != null) {
    -          tensor_ =
    -            org.tensorflow.proto.TensorDescription.newBuilder(tensor_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000004) != 0) &&
    +          tensor_ != null &&
    +          tensor_ != org.tensorflow.proto.TensorDescription.getDefaultInstance()) {
    +          getTensorBuilder().mergeFrom(value);
             } else {
               tensor_ = value;
             }
    -        onChanged();
           } else {
             tensorBuilder_.mergeFrom(value);
           }
    -
    +      if (tensor_ != null) {
    +        bitField0_ |= 0x00000004;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -761,14 +750,13 @@ public Builder mergeTensor(org.tensorflow.proto.TensorDescription value) {
          * .tensorflow.TensorDescription tensor = 3;
          */
         public Builder clearTensor() {
    -      if (tensorBuilder_ == null) {
    -        tensor_ = null;
    -        onChanged();
    -      } else {
    -        tensor_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000004);
    +      tensor_ = null;
    +      if (tensorBuilder_ != null) {
    +        tensorBuilder_.dispose();
             tensorBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -779,7 +767,7 @@ public Builder clearTensor() {
          * .tensorflow.TensorDescription tensor = 3;
          */
         public org.tensorflow.proto.TensorDescription.Builder getTensorBuilder() {
    -      
    +      bitField0_ |= 0x00000004;
           onChanged();
           return getTensorFieldBuilder().getBuilder();
         }
    @@ -805,11 +793,11 @@ public org.tensorflow.proto.TensorDescriptionOrBuilder getTensorOrBuilder() {
          *
          * .tensorflow.TensorDescription tensor = 3;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorDescription, org.tensorflow.proto.TensorDescription.Builder, org.tensorflow.proto.TensorDescriptionOrBuilder> 
             getTensorFieldBuilder() {
           if (tensorBuilder_ == null) {
    -        tensorBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        tensorBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorDescription, org.tensorflow.proto.TensorDescription.Builder, org.tensorflow.proto.TensorDescriptionOrBuilder>(
                     getTensor(),
                     getParentForChildren(),
    @@ -818,18 +806,6 @@ public org.tensorflow.proto.TensorDescriptionOrBuilder getTensorOrBuilder() {
           }
           return tensorBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.MemoryLogTensorAllocation)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorAllocationOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorAllocationOrBuilder.java
    index be0aa265bc7..c8c3c7dd79f 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorAllocationOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorAllocationOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/log_memory.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorDeallocation.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorDeallocation.java
    index d6d7695b47f..2cd7114b7f1 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorDeallocation.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorDeallocation.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/log_memory.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,37 +9,34 @@
      * Protobuf type {@code tensorflow.MemoryLogTensorDeallocation}
      */
     public final class MemoryLogTensorDeallocation extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.MemoryLogTensorDeallocation)
         MemoryLogTensorDeallocationOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      MemoryLogTensorDeallocation.class.getName());
    +  }
       // Use MemoryLogTensorDeallocation.newBuilder() to construct.
    -  private MemoryLogTensorDeallocation(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private MemoryLogTensorDeallocation(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private MemoryLogTensorDeallocation() {
         allocatorName_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new MemoryLogTensorDeallocation();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.LogMemoryProtos.internal_static_tensorflow_MemoryLogTensorDeallocation_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.LogMemoryProtos.internal_static_tensorflow_MemoryLogTensorDeallocation_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -45,7 +44,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int ALLOCATION_ID_FIELD_NUMBER = 1;
    -  private long allocationId_;
    +  private long allocationId_ = 0L;
       /**
        * 
        * Id of the tensor buffer being deallocated, used to match to a
    @@ -61,7 +60,8 @@ public long getAllocationId() {
       }
     
       public static final int ALLOCATOR_NAME_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object allocatorName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object allocatorName_ = "";
       /**
        * 
        * Name of the allocator used.
    @@ -123,8 +123,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (allocationId_ != 0L) {
           output.writeInt64(1, allocationId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(allocatorName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, allocatorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(allocatorName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, allocatorName_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -139,8 +139,8 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeInt64Size(1, allocationId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(allocatorName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, allocatorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(allocatorName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, allocatorName_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -216,39 +216,41 @@ public static org.tensorflow.proto.MemoryLogTensorDeallocation parseFrom(
       }
       public static org.tensorflow.proto.MemoryLogTensorDeallocation parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MemoryLogTensorDeallocation parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.MemoryLogTensorDeallocation parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.MemoryLogTensorDeallocation parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.MemoryLogTensorDeallocation parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MemoryLogTensorDeallocation parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -268,7 +270,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -276,7 +278,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.MemoryLogTensorDeallocation}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.MemoryLogTensorDeallocation)
           org.tensorflow.proto.MemoryLogTensorDeallocationOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -285,7 +287,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.LogMemoryProtos.internal_static_tensorflow_MemoryLogTensorDeallocation_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -298,17 +300,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           allocationId_ = 0L;
    -
           allocatorName_ = "";
    -
           return this;
         }
     
    @@ -335,44 +336,21 @@ public org.tensorflow.proto.MemoryLogTensorDeallocation build() {
         @java.lang.Override
         public org.tensorflow.proto.MemoryLogTensorDeallocation buildPartial() {
           org.tensorflow.proto.MemoryLogTensorDeallocation result = new org.tensorflow.proto.MemoryLogTensorDeallocation(this);
    -      result.allocationId_ = allocationId_;
    -      result.allocatorName_ = allocatorName_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.MemoryLogTensorDeallocation result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.allocationId_ = allocationId_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.allocatorName_ = allocatorName_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.MemoryLogTensorDeallocation) {
    @@ -390,6 +368,7 @@ public Builder mergeFrom(org.tensorflow.proto.MemoryLogTensorDeallocation other)
           }
           if (!other.getAllocatorName().isEmpty()) {
             allocatorName_ = other.allocatorName_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -420,12 +399,12 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   allocationId_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 18: {
                   allocatorName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 default: {
    @@ -443,6 +422,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private long allocationId_ ;
         /**
    @@ -469,8 +449,9 @@ public long getAllocationId() {
          * @return This builder for chaining.
          */
         public Builder setAllocationId(long value) {
    -      
    +
           allocationId_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -484,7 +465,7 @@ public Builder setAllocationId(long value) {
          * @return This builder for chaining.
          */
         public Builder clearAllocationId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           allocationId_ = 0L;
           onChanged();
           return this;
    @@ -543,11 +524,9 @@ public java.lang.String getAllocatorName() {
          */
         public Builder setAllocatorName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           allocatorName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -560,8 +539,8 @@ public Builder setAllocatorName(
          * @return This builder for chaining.
          */
         public Builder clearAllocatorName() {
    -      
           allocatorName_ = getDefaultInstance().getAllocatorName();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -576,27 +555,13 @@ public Builder clearAllocatorName() {
          */
         public Builder setAllocatorNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           allocatorName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.MemoryLogTensorDeallocation)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorDeallocationOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorDeallocationOrBuilder.java
    index 36bdc3ceaaa..e3e45595114 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorDeallocationOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorDeallocationOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/log_memory.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorOutput.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorOutput.java
    index 28e5b83c11c..2916c4a1637 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorOutput.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorOutput.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/log_memory.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,45 +9,43 @@
      * Protobuf type {@code tensorflow.MemoryLogTensorOutput}
      */
     public final class MemoryLogTensorOutput extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.MemoryLogTensorOutput)
         MemoryLogTensorOutputOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      MemoryLogTensorOutput.class.getName());
    +  }
       // Use MemoryLogTensorOutput.newBuilder() to construct.
    -  private MemoryLogTensorOutput(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private MemoryLogTensorOutput(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private MemoryLogTensorOutput() {
         kernelName_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new MemoryLogTensorOutput();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.LogMemoryProtos.internal_static_tensorflow_MemoryLogTensorOutput_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.LogMemoryProtos.internal_static_tensorflow_MemoryLogTensorOutput_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.MemoryLogTensorOutput.class, org.tensorflow.proto.MemoryLogTensorOutput.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int STEP_ID_FIELD_NUMBER = 1;
    -  private long stepId_;
    +  private long stepId_ = 0L;
       /**
        * 
        * Process-unique step id.
    @@ -60,7 +60,8 @@ public long getStepId() {
       }
     
       public static final int KERNEL_NAME_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object kernelName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object kernelName_ = "";
       /**
        * 
        * Name of the kernel producing an output as set in GraphDef, e.g.,
    @@ -108,7 +109,7 @@ public java.lang.String getKernelName() {
       }
     
       public static final int INDEX_FIELD_NUMBER = 3;
    -  private int index_;
    +  private int index_ = 0;
       /**
        * 
        * Index of the output being set.
    @@ -134,7 +135,7 @@ public int getIndex() {
        */
       @java.lang.Override
       public boolean hasTensor() {
    -    return tensor_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -157,7 +158,7 @@ public org.tensorflow.proto.TensorDescription getTensor() {
        */
       @java.lang.Override
       public org.tensorflow.proto.TensorDescriptionOrBuilder getTensorOrBuilder() {
    -    return getTensor();
    +    return tensor_ == null ? org.tensorflow.proto.TensorDescription.getDefaultInstance() : tensor_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -177,13 +178,13 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (stepId_ != 0L) {
           output.writeInt64(1, stepId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(kernelName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, kernelName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(kernelName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, kernelName_);
         }
         if (index_ != 0) {
           output.writeInt32(3, index_);
         }
    -    if (tensor_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(4, getTensor());
         }
         getUnknownFields().writeTo(output);
    @@ -199,14 +200,14 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeInt64Size(1, stepId_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(kernelName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, kernelName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(kernelName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, kernelName_);
         }
         if (index_ != 0) {
           size += com.google.protobuf.CodedOutputStream
             .computeInt32Size(3, index_);
         }
    -    if (tensor_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(4, getTensor());
         }
    @@ -297,39 +298,41 @@ public static org.tensorflow.proto.MemoryLogTensorOutput parseFrom(
       }
       public static org.tensorflow.proto.MemoryLogTensorOutput parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MemoryLogTensorOutput parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.MemoryLogTensorOutput parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.MemoryLogTensorOutput parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.MemoryLogTensorOutput parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MemoryLogTensorOutput parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -349,7 +352,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -357,7 +360,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.MemoryLogTensorOutput}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.MemoryLogTensorOutput)
           org.tensorflow.proto.MemoryLogTensorOutputOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -366,7 +369,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.LogMemoryProtos.internal_static_tensorflow_MemoryLogTensorOutput_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -375,27 +378,30 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.MemoryLogTensorOutput.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getTensorFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           stepId_ = 0L;
    -
           kernelName_ = "";
    -
           index_ = 0;
    -
    -      if (tensorBuilder_ == null) {
    -        tensor_ = null;
    -      } else {
    -        tensor_ = null;
    +      tensor_ = null;
    +      if (tensorBuilder_ != null) {
    +        tensorBuilder_.dispose();
             tensorBuilder_ = null;
           }
           return this;
    @@ -424,50 +430,32 @@ public org.tensorflow.proto.MemoryLogTensorOutput build() {
         @java.lang.Override
         public org.tensorflow.proto.MemoryLogTensorOutput buildPartial() {
           org.tensorflow.proto.MemoryLogTensorOutput result = new org.tensorflow.proto.MemoryLogTensorOutput(this);
    -      result.stepId_ = stepId_;
    -      result.kernelName_ = kernelName_;
    -      result.index_ = index_;
    -      if (tensorBuilder_ == null) {
    -        result.tensor_ = tensor_;
    -      } else {
    -        result.tensor_ = tensorBuilder_.build();
    -      }
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.MemoryLogTensorOutput result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.stepId_ = stepId_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.kernelName_ = kernelName_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.index_ = index_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.tensor_ = tensorBuilder_ == null
    +            ? tensor_
    +            : tensorBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.MemoryLogTensorOutput) {
    @@ -485,6 +473,7 @@ public Builder mergeFrom(org.tensorflow.proto.MemoryLogTensorOutput other) {
           }
           if (!other.getKernelName().isEmpty()) {
             kernelName_ = other.kernelName_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (other.getIndex() != 0) {
    @@ -521,24 +510,24 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   stepId_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 18: {
                   kernelName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 24: {
                   index_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 24
                 case 34: {
                   input.readMessage(
                       getTensorFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 34
                 default: {
    @@ -556,6 +545,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private long stepId_ ;
         /**
    @@ -580,8 +570,9 @@ public long getStepId() {
          * @return This builder for chaining.
          */
         public Builder setStepId(long value) {
    -      
    +
           stepId_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -594,7 +585,7 @@ public Builder setStepId(long value) {
          * @return This builder for chaining.
          */
         public Builder clearStepId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           stepId_ = 0L;
           onChanged();
           return this;
    @@ -656,11 +647,9 @@ public java.lang.String getKernelName() {
          */
         public Builder setKernelName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           kernelName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -674,8 +663,8 @@ public Builder setKernelName(
          * @return This builder for chaining.
          */
         public Builder clearKernelName() {
    -      
           kernelName_ = getDefaultInstance().getKernelName();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -691,12 +680,10 @@ public Builder clearKernelName() {
          */
         public Builder setKernelNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           kernelName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -724,8 +711,9 @@ public int getIndex() {
          * @return This builder for chaining.
          */
         public Builder setIndex(int value) {
    -      
    +
           index_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -738,14 +726,14 @@ public Builder setIndex(int value) {
          * @return This builder for chaining.
          */
         public Builder clearIndex() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           index_ = 0;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.TensorDescription tensor_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorDescription, org.tensorflow.proto.TensorDescription.Builder, org.tensorflow.proto.TensorDescriptionOrBuilder> tensorBuilder_;
         /**
          * 
    @@ -756,7 +744,7 @@ public Builder clearIndex() {
          * @return Whether the tensor field is set.
          */
         public boolean hasTensor() {
    -      return tensorBuilder_ != null || tensor_ != null;
    +      return ((bitField0_ & 0x00000008) != 0);
         }
         /**
          * 
    @@ -786,11 +774,11 @@ public Builder setTensor(org.tensorflow.proto.TensorDescription value) {
               throw new NullPointerException();
             }
             tensor_ = value;
    -        onChanged();
           } else {
             tensorBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000008;
    +      onChanged();
           return this;
         }
         /**
    @@ -804,11 +792,11 @@ public Builder setTensor(
             org.tensorflow.proto.TensorDescription.Builder builderForValue) {
           if (tensorBuilder_ == null) {
             tensor_ = builderForValue.build();
    -        onChanged();
           } else {
             tensorBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000008;
    +      onChanged();
           return this;
         }
         /**
    @@ -820,17 +808,20 @@ public Builder setTensor(
          */
         public Builder mergeTensor(org.tensorflow.proto.TensorDescription value) {
           if (tensorBuilder_ == null) {
    -        if (tensor_ != null) {
    -          tensor_ =
    -            org.tensorflow.proto.TensorDescription.newBuilder(tensor_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000008) != 0) &&
    +          tensor_ != null &&
    +          tensor_ != org.tensorflow.proto.TensorDescription.getDefaultInstance()) {
    +          getTensorBuilder().mergeFrom(value);
             } else {
               tensor_ = value;
             }
    -        onChanged();
           } else {
             tensorBuilder_.mergeFrom(value);
           }
    -
    +      if (tensor_ != null) {
    +        bitField0_ |= 0x00000008;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -841,14 +832,13 @@ public Builder mergeTensor(org.tensorflow.proto.TensorDescription value) {
          * .tensorflow.TensorDescription tensor = 4;
          */
         public Builder clearTensor() {
    -      if (tensorBuilder_ == null) {
    -        tensor_ = null;
    -        onChanged();
    -      } else {
    -        tensor_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000008);
    +      tensor_ = null;
    +      if (tensorBuilder_ != null) {
    +        tensorBuilder_.dispose();
             tensorBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -859,7 +849,7 @@ public Builder clearTensor() {
          * .tensorflow.TensorDescription tensor = 4;
          */
         public org.tensorflow.proto.TensorDescription.Builder getTensorBuilder() {
    -      
    +      bitField0_ |= 0x00000008;
           onChanged();
           return getTensorFieldBuilder().getBuilder();
         }
    @@ -885,11 +875,11 @@ public org.tensorflow.proto.TensorDescriptionOrBuilder getTensorOrBuilder() {
          *
          * .tensorflow.TensorDescription tensor = 4;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorDescription, org.tensorflow.proto.TensorDescription.Builder, org.tensorflow.proto.TensorDescriptionOrBuilder> 
             getTensorFieldBuilder() {
           if (tensorBuilder_ == null) {
    -        tensorBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        tensorBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorDescription, org.tensorflow.proto.TensorDescription.Builder, org.tensorflow.proto.TensorDescriptionOrBuilder>(
                     getTensor(),
                     getParentForChildren(),
    @@ -898,18 +888,6 @@ public org.tensorflow.proto.TensorDescriptionOrBuilder getTensorOrBuilder() {
           }
           return tensorBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.MemoryLogTensorOutput)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorOutputOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorOutputOrBuilder.java
    index 97a99804141..b85bb1491aa 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorOutputOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryLogTensorOutputOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/log_memory.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryStats.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryStats.java
    index 354c9e5dfb2..dbb3b986b34 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryStats.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryStats.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/step_stats.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,12 +13,21 @@
      * Protobuf type {@code tensorflow.MemoryStats}
      */
     public final class MemoryStats extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.MemoryStats)
         MemoryStatsOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      MemoryStats.class.getName());
    +  }
       // Use MemoryStats.newBuilder() to construct.
    -  private MemoryStats(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private MemoryStats(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private MemoryStats() {
    @@ -24,25 +35,13 @@ private MemoryStats() {
         devicePersistentTensorAllocIds_ = emptyLongList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new MemoryStats();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_MemoryStats_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_MemoryStats_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -50,7 +49,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int TEMP_MEMORY_SIZE_FIELD_NUMBER = 1;
    -  private long tempMemorySize_;
    +  private long tempMemorySize_ = 0L;
       /**
        * int64 temp_memory_size = 1;
        * @return The tempMemorySize.
    @@ -61,7 +60,7 @@ public long getTempMemorySize() {
       }
     
       public static final int PERSISTENT_MEMORY_SIZE_FIELD_NUMBER = 3;
    -  private long persistentMemorySize_;
    +  private long persistentMemorySize_ = 0L;
       /**
        * int64 persistent_memory_size = 3;
        * @return The persistentMemorySize.
    @@ -72,7 +71,9 @@ public long getPersistentMemorySize() {
       }
     
       public static final int PERSISTENT_TENSOR_ALLOC_IDS_FIELD_NUMBER = 5;
    -  private com.google.protobuf.Internal.LongList persistentTensorAllocIds_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.LongList persistentTensorAllocIds_ =
    +      emptyLongList();
       /**
        * repeated int64 persistent_tensor_alloc_ids = 5;
        * @return A list containing the persistentTensorAllocIds.
    @@ -100,7 +101,7 @@ public long getPersistentTensorAllocIds(int index) {
       private int persistentTensorAllocIdsMemoizedSerializedSize = -1;
     
       public static final int DEVICE_TEMP_MEMORY_SIZE_FIELD_NUMBER = 2;
    -  private long deviceTempMemorySize_;
    +  private long deviceTempMemorySize_ = 0L;
       /**
        * int64 device_temp_memory_size = 2 [deprecated = true];
        * @deprecated tensorflow.MemoryStats.device_temp_memory_size is deprecated.
    @@ -113,7 +114,7 @@ public long getPersistentTensorAllocIds(int index) {
       }
     
       public static final int DEVICE_PERSISTENT_MEMORY_SIZE_FIELD_NUMBER = 4;
    -  private long devicePersistentMemorySize_;
    +  private long devicePersistentMemorySize_ = 0L;
       /**
        * int64 device_persistent_memory_size = 4 [deprecated = true];
        * @deprecated tensorflow.MemoryStats.device_persistent_memory_size is deprecated.
    @@ -126,7 +127,9 @@ public long getPersistentTensorAllocIds(int index) {
       }
     
       public static final int DEVICE_PERSISTENT_TENSOR_ALLOC_IDS_FIELD_NUMBER = 6;
    -  private com.google.protobuf.Internal.LongList devicePersistentTensorAllocIds_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.LongList devicePersistentTensorAllocIds_ =
    +      emptyLongList();
       /**
        * repeated int64 device_persistent_tensor_alloc_ids = 6 [deprecated = true];
        * @deprecated tensorflow.MemoryStats.device_persistent_tensor_alloc_ids is deprecated.
    @@ -350,39 +353,41 @@ public static org.tensorflow.proto.MemoryStats parseFrom(
       }
       public static org.tensorflow.proto.MemoryStats parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MemoryStats parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.MemoryStats parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.MemoryStats parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.MemoryStats parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MemoryStats parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -402,7 +407,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -414,7 +419,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.MemoryStats}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.MemoryStats)
           org.tensorflow.proto.MemoryStatsOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -423,7 +428,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_MemoryStats_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -436,25 +441,20 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           tempMemorySize_ = 0L;
    -
           persistentMemorySize_ = 0L;
    -
           persistentTensorAllocIds_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000001);
           deviceTempMemorySize_ = 0L;
    -
           devicePersistentMemorySize_ = 0L;
    -
           devicePersistentTensorAllocIds_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000002);
           return this;
         }
     
    @@ -481,57 +481,35 @@ public org.tensorflow.proto.MemoryStats build() {
         @java.lang.Override
         public org.tensorflow.proto.MemoryStats buildPartial() {
           org.tensorflow.proto.MemoryStats result = new org.tensorflow.proto.MemoryStats(this);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartial0(org.tensorflow.proto.MemoryStats result) {
           int from_bitField0_ = bitField0_;
    -      result.tempMemorySize_ = tempMemorySize_;
    -      result.persistentMemorySize_ = persistentMemorySize_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.tempMemorySize_ = tempMemorySize_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.persistentMemorySize_ = persistentMemorySize_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
             persistentTensorAllocIds_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        result.persistentTensorAllocIds_ = persistentTensorAllocIds_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.deviceTempMemorySize_ = deviceTempMemorySize_;
           }
    -      result.persistentTensorAllocIds_ = persistentTensorAllocIds_;
    -      result.deviceTempMemorySize_ = deviceTempMemorySize_;
    -      result.devicePersistentMemorySize_ = devicePersistentMemorySize_;
    -      if (((bitField0_ & 0x00000002) != 0)) {
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.devicePersistentMemorySize_ = devicePersistentMemorySize_;
    +      }
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
             devicePersistentTensorAllocIds_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        result.devicePersistentTensorAllocIds_ = devicePersistentTensorAllocIds_;
           }
    -      result.devicePersistentTensorAllocIds_ = devicePersistentTensorAllocIds_;
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    -    }
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.MemoryStats) {
    @@ -553,7 +531,8 @@ public Builder mergeFrom(org.tensorflow.proto.MemoryStats other) {
           if (!other.persistentTensorAllocIds_.isEmpty()) {
             if (persistentTensorAllocIds_.isEmpty()) {
               persistentTensorAllocIds_ = other.persistentTensorAllocIds_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          persistentTensorAllocIds_.makeImmutable();
    +          bitField0_ |= 0x00000004;
             } else {
               ensurePersistentTensorAllocIdsIsMutable();
               persistentTensorAllocIds_.addAll(other.persistentTensorAllocIds_);
    @@ -569,7 +548,8 @@ public Builder mergeFrom(org.tensorflow.proto.MemoryStats other) {
           if (!other.devicePersistentTensorAllocIds_.isEmpty()) {
             if (devicePersistentTensorAllocIds_.isEmpty()) {
               devicePersistentTensorAllocIds_ = other.devicePersistentTensorAllocIds_;
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          devicePersistentTensorAllocIds_.makeImmutable();
    +          bitField0_ |= 0x00000020;
             } else {
               ensureDevicePersistentTensorAllocIdsIsMutable();
               devicePersistentTensorAllocIds_.addAll(other.devicePersistentTensorAllocIds_);
    @@ -604,22 +584,22 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   tempMemorySize_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 16: {
                   deviceTempMemorySize_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 16
                 case 24: {
                   persistentMemorySize_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 24
                 case 32: {
                   devicePersistentMemorySize_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 32
                 case 40: {
    @@ -686,8 +666,9 @@ public long getTempMemorySize() {
          * @return This builder for chaining.
          */
         public Builder setTempMemorySize(long value) {
    -      
    +
           tempMemorySize_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -696,7 +677,7 @@ public Builder setTempMemorySize(long value) {
          * @return This builder for chaining.
          */
         public Builder clearTempMemorySize() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           tempMemorySize_ = 0L;
           onChanged();
           return this;
    @@ -717,8 +698,9 @@ public long getPersistentMemorySize() {
          * @return This builder for chaining.
          */
         public Builder setPersistentMemorySize(long value) {
    -      
    +
           persistentMemorySize_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -727,7 +709,7 @@ public Builder setPersistentMemorySize(long value) {
          * @return This builder for chaining.
          */
         public Builder clearPersistentMemorySize() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           persistentMemorySize_ = 0L;
           onChanged();
           return this;
    @@ -735,10 +717,10 @@ public Builder clearPersistentMemorySize() {
     
         private com.google.protobuf.Internal.LongList persistentTensorAllocIds_ = emptyLongList();
         private void ensurePersistentTensorAllocIdsIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    -        persistentTensorAllocIds_ = mutableCopy(persistentTensorAllocIds_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      if (!persistentTensorAllocIds_.isModifiable()) {
    +        persistentTensorAllocIds_ = makeMutableCopy(persistentTensorAllocIds_);
    +      }
    +      bitField0_ |= 0x00000004;
         }
         /**
          * repeated int64 persistent_tensor_alloc_ids = 5;
    @@ -746,8 +728,8 @@ private void ensurePersistentTensorAllocIdsIsMutable() {
          */
         public java.util.List
             getPersistentTensorAllocIdsList() {
    -      return ((bitField0_ & 0x00000001) != 0) ?
    -               java.util.Collections.unmodifiableList(persistentTensorAllocIds_) : persistentTensorAllocIds_;
    +      persistentTensorAllocIds_.makeImmutable();
    +      return persistentTensorAllocIds_;
         }
         /**
          * repeated int64 persistent_tensor_alloc_ids = 5;
    @@ -772,8 +754,10 @@ public long getPersistentTensorAllocIds(int index) {
          */
         public Builder setPersistentTensorAllocIds(
             int index, long value) {
    +
           ensurePersistentTensorAllocIdsIsMutable();
           persistentTensorAllocIds_.setLong(index, value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -783,8 +767,10 @@ public Builder setPersistentTensorAllocIds(
          * @return This builder for chaining.
          */
         public Builder addPersistentTensorAllocIds(long value) {
    +
           ensurePersistentTensorAllocIdsIsMutable();
           persistentTensorAllocIds_.addLong(value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -798,6 +784,7 @@ public Builder addAllPersistentTensorAllocIds(
           ensurePersistentTensorAllocIdsIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, persistentTensorAllocIds_);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -807,7 +794,7 @@ public Builder addAllPersistentTensorAllocIds(
          */
         public Builder clearPersistentTensorAllocIds() {
           persistentTensorAllocIds_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -831,8 +818,9 @@ public Builder clearPersistentTensorAllocIds() {
          * @return This builder for chaining.
          */
         @java.lang.Deprecated public Builder setDeviceTempMemorySize(long value) {
    -      
    +
           deviceTempMemorySize_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -843,7 +831,7 @@ public Builder clearPersistentTensorAllocIds() {
          * @return This builder for chaining.
          */
         @java.lang.Deprecated public Builder clearDeviceTempMemorySize() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           deviceTempMemorySize_ = 0L;
           onChanged();
           return this;
    @@ -868,8 +856,9 @@ public Builder clearPersistentTensorAllocIds() {
          * @return This builder for chaining.
          */
         @java.lang.Deprecated public Builder setDevicePersistentMemorySize(long value) {
    -      
    +
           devicePersistentMemorySize_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -880,7 +869,7 @@ public Builder clearPersistentTensorAllocIds() {
          * @return This builder for chaining.
          */
         @java.lang.Deprecated public Builder clearDevicePersistentMemorySize() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000010);
           devicePersistentMemorySize_ = 0L;
           onChanged();
           return this;
    @@ -888,10 +877,10 @@ public Builder clearPersistentTensorAllocIds() {
     
         private com.google.protobuf.Internal.LongList devicePersistentTensorAllocIds_ = emptyLongList();
         private void ensureDevicePersistentTensorAllocIdsIsMutable() {
    -      if (!((bitField0_ & 0x00000002) != 0)) {
    -        devicePersistentTensorAllocIds_ = mutableCopy(devicePersistentTensorAllocIds_);
    -        bitField0_ |= 0x00000002;
    -       }
    +      if (!devicePersistentTensorAllocIds_.isModifiable()) {
    +        devicePersistentTensorAllocIds_ = makeMutableCopy(devicePersistentTensorAllocIds_);
    +      }
    +      bitField0_ |= 0x00000020;
         }
         /**
          * repeated int64 device_persistent_tensor_alloc_ids = 6 [deprecated = true];
    @@ -901,8 +890,8 @@ private void ensureDevicePersistentTensorAllocIdsIsMutable() {
          */
         @java.lang.Deprecated public java.util.List
             getDevicePersistentTensorAllocIdsList() {
    -      return ((bitField0_ & 0x00000002) != 0) ?
    -               java.util.Collections.unmodifiableList(devicePersistentTensorAllocIds_) : devicePersistentTensorAllocIds_;
    +      devicePersistentTensorAllocIds_.makeImmutable();
    +      return devicePersistentTensorAllocIds_;
         }
         /**
          * repeated int64 device_persistent_tensor_alloc_ids = 6 [deprecated = true];
    @@ -933,8 +922,10 @@ private void ensureDevicePersistentTensorAllocIdsIsMutable() {
          */
         @java.lang.Deprecated public Builder setDevicePersistentTensorAllocIds(
             int index, long value) {
    +
           ensureDevicePersistentTensorAllocIdsIsMutable();
           devicePersistentTensorAllocIds_.setLong(index, value);
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -946,8 +937,10 @@ private void ensureDevicePersistentTensorAllocIdsIsMutable() {
          * @return This builder for chaining.
          */
         @java.lang.Deprecated public Builder addDevicePersistentTensorAllocIds(long value) {
    +
           ensureDevicePersistentTensorAllocIdsIsMutable();
           devicePersistentTensorAllocIds_.addLong(value);
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -963,6 +956,7 @@ private void ensureDevicePersistentTensorAllocIdsIsMutable() {
           ensureDevicePersistentTensorAllocIdsIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, devicePersistentTensorAllocIds_);
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -974,22 +968,10 @@ private void ensureDevicePersistentTensorAllocIdsIsMutable() {
          */
         @java.lang.Deprecated public Builder clearDevicePersistentTensorAllocIds() {
           devicePersistentTensorAllocIds_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000002);
    +      bitField0_ = (bitField0_ & ~0x00000020);
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.MemoryStats)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryStatsOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryStatsOrBuilder.java
    index 00814311c14..3c04e6831dd 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryStatsOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MemoryStatsOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/step_stats.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetaGraphDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetaGraphDef.java
    index c01e3be793a..8dfe44e7a05 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetaGraphDef.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetaGraphDef.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/meta_graph.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -10,41 +12,38 @@
      * objects necessary for running computation in a graph when crossing the
      * process boundary. It can be used for long term storage of graphs,
      * cross-language execution of graphs, etc.
    - *   MetaInfoDef
    - *   GraphDef
    - *   SaverDef
    - *   CollectionDef
    - *   TensorInfo
    - *   SignatureDef
    + * MetaInfoDef
    + * GraphDef
    + * SaverDef
    + * CollectionDef
    + * TensorInfo
    + * SignatureDef
      * 
    * * Protobuf type {@code tensorflow.MetaGraphDef} */ public final class MetaGraphDef extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.MetaGraphDef) MetaGraphDefOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + MetaGraphDef.class.getName()); + } // Use MetaGraphDef.newBuilder() to construct. - private MetaGraphDef(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private MetaGraphDef(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private MetaGraphDef() { assetFileDef_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new MetaGraphDef(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_MetaGraphDef_descriptor; @@ -52,7 +51,7 @@ protected java.lang.Object newInstance( @SuppressWarnings({"rawtypes"}) @java.lang.Override - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 4: @@ -65,7 +64,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_MetaGraphDef_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -161,6 +160,7 @@ public interface MetaInfoDefOrBuilder extends /** *
          * User supplied tag(s) on the meta_graph and included graph_def.
    +     *
          * MetaGraphDefs should be tagged with their capabilities or use-cases.
          * Examples: "train", "serve", "gpu", "tpu", etc.
          * These tags enable loaders to access the MetaGraph(s) appropriate for a
    @@ -175,6 +175,7 @@ public interface MetaInfoDefOrBuilder extends
         /**
          * 
          * User supplied tag(s) on the meta_graph and included graph_def.
    +     *
          * MetaGraphDefs should be tagged with their capabilities or use-cases.
          * Examples: "train", "serve", "gpu", "tpu", etc.
          * These tags enable loaders to access the MetaGraph(s) appropriate for a
    @@ -188,6 +189,7 @@ public interface MetaInfoDefOrBuilder extends
         /**
          * 
          * User supplied tag(s) on the meta_graph and included graph_def.
    +     *
          * MetaGraphDefs should be tagged with their capabilities or use-cases.
          * Examples: "train", "serve", "gpu", "tpu", etc.
          * These tags enable loaders to access the MetaGraph(s) appropriate for a
    @@ -202,6 +204,7 @@ public interface MetaInfoDefOrBuilder extends
         /**
          * 
          * User supplied tag(s) on the meta_graph and included graph_def.
    +     *
          * MetaGraphDefs should be tagged with their capabilities or use-cases.
          * Examples: "train", "serve", "gpu", "tpu", etc.
          * These tags enable loaders to access the MetaGraph(s) appropriate for a
    @@ -313,7 +316,6 @@ boolean containsFunctionAliases(
          *
          * map<string, string> function_aliases = 8;
          */
    -
         /* nullable */
     java.lang.String getFunctionAliasesOrDefault(
             java.lang.String key,
    @@ -326,7 +328,6 @@ java.lang.String getFunctionAliasesOrDefault(
          *
          * map<string, string> function_aliases = 8;
          */
    -
         java.lang.String getFunctionAliasesOrThrow(
             java.lang.String key);
       }
    @@ -339,33 +340,31 @@ java.lang.String getFunctionAliasesOrThrow(
        * Protobuf type {@code tensorflow.MetaGraphDef.MetaInfoDef}
        */
       public static final class MetaInfoDef extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.MetaGraphDef.MetaInfoDef)
           MetaInfoDefOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        MetaInfoDef.class.getName());
    +    }
         // Use MetaInfoDef.newBuilder() to construct.
    -    private MetaInfoDef(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private MetaInfoDef(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private MetaInfoDef() {
           metaGraphVersion_ = "";
    -      tags_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +      tags_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           tensorflowVersion_ = "";
           tensorflowGitVersion_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new MetaInfoDef();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_MetaGraphDef_MetaInfoDef_descriptor;
    @@ -373,7 +372,7 @@ protected java.lang.Object newInstance(
     
         @SuppressWarnings({"rawtypes"})
         @java.lang.Override
    -    protected com.google.protobuf.MapField internalGetMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
             int number) {
           switch (number) {
             case 8:
    @@ -384,15 +383,17 @@ protected com.google.protobuf.MapField internalGetMapField(
           }
         }
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_MetaGraphDef_MetaInfoDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
                   org.tensorflow.proto.MetaGraphDef.MetaInfoDef.class, org.tensorflow.proto.MetaGraphDef.MetaInfoDef.Builder.class);
         }
     
    +    private int bitField0_;
         public static final int META_GRAPH_VERSION_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object metaGraphVersion_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object metaGraphVersion_ = "";
         /**
          * 
          * User specified Version string. Can be the name of the model and revision,
    @@ -452,7 +453,7 @@ public java.lang.String getMetaGraphVersion() {
          */
         @java.lang.Override
         public boolean hasStrippedOpList() {
    -      return strippedOpList_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -477,7 +478,7 @@ public org.tensorflow.proto.OpList getStrippedOpList() {
          */
         @java.lang.Override
         public org.tensorflow.proto.OpListOrBuilder getStrippedOpListOrBuilder() {
    -      return getStrippedOpList();
    +      return strippedOpList_ == null ? org.tensorflow.proto.OpList.getDefaultInstance() : strippedOpList_;
         }
     
         public static final int ANY_INFO_FIELD_NUMBER = 3;
    @@ -493,7 +494,7 @@ public org.tensorflow.proto.OpListOrBuilder getStrippedOpListOrBuilder() {
          */
         @java.lang.Override
         public boolean hasAnyInfo() {
    -      return anyInfo_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -518,14 +519,17 @@ public com.google.protobuf.Any getAnyInfo() {
          */
         @java.lang.Override
         public com.google.protobuf.AnyOrBuilder getAnyInfoOrBuilder() {
    -      return getAnyInfo();
    +      return anyInfo_ == null ? com.google.protobuf.Any.getDefaultInstance() : anyInfo_;
         }
     
         public static final int TAGS_FIELD_NUMBER = 4;
    -    private com.google.protobuf.LazyStringList tags_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.LazyStringArrayList tags_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         /**
          * 
          * User supplied tag(s) on the meta_graph and included graph_def.
    +     *
          * MetaGraphDefs should be tagged with their capabilities or use-cases.
          * Examples: "train", "serve", "gpu", "tpu", etc.
          * These tags enable loaders to access the MetaGraph(s) appropriate for a
    @@ -542,6 +546,7 @@ public com.google.protobuf.AnyOrBuilder getAnyInfoOrBuilder() {
         /**
          * 
          * User supplied tag(s) on the meta_graph and included graph_def.
    +     *
          * MetaGraphDefs should be tagged with their capabilities or use-cases.
          * Examples: "train", "serve", "gpu", "tpu", etc.
          * These tags enable loaders to access the MetaGraph(s) appropriate for a
    @@ -557,6 +562,7 @@ public int getTagsCount() {
         /**
          * 
          * User supplied tag(s) on the meta_graph and included graph_def.
    +     *
          * MetaGraphDefs should be tagged with their capabilities or use-cases.
          * Examples: "train", "serve", "gpu", "tpu", etc.
          * These tags enable loaders to access the MetaGraph(s) appropriate for a
    @@ -573,6 +579,7 @@ public java.lang.String getTags(int index) {
         /**
          * 
          * User supplied tag(s) on the meta_graph and included graph_def.
    +     *
          * MetaGraphDefs should be tagged with their capabilities or use-cases.
          * Examples: "train", "serve", "gpu", "tpu", etc.
          * These tags enable loaders to access the MetaGraph(s) appropriate for a
    @@ -589,7 +596,8 @@ public java.lang.String getTags(int index) {
         }
     
         public static final int TENSORFLOW_VERSION_FIELD_NUMBER = 5;
    -    private volatile java.lang.Object tensorflowVersion_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object tensorflowVersion_ = "";
         /**
          * 
          * The __version__ string of the tensorflow build used to write this graph.
    @@ -639,7 +647,8 @@ public java.lang.String getTensorflowVersion() {
         }
     
         public static final int TENSORFLOW_GIT_VERSION_FIELD_NUMBER = 6;
    -    private volatile java.lang.Object tensorflowGitVersion_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object tensorflowGitVersion_ = "";
         /**
          * 
          * The __git_version__ string of the tensorflow build used to write this
    @@ -689,7 +698,7 @@ public java.lang.String getTensorflowGitVersion() {
         }
     
         public static final int STRIPPED_DEFAULT_ATTRS_FIELD_NUMBER = 7;
    -    private boolean strippedDefaultAttrs_;
    +    private boolean strippedDefaultAttrs_ = false;
         /**
          * 
          * A flag to denote whether default-valued attrs have been stripped from
    @@ -716,6 +725,7 @@ private static final class FunctionAliasesDefaultEntryHolder {
                       com.google.protobuf.WireFormat.FieldType.STRING,
                       "");
         }
    +    @SuppressWarnings("serial")
         private com.google.protobuf.MapField<
             java.lang.String, java.lang.String> functionAliases_;
         private com.google.protobuf.MapField
    @@ -726,7 +736,6 @@ private static final class FunctionAliasesDefaultEntryHolder {
           }
           return functionAliases_;
         }
    -
         public int getFunctionAliasesCount() {
           return internalGetFunctionAliases().getMap().size();
         }
    @@ -737,7 +746,6 @@ public int getFunctionAliasesCount() {
          *
          * map<string, string> function_aliases = 8;
          */
    -
         @java.lang.Override
         public boolean containsFunctionAliases(
             java.lang.String key) {
    @@ -760,7 +768,6 @@ public java.util.Map getFunctionAliases() {
          * map<string, string> function_aliases = 8;
          */
         @java.lang.Override
    -
         public java.util.Map getFunctionAliasesMap() {
           return internalGetFunctionAliases().getMap();
         }
    @@ -772,10 +779,11 @@ public java.util.Map getFunctionAliasesMap()
          * map<string, string> function_aliases = 8;
          */
         @java.lang.Override
    -
    -    public java.lang.String getFunctionAliasesOrDefault(
    +    public /* nullable */
    +java.lang.String getFunctionAliasesOrDefault(
             java.lang.String key,
    -        java.lang.String defaultValue) {
    +        /* nullable */
    +java.lang.String defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
           java.util.Map map =
               internalGetFunctionAliases().getMap();
    @@ -789,7 +797,6 @@ public java.lang.String getFunctionAliasesOrDefault(
          * map<string, string> function_aliases = 8;
          */
         @java.lang.Override
    -
         public java.lang.String getFunctionAliasesOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -815,28 +822,28 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(metaGraphVersion_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, metaGraphVersion_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(metaGraphVersion_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, metaGraphVersion_);
           }
    -      if (strippedOpList_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(2, getStrippedOpList());
           }
    -      if (anyInfo_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             output.writeMessage(3, getAnyInfo());
           }
           for (int i = 0; i < tags_.size(); i++) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, tags_.getRaw(i));
    +        com.google.protobuf.GeneratedMessage.writeString(output, 4, tags_.getRaw(i));
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tensorflowVersion_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, tensorflowVersion_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(tensorflowVersion_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 5, tensorflowVersion_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tensorflowGitVersion_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 6, tensorflowGitVersion_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(tensorflowGitVersion_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 6, tensorflowGitVersion_);
           }
           if (strippedDefaultAttrs_ != false) {
             output.writeBool(7, strippedDefaultAttrs_);
           }
    -      com.google.protobuf.GeneratedMessageV3
    +      com.google.protobuf.GeneratedMessage
             .serializeStringMapTo(
               output,
               internalGetFunctionAliases(),
    @@ -851,14 +858,14 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(metaGraphVersion_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, metaGraphVersion_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(metaGraphVersion_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, metaGraphVersion_);
           }
    -      if (strippedOpList_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(2, getStrippedOpList());
           }
    -      if (anyInfo_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(3, getAnyInfo());
           }
    @@ -870,11 +877,11 @@ public int getSerializedSize() {
             size += dataSize;
             size += 1 * getTagsList().size();
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tensorflowVersion_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, tensorflowVersion_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(tensorflowVersion_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(5, tensorflowVersion_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tensorflowGitVersion_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, tensorflowGitVersion_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(tensorflowGitVersion_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(6, tensorflowGitVersion_);
           }
           if (strippedDefaultAttrs_ != false) {
             size += com.google.protobuf.CodedOutputStream
    @@ -1002,39 +1009,41 @@ public static org.tensorflow.proto.MetaGraphDef.MetaInfoDef parseFrom(
         }
         public static org.tensorflow.proto.MetaGraphDef.MetaInfoDef parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.MetaGraphDef.MetaInfoDef parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.MetaGraphDef.MetaInfoDef parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.MetaGraphDef.MetaInfoDef parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.MetaGraphDef.MetaInfoDef parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.MetaGraphDef.MetaInfoDef parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -1054,7 +1063,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -1067,7 +1076,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.MetaGraphDef.MetaInfoDef}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.MetaGraphDef.MetaInfoDef)
             org.tensorflow.proto.MetaGraphDef.MetaInfoDefOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1076,7 +1085,7 @@ public static final class Builder extends
           }
     
           @SuppressWarnings({"rawtypes"})
    -      protected com.google.protobuf.MapField internalGetMapField(
    +      protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
               int number) {
             switch (number) {
               case 8:
    @@ -1087,7 +1096,7 @@ protected com.google.protobuf.MapField internalGetMapField(
             }
           }
           @SuppressWarnings({"rawtypes"})
    -      protected com.google.protobuf.MapField internalGetMutableMapField(
    +      protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(
               int number) {
             switch (number) {
               case 8:
    @@ -1098,7 +1107,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
             }
           }
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_MetaGraphDef_MetaInfoDef_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -1107,39 +1116,41 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
     
           // Construct using org.tensorflow.proto.MetaGraphDef.MetaInfoDef.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getStrippedOpListFieldBuilder();
    +          getAnyInfoFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             metaGraphVersion_ = "";
    -
    -        if (strippedOpListBuilder_ == null) {
    -          strippedOpList_ = null;
    -        } else {
    -          strippedOpList_ = null;
    +        strippedOpList_ = null;
    +        if (strippedOpListBuilder_ != null) {
    +          strippedOpListBuilder_.dispose();
               strippedOpListBuilder_ = null;
             }
    -        if (anyInfoBuilder_ == null) {
    -          anyInfo_ = null;
    -        } else {
    -          anyInfo_ = null;
    +        anyInfo_ = null;
    +        if (anyInfoBuilder_ != null) {
    +          anyInfoBuilder_.dispose();
               anyInfoBuilder_ = null;
             }
    -        tags_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        tags_ =
    +            com.google.protobuf.LazyStringArrayList.emptyList();
             tensorflowVersion_ = "";
    -
             tensorflowGitVersion_ = "";
    -
             strippedDefaultAttrs_ = false;
    -
             internalGetMutableFunctionAliases().clear();
             return this;
           }
    @@ -1167,64 +1178,49 @@ public org.tensorflow.proto.MetaGraphDef.MetaInfoDef build() {
           @java.lang.Override
           public org.tensorflow.proto.MetaGraphDef.MetaInfoDef buildPartial() {
             org.tensorflow.proto.MetaGraphDef.MetaInfoDef result = new org.tensorflow.proto.MetaGraphDef.MetaInfoDef(this);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartial0(org.tensorflow.proto.MetaGraphDef.MetaInfoDef result) {
             int from_bitField0_ = bitField0_;
    -        result.metaGraphVersion_ = metaGraphVersion_;
    -        if (strippedOpListBuilder_ == null) {
    -          result.strippedOpList_ = strippedOpList_;
    -        } else {
    -          result.strippedOpList_ = strippedOpListBuilder_.build();
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.metaGraphVersion_ = metaGraphVersion_;
             }
    -        if (anyInfoBuilder_ == null) {
    -          result.anyInfo_ = anyInfo_;
    -        } else {
    -          result.anyInfo_ = anyInfoBuilder_.build();
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.strippedOpList_ = strippedOpListBuilder_ == null
    +              ? strippedOpList_
    +              : strippedOpListBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
             }
    -        if (((bitField0_ & 0x00000001) != 0)) {
    -          tags_ = tags_.getUnmodifiableView();
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.anyInfo_ = anyInfoBuilder_ == null
    +              ? anyInfo_
    +              : anyInfoBuilder_.build();
    +          to_bitField0_ |= 0x00000002;
             }
    -        result.tags_ = tags_;
    -        result.tensorflowVersion_ = tensorflowVersion_;
    -        result.tensorflowGitVersion_ = tensorflowGitVersion_;
    -        result.strippedDefaultAttrs_ = strippedDefaultAttrs_;
    -        result.functionAliases_ = internalGetFunctionAliases();
    -        result.functionAliases_.makeImmutable();
    -        onBuilt();
    -        return result;
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          tags_.makeImmutable();
    +          result.tags_ = tags_;
    +        }
    +        if (((from_bitField0_ & 0x00000010) != 0)) {
    +          result.tensorflowVersion_ = tensorflowVersion_;
    +        }
    +        if (((from_bitField0_ & 0x00000020) != 0)) {
    +          result.tensorflowGitVersion_ = tensorflowGitVersion_;
    +        }
    +        if (((from_bitField0_ & 0x00000040) != 0)) {
    +          result.strippedDefaultAttrs_ = strippedDefaultAttrs_;
    +        }
    +        if (((from_bitField0_ & 0x00000080) != 0)) {
    +          result.functionAliases_ = internalGetFunctionAliases();
    +          result.functionAliases_.makeImmutable();
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    -      }
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.MetaGraphDef.MetaInfoDef) {
    @@ -1239,6 +1235,7 @@ public Builder mergeFrom(org.tensorflow.proto.MetaGraphDef.MetaInfoDef other) {
             if (other == org.tensorflow.proto.MetaGraphDef.MetaInfoDef.getDefaultInstance()) return this;
             if (!other.getMetaGraphVersion().isEmpty()) {
               metaGraphVersion_ = other.metaGraphVersion_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (other.hasStrippedOpList()) {
    @@ -1250,7 +1247,7 @@ public Builder mergeFrom(org.tensorflow.proto.MetaGraphDef.MetaInfoDef other) {
             if (!other.tags_.isEmpty()) {
               if (tags_.isEmpty()) {
                 tags_ = other.tags_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ |= 0x00000008;
               } else {
                 ensureTagsIsMutable();
                 tags_.addAll(other.tags_);
    @@ -1259,10 +1256,12 @@ public Builder mergeFrom(org.tensorflow.proto.MetaGraphDef.MetaInfoDef other) {
             }
             if (!other.getTensorflowVersion().isEmpty()) {
               tensorflowVersion_ = other.tensorflowVersion_;
    +          bitField0_ |= 0x00000010;
               onChanged();
             }
             if (!other.getTensorflowGitVersion().isEmpty()) {
               tensorflowGitVersion_ = other.tensorflowGitVersion_;
    +          bitField0_ |= 0x00000020;
               onChanged();
             }
             if (other.getStrippedDefaultAttrs() != false) {
    @@ -1270,6 +1269,7 @@ public Builder mergeFrom(org.tensorflow.proto.MetaGraphDef.MetaInfoDef other) {
             }
             internalGetMutableFunctionAliases().mergeFrom(
                 other.internalGetFunctionAliases());
    +        bitField0_ |= 0x00000080;
             this.mergeUnknownFields(other.getUnknownFields());
             onChanged();
             return this;
    @@ -1298,21 +1298,21 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     metaGraphVersion_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     input.readMessage(
                         getStrippedOpListFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 26: {
                     input.readMessage(
                         getAnyInfoFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 26
                   case 34: {
    @@ -1323,17 +1323,17 @@ public Builder mergeFrom(
                   } // case 34
                   case 42: {
                     tensorflowVersion_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000010;
                     break;
                   } // case 42
                   case 50: {
                     tensorflowGitVersion_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000020;
                     break;
                   } // case 50
                   case 56: {
                     strippedDefaultAttrs_ = input.readBool();
    -
    +                bitField0_ |= 0x00000040;
                     break;
                   } // case 56
                   case 66: {
    @@ -1342,6 +1342,7 @@ public Builder mergeFrom(
                         FunctionAliasesDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                     internalGetMutableFunctionAliases().getMutableMap().put(
                         functionAliases__.getKey(), functionAliases__.getValue());
    +                bitField0_ |= 0x00000080;
                     break;
                   } // case 66
                   default: {
    @@ -1417,11 +1418,9 @@ public java.lang.String getMetaGraphVersion() {
            */
           public Builder setMetaGraphVersion(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             metaGraphVersion_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -1435,8 +1434,8 @@ public Builder setMetaGraphVersion(
            * @return This builder for chaining.
            */
           public Builder clearMetaGraphVersion() {
    -        
             metaGraphVersion_ = getDefaultInstance().getMetaGraphVersion();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -1452,18 +1451,16 @@ public Builder clearMetaGraphVersion() {
            */
           public Builder setMetaGraphVersionBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             metaGraphVersion_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
     
           private org.tensorflow.proto.OpList strippedOpList_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.OpList, org.tensorflow.proto.OpList.Builder, org.tensorflow.proto.OpListOrBuilder> strippedOpListBuilder_;
           /**
            * 
    @@ -1475,7 +1472,7 @@ public Builder setMetaGraphVersionBytes(
            * @return Whether the strippedOpList field is set.
            */
           public boolean hasStrippedOpList() {
    -        return strippedOpListBuilder_ != null || strippedOpList_ != null;
    +        return ((bitField0_ & 0x00000002) != 0);
           }
           /**
            * 
    @@ -1507,11 +1504,11 @@ public Builder setStrippedOpList(org.tensorflow.proto.OpList value) {
                 throw new NullPointerException();
               }
               strippedOpList_ = value;
    -          onChanged();
             } else {
               strippedOpListBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -1526,11 +1523,11 @@ public Builder setStrippedOpList(
               org.tensorflow.proto.OpList.Builder builderForValue) {
             if (strippedOpListBuilder_ == null) {
               strippedOpList_ = builderForValue.build();
    -          onChanged();
             } else {
               strippedOpListBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -1543,17 +1540,20 @@ public Builder setStrippedOpList(
            */
           public Builder mergeStrippedOpList(org.tensorflow.proto.OpList value) {
             if (strippedOpListBuilder_ == null) {
    -          if (strippedOpList_ != null) {
    -            strippedOpList_ =
    -              org.tensorflow.proto.OpList.newBuilder(strippedOpList_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000002) != 0) &&
    +            strippedOpList_ != null &&
    +            strippedOpList_ != org.tensorflow.proto.OpList.getDefaultInstance()) {
    +            getStrippedOpListBuilder().mergeFrom(value);
               } else {
                 strippedOpList_ = value;
               }
    -          onChanged();
             } else {
               strippedOpListBuilder_.mergeFrom(value);
             }
    -
    +        if (strippedOpList_ != null) {
    +          bitField0_ |= 0x00000002;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -1565,14 +1565,13 @@ public Builder mergeStrippedOpList(org.tensorflow.proto.OpList value) {
            * .tensorflow.OpList stripped_op_list = 2;
            */
           public Builder clearStrippedOpList() {
    -        if (strippedOpListBuilder_ == null) {
    -          strippedOpList_ = null;
    -          onChanged();
    -        } else {
    -          strippedOpList_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000002);
    +        strippedOpList_ = null;
    +        if (strippedOpListBuilder_ != null) {
    +          strippedOpListBuilder_.dispose();
               strippedOpListBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -1584,7 +1583,7 @@ public Builder clearStrippedOpList() {
            * .tensorflow.OpList stripped_op_list = 2;
            */
           public org.tensorflow.proto.OpList.Builder getStrippedOpListBuilder() {
    -        
    +        bitField0_ |= 0x00000002;
             onChanged();
             return getStrippedOpListFieldBuilder().getBuilder();
           }
    @@ -1612,11 +1611,11 @@ public org.tensorflow.proto.OpListOrBuilder getStrippedOpListOrBuilder() {
            *
            * .tensorflow.OpList stripped_op_list = 2;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.OpList, org.tensorflow.proto.OpList.Builder, org.tensorflow.proto.OpListOrBuilder> 
               getStrippedOpListFieldBuilder() {
             if (strippedOpListBuilder_ == null) {
    -          strippedOpListBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          strippedOpListBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.OpList, org.tensorflow.proto.OpList.Builder, org.tensorflow.proto.OpListOrBuilder>(
                       getStrippedOpList(),
                       getParentForChildren(),
    @@ -1627,7 +1626,7 @@ public org.tensorflow.proto.OpListOrBuilder getStrippedOpListOrBuilder() {
           }
     
           private com.google.protobuf.Any anyInfo_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               com.google.protobuf.Any, com.google.protobuf.Any.Builder, com.google.protobuf.AnyOrBuilder> anyInfoBuilder_;
           /**
            * 
    @@ -1639,7 +1638,7 @@ public org.tensorflow.proto.OpListOrBuilder getStrippedOpListOrBuilder() {
            * @return Whether the anyInfo field is set.
            */
           public boolean hasAnyInfo() {
    -        return anyInfoBuilder_ != null || anyInfo_ != null;
    +        return ((bitField0_ & 0x00000004) != 0);
           }
           /**
            * 
    @@ -1671,11 +1670,11 @@ public Builder setAnyInfo(com.google.protobuf.Any value) {
                 throw new NullPointerException();
               }
               anyInfo_ = value;
    -          onChanged();
             } else {
               anyInfoBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000004;
    +        onChanged();
             return this;
           }
           /**
    @@ -1690,11 +1689,11 @@ public Builder setAnyInfo(
               com.google.protobuf.Any.Builder builderForValue) {
             if (anyInfoBuilder_ == null) {
               anyInfo_ = builderForValue.build();
    -          onChanged();
             } else {
               anyInfoBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000004;
    +        onChanged();
             return this;
           }
           /**
    @@ -1707,17 +1706,20 @@ public Builder setAnyInfo(
            */
           public Builder mergeAnyInfo(com.google.protobuf.Any value) {
             if (anyInfoBuilder_ == null) {
    -          if (anyInfo_ != null) {
    -            anyInfo_ =
    -              com.google.protobuf.Any.newBuilder(anyInfo_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000004) != 0) &&
    +            anyInfo_ != null &&
    +            anyInfo_ != com.google.protobuf.Any.getDefaultInstance()) {
    +            getAnyInfoBuilder().mergeFrom(value);
               } else {
                 anyInfo_ = value;
               }
    -          onChanged();
             } else {
               anyInfoBuilder_.mergeFrom(value);
             }
    -
    +        if (anyInfo_ != null) {
    +          bitField0_ |= 0x00000004;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -1729,14 +1731,13 @@ public Builder mergeAnyInfo(com.google.protobuf.Any value) {
            * .google.protobuf.Any any_info = 3;
            */
           public Builder clearAnyInfo() {
    -        if (anyInfoBuilder_ == null) {
    -          anyInfo_ = null;
    -          onChanged();
    -        } else {
    -          anyInfo_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000004);
    +        anyInfo_ = null;
    +        if (anyInfoBuilder_ != null) {
    +          anyInfoBuilder_.dispose();
               anyInfoBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -1748,7 +1749,7 @@ public Builder clearAnyInfo() {
            * .google.protobuf.Any any_info = 3;
            */
           public com.google.protobuf.Any.Builder getAnyInfoBuilder() {
    -        
    +        bitField0_ |= 0x00000004;
             onChanged();
             return getAnyInfoFieldBuilder().getBuilder();
           }
    @@ -1776,11 +1777,11 @@ public com.google.protobuf.AnyOrBuilder getAnyInfoOrBuilder() {
            *
            * .google.protobuf.Any any_info = 3;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               com.google.protobuf.Any, com.google.protobuf.Any.Builder, com.google.protobuf.AnyOrBuilder> 
               getAnyInfoFieldBuilder() {
             if (anyInfoBuilder_ == null) {
    -          anyInfoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          anyInfoBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   com.google.protobuf.Any, com.google.protobuf.Any.Builder, com.google.protobuf.AnyOrBuilder>(
                       getAnyInfo(),
                       getParentForChildren(),
    @@ -1790,16 +1791,18 @@ public com.google.protobuf.AnyOrBuilder getAnyInfoOrBuilder() {
             return anyInfoBuilder_;
           }
     
    -      private com.google.protobuf.LazyStringList tags_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +      private com.google.protobuf.LazyStringArrayList tags_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           private void ensureTagsIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    +        if (!tags_.isModifiable()) {
               tags_ = new com.google.protobuf.LazyStringArrayList(tags_);
    -          bitField0_ |= 0x00000001;
    -         }
    +        }
    +        bitField0_ |= 0x00000008;
           }
           /**
            * 
            * User supplied tag(s) on the meta_graph and included graph_def.
    +       *
            * MetaGraphDefs should be tagged with their capabilities or use-cases.
            * Examples: "train", "serve", "gpu", "tpu", etc.
            * These tags enable loaders to access the MetaGraph(s) appropriate for a
    @@ -1811,11 +1814,13 @@ private void ensureTagsIsMutable() {
            */
           public com.google.protobuf.ProtocolStringList
               getTagsList() {
    -        return tags_.getUnmodifiableView();
    +        tags_.makeImmutable();
    +        return tags_;
           }
           /**
            * 
            * User supplied tag(s) on the meta_graph and included graph_def.
    +       *
            * MetaGraphDefs should be tagged with their capabilities or use-cases.
            * Examples: "train", "serve", "gpu", "tpu", etc.
            * These tags enable loaders to access the MetaGraph(s) appropriate for a
    @@ -1831,6 +1836,7 @@ public int getTagsCount() {
           /**
            * 
            * User supplied tag(s) on the meta_graph and included graph_def.
    +       *
            * MetaGraphDefs should be tagged with their capabilities or use-cases.
            * Examples: "train", "serve", "gpu", "tpu", etc.
            * These tags enable loaders to access the MetaGraph(s) appropriate for a
    @@ -1847,6 +1853,7 @@ public java.lang.String getTags(int index) {
           /**
            * 
            * User supplied tag(s) on the meta_graph and included graph_def.
    +       *
            * MetaGraphDefs should be tagged with their capabilities or use-cases.
            * Examples: "train", "serve", "gpu", "tpu", etc.
            * These tags enable loaders to access the MetaGraph(s) appropriate for a
    @@ -1864,6 +1871,7 @@ public java.lang.String getTags(int index) {
           /**
            * 
            * User supplied tag(s) on the meta_graph and included graph_def.
    +       *
            * MetaGraphDefs should be tagged with their capabilities or use-cases.
            * Examples: "train", "serve", "gpu", "tpu", etc.
            * These tags enable loaders to access the MetaGraph(s) appropriate for a
    @@ -1877,17 +1885,17 @@ public java.lang.String getTags(int index) {
            */
           public Builder setTags(
               int index, java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureTagsIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureTagsIsMutable();
             tags_.set(index, value);
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
           /**
            * 
            * User supplied tag(s) on the meta_graph and included graph_def.
    +       *
            * MetaGraphDefs should be tagged with their capabilities or use-cases.
            * Examples: "train", "serve", "gpu", "tpu", etc.
            * These tags enable loaders to access the MetaGraph(s) appropriate for a
    @@ -1900,17 +1908,17 @@ public Builder setTags(
            */
           public Builder addTags(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureTagsIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureTagsIsMutable();
             tags_.add(value);
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
           /**
            * 
            * User supplied tag(s) on the meta_graph and included graph_def.
    +       *
            * MetaGraphDefs should be tagged with their capabilities or use-cases.
            * Examples: "train", "serve", "gpu", "tpu", etc.
            * These tags enable loaders to access the MetaGraph(s) appropriate for a
    @@ -1926,12 +1934,14 @@ public Builder addAllTags(
             ensureTagsIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, tags_);
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
           /**
            * 
            * User supplied tag(s) on the meta_graph and included graph_def.
    +       *
            * MetaGraphDefs should be tagged with their capabilities or use-cases.
            * Examples: "train", "serve", "gpu", "tpu", etc.
            * These tags enable loaders to access the MetaGraph(s) appropriate for a
    @@ -1942,14 +1952,16 @@ public Builder addAllTags(
            * @return This builder for chaining.
            */
           public Builder clearTags() {
    -        tags_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        tags_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
    +        bitField0_ = (bitField0_ & ~0x00000008);;
             onChanged();
             return this;
           }
           /**
            * 
            * User supplied tag(s) on the meta_graph and included graph_def.
    +       *
            * MetaGraphDefs should be tagged with their capabilities or use-cases.
            * Examples: "train", "serve", "gpu", "tpu", etc.
            * These tags enable loaders to access the MetaGraph(s) appropriate for a
    @@ -1962,12 +1974,11 @@ public Builder clearTags() {
            */
           public Builder addTagsBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             ensureTagsIsMutable();
             tags_.add(value);
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -2031,11 +2042,9 @@ public java.lang.String getTensorflowVersion() {
            */
           public Builder setTensorflowVersion(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             tensorflowVersion_ = value;
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -2050,8 +2059,8 @@ public Builder setTensorflowVersion(
            * @return This builder for chaining.
            */
           public Builder clearTensorflowVersion() {
    -        
             tensorflowVersion_ = getDefaultInstance().getTensorflowVersion();
    +        bitField0_ = (bitField0_ & ~0x00000010);
             onChanged();
             return this;
           }
    @@ -2068,12 +2077,10 @@ public Builder clearTensorflowVersion() {
            */
           public Builder setTensorflowVersionBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             tensorflowVersion_ = value;
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -2137,11 +2144,9 @@ public java.lang.String getTensorflowGitVersion() {
            */
           public Builder setTensorflowGitVersion(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             tensorflowGitVersion_ = value;
    +        bitField0_ |= 0x00000020;
             onChanged();
             return this;
           }
    @@ -2156,8 +2161,8 @@ public Builder setTensorflowGitVersion(
            * @return This builder for chaining.
            */
           public Builder clearTensorflowGitVersion() {
    -        
             tensorflowGitVersion_ = getDefaultInstance().getTensorflowGitVersion();
    +        bitField0_ = (bitField0_ & ~0x00000020);
             onChanged();
             return this;
           }
    @@ -2174,12 +2179,10 @@ public Builder clearTensorflowGitVersion() {
            */
           public Builder setTensorflowGitVersionBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             tensorflowGitVersion_ = value;
    +        bitField0_ |= 0x00000020;
             onChanged();
             return this;
           }
    @@ -2209,8 +2212,9 @@ public boolean getStrippedDefaultAttrs() {
            * @return This builder for chaining.
            */
           public Builder setStrippedDefaultAttrs(boolean value) {
    -        
    +
             strippedDefaultAttrs_ = value;
    +        bitField0_ |= 0x00000040;
             onChanged();
             return this;
           }
    @@ -2224,7 +2228,7 @@ public Builder setStrippedDefaultAttrs(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearStrippedDefaultAttrs() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000040);
             strippedDefaultAttrs_ = false;
             onChanged();
             return this;
    @@ -2233,7 +2237,7 @@ public Builder clearStrippedDefaultAttrs() {
           private com.google.protobuf.MapField<
               java.lang.String, java.lang.String> functionAliases_;
           private com.google.protobuf.MapField
    -      internalGetFunctionAliases() {
    +          internalGetFunctionAliases() {
             if (functionAliases_ == null) {
               return com.google.protobuf.MapField.emptyMapField(
                   FunctionAliasesDefaultEntryHolder.defaultEntry);
    @@ -2241,8 +2245,7 @@ public Builder clearStrippedDefaultAttrs() {
             return functionAliases_;
           }
           private com.google.protobuf.MapField
    -      internalGetMutableFunctionAliases() {
    -        onChanged();;
    +          internalGetMutableFunctionAliases() {
             if (functionAliases_ == null) {
               functionAliases_ = com.google.protobuf.MapField.newMapField(
                   FunctionAliasesDefaultEntryHolder.defaultEntry);
    @@ -2250,9 +2253,10 @@ public Builder clearStrippedDefaultAttrs() {
             if (!functionAliases_.isMutable()) {
               functionAliases_ = functionAliases_.copy();
             }
    +        bitField0_ |= 0x00000080;
    +        onChanged();
             return functionAliases_;
           }
    -
           public int getFunctionAliasesCount() {
             return internalGetFunctionAliases().getMap().size();
           }
    @@ -2263,7 +2267,6 @@ public int getFunctionAliasesCount() {
            *
            * map<string, string> function_aliases = 8;
            */
    -
           @java.lang.Override
           public boolean containsFunctionAliases(
               java.lang.String key) {
    @@ -2286,7 +2289,6 @@ public java.util.Map getFunctionAliases() {
            * map<string, string> function_aliases = 8;
            */
           @java.lang.Override
    -
           public java.util.Map getFunctionAliasesMap() {
             return internalGetFunctionAliases().getMap();
           }
    @@ -2298,10 +2300,11 @@ public java.util.Map getFunctionAliasesMap()
            * map<string, string> function_aliases = 8;
            */
           @java.lang.Override
    -
    -      public java.lang.String getFunctionAliasesOrDefault(
    +      public /* nullable */
    +java.lang.String getFunctionAliasesOrDefault(
               java.lang.String key,
    -          java.lang.String defaultValue) {
    +          /* nullable */
    +java.lang.String defaultValue) {
             if (key == null) { throw new NullPointerException("map key"); }
             java.util.Map map =
                 internalGetFunctionAliases().getMap();
    @@ -2315,7 +2318,6 @@ public java.lang.String getFunctionAliasesOrDefault(
            * map<string, string> function_aliases = 8;
            */
           @java.lang.Override
    -
           public java.lang.String getFunctionAliasesOrThrow(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    @@ -2326,8 +2328,8 @@ public java.lang.String getFunctionAliasesOrThrow(
             }
             return map.get(key);
           }
    -
           public Builder clearFunctionAliases() {
    +        bitField0_ = (bitField0_ & ~0x00000080);
             internalGetMutableFunctionAliases().getMutableMap()
                 .clear();
             return this;
    @@ -2339,7 +2341,6 @@ public Builder clearFunctionAliases() {
            *
            * map<string, string> function_aliases = 8;
            */
    -
           public Builder removeFunctionAliases(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    @@ -2352,7 +2353,8 @@ public Builder removeFunctionAliases(
            */
           @java.lang.Deprecated
           public java.util.Map
    -      getMutableFunctionAliases() {
    +          getMutableFunctionAliases() {
    +        bitField0_ |= 0x00000080;
             return internalGetMutableFunctionAliases().getMutableMap();
           }
           /**
    @@ -2366,12 +2368,10 @@ public Builder putFunctionAliases(
               java.lang.String key,
               java.lang.String value) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    +        if (value == null) { throw new NullPointerException("map value"); }
             internalGetMutableFunctionAliases().getMutableMap()
                 .put(key, value);
    +        bitField0_ |= 0x00000080;
             return this;
           }
           /**
    @@ -2381,25 +2381,13 @@ public Builder putFunctionAliases(
            *
            * map<string, string> function_aliases = 8;
            */
    -
           public Builder putAllFunctionAliases(
               java.util.Map values) {
             internalGetMutableFunctionAliases().getMutableMap()
                 .putAll(values);
    +        bitField0_ |= 0x00000080;
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.MetaGraphDef.MetaInfoDef)
         }
    @@ -2452,6 +2440,7 @@ public org.tensorflow.proto.MetaGraphDef.MetaInfoDef getDefaultInstanceForType()
     
       }
     
    +  private int bitField0_;
       public static final int META_INFO_DEF_FIELD_NUMBER = 1;
       private org.tensorflow.proto.MetaGraphDef.MetaInfoDef metaInfoDef_;
       /**
    @@ -2460,7 +2449,7 @@ public org.tensorflow.proto.MetaGraphDef.MetaInfoDef getDefaultInstanceForType()
        */
       @java.lang.Override
       public boolean hasMetaInfoDef() {
    -    return metaInfoDef_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * .tensorflow.MetaGraphDef.MetaInfoDef meta_info_def = 1;
    @@ -2475,7 +2464,7 @@ public org.tensorflow.proto.MetaGraphDef.MetaInfoDef getMetaInfoDef() {
        */
       @java.lang.Override
       public org.tensorflow.proto.MetaGraphDef.MetaInfoDefOrBuilder getMetaInfoDefOrBuilder() {
    -    return getMetaInfoDef();
    +    return metaInfoDef_ == null ? org.tensorflow.proto.MetaGraphDef.MetaInfoDef.getDefaultInstance() : metaInfoDef_;
       }
     
       public static final int GRAPH_DEF_FIELD_NUMBER = 2;
    @@ -2490,7 +2479,7 @@ public org.tensorflow.proto.MetaGraphDef.MetaInfoDefOrBuilder getMetaInfoDefOrBu
        */
       @java.lang.Override
       public boolean hasGraphDef() {
    -    return graphDef_ != null;
    +    return ((bitField0_ & 0x00000002) != 0);
       }
       /**
        * 
    @@ -2513,7 +2502,7 @@ public org.tensorflow.proto.GraphDef getGraphDef() {
        */
       @java.lang.Override
       public org.tensorflow.proto.GraphDefOrBuilder getGraphDefOrBuilder() {
    -    return getGraphDef();
    +    return graphDef_ == null ? org.tensorflow.proto.GraphDef.getDefaultInstance() : graphDef_;
       }
     
       public static final int SAVER_DEF_FIELD_NUMBER = 3;
    @@ -2528,7 +2517,7 @@ public org.tensorflow.proto.GraphDefOrBuilder getGraphDefOrBuilder() {
        */
       @java.lang.Override
       public boolean hasSaverDef() {
    -    return saverDef_ != null;
    +    return ((bitField0_ & 0x00000004) != 0);
       }
       /**
        * 
    @@ -2551,7 +2540,7 @@ public org.tensorflow.proto.SaverDef getSaverDef() {
        */
       @java.lang.Override
       public org.tensorflow.proto.SaverDefOrBuilder getSaverDefOrBuilder() {
    -    return getSaverDef();
    +    return saverDef_ == null ? org.tensorflow.proto.SaverDef.getDefaultInstance() : saverDef_;
       }
     
       public static final int COLLECTION_DEF_FIELD_NUMBER = 4;
    @@ -2566,6 +2555,7 @@ private static final class CollectionDefDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.MESSAGE,
                     org.tensorflow.proto.CollectionDef.getDefaultInstance());
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.String, org.tensorflow.proto.CollectionDef> collectionDef_;
       private com.google.protobuf.MapField
    @@ -2576,7 +2566,6 @@ private static final class CollectionDefDefaultEntryHolder {
         }
         return collectionDef_;
       }
    -
       public int getCollectionDefCount() {
         return internalGetCollectionDef().getMap().size();
       }
    @@ -2588,7 +2577,6 @@ public int getCollectionDefCount() {
        *
        * map<string, .tensorflow.CollectionDef> collection_def = 4;
        */
    -
       @java.lang.Override
       public boolean containsCollectionDef(
           java.lang.String key) {
    @@ -2612,7 +2600,6 @@ public java.util.Map getCo
        * map<string, .tensorflow.CollectionDef> collection_def = 4;
        */
       @java.lang.Override
    -
       public java.util.Map getCollectionDefMap() {
         return internalGetCollectionDef().getMap();
       }
    @@ -2625,10 +2612,11 @@ public java.util.Map getCo
        * map<string, .tensorflow.CollectionDef> collection_def = 4;
        */
       @java.lang.Override
    -
    -  public org.tensorflow.proto.CollectionDef getCollectionDefOrDefault(
    +  public /* nullable */
    +org.tensorflow.proto.CollectionDef getCollectionDefOrDefault(
           java.lang.String key,
    -      org.tensorflow.proto.CollectionDef defaultValue) {
    +      /* nullable */
    +org.tensorflow.proto.CollectionDef defaultValue) {
         if (key == null) { throw new NullPointerException("map key"); }
         java.util.Map map =
             internalGetCollectionDef().getMap();
    @@ -2643,7 +2631,6 @@ public org.tensorflow.proto.CollectionDef getCollectionDefOrDefault(
        * map<string, .tensorflow.CollectionDef> collection_def = 4;
        */
       @java.lang.Override
    -
       public org.tensorflow.proto.CollectionDef getCollectionDefOrThrow(
           java.lang.String key) {
         if (key == null) { throw new NullPointerException("map key"); }
    @@ -2667,6 +2654,7 @@ private static final class SignatureDefDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.MESSAGE,
                     org.tensorflow.proto.SignatureDef.getDefaultInstance());
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.String, org.tensorflow.proto.SignatureDef> signatureDef_;
       private com.google.protobuf.MapField
    @@ -2677,7 +2665,6 @@ private static final class SignatureDefDefaultEntryHolder {
         }
         return signatureDef_;
       }
    -
       public int getSignatureDefCount() {
         return internalGetSignatureDef().getMap().size();
       }
    @@ -2689,7 +2676,6 @@ public int getSignatureDefCount() {
        *
        * map<string, .tensorflow.SignatureDef> signature_def = 5;
        */
    -
       @java.lang.Override
       public boolean containsSignatureDef(
           java.lang.String key) {
    @@ -2713,7 +2699,6 @@ public java.util.Map getSig
        * map<string, .tensorflow.SignatureDef> signature_def = 5;
        */
       @java.lang.Override
    -
       public java.util.Map getSignatureDefMap() {
         return internalGetSignatureDef().getMap();
       }
    @@ -2726,10 +2711,11 @@ public java.util.Map getSig
        * map<string, .tensorflow.SignatureDef> signature_def = 5;
        */
       @java.lang.Override
    -
    -  public org.tensorflow.proto.SignatureDef getSignatureDefOrDefault(
    +  public /* nullable */
    +org.tensorflow.proto.SignatureDef getSignatureDefOrDefault(
           java.lang.String key,
    -      org.tensorflow.proto.SignatureDef defaultValue) {
    +      /* nullable */
    +org.tensorflow.proto.SignatureDef defaultValue) {
         if (key == null) { throw new NullPointerException("map key"); }
         java.util.Map map =
             internalGetSignatureDef().getMap();
    @@ -2744,7 +2730,6 @@ public org.tensorflow.proto.SignatureDef getSignatureDefOrDefault(
        * map<string, .tensorflow.SignatureDef> signature_def = 5;
        */
       @java.lang.Override
    -
       public org.tensorflow.proto.SignatureDef getSignatureDefOrThrow(
           java.lang.String key) {
         if (key == null) { throw new NullPointerException("map key"); }
    @@ -2757,6 +2742,7 @@ public org.tensorflow.proto.SignatureDef getSignatureDefOrThrow(
       }
     
       public static final int ASSET_FILE_DEF_FIELD_NUMBER = 6;
    +  @SuppressWarnings("serial")
       private java.util.List assetFileDef_;
       /**
        * 
    @@ -2828,7 +2814,7 @@ public org.tensorflow.proto.AssetFileDefOrBuilder getAssetFileDefOrBuilder(
        */
       @java.lang.Override
       public boolean hasObjectGraphDef() {
    -    return objectGraphDef_ != null;
    +    return ((bitField0_ & 0x00000008) != 0);
       }
       /**
        * 
    @@ -2851,7 +2837,7 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph getObjec
        */
       @java.lang.Override
       public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraphOrBuilder getObjectGraphDefOrBuilder() {
    -    return getObjectGraphDef();
    +    return objectGraphDef_ == null ? org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph.getDefaultInstance() : objectGraphDef_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -2868,22 +2854,22 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (metaInfoDef_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(1, getMetaInfoDef());
         }
    -    if (graphDef_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           output.writeMessage(2, getGraphDef());
         }
    -    if (saverDef_ != null) {
    +    if (((bitField0_ & 0x00000004) != 0)) {
           output.writeMessage(3, getSaverDef());
         }
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeStringMapTo(
             output,
             internalGetCollectionDef(),
             CollectionDefDefaultEntryHolder.defaultEntry,
             4);
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeStringMapTo(
             output,
             internalGetSignatureDef(),
    @@ -2892,7 +2878,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         for (int i = 0; i < assetFileDef_.size(); i++) {
           output.writeMessage(6, assetFileDef_.get(i));
         }
    -    if (objectGraphDef_ != null) {
    +    if (((bitField0_ & 0x00000008) != 0)) {
           output.writeMessage(7, getObjectGraphDef());
         }
         getUnknownFields().writeTo(output);
    @@ -2904,15 +2890,15 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (metaInfoDef_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(1, getMetaInfoDef());
         }
    -    if (graphDef_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(2, getGraphDef());
         }
    -    if (saverDef_ != null) {
    +    if (((bitField0_ & 0x00000004) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(3, getSaverDef());
         }
    @@ -2940,7 +2926,7 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(6, assetFileDef_.get(i));
         }
    -    if (objectGraphDef_ != null) {
    +    if (((bitField0_ & 0x00000008) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(7, getObjectGraphDef());
         }
    @@ -3063,39 +3049,41 @@ public static org.tensorflow.proto.MetaGraphDef parseFrom(
       }
       public static org.tensorflow.proto.MetaGraphDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MetaGraphDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.MetaGraphDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.MetaGraphDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.MetaGraphDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MetaGraphDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -3115,7 +3103,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -3126,18 +3114,18 @@ protected Builder newBuilderForType(
        * objects necessary for running computation in a graph when crossing the
        * process boundary. It can be used for long term storage of graphs,
        * cross-language execution of graphs, etc.
    -   *   MetaInfoDef
    -   *   GraphDef
    -   *   SaverDef
    -   *   CollectionDef
    -   *   TensorInfo
    -   *   SignatureDef
    +   * MetaInfoDef
    +   * GraphDef
    +   * SaverDef
    +   * CollectionDef
    +   * TensorInfo
    +   * SignatureDef
        * 
    * * Protobuf type {@code tensorflow.MetaGraphDef} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.MetaGraphDef) org.tensorflow.proto.MetaGraphDefOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -3146,7 +3134,7 @@ public static final class Builder extends } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 4: @@ -3159,7 +3147,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMutableMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( int number) { switch (number) { case 4: @@ -3172,7 +3160,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_MetaGraphDef_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -3181,33 +3169,41 @@ protected com.google.protobuf.MapField internalGetMutableMapField( // Construct using org.tensorflow.proto.MetaGraphDef.newBuilder() private Builder() { - + maybeForceBuilderInitialization(); } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); - + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage + .alwaysUseFieldBuilders) { + getMetaInfoDefFieldBuilder(); + getGraphDefFieldBuilder(); + getSaverDefFieldBuilder(); + getAssetFileDefFieldBuilder(); + getObjectGraphDefFieldBuilder(); + } } @java.lang.Override public Builder clear() { super.clear(); - if (metaInfoDefBuilder_ == null) { - metaInfoDef_ = null; - } else { - metaInfoDef_ = null; + bitField0_ = 0; + metaInfoDef_ = null; + if (metaInfoDefBuilder_ != null) { + metaInfoDefBuilder_.dispose(); metaInfoDefBuilder_ = null; } - if (graphDefBuilder_ == null) { - graphDef_ = null; - } else { - graphDef_ = null; + graphDef_ = null; + if (graphDefBuilder_ != null) { + graphDefBuilder_.dispose(); graphDefBuilder_ = null; } - if (saverDefBuilder_ == null) { - saverDef_ = null; - } else { - saverDef_ = null; + saverDef_ = null; + if (saverDefBuilder_ != null) { + saverDefBuilder_.dispose(); saverDefBuilder_ = null; } internalGetMutableCollectionDef().clear(); @@ -3218,11 +3214,10 @@ public Builder clear() { assetFileDef_ = null; assetFileDefBuilder_.clear(); } - bitField0_ = (bitField0_ & ~0x00000004); - if (objectGraphDefBuilder_ == null) { - objectGraphDef_ = null; - } else { - objectGraphDef_ = null; + bitField0_ = (bitField0_ & ~0x00000020); + objectGraphDef_ = null; + if (objectGraphDefBuilder_ != null) { + objectGraphDefBuilder_.dispose(); objectGraphDefBuilder_ = null; } return this; @@ -3251,76 +3246,60 @@ public org.tensorflow.proto.MetaGraphDef build() { @java.lang.Override public org.tensorflow.proto.MetaGraphDef buildPartial() { org.tensorflow.proto.MetaGraphDef result = new org.tensorflow.proto.MetaGraphDef(this); - int from_bitField0_ = bitField0_; - if (metaInfoDefBuilder_ == null) { - result.metaInfoDef_ = metaInfoDef_; - } else { - result.metaInfoDef_ = metaInfoDefBuilder_.build(); - } - if (graphDefBuilder_ == null) { - result.graphDef_ = graphDef_; - } else { - result.graphDef_ = graphDefBuilder_.build(); - } - if (saverDefBuilder_ == null) { - result.saverDef_ = saverDef_; - } else { - result.saverDef_ = saverDefBuilder_.build(); - } - result.collectionDef_ = internalGetCollectionDef(); - result.collectionDef_.makeImmutable(); - result.signatureDef_ = internalGetSignatureDef(); - result.signatureDef_.makeImmutable(); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(org.tensorflow.proto.MetaGraphDef result) { if (assetFileDefBuilder_ == null) { - if (((bitField0_ & 0x00000004) != 0)) { + if (((bitField0_ & 0x00000020) != 0)) { assetFileDef_ = java.util.Collections.unmodifiableList(assetFileDef_); - bitField0_ = (bitField0_ & ~0x00000004); + bitField0_ = (bitField0_ & ~0x00000020); } result.assetFileDef_ = assetFileDef_; } else { result.assetFileDef_ = assetFileDefBuilder_.build(); } - if (objectGraphDefBuilder_ == null) { - result.objectGraphDef_ = objectGraphDef_; - } else { - result.objectGraphDef_ = objectGraphDefBuilder_.build(); - } - onBuilt(); - return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.MetaGraphDef result) { + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.metaInfoDef_ = metaInfoDefBuilder_ == null + ? metaInfoDef_ + : metaInfoDefBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.graphDef_ = graphDefBuilder_ == null + ? graphDef_ + : graphDefBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.saverDef_ = saverDefBuilder_ == null + ? saverDef_ + : saverDefBuilder_.build(); + to_bitField0_ |= 0x00000004; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.collectionDef_ = internalGetCollectionDef().build(CollectionDefDefaultEntryHolder.defaultEntry); + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.signatureDef_ = internalGetSignatureDef().build(SignatureDefDefaultEntryHolder.defaultEntry); + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.objectGraphDef_ = objectGraphDefBuilder_ == null + ? objectGraphDef_ + : objectGraphDefBuilder_.build(); + to_bitField0_ |= 0x00000008; + } + result.bitField0_ |= to_bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.MetaGraphDef) { @@ -3344,13 +3323,15 @@ public Builder mergeFrom(org.tensorflow.proto.MetaGraphDef other) { } internalGetMutableCollectionDef().mergeFrom( other.internalGetCollectionDef()); + bitField0_ |= 0x00000008; internalGetMutableSignatureDef().mergeFrom( other.internalGetSignatureDef()); + bitField0_ |= 0x00000010; if (assetFileDefBuilder_ == null) { if (!other.assetFileDef_.isEmpty()) { if (assetFileDef_.isEmpty()) { assetFileDef_ = other.assetFileDef_; - bitField0_ = (bitField0_ & ~0x00000004); + bitField0_ = (bitField0_ & ~0x00000020); } else { ensureAssetFileDefIsMutable(); assetFileDef_.addAll(other.assetFileDef_); @@ -3363,9 +3344,9 @@ public Builder mergeFrom(org.tensorflow.proto.MetaGraphDef other) { assetFileDefBuilder_.dispose(); assetFileDefBuilder_ = null; assetFileDef_ = other.assetFileDef_; - bitField0_ = (bitField0_ & ~0x00000004); + bitField0_ = (bitField0_ & ~0x00000020); assetFileDefBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getAssetFileDefFieldBuilder() : null; } else { assetFileDefBuilder_.addAllMessages(other.assetFileDef_); @@ -3405,37 +3386,39 @@ public Builder mergeFrom( input.readMessage( getMetaInfoDefFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000001; break; } // case 10 case 18: { input.readMessage( getGraphDefFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000002; break; } // case 18 case 26: { input.readMessage( getSaverDefFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000004; break; } // case 26 case 34: { com.google.protobuf.MapEntry collectionDef__ = input.readMessage( CollectionDefDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); - internalGetMutableCollectionDef().getMutableMap().put( + internalGetMutableCollectionDef().ensureBuilderMap().put( collectionDef__.getKey(), collectionDef__.getValue()); + bitField0_ |= 0x00000008; break; } // case 34 case 42: { com.google.protobuf.MapEntry signatureDef__ = input.readMessage( SignatureDefDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); - internalGetMutableSignatureDef().getMutableMap().put( + internalGetMutableSignatureDef().ensureBuilderMap().put( signatureDef__.getKey(), signatureDef__.getValue()); + bitField0_ |= 0x00000010; break; } // case 42 case 50: { @@ -3455,7 +3438,7 @@ public Builder mergeFrom( input.readMessage( getObjectGraphDefFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000040; break; } // case 58 default: { @@ -3476,14 +3459,14 @@ public Builder mergeFrom( private int bitField0_; private org.tensorflow.proto.MetaGraphDef.MetaInfoDef metaInfoDef_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.MetaGraphDef.MetaInfoDef, org.tensorflow.proto.MetaGraphDef.MetaInfoDef.Builder, org.tensorflow.proto.MetaGraphDef.MetaInfoDefOrBuilder> metaInfoDefBuilder_; /** * .tensorflow.MetaGraphDef.MetaInfoDef meta_info_def = 1; * @return Whether the metaInfoDef field is set. */ public boolean hasMetaInfoDef() { - return metaInfoDefBuilder_ != null || metaInfoDef_ != null; + return ((bitField0_ & 0x00000001) != 0); } /** * .tensorflow.MetaGraphDef.MetaInfoDef meta_info_def = 1; @@ -3505,11 +3488,11 @@ public Builder setMetaInfoDef(org.tensorflow.proto.MetaGraphDef.MetaInfoDef valu throw new NullPointerException(); } metaInfoDef_ = value; - onChanged(); } else { metaInfoDefBuilder_.setMessage(value); } - + bitField0_ |= 0x00000001; + onChanged(); return this; } /** @@ -3519,11 +3502,11 @@ public Builder setMetaInfoDef( org.tensorflow.proto.MetaGraphDef.MetaInfoDef.Builder builderForValue) { if (metaInfoDefBuilder_ == null) { metaInfoDef_ = builderForValue.build(); - onChanged(); } else { metaInfoDefBuilder_.setMessage(builderForValue.build()); } - + bitField0_ |= 0x00000001; + onChanged(); return this; } /** @@ -3531,38 +3514,40 @@ public Builder setMetaInfoDef( */ public Builder mergeMetaInfoDef(org.tensorflow.proto.MetaGraphDef.MetaInfoDef value) { if (metaInfoDefBuilder_ == null) { - if (metaInfoDef_ != null) { - metaInfoDef_ = - org.tensorflow.proto.MetaGraphDef.MetaInfoDef.newBuilder(metaInfoDef_).mergeFrom(value).buildPartial(); + if (((bitField0_ & 0x00000001) != 0) && + metaInfoDef_ != null && + metaInfoDef_ != org.tensorflow.proto.MetaGraphDef.MetaInfoDef.getDefaultInstance()) { + getMetaInfoDefBuilder().mergeFrom(value); } else { metaInfoDef_ = value; } - onChanged(); } else { metaInfoDefBuilder_.mergeFrom(value); } - + if (metaInfoDef_ != null) { + bitField0_ |= 0x00000001; + onChanged(); + } return this; } /** * .tensorflow.MetaGraphDef.MetaInfoDef meta_info_def = 1; */ public Builder clearMetaInfoDef() { - if (metaInfoDefBuilder_ == null) { - metaInfoDef_ = null; - onChanged(); - } else { - metaInfoDef_ = null; + bitField0_ = (bitField0_ & ~0x00000001); + metaInfoDef_ = null; + if (metaInfoDefBuilder_ != null) { + metaInfoDefBuilder_.dispose(); metaInfoDefBuilder_ = null; } - + onChanged(); return this; } /** * .tensorflow.MetaGraphDef.MetaInfoDef meta_info_def = 1; */ public org.tensorflow.proto.MetaGraphDef.MetaInfoDef.Builder getMetaInfoDefBuilder() { - + bitField0_ |= 0x00000001; onChanged(); return getMetaInfoDefFieldBuilder().getBuilder(); } @@ -3580,11 +3565,11 @@ public org.tensorflow.proto.MetaGraphDef.MetaInfoDefOrBuilder getMetaInfoDefOrBu /** * .tensorflow.MetaGraphDef.MetaInfoDef meta_info_def = 1; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.MetaGraphDef.MetaInfoDef, org.tensorflow.proto.MetaGraphDef.MetaInfoDef.Builder, org.tensorflow.proto.MetaGraphDef.MetaInfoDefOrBuilder> getMetaInfoDefFieldBuilder() { if (metaInfoDefBuilder_ == null) { - metaInfoDefBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + metaInfoDefBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.MetaGraphDef.MetaInfoDef, org.tensorflow.proto.MetaGraphDef.MetaInfoDef.Builder, org.tensorflow.proto.MetaGraphDef.MetaInfoDefOrBuilder>( getMetaInfoDef(), getParentForChildren(), @@ -3595,7 +3580,7 @@ public org.tensorflow.proto.MetaGraphDef.MetaInfoDefOrBuilder getMetaInfoDefOrBu } private org.tensorflow.proto.GraphDef graphDef_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.GraphDef, org.tensorflow.proto.GraphDef.Builder, org.tensorflow.proto.GraphDefOrBuilder> graphDefBuilder_; /** *
    @@ -3606,7 +3591,7 @@ public org.tensorflow.proto.MetaGraphDef.MetaInfoDefOrBuilder getMetaInfoDefOrBu
          * @return Whether the graphDef field is set.
          */
         public boolean hasGraphDef() {
    -      return graphDefBuilder_ != null || graphDef_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -3636,11 +3621,11 @@ public Builder setGraphDef(org.tensorflow.proto.GraphDef value) {
               throw new NullPointerException();
             }
             graphDef_ = value;
    -        onChanged();
           } else {
             graphDefBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -3654,11 +3639,11 @@ public Builder setGraphDef(
             org.tensorflow.proto.GraphDef.Builder builderForValue) {
           if (graphDefBuilder_ == null) {
             graphDef_ = builderForValue.build();
    -        onChanged();
           } else {
             graphDefBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -3670,17 +3655,20 @@ public Builder setGraphDef(
          */
         public Builder mergeGraphDef(org.tensorflow.proto.GraphDef value) {
           if (graphDefBuilder_ == null) {
    -        if (graphDef_ != null) {
    -          graphDef_ =
    -            org.tensorflow.proto.GraphDef.newBuilder(graphDef_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000002) != 0) &&
    +          graphDef_ != null &&
    +          graphDef_ != org.tensorflow.proto.GraphDef.getDefaultInstance()) {
    +          getGraphDefBuilder().mergeFrom(value);
             } else {
               graphDef_ = value;
             }
    -        onChanged();
           } else {
             graphDefBuilder_.mergeFrom(value);
           }
    -
    +      if (graphDef_ != null) {
    +        bitField0_ |= 0x00000002;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -3691,14 +3679,13 @@ public Builder mergeGraphDef(org.tensorflow.proto.GraphDef value) {
          * .tensorflow.GraphDef graph_def = 2;
          */
         public Builder clearGraphDef() {
    -      if (graphDefBuilder_ == null) {
    -        graphDef_ = null;
    -        onChanged();
    -      } else {
    -        graphDef_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      graphDef_ = null;
    +      if (graphDefBuilder_ != null) {
    +        graphDefBuilder_.dispose();
             graphDefBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -3709,7 +3696,7 @@ public Builder clearGraphDef() {
          * .tensorflow.GraphDef graph_def = 2;
          */
         public org.tensorflow.proto.GraphDef.Builder getGraphDefBuilder() {
    -      
    +      bitField0_ |= 0x00000002;
           onChanged();
           return getGraphDefFieldBuilder().getBuilder();
         }
    @@ -3735,11 +3722,11 @@ public org.tensorflow.proto.GraphDefOrBuilder getGraphDefOrBuilder() {
          *
          * .tensorflow.GraphDef graph_def = 2;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.GraphDef, org.tensorflow.proto.GraphDef.Builder, org.tensorflow.proto.GraphDefOrBuilder> 
             getGraphDefFieldBuilder() {
           if (graphDefBuilder_ == null) {
    -        graphDefBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        graphDefBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.GraphDef, org.tensorflow.proto.GraphDef.Builder, org.tensorflow.proto.GraphDefOrBuilder>(
                     getGraphDef(),
                     getParentForChildren(),
    @@ -3750,7 +3737,7 @@ public org.tensorflow.proto.GraphDefOrBuilder getGraphDefOrBuilder() {
         }
     
         private org.tensorflow.proto.SaverDef saverDef_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.SaverDef, org.tensorflow.proto.SaverDef.Builder, org.tensorflow.proto.SaverDefOrBuilder> saverDefBuilder_;
         /**
          * 
    @@ -3761,7 +3748,7 @@ public org.tensorflow.proto.GraphDefOrBuilder getGraphDefOrBuilder() {
          * @return Whether the saverDef field is set.
          */
         public boolean hasSaverDef() {
    -      return saverDefBuilder_ != null || saverDef_ != null;
    +      return ((bitField0_ & 0x00000004) != 0);
         }
         /**
          * 
    @@ -3791,11 +3778,11 @@ public Builder setSaverDef(org.tensorflow.proto.SaverDef value) {
               throw new NullPointerException();
             }
             saverDef_ = value;
    -        onChanged();
           } else {
             saverDefBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -3809,11 +3796,11 @@ public Builder setSaverDef(
             org.tensorflow.proto.SaverDef.Builder builderForValue) {
           if (saverDefBuilder_ == null) {
             saverDef_ = builderForValue.build();
    -        onChanged();
           } else {
             saverDefBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -3825,17 +3812,20 @@ public Builder setSaverDef(
          */
         public Builder mergeSaverDef(org.tensorflow.proto.SaverDef value) {
           if (saverDefBuilder_ == null) {
    -        if (saverDef_ != null) {
    -          saverDef_ =
    -            org.tensorflow.proto.SaverDef.newBuilder(saverDef_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000004) != 0) &&
    +          saverDef_ != null &&
    +          saverDef_ != org.tensorflow.proto.SaverDef.getDefaultInstance()) {
    +          getSaverDefBuilder().mergeFrom(value);
             } else {
               saverDef_ = value;
             }
    -        onChanged();
           } else {
             saverDefBuilder_.mergeFrom(value);
           }
    -
    +      if (saverDef_ != null) {
    +        bitField0_ |= 0x00000004;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -3846,14 +3836,13 @@ public Builder mergeSaverDef(org.tensorflow.proto.SaverDef value) {
          * .tensorflow.SaverDef saver_def = 3;
          */
         public Builder clearSaverDef() {
    -      if (saverDefBuilder_ == null) {
    -        saverDef_ = null;
    -        onChanged();
    -      } else {
    -        saverDef_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000004);
    +      saverDef_ = null;
    +      if (saverDefBuilder_ != null) {
    +        saverDefBuilder_.dispose();
             saverDefBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -3864,7 +3853,7 @@ public Builder clearSaverDef() {
          * .tensorflow.SaverDef saver_def = 3;
          */
         public org.tensorflow.proto.SaverDef.Builder getSaverDefBuilder() {
    -      
    +      bitField0_ |= 0x00000004;
           onChanged();
           return getSaverDefFieldBuilder().getBuilder();
         }
    @@ -3890,11 +3879,11 @@ public org.tensorflow.proto.SaverDefOrBuilder getSaverDefOrBuilder() {
          *
          * .tensorflow.SaverDef saver_def = 3;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.SaverDef, org.tensorflow.proto.SaverDef.Builder, org.tensorflow.proto.SaverDefOrBuilder> 
             getSaverDefFieldBuilder() {
           if (saverDefBuilder_ == null) {
    -        saverDefBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        saverDefBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.SaverDef, org.tensorflow.proto.SaverDef.Builder, org.tensorflow.proto.SaverDefOrBuilder>(
                     getSaverDef(),
                     getParentForChildren(),
    @@ -3904,31 +3893,40 @@ public org.tensorflow.proto.SaverDefOrBuilder getSaverDefOrBuilder() {
           return saverDefBuilder_;
         }
     
    -    private com.google.protobuf.MapField<
    -        java.lang.String, org.tensorflow.proto.CollectionDef> collectionDef_;
    -    private com.google.protobuf.MapField
    -    internalGetCollectionDef() {
    +    private static final class CollectionDefConverter implements com.google.protobuf.MapFieldBuilder.Converter {
    +      @java.lang.Override
    +      public org.tensorflow.proto.CollectionDef build(org.tensorflow.proto.CollectionDefOrBuilder val) {
    +        if (val instanceof org.tensorflow.proto.CollectionDef) { return (org.tensorflow.proto.CollectionDef) val; }
    +        return ((org.tensorflow.proto.CollectionDef.Builder) val).build();
    +      }
    +
    +      @java.lang.Override
    +      public com.google.protobuf.MapEntry defaultEntry() {
    +        return CollectionDefDefaultEntryHolder.defaultEntry;
    +      }
    +    };
    +    private static final CollectionDefConverter collectionDefConverter = new CollectionDefConverter();
    +
    +    private com.google.protobuf.MapFieldBuilder<
    +        java.lang.String, org.tensorflow.proto.CollectionDefOrBuilder, org.tensorflow.proto.CollectionDef, org.tensorflow.proto.CollectionDef.Builder> collectionDef_;
    +    private com.google.protobuf.MapFieldBuilder
    +        internalGetCollectionDef() {
           if (collectionDef_ == null) {
    -        return com.google.protobuf.MapField.emptyMapField(
    -            CollectionDefDefaultEntryHolder.defaultEntry);
    +        return new com.google.protobuf.MapFieldBuilder<>(collectionDefConverter);
           }
           return collectionDef_;
         }
    -    private com.google.protobuf.MapField
    -    internalGetMutableCollectionDef() {
    -      onChanged();;
    +    private com.google.protobuf.MapFieldBuilder
    +        internalGetMutableCollectionDef() {
           if (collectionDef_ == null) {
    -        collectionDef_ = com.google.protobuf.MapField.newMapField(
    -            CollectionDefDefaultEntryHolder.defaultEntry);
    -      }
    -      if (!collectionDef_.isMutable()) {
    -        collectionDef_ = collectionDef_.copy();
    +        collectionDef_ = new com.google.protobuf.MapFieldBuilder<>(collectionDefConverter);
           }
    +      bitField0_ |= 0x00000008;
    +      onChanged();
           return collectionDef_;
         }
    -
         public int getCollectionDefCount() {
    -      return internalGetCollectionDef().getMap().size();
    +      return internalGetCollectionDef().ensureBuilderMap().size();
         }
         /**
          * 
    @@ -3938,12 +3936,11 @@ public int getCollectionDefCount() {
          *
          * map<string, .tensorflow.CollectionDef> collection_def = 4;
          */
    -
         @java.lang.Override
         public boolean containsCollectionDef(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      return internalGetCollectionDef().getMap().containsKey(key);
    +      return internalGetCollectionDef().ensureBuilderMap().containsKey(key);
         }
         /**
          * Use {@link #getCollectionDefMap()} instead.
    @@ -3962,9 +3959,8 @@ public java.util.Map getCo
          * map<string, .tensorflow.CollectionDef> collection_def = 4;
          */
         @java.lang.Override
    -
         public java.util.Map getCollectionDefMap() {
    -      return internalGetCollectionDef().getMap();
    +      return internalGetCollectionDef().getImmutableMap();
         }
         /**
          * 
    @@ -3975,14 +3971,14 @@ public java.util.Map getCo
          * map<string, .tensorflow.CollectionDef> collection_def = 4;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.CollectionDef getCollectionDefOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.CollectionDef getCollectionDefOrDefault(
             java.lang.String key,
    -        org.tensorflow.proto.CollectionDef defaultValue) {
    +        /* nullable */
    +org.tensorflow.proto.CollectionDef defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetCollectionDef().getMap();
    -      return map.containsKey(key) ? map.get(key) : defaultValue;
    +      java.util.Map map = internalGetMutableCollectionDef().ensureBuilderMap();
    +      return map.containsKey(key) ? collectionDefConverter.build(map.get(key)) : defaultValue;
         }
         /**
          * 
    @@ -3993,21 +3989,18 @@ public org.tensorflow.proto.CollectionDef getCollectionDefOrDefault(
          * map<string, .tensorflow.CollectionDef> collection_def = 4;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.CollectionDef getCollectionDefOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetCollectionDef().getMap();
    +      java.util.Map map = internalGetMutableCollectionDef().ensureBuilderMap();
           if (!map.containsKey(key)) {
             throw new java.lang.IllegalArgumentException();
           }
    -      return map.get(key);
    +      return collectionDefConverter.build(map.get(key));
         }
    -
         public Builder clearCollectionDef() {
    -      internalGetMutableCollectionDef().getMutableMap()
    -          .clear();
    +      bitField0_ = (bitField0_ & ~0x00000008);
    +      internalGetMutableCollectionDef().clear();
           return this;
         }
         /**
    @@ -4018,11 +4011,10 @@ public Builder clearCollectionDef() {
          *
          * map<string, .tensorflow.CollectionDef> collection_def = 4;
          */
    -
         public Builder removeCollectionDef(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      internalGetMutableCollectionDef().getMutableMap()
    +      internalGetMutableCollectionDef().ensureBuilderMap()
               .remove(key);
           return this;
         }
    @@ -4031,8 +4023,9 @@ public Builder removeCollectionDef(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableCollectionDef() {
    -      return internalGetMutableCollectionDef().getMutableMap();
    +        getMutableCollectionDef() {
    +      bitField0_ |= 0x00000008;
    +      return internalGetMutableCollectionDef().ensureMessageMap();
         }
         /**
          * 
    @@ -4046,12 +4039,10 @@ public Builder putCollectionDef(
             java.lang.String key,
             org.tensorflow.proto.CollectionDef value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    -      internalGetMutableCollectionDef().getMutableMap()
    +      if (value == null) { throw new NullPointerException("map value"); }
    +      internalGetMutableCollectionDef().ensureBuilderMap()
               .put(key, value);
    +      bitField0_ |= 0x00000008;
           return this;
         }
         /**
    @@ -4062,39 +4053,75 @@ public Builder putCollectionDef(
          *
          * map<string, .tensorflow.CollectionDef> collection_def = 4;
          */
    -
         public Builder putAllCollectionDef(
             java.util.Map values) {
    -      internalGetMutableCollectionDef().getMutableMap()
    +      for (java.util.Map.Entry e : values.entrySet()) {
    +        if (e.getKey() == null || e.getValue() == null) {
    +          throw new NullPointerException();
    +        }
    +      }
    +      internalGetMutableCollectionDef().ensureBuilderMap()
               .putAll(values);
    +      bitField0_ |= 0x00000008;
           return this;
         }
    +    /**
    +     * 
    +     * collection_def: Map from collection name to collections.
    +     * See CollectionDef section for details.
    +     * 
    + * + * map<string, .tensorflow.CollectionDef> collection_def = 4; + */ + public org.tensorflow.proto.CollectionDef.Builder putCollectionDefBuilderIfAbsent( + java.lang.String key) { + java.util.Map builderMap = internalGetMutableCollectionDef().ensureBuilderMap(); + org.tensorflow.proto.CollectionDefOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.CollectionDef.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.CollectionDef) { + entry = ((org.tensorflow.proto.CollectionDef) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.CollectionDef.Builder) entry; + } - private com.google.protobuf.MapField< - java.lang.String, org.tensorflow.proto.SignatureDef> signatureDef_; - private com.google.protobuf.MapField - internalGetSignatureDef() { + private static final class SignatureDefConverter implements com.google.protobuf.MapFieldBuilder.Converter { + @java.lang.Override + public org.tensorflow.proto.SignatureDef build(org.tensorflow.proto.SignatureDefOrBuilder val) { + if (val instanceof org.tensorflow.proto.SignatureDef) { return (org.tensorflow.proto.SignatureDef) val; } + return ((org.tensorflow.proto.SignatureDef.Builder) val).build(); + } + + @java.lang.Override + public com.google.protobuf.MapEntry defaultEntry() { + return SignatureDefDefaultEntryHolder.defaultEntry; + } + }; + private static final SignatureDefConverter signatureDefConverter = new SignatureDefConverter(); + + private com.google.protobuf.MapFieldBuilder< + java.lang.String, org.tensorflow.proto.SignatureDefOrBuilder, org.tensorflow.proto.SignatureDef, org.tensorflow.proto.SignatureDef.Builder> signatureDef_; + private com.google.protobuf.MapFieldBuilder + internalGetSignatureDef() { if (signatureDef_ == null) { - return com.google.protobuf.MapField.emptyMapField( - SignatureDefDefaultEntryHolder.defaultEntry); + return new com.google.protobuf.MapFieldBuilder<>(signatureDefConverter); } return signatureDef_; } - private com.google.protobuf.MapField - internalGetMutableSignatureDef() { - onChanged();; + private com.google.protobuf.MapFieldBuilder + internalGetMutableSignatureDef() { if (signatureDef_ == null) { - signatureDef_ = com.google.protobuf.MapField.newMapField( - SignatureDefDefaultEntryHolder.defaultEntry); - } - if (!signatureDef_.isMutable()) { - signatureDef_ = signatureDef_.copy(); + signatureDef_ = new com.google.protobuf.MapFieldBuilder<>(signatureDefConverter); } + bitField0_ |= 0x00000010; + onChanged(); return signatureDef_; } - public int getSignatureDefCount() { - return internalGetSignatureDef().getMap().size(); + return internalGetSignatureDef().ensureBuilderMap().size(); } /** *
    @@ -4104,12 +4131,11 @@ public int getSignatureDefCount() {
          *
          * map<string, .tensorflow.SignatureDef> signature_def = 5;
          */
    -
         @java.lang.Override
         public boolean containsSignatureDef(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      return internalGetSignatureDef().getMap().containsKey(key);
    +      return internalGetSignatureDef().ensureBuilderMap().containsKey(key);
         }
         /**
          * Use {@link #getSignatureDefMap()} instead.
    @@ -4128,9 +4154,8 @@ public java.util.Map getSig
          * map<string, .tensorflow.SignatureDef> signature_def = 5;
          */
         @java.lang.Override
    -
         public java.util.Map getSignatureDefMap() {
    -      return internalGetSignatureDef().getMap();
    +      return internalGetSignatureDef().getImmutableMap();
         }
         /**
          * 
    @@ -4141,14 +4166,14 @@ public java.util.Map getSig
          * map<string, .tensorflow.SignatureDef> signature_def = 5;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.SignatureDef getSignatureDefOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.SignatureDef getSignatureDefOrDefault(
             java.lang.String key,
    -        org.tensorflow.proto.SignatureDef defaultValue) {
    +        /* nullable */
    +org.tensorflow.proto.SignatureDef defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetSignatureDef().getMap();
    -      return map.containsKey(key) ? map.get(key) : defaultValue;
    +      java.util.Map map = internalGetMutableSignatureDef().ensureBuilderMap();
    +      return map.containsKey(key) ? signatureDefConverter.build(map.get(key)) : defaultValue;
         }
         /**
          * 
    @@ -4159,21 +4184,18 @@ public org.tensorflow.proto.SignatureDef getSignatureDefOrDefault(
          * map<string, .tensorflow.SignatureDef> signature_def = 5;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.SignatureDef getSignatureDefOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetSignatureDef().getMap();
    +      java.util.Map map = internalGetMutableSignatureDef().ensureBuilderMap();
           if (!map.containsKey(key)) {
             throw new java.lang.IllegalArgumentException();
           }
    -      return map.get(key);
    +      return signatureDefConverter.build(map.get(key));
         }
    -
         public Builder clearSignatureDef() {
    -      internalGetMutableSignatureDef().getMutableMap()
    -          .clear();
    +      bitField0_ = (bitField0_ & ~0x00000010);
    +      internalGetMutableSignatureDef().clear();
           return this;
         }
         /**
    @@ -4184,11 +4206,10 @@ public Builder clearSignatureDef() {
          *
          * map<string, .tensorflow.SignatureDef> signature_def = 5;
          */
    -
         public Builder removeSignatureDef(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      internalGetMutableSignatureDef().getMutableMap()
    +      internalGetMutableSignatureDef().ensureBuilderMap()
               .remove(key);
           return this;
         }
    @@ -4197,8 +4218,9 @@ public Builder removeSignatureDef(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableSignatureDef() {
    -      return internalGetMutableSignatureDef().getMutableMap();
    +        getMutableSignatureDef() {
    +      bitField0_ |= 0x00000010;
    +      return internalGetMutableSignatureDef().ensureMessageMap();
         }
         /**
          * 
    @@ -4212,12 +4234,10 @@ public Builder putSignatureDef(
             java.lang.String key,
             org.tensorflow.proto.SignatureDef value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    -      internalGetMutableSignatureDef().getMutableMap()
    +      if (value == null) { throw new NullPointerException("map value"); }
    +      internalGetMutableSignatureDef().ensureBuilderMap()
               .put(key, value);
    +      bitField0_ |= 0x00000010;
           return this;
         }
         /**
    @@ -4228,24 +4248,51 @@ public Builder putSignatureDef(
          *
          * map<string, .tensorflow.SignatureDef> signature_def = 5;
          */
    -
         public Builder putAllSignatureDef(
             java.util.Map values) {
    -      internalGetMutableSignatureDef().getMutableMap()
    +      for (java.util.Map.Entry e : values.entrySet()) {
    +        if (e.getKey() == null || e.getValue() == null) {
    +          throw new NullPointerException();
    +        }
    +      }
    +      internalGetMutableSignatureDef().ensureBuilderMap()
               .putAll(values);
    +      bitField0_ |= 0x00000010;
           return this;
         }
    +    /**
    +     * 
    +     * signature_def: Map from user supplied key for a signature to a single
    +     * SignatureDef.
    +     * 
    + * + * map<string, .tensorflow.SignatureDef> signature_def = 5; + */ + public org.tensorflow.proto.SignatureDef.Builder putSignatureDefBuilderIfAbsent( + java.lang.String key) { + java.util.Map builderMap = internalGetMutableSignatureDef().ensureBuilderMap(); + org.tensorflow.proto.SignatureDefOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.SignatureDef.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.SignatureDef) { + entry = ((org.tensorflow.proto.SignatureDef) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.SignatureDef.Builder) entry; + } private java.util.List assetFileDef_ = java.util.Collections.emptyList(); private void ensureAssetFileDefIsMutable() { - if (!((bitField0_ & 0x00000004) != 0)) { + if (!((bitField0_ & 0x00000020) != 0)) { assetFileDef_ = new java.util.ArrayList(assetFileDef_); - bitField0_ |= 0x00000004; + bitField0_ |= 0x00000020; } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.AssetFileDef, org.tensorflow.proto.AssetFileDef.Builder, org.tensorflow.proto.AssetFileDefOrBuilder> assetFileDefBuilder_; /** @@ -4435,7 +4482,7 @@ public Builder addAllAssetFileDef( public Builder clearAssetFileDef() { if (assetFileDefBuilder_ == null) { assetFileDef_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000004); + bitField0_ = (bitField0_ & ~0x00000020); onChanged(); } else { assetFileDefBuilder_.clear(); @@ -4533,14 +4580,14 @@ public org.tensorflow.proto.AssetFileDef.Builder addAssetFileDefBuilder( getAssetFileDefBuilderList() { return getAssetFileDefFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.AssetFileDef, org.tensorflow.proto.AssetFileDef.Builder, org.tensorflow.proto.AssetFileDefOrBuilder> getAssetFileDefFieldBuilder() { if (assetFileDefBuilder_ == null) { - assetFileDefBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + assetFileDefBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.AssetFileDef, org.tensorflow.proto.AssetFileDef.Builder, org.tensorflow.proto.AssetFileDefOrBuilder>( assetFileDef_, - ((bitField0_ & 0x00000004) != 0), + ((bitField0_ & 0x00000020) != 0), getParentForChildren(), isClean()); assetFileDef_ = null; @@ -4549,7 +4596,7 @@ public org.tensorflow.proto.AssetFileDef.Builder addAssetFileDefBuilder( } private org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph objectGraphDef_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraphOrBuilder> objectGraphDefBuilder_; /** *
    @@ -4560,7 +4607,7 @@ public org.tensorflow.proto.AssetFileDef.Builder addAssetFileDefBuilder(
          * @return Whether the objectGraphDef field is set.
          */
         public boolean hasObjectGraphDef() {
    -      return objectGraphDefBuilder_ != null || objectGraphDef_ != null;
    +      return ((bitField0_ & 0x00000040) != 0);
         }
         /**
          * 
    @@ -4590,11 +4637,11 @@ public Builder setObjectGraphDef(org.tensorflow.proto.SavedObjectGraphOuterClass
               throw new NullPointerException();
             }
             objectGraphDef_ = value;
    -        onChanged();
           } else {
             objectGraphDefBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000040;
    +      onChanged();
           return this;
         }
         /**
    @@ -4608,11 +4655,11 @@ public Builder setObjectGraphDef(
             org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph.Builder builderForValue) {
           if (objectGraphDefBuilder_ == null) {
             objectGraphDef_ = builderForValue.build();
    -        onChanged();
           } else {
             objectGraphDefBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000040;
    +      onChanged();
           return this;
         }
         /**
    @@ -4624,17 +4671,20 @@ public Builder setObjectGraphDef(
          */
         public Builder mergeObjectGraphDef(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph value) {
           if (objectGraphDefBuilder_ == null) {
    -        if (objectGraphDef_ != null) {
    -          objectGraphDef_ =
    -            org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph.newBuilder(objectGraphDef_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000040) != 0) &&
    +          objectGraphDef_ != null &&
    +          objectGraphDef_ != org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph.getDefaultInstance()) {
    +          getObjectGraphDefBuilder().mergeFrom(value);
             } else {
               objectGraphDef_ = value;
             }
    -        onChanged();
           } else {
             objectGraphDefBuilder_.mergeFrom(value);
           }
    -
    +      if (objectGraphDef_ != null) {
    +        bitField0_ |= 0x00000040;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -4645,14 +4695,13 @@ public Builder mergeObjectGraphDef(org.tensorflow.proto.SavedObjectGraphOuterCla
          * .tensorflow.SavedObjectGraph object_graph_def = 7;
          */
         public Builder clearObjectGraphDef() {
    -      if (objectGraphDefBuilder_ == null) {
    -        objectGraphDef_ = null;
    -        onChanged();
    -      } else {
    -        objectGraphDef_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000040);
    +      objectGraphDef_ = null;
    +      if (objectGraphDefBuilder_ != null) {
    +        objectGraphDefBuilder_.dispose();
             objectGraphDefBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -4663,7 +4712,7 @@ public Builder clearObjectGraphDef() {
          * .tensorflow.SavedObjectGraph object_graph_def = 7;
          */
         public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph.Builder getObjectGraphDefBuilder() {
    -      
    +      bitField0_ |= 0x00000040;
           onChanged();
           return getObjectGraphDefFieldBuilder().getBuilder();
         }
    @@ -4689,11 +4738,11 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraphOrBuilder
          *
          * .tensorflow.SavedObjectGraph object_graph_def = 7;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraphOrBuilder> 
             getObjectGraphDefFieldBuilder() {
           if (objectGraphDefBuilder_ == null) {
    -        objectGraphDefBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        objectGraphDefBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraphOrBuilder>(
                     getObjectGraphDef(),
                     getParentForChildren(),
    @@ -4702,18 +4751,6 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraphOrBuilder
           }
           return objectGraphDefBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.MetaGraphDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetaGraphDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetaGraphDefOrBuilder.java
    index e23f6dedca5..510b6c87bbc 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetaGraphDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetaGraphDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/meta_graph.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -119,7 +121,6 @@ boolean containsCollectionDef(
        *
        * map<string, .tensorflow.CollectionDef> collection_def = 4;
        */
    -
       /* nullable */
     org.tensorflow.proto.CollectionDef getCollectionDefOrDefault(
           java.lang.String key,
    @@ -133,7 +134,6 @@ org.tensorflow.proto.CollectionDef getCollectionDefOrDefault(
        *
        * map<string, .tensorflow.CollectionDef> collection_def = 4;
        */
    -
       org.tensorflow.proto.CollectionDef getCollectionDefOrThrow(
           java.lang.String key);
     
    @@ -180,7 +180,6 @@ boolean containsSignatureDef(
        *
        * map<string, .tensorflow.SignatureDef> signature_def = 5;
        */
    -
       /* nullable */
     org.tensorflow.proto.SignatureDef getSignatureDefOrDefault(
           java.lang.String key,
    @@ -194,7 +193,6 @@ org.tensorflow.proto.SignatureDef getSignatureDefOrDefault(
        *
        * map<string, .tensorflow.SignatureDef> signature_def = 5;
        */
    -
       org.tensorflow.proto.SignatureDef getSignatureDefOrThrow(
           java.lang.String key);
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetaGraphProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetaGraphProtos.java
    index 021071a2533..eb8242aed48 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetaGraphProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetaGraphProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/meta_graph.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class MetaGraphProtos {
       private MetaGraphProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      MetaGraphProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,97 +28,97 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_MetaGraphDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_MetaGraphDef_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_MetaGraphDef_MetaInfoDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_MetaGraphDef_MetaInfoDef_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_MetaGraphDef_MetaInfoDef_FunctionAliasesEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_MetaGraphDef_MetaInfoDef_FunctionAliasesEntry_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_MetaGraphDef_CollectionDefEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_MetaGraphDef_CollectionDefEntry_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_MetaGraphDef_SignatureDefEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_MetaGraphDef_SignatureDefEntry_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_CollectionDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_CollectionDef_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_CollectionDef_NodeList_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_CollectionDef_NodeList_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_CollectionDef_BytesList_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_CollectionDef_BytesList_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_CollectionDef_Int64List_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_CollectionDef_Int64List_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_CollectionDef_FloatList_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_CollectionDef_FloatList_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_CollectionDef_AnyList_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_CollectionDef_AnyList_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_TensorInfo_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_TensorInfo_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_TensorInfo_CooSparse_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_TensorInfo_CooSparse_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_TensorInfo_CompositeTensor_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_TensorInfo_CompositeTensor_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SignatureDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SignatureDef_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SignatureDef_InputsEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SignatureDef_InputsEntry_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SignatureDef_OutputsEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SignatureDef_OutputsEntry_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SignatureDef_DefaultsEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SignatureDef_DefaultsEntry_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_AssetFileDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_AssetFileDef_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -209,117 +220,118 @@ public static void registerAllExtensions(
         internal_static_tensorflow_MetaGraphDef_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_MetaGraphDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_MetaGraphDef_descriptor,
             new java.lang.String[] { "MetaInfoDef", "GraphDef", "SaverDef", "CollectionDef", "SignatureDef", "AssetFileDef", "ObjectGraphDef", });
         internal_static_tensorflow_MetaGraphDef_MetaInfoDef_descriptor =
           internal_static_tensorflow_MetaGraphDef_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_MetaGraphDef_MetaInfoDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_MetaGraphDef_MetaInfoDef_descriptor,
             new java.lang.String[] { "MetaGraphVersion", "StrippedOpList", "AnyInfo", "Tags", "TensorflowVersion", "TensorflowGitVersion", "StrippedDefaultAttrs", "FunctionAliases", });
         internal_static_tensorflow_MetaGraphDef_MetaInfoDef_FunctionAliasesEntry_descriptor =
           internal_static_tensorflow_MetaGraphDef_MetaInfoDef_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_MetaGraphDef_MetaInfoDef_FunctionAliasesEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_MetaGraphDef_MetaInfoDef_FunctionAliasesEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_MetaGraphDef_CollectionDefEntry_descriptor =
           internal_static_tensorflow_MetaGraphDef_descriptor.getNestedTypes().get(1);
         internal_static_tensorflow_MetaGraphDef_CollectionDefEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_MetaGraphDef_CollectionDefEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_MetaGraphDef_SignatureDefEntry_descriptor =
           internal_static_tensorflow_MetaGraphDef_descriptor.getNestedTypes().get(2);
         internal_static_tensorflow_MetaGraphDef_SignatureDefEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_MetaGraphDef_SignatureDefEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_CollectionDef_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_CollectionDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_CollectionDef_descriptor,
             new java.lang.String[] { "NodeList", "BytesList", "Int64List", "FloatList", "AnyList", "Kind", });
         internal_static_tensorflow_CollectionDef_NodeList_descriptor =
           internal_static_tensorflow_CollectionDef_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_CollectionDef_NodeList_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_CollectionDef_NodeList_descriptor,
             new java.lang.String[] { "Value", });
         internal_static_tensorflow_CollectionDef_BytesList_descriptor =
           internal_static_tensorflow_CollectionDef_descriptor.getNestedTypes().get(1);
         internal_static_tensorflow_CollectionDef_BytesList_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_CollectionDef_BytesList_descriptor,
             new java.lang.String[] { "Value", });
         internal_static_tensorflow_CollectionDef_Int64List_descriptor =
           internal_static_tensorflow_CollectionDef_descriptor.getNestedTypes().get(2);
         internal_static_tensorflow_CollectionDef_Int64List_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_CollectionDef_Int64List_descriptor,
             new java.lang.String[] { "Value", });
         internal_static_tensorflow_CollectionDef_FloatList_descriptor =
           internal_static_tensorflow_CollectionDef_descriptor.getNestedTypes().get(3);
         internal_static_tensorflow_CollectionDef_FloatList_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_CollectionDef_FloatList_descriptor,
             new java.lang.String[] { "Value", });
         internal_static_tensorflow_CollectionDef_AnyList_descriptor =
           internal_static_tensorflow_CollectionDef_descriptor.getNestedTypes().get(4);
         internal_static_tensorflow_CollectionDef_AnyList_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_CollectionDef_AnyList_descriptor,
             new java.lang.String[] { "Value", });
         internal_static_tensorflow_TensorInfo_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_TensorInfo_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_TensorInfo_descriptor,
             new java.lang.String[] { "Name", "CooSparse", "CompositeTensor", "Dtype", "TensorShape", "Encoding", });
         internal_static_tensorflow_TensorInfo_CooSparse_descriptor =
           internal_static_tensorflow_TensorInfo_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_TensorInfo_CooSparse_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_TensorInfo_CooSparse_descriptor,
             new java.lang.String[] { "ValuesTensorName", "IndicesTensorName", "DenseShapeTensorName", });
         internal_static_tensorflow_TensorInfo_CompositeTensor_descriptor =
           internal_static_tensorflow_TensorInfo_descriptor.getNestedTypes().get(1);
         internal_static_tensorflow_TensorInfo_CompositeTensor_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_TensorInfo_CompositeTensor_descriptor,
             new java.lang.String[] { "TypeSpec", "Components", });
         internal_static_tensorflow_SignatureDef_descriptor =
           getDescriptor().getMessageTypes().get(3);
         internal_static_tensorflow_SignatureDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SignatureDef_descriptor,
             new java.lang.String[] { "Inputs", "Outputs", "MethodName", "Defaults", });
         internal_static_tensorflow_SignatureDef_InputsEntry_descriptor =
           internal_static_tensorflow_SignatureDef_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_SignatureDef_InputsEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SignatureDef_InputsEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_SignatureDef_OutputsEntry_descriptor =
           internal_static_tensorflow_SignatureDef_descriptor.getNestedTypes().get(1);
         internal_static_tensorflow_SignatureDef_OutputsEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SignatureDef_OutputsEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_SignatureDef_DefaultsEntry_descriptor =
           internal_static_tensorflow_SignatureDef_descriptor.getNestedTypes().get(2);
         internal_static_tensorflow_SignatureDef_DefaultsEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SignatureDef_DefaultsEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_AssetFileDef_descriptor =
           getDescriptor().getMessageTypes().get(4);
         internal_static_tensorflow_AssetFileDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_AssetFileDef_descriptor,
             new java.lang.String[] { "TensorInfo", "Filename", });
    +    descriptor.resolveAllFeaturesImmutable();
         com.google.protobuf.AnyProto.getDescriptor();
         org.tensorflow.proto.GraphProtos.getDescriptor();
         org.tensorflow.proto.OpDefProtos.getDescriptor();
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetricEntry.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetricEntry.java
    index 70a5e1ba8bc..b0190343737 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetricEntry.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetricEntry.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,45 +9,44 @@
      * Protobuf type {@code tensorflow.MetricEntry}
      */
     public final class MetricEntry extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.MetricEntry)
         MetricEntryOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      MetricEntry.class.getName());
    +  }
       // Use MetricEntry.newBuilder() to construct.
    -  private MetricEntry(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private MetricEntry(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private MetricEntry() {
         name_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new MetricEntry();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_MetricEntry_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_MetricEntry_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.MetricEntry.class, org.tensorflow.proto.MetricEntry.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object name_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object name_ = "";
       /**
        * 
        * Metric name
    @@ -91,7 +92,7 @@ public java.lang.String getName() {
       }
     
       public static final int VALUE_FIELD_NUMBER = 2;
    -  private double value_;
    +  private double value_ = 0D;
       /**
        * 
        * Metric value
    @@ -117,7 +118,7 @@ public double getValue() {
        */
       @java.lang.Override
       public boolean hasMinValue() {
    -    return minValue_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -140,7 +141,7 @@ public com.google.protobuf.DoubleValue getMinValue() {
        */
       @java.lang.Override
       public com.google.protobuf.DoubleValueOrBuilder getMinValueOrBuilder() {
    -    return getMinValue();
    +    return minValue_ == null ? com.google.protobuf.DoubleValue.getDefaultInstance() : minValue_;
       }
     
       public static final int MAX_VALUE_FIELD_NUMBER = 4;
    @@ -155,7 +156,7 @@ public com.google.protobuf.DoubleValueOrBuilder getMinValueOrBuilder() {
        */
       @java.lang.Override
       public boolean hasMaxValue() {
    -    return maxValue_ != null;
    +    return ((bitField0_ & 0x00000002) != 0);
       }
       /**
        * 
    @@ -178,7 +179,7 @@ public com.google.protobuf.DoubleValue getMaxValue() {
        */
       @java.lang.Override
       public com.google.protobuf.DoubleValueOrBuilder getMaxValueOrBuilder() {
    -    return getMaxValue();
    +    return maxValue_ == null ? com.google.protobuf.DoubleValue.getDefaultInstance() : maxValue_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -195,16 +196,16 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
         }
         if (java.lang.Double.doubleToRawLongBits(value_) != 0) {
           output.writeDouble(2, value_);
         }
    -    if (minValue_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(3, getMinValue());
         }
    -    if (maxValue_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           output.writeMessage(4, getMaxValue());
         }
         getUnknownFields().writeTo(output);
    @@ -216,18 +217,18 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
         }
         if (java.lang.Double.doubleToRawLongBits(value_) != 0) {
           size += com.google.protobuf.CodedOutputStream
             .computeDoubleSize(2, value_);
         }
    -    if (minValue_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(3, getMinValue());
         }
    -    if (maxValue_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(4, getMaxValue());
         }
    @@ -324,39 +325,41 @@ public static org.tensorflow.proto.MetricEntry parseFrom(
       }
       public static org.tensorflow.proto.MetricEntry parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MetricEntry parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.MetricEntry parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.MetricEntry parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.MetricEntry parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.MetricEntry parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -376,7 +379,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -384,7 +387,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.MetricEntry}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.MetricEntry)
           org.tensorflow.proto.MetricEntryOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -393,7 +396,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_MetricEntry_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -402,31 +405,35 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.MetricEntry.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getMinValueFieldBuilder();
    +        getMaxValueFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           name_ = "";
    -
           value_ = 0D;
    -
    -      if (minValueBuilder_ == null) {
    -        minValue_ = null;
    -      } else {
    -        minValue_ = null;
    +      minValue_ = null;
    +      if (minValueBuilder_ != null) {
    +        minValueBuilder_.dispose();
             minValueBuilder_ = null;
           }
    -      if (maxValueBuilder_ == null) {
    -        maxValue_ = null;
    -      } else {
    -        maxValue_ = null;
    +      maxValue_ = null;
    +      if (maxValueBuilder_ != null) {
    +        maxValueBuilder_.dispose();
             maxValueBuilder_ = null;
           }
           return this;
    @@ -455,54 +462,35 @@ public org.tensorflow.proto.MetricEntry build() {
         @java.lang.Override
         public org.tensorflow.proto.MetricEntry buildPartial() {
           org.tensorflow.proto.MetricEntry result = new org.tensorflow.proto.MetricEntry(this);
    -      result.name_ = name_;
    -      result.value_ = value_;
    -      if (minValueBuilder_ == null) {
    -        result.minValue_ = minValue_;
    -      } else {
    -        result.minValue_ = minValueBuilder_.build();
    -      }
    -      if (maxValueBuilder_ == null) {
    -        result.maxValue_ = maxValue_;
    -      } else {
    -        result.maxValue_ = maxValueBuilder_.build();
    -      }
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.MetricEntry result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.name_ = name_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.value_ = value_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.minValue_ = minValueBuilder_ == null
    +            ? minValue_
    +            : minValueBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.maxValue_ = maxValueBuilder_ == null
    +            ? maxValue_
    +            : maxValueBuilder_.build();
    +        to_bitField0_ |= 0x00000002;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.MetricEntry) {
    @@ -517,6 +505,7 @@ public Builder mergeFrom(org.tensorflow.proto.MetricEntry other) {
           if (other == org.tensorflow.proto.MetricEntry.getDefaultInstance()) return this;
           if (!other.getName().isEmpty()) {
             name_ = other.name_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (other.getValue() != 0D) {
    @@ -556,26 +545,26 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   name_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 17: {
                   value_ = input.readDouble();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 17
                 case 26: {
                   input.readMessage(
                       getMinValueFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 case 34: {
                   input.readMessage(
                       getMaxValueFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 34
                 default: {
    @@ -593,6 +582,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object name_ = "";
         /**
    @@ -647,11 +637,9 @@ public java.lang.String getName() {
          */
         public Builder setName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -664,8 +652,8 @@ public Builder setName(
          * @return This builder for chaining.
          */
         public Builder clearName() {
    -      
           name_ = getDefaultInstance().getName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -680,12 +668,10 @@ public Builder clearName() {
          */
         public Builder setNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -713,8 +699,9 @@ public double getValue() {
          * @return This builder for chaining.
          */
         public Builder setValue(double value) {
    -      
    +
           value_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -727,14 +714,14 @@ public Builder setValue(double value) {
          * @return This builder for chaining.
          */
         public Builder clearValue() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           value_ = 0D;
           onChanged();
           return this;
         }
     
         private com.google.protobuf.DoubleValue minValue_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             com.google.protobuf.DoubleValue, com.google.protobuf.DoubleValue.Builder, com.google.protobuf.DoubleValueOrBuilder> minValueBuilder_;
         /**
          * 
    @@ -745,7 +732,7 @@ public Builder clearValue() {
          * @return Whether the minValue field is set.
          */
         public boolean hasMinValue() {
    -      return minValueBuilder_ != null || minValue_ != null;
    +      return ((bitField0_ & 0x00000004) != 0);
         }
         /**
          * 
    @@ -775,11 +762,11 @@ public Builder setMinValue(com.google.protobuf.DoubleValue value) {
               throw new NullPointerException();
             }
             minValue_ = value;
    -        onChanged();
           } else {
             minValueBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -793,11 +780,11 @@ public Builder setMinValue(
             com.google.protobuf.DoubleValue.Builder builderForValue) {
           if (minValueBuilder_ == null) {
             minValue_ = builderForValue.build();
    -        onChanged();
           } else {
             minValueBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -809,17 +796,20 @@ public Builder setMinValue(
          */
         public Builder mergeMinValue(com.google.protobuf.DoubleValue value) {
           if (minValueBuilder_ == null) {
    -        if (minValue_ != null) {
    -          minValue_ =
    -            com.google.protobuf.DoubleValue.newBuilder(minValue_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000004) != 0) &&
    +          minValue_ != null &&
    +          minValue_ != com.google.protobuf.DoubleValue.getDefaultInstance()) {
    +          getMinValueBuilder().mergeFrom(value);
             } else {
               minValue_ = value;
             }
    -        onChanged();
           } else {
             minValueBuilder_.mergeFrom(value);
           }
    -
    +      if (minValue_ != null) {
    +        bitField0_ |= 0x00000004;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -830,14 +820,13 @@ public Builder mergeMinValue(com.google.protobuf.DoubleValue value) {
          * .google.protobuf.DoubleValue min_value = 3;
          */
         public Builder clearMinValue() {
    -      if (minValueBuilder_ == null) {
    -        minValue_ = null;
    -        onChanged();
    -      } else {
    -        minValue_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000004);
    +      minValue_ = null;
    +      if (minValueBuilder_ != null) {
    +        minValueBuilder_.dispose();
             minValueBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -848,7 +837,7 @@ public Builder clearMinValue() {
          * .google.protobuf.DoubleValue min_value = 3;
          */
         public com.google.protobuf.DoubleValue.Builder getMinValueBuilder() {
    -      
    +      bitField0_ |= 0x00000004;
           onChanged();
           return getMinValueFieldBuilder().getBuilder();
         }
    @@ -874,11 +863,11 @@ public com.google.protobuf.DoubleValueOrBuilder getMinValueOrBuilder() {
          *
          * .google.protobuf.DoubleValue min_value = 3;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             com.google.protobuf.DoubleValue, com.google.protobuf.DoubleValue.Builder, com.google.protobuf.DoubleValueOrBuilder> 
             getMinValueFieldBuilder() {
           if (minValueBuilder_ == null) {
    -        minValueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        minValueBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 com.google.protobuf.DoubleValue, com.google.protobuf.DoubleValue.Builder, com.google.protobuf.DoubleValueOrBuilder>(
                     getMinValue(),
                     getParentForChildren(),
    @@ -889,7 +878,7 @@ public com.google.protobuf.DoubleValueOrBuilder getMinValueOrBuilder() {
         }
     
         private com.google.protobuf.DoubleValue maxValue_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             com.google.protobuf.DoubleValue, com.google.protobuf.DoubleValue.Builder, com.google.protobuf.DoubleValueOrBuilder> maxValueBuilder_;
         /**
          * 
    @@ -900,7 +889,7 @@ public com.google.protobuf.DoubleValueOrBuilder getMinValueOrBuilder() {
          * @return Whether the maxValue field is set.
          */
         public boolean hasMaxValue() {
    -      return maxValueBuilder_ != null || maxValue_ != null;
    +      return ((bitField0_ & 0x00000008) != 0);
         }
         /**
          * 
    @@ -930,11 +919,11 @@ public Builder setMaxValue(com.google.protobuf.DoubleValue value) {
               throw new NullPointerException();
             }
             maxValue_ = value;
    -        onChanged();
           } else {
             maxValueBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000008;
    +      onChanged();
           return this;
         }
         /**
    @@ -948,11 +937,11 @@ public Builder setMaxValue(
             com.google.protobuf.DoubleValue.Builder builderForValue) {
           if (maxValueBuilder_ == null) {
             maxValue_ = builderForValue.build();
    -        onChanged();
           } else {
             maxValueBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000008;
    +      onChanged();
           return this;
         }
         /**
    @@ -964,17 +953,20 @@ public Builder setMaxValue(
          */
         public Builder mergeMaxValue(com.google.protobuf.DoubleValue value) {
           if (maxValueBuilder_ == null) {
    -        if (maxValue_ != null) {
    -          maxValue_ =
    -            com.google.protobuf.DoubleValue.newBuilder(maxValue_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000008) != 0) &&
    +          maxValue_ != null &&
    +          maxValue_ != com.google.protobuf.DoubleValue.getDefaultInstance()) {
    +          getMaxValueBuilder().mergeFrom(value);
             } else {
               maxValue_ = value;
             }
    -        onChanged();
           } else {
             maxValueBuilder_.mergeFrom(value);
           }
    -
    +      if (maxValue_ != null) {
    +        bitField0_ |= 0x00000008;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -985,14 +977,13 @@ public Builder mergeMaxValue(com.google.protobuf.DoubleValue value) {
          * .google.protobuf.DoubleValue max_value = 4;
          */
         public Builder clearMaxValue() {
    -      if (maxValueBuilder_ == null) {
    -        maxValue_ = null;
    -        onChanged();
    -      } else {
    -        maxValue_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000008);
    +      maxValue_ = null;
    +      if (maxValueBuilder_ != null) {
    +        maxValueBuilder_.dispose();
             maxValueBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -1003,7 +994,7 @@ public Builder clearMaxValue() {
          * .google.protobuf.DoubleValue max_value = 4;
          */
         public com.google.protobuf.DoubleValue.Builder getMaxValueBuilder() {
    -      
    +      bitField0_ |= 0x00000008;
           onChanged();
           return getMaxValueFieldBuilder().getBuilder();
         }
    @@ -1029,11 +1020,11 @@ public com.google.protobuf.DoubleValueOrBuilder getMaxValueOrBuilder() {
          *
          * .google.protobuf.DoubleValue max_value = 4;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             com.google.protobuf.DoubleValue, com.google.protobuf.DoubleValue.Builder, com.google.protobuf.DoubleValueOrBuilder> 
             getMaxValueFieldBuilder() {
           if (maxValueBuilder_ == null) {
    -        maxValueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        maxValueBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 com.google.protobuf.DoubleValue, com.google.protobuf.DoubleValue.Builder, com.google.protobuf.DoubleValueOrBuilder>(
                     getMaxValue(),
                     getParentForChildren(),
    @@ -1042,18 +1033,6 @@ public com.google.protobuf.DoubleValueOrBuilder getMaxValueOrBuilder() {
           }
           return maxValueBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.MetricEntry)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetricEntryOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetricEntryOrBuilder.java
    index 9898de2810f..3d0eec363a3 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetricEntryOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/MetricEntryOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NameAttrList.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NameAttrList.java
    index f187a27a267..b79641012af 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NameAttrList.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NameAttrList.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/attr_value.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -12,30 +14,27 @@
      * Protobuf type {@code tensorflow.NameAttrList}
      */
     public final class NameAttrList extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.NameAttrList)
         NameAttrListOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      NameAttrList.class.getName());
    +  }
       // Use NameAttrList.newBuilder() to construct.
    -  private NameAttrList(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private NameAttrList(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private NameAttrList() {
         name_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new NameAttrList();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.AttrValueProtos.internal_static_tensorflow_NameAttrList_descriptor;
    @@ -43,7 +42,7 @@ protected java.lang.Object newInstance(
     
       @SuppressWarnings({"rawtypes"})
       @java.lang.Override
    -  protected com.google.protobuf.MapField internalGetMapField(
    +  protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
           int number) {
         switch (number) {
           case 2:
    @@ -54,7 +53,7 @@ protected com.google.protobuf.MapField internalGetMapField(
         }
       }
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.AttrValueProtos.internal_static_tensorflow_NameAttrList_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -62,7 +61,8 @@ protected com.google.protobuf.MapField internalGetMapField(
       }
     
       public static final int NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object name_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object name_ = "";
       /**
        * string name = 1;
        * @return The name.
    @@ -111,6 +111,7 @@ private static final class AttrDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.MESSAGE,
                     org.tensorflow.proto.AttrValue.getDefaultInstance());
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.String, org.tensorflow.proto.AttrValue> attr_;
       private com.google.protobuf.MapField
    @@ -121,14 +122,12 @@ private static final class AttrDefaultEntryHolder {
         }
         return attr_;
       }
    -
       public int getAttrCount() {
         return internalGetAttr().getMap().size();
       }
       /**
        * map<string, .tensorflow.AttrValue> attr = 2;
        */
    -
       @java.lang.Override
       public boolean containsAttr(
           java.lang.String key) {
    @@ -147,7 +146,6 @@ public java.util.Map getAttr()
        * map<string, .tensorflow.AttrValue> attr = 2;
        */
       @java.lang.Override
    -
       public java.util.Map getAttrMap() {
         return internalGetAttr().getMap();
       }
    @@ -155,10 +153,11 @@ public java.util.Map getAttrMa
        * map<string, .tensorflow.AttrValue> attr = 2;
        */
       @java.lang.Override
    -
    -  public org.tensorflow.proto.AttrValue getAttrOrDefault(
    +  public /* nullable */
    +org.tensorflow.proto.AttrValue getAttrOrDefault(
           java.lang.String key,
    -      org.tensorflow.proto.AttrValue defaultValue) {
    +      /* nullable */
    +org.tensorflow.proto.AttrValue defaultValue) {
         if (key == null) { throw new NullPointerException("map key"); }
         java.util.Map map =
             internalGetAttr().getMap();
    @@ -168,7 +167,6 @@ public org.tensorflow.proto.AttrValue getAttrOrDefault(
        * map<string, .tensorflow.AttrValue> attr = 2;
        */
       @java.lang.Override
    -
       public org.tensorflow.proto.AttrValue getAttrOrThrow(
           java.lang.String key) {
         if (key == null) { throw new NullPointerException("map key"); }
    @@ -194,10 +192,10 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
         }
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeStringMapTo(
             output,
             internalGetAttr(),
    @@ -212,8 +210,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
         }
         for (java.util.Map.Entry entry
              : internalGetAttr().getMap().entrySet()) {
    @@ -300,39 +298,41 @@ public static org.tensorflow.proto.NameAttrList parseFrom(
       }
       public static org.tensorflow.proto.NameAttrList parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.NameAttrList parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.NameAttrList parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.NameAttrList parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.NameAttrList parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.NameAttrList parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -352,7 +352,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -365,7 +365,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.NameAttrList}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.NameAttrList)
           org.tensorflow.proto.NameAttrListOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -374,7 +374,7 @@ public static final class Builder extends
         }
     
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
             int number) {
           switch (number) {
             case 2:
    @@ -385,7 +385,7 @@ protected com.google.protobuf.MapField internalGetMapField(
           }
         }
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMutableMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(
             int number) {
           switch (number) {
             case 2:
    @@ -396,7 +396,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
           }
         }
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.AttrValueProtos.internal_static_tensorflow_NameAttrList_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -409,15 +409,15 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           name_ = "";
    -
           internalGetMutableAttr().clear();
           return this;
         }
    @@ -445,46 +445,21 @@ public org.tensorflow.proto.NameAttrList build() {
         @java.lang.Override
         public org.tensorflow.proto.NameAttrList buildPartial() {
           org.tensorflow.proto.NameAttrList result = new org.tensorflow.proto.NameAttrList(this);
    -      int from_bitField0_ = bitField0_;
    -      result.name_ = name_;
    -      result.attr_ = internalGetAttr();
    -      result.attr_.makeImmutable();
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.NameAttrList result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.name_ = name_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.attr_ = internalGetAttr().build(AttrDefaultEntryHolder.defaultEntry);
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.NameAttrList) {
    @@ -499,10 +474,12 @@ public Builder mergeFrom(org.tensorflow.proto.NameAttrList other) {
           if (other == org.tensorflow.proto.NameAttrList.getDefaultInstance()) return this;
           if (!other.getName().isEmpty()) {
             name_ = other.name_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           internalGetMutableAttr().mergeFrom(
               other.internalGetAttr());
    +      bitField0_ |= 0x00000002;
           this.mergeUnknownFields(other.getUnknownFields());
           onChanged();
           return this;
    @@ -531,15 +508,16 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   name_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   com.google.protobuf.MapEntry
                   attr__ = input.readMessage(
                       AttrDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
    -              internalGetMutableAttr().getMutableMap().put(
    +              internalGetMutableAttr().ensureBuilderMap().put(
                       attr__.getKey(), attr__.getValue());
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 default: {
    @@ -600,11 +578,9 @@ public java.lang.String getName() {
          */
         public Builder setName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -613,8 +589,8 @@ public Builder setName(
          * @return This builder for chaining.
          */
         public Builder clearName() {
    -      
           name_ = getDefaultInstance().getName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -625,51 +601,57 @@ public Builder clearName() {
          */
         public Builder setNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.MapField<
    -        java.lang.String, org.tensorflow.proto.AttrValue> attr_;
    -    private com.google.protobuf.MapField
    -    internalGetAttr() {
    +    private static final class AttrConverter implements com.google.protobuf.MapFieldBuilder.Converter {
    +      @java.lang.Override
    +      public org.tensorflow.proto.AttrValue build(org.tensorflow.proto.AttrValueOrBuilder val) {
    +        if (val instanceof org.tensorflow.proto.AttrValue) { return (org.tensorflow.proto.AttrValue) val; }
    +        return ((org.tensorflow.proto.AttrValue.Builder) val).build();
    +      }
    +
    +      @java.lang.Override
    +      public com.google.protobuf.MapEntry defaultEntry() {
    +        return AttrDefaultEntryHolder.defaultEntry;
    +      }
    +    };
    +    private static final AttrConverter attrConverter = new AttrConverter();
    +
    +    private com.google.protobuf.MapFieldBuilder<
    +        java.lang.String, org.tensorflow.proto.AttrValueOrBuilder, org.tensorflow.proto.AttrValue, org.tensorflow.proto.AttrValue.Builder> attr_;
    +    private com.google.protobuf.MapFieldBuilder
    +        internalGetAttr() {
           if (attr_ == null) {
    -        return com.google.protobuf.MapField.emptyMapField(
    -            AttrDefaultEntryHolder.defaultEntry);
    +        return new com.google.protobuf.MapFieldBuilder<>(attrConverter);
           }
           return attr_;
         }
    -    private com.google.protobuf.MapField
    -    internalGetMutableAttr() {
    -      onChanged();;
    +    private com.google.protobuf.MapFieldBuilder
    +        internalGetMutableAttr() {
           if (attr_ == null) {
    -        attr_ = com.google.protobuf.MapField.newMapField(
    -            AttrDefaultEntryHolder.defaultEntry);
    -      }
    -      if (!attr_.isMutable()) {
    -        attr_ = attr_.copy();
    +        attr_ = new com.google.protobuf.MapFieldBuilder<>(attrConverter);
           }
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return attr_;
         }
    -
         public int getAttrCount() {
    -      return internalGetAttr().getMap().size();
    +      return internalGetAttr().ensureBuilderMap().size();
         }
         /**
          * map<string, .tensorflow.AttrValue> attr = 2;
          */
    -
         @java.lang.Override
         public boolean containsAttr(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      return internalGetAttr().getMap().containsKey(key);
    +      return internalGetAttr().ensureBuilderMap().containsKey(key);
         }
         /**
          * Use {@link #getAttrMap()} instead.
    @@ -683,52 +665,47 @@ public java.util.Map getAttr()
          * map<string, .tensorflow.AttrValue> attr = 2;
          */
         @java.lang.Override
    -
         public java.util.Map getAttrMap() {
    -      return internalGetAttr().getMap();
    +      return internalGetAttr().getImmutableMap();
         }
         /**
          * map<string, .tensorflow.AttrValue> attr = 2;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.AttrValue getAttrOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.AttrValue getAttrOrDefault(
             java.lang.String key,
    -        org.tensorflow.proto.AttrValue defaultValue) {
    +        /* nullable */
    +org.tensorflow.proto.AttrValue defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetAttr().getMap();
    -      return map.containsKey(key) ? map.get(key) : defaultValue;
    +      java.util.Map map = internalGetMutableAttr().ensureBuilderMap();
    +      return map.containsKey(key) ? attrConverter.build(map.get(key)) : defaultValue;
         }
         /**
          * map<string, .tensorflow.AttrValue> attr = 2;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.AttrValue getAttrOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetAttr().getMap();
    +      java.util.Map map = internalGetMutableAttr().ensureBuilderMap();
           if (!map.containsKey(key)) {
             throw new java.lang.IllegalArgumentException();
           }
    -      return map.get(key);
    +      return attrConverter.build(map.get(key));
         }
    -
         public Builder clearAttr() {
    -      internalGetMutableAttr().getMutableMap()
    -          .clear();
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      internalGetMutableAttr().clear();
           return this;
         }
         /**
          * map<string, .tensorflow.AttrValue> attr = 2;
          */
    -
         public Builder removeAttr(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      internalGetMutableAttr().getMutableMap()
    +      internalGetMutableAttr().ensureBuilderMap()
               .remove(key);
           return this;
         }
    @@ -737,8 +714,9 @@ public Builder removeAttr(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableAttr() {
    -      return internalGetMutableAttr().getMutableMap();
    +        getMutableAttr() {
    +      bitField0_ |= 0x00000002;
    +      return internalGetMutableAttr().ensureMessageMap();
         }
         /**
          * map<string, .tensorflow.AttrValue> attr = 2;
    @@ -747,37 +725,45 @@ public Builder putAttr(
             java.lang.String key,
             org.tensorflow.proto.AttrValue value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    -      internalGetMutableAttr().getMutableMap()
    +      if (value == null) { throw new NullPointerException("map value"); }
    +      internalGetMutableAttr().ensureBuilderMap()
               .put(key, value);
    +      bitField0_ |= 0x00000002;
           return this;
         }
         /**
          * map<string, .tensorflow.AttrValue> attr = 2;
          */
    -
         public Builder putAllAttr(
             java.util.Map values) {
    -      internalGetMutableAttr().getMutableMap()
    +      for (java.util.Map.Entry e : values.entrySet()) {
    +        if (e.getKey() == null || e.getValue() == null) {
    +          throw new NullPointerException();
    +        }
    +      }
    +      internalGetMutableAttr().ensureBuilderMap()
               .putAll(values);
    +      bitField0_ |= 0x00000002;
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    +    /**
    +     * map<string, .tensorflow.AttrValue> attr = 2;
    +     */
    +    public org.tensorflow.proto.AttrValue.Builder putAttrBuilderIfAbsent(
    +        java.lang.String key) {
    +      java.util.Map builderMap = internalGetMutableAttr().ensureBuilderMap();
    +      org.tensorflow.proto.AttrValueOrBuilder entry = builderMap.get(key);
    +      if (entry == null) {
    +        entry = org.tensorflow.proto.AttrValue.newBuilder();
    +        builderMap.put(key, entry);
    +      }
    +      if (entry instanceof org.tensorflow.proto.AttrValue) {
    +        entry = ((org.tensorflow.proto.AttrValue) entry).toBuilder();
    +        builderMap.put(key, entry);
    +      }
    +      return (org.tensorflow.proto.AttrValue.Builder) entry;
         }
     
    -
         // @@protoc_insertion_point(builder_scope:tensorflow.NameAttrList)
       }
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NameAttrListOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NameAttrListOrBuilder.java
    index 19f5a7d4b1b..132bb9b6aa8 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NameAttrListOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NameAttrListOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/attr_value.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -42,7 +44,6 @@ boolean containsAttr(
       /**
        * map<string, .tensorflow.AttrValue> attr = 2;
        */
    -
       /* nullable */
     org.tensorflow.proto.AttrValue getAttrOrDefault(
           java.lang.String key,
    @@ -51,7 +52,6 @@ org.tensorflow.proto.AttrValue getAttrOrDefault(
       /**
        * map<string, .tensorflow.AttrValue> attr = 2;
        */
    -
       org.tensorflow.proto.AttrValue getAttrOrThrow(
           java.lang.String key);
     }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NamedTensorProto.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NamedTensorProto.java
    index 7fd86079e17..ac9667ae7b8 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NamedTensorProto.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NamedTensorProto.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/named_tensor.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,45 +13,44 @@
      * Protobuf type {@code tensorflow.NamedTensorProto}
      */
     public final class NamedTensorProto extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.NamedTensorProto)
         NamedTensorProtoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      NamedTensorProto.class.getName());
    +  }
       // Use NamedTensorProto.newBuilder() to construct.
    -  private NamedTensorProto(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private NamedTensorProto(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private NamedTensorProto() {
         name_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new NamedTensorProto();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.NamedTensorProtos.internal_static_tensorflow_NamedTensorProto_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.NamedTensorProtos.internal_static_tensorflow_NamedTensorProto_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.NamedTensorProto.class, org.tensorflow.proto.NamedTensorProto.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object name_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object name_ = "";
       /**
        * 
        * Name of the tensor.
    @@ -100,6 +101,7 @@ public java.lang.String getName() {
        * 
        * The client can populate a TensorProto using a tensorflow::Tensor`, or
        * directly using the protobuf field accessors.
    +   *
        * The client specifies whether the returned tensor values should be
        * filled tensor fields (float_val, int_val, etc.) or encoded in a
        * compact form in tensor.tensor_content.
    @@ -110,12 +112,13 @@ public java.lang.String getName() {
        */
       @java.lang.Override
       public boolean hasTensor() {
    -    return tensor_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
        * The client can populate a TensorProto using a tensorflow::Tensor`, or
        * directly using the protobuf field accessors.
    +   *
        * The client specifies whether the returned tensor values should be
        * filled tensor fields (float_val, int_val, etc.) or encoded in a
        * compact form in tensor.tensor_content.
    @@ -132,6 +135,7 @@ public org.tensorflow.proto.TensorProto getTensor() {
        * 
        * The client can populate a TensorProto using a tensorflow::Tensor`, or
        * directly using the protobuf field accessors.
    +   *
        * The client specifies whether the returned tensor values should be
        * filled tensor fields (float_val, int_val, etc.) or encoded in a
        * compact form in tensor.tensor_content.
    @@ -141,7 +145,7 @@ public org.tensorflow.proto.TensorProto getTensor() {
        */
       @java.lang.Override
       public org.tensorflow.proto.TensorProtoOrBuilder getTensorOrBuilder() {
    -    return getTensor();
    +    return tensor_ == null ? org.tensorflow.proto.TensorProto.getDefaultInstance() : tensor_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -158,10 +162,10 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
         }
    -    if (tensor_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(2, getTensor());
         }
         getUnknownFields().writeTo(output);
    @@ -173,10 +177,10 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
         }
    -    if (tensor_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(2, getTensor());
         }
    @@ -258,39 +262,41 @@ public static org.tensorflow.proto.NamedTensorProto parseFrom(
       }
       public static org.tensorflow.proto.NamedTensorProto parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.NamedTensorProto parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.NamedTensorProto parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.NamedTensorProto parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.NamedTensorProto parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.NamedTensorProto parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -310,7 +316,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -322,7 +328,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.NamedTensorProto}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.NamedTensorProto)
           org.tensorflow.proto.NamedTensorProtoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -331,7 +337,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.NamedTensorProtos.internal_static_tensorflow_NamedTensorProto_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -340,23 +346,28 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.NamedTensorProto.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getTensorFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           name_ = "";
    -
    -      if (tensorBuilder_ == null) {
    -        tensor_ = null;
    -      } else {
    -        tensor_ = null;
    +      tensor_ = null;
    +      if (tensorBuilder_ != null) {
    +        tensorBuilder_.dispose();
             tensorBuilder_ = null;
           }
           return this;
    @@ -385,48 +396,26 @@ public org.tensorflow.proto.NamedTensorProto build() {
         @java.lang.Override
         public org.tensorflow.proto.NamedTensorProto buildPartial() {
           org.tensorflow.proto.NamedTensorProto result = new org.tensorflow.proto.NamedTensorProto(this);
    -      result.name_ = name_;
    -      if (tensorBuilder_ == null) {
    -        result.tensor_ = tensor_;
    -      } else {
    -        result.tensor_ = tensorBuilder_.build();
    -      }
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.NamedTensorProto result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.name_ = name_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.tensor_ = tensorBuilder_ == null
    +            ? tensor_
    +            : tensorBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.NamedTensorProto) {
    @@ -441,6 +430,7 @@ public Builder mergeFrom(org.tensorflow.proto.NamedTensorProto other) {
           if (other == org.tensorflow.proto.NamedTensorProto.getDefaultInstance()) return this;
           if (!other.getName().isEmpty()) {
             name_ = other.name_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (other.hasTensor()) {
    @@ -474,14 +464,14 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   name_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   input.readMessage(
                       getTensorFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 default: {
    @@ -499,6 +489,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object name_ = "";
         /**
    @@ -553,11 +544,9 @@ public java.lang.String getName() {
          */
         public Builder setName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -570,8 +559,8 @@ public Builder setName(
          * @return This builder for chaining.
          */
         public Builder clearName() {
    -      
           name_ = getDefaultInstance().getName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -586,23 +575,22 @@ public Builder clearName() {
          */
         public Builder setNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.TensorProto tensor_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> tensorBuilder_;
         /**
          * 
          * The client can populate a TensorProto using a tensorflow::Tensor`, or
          * directly using the protobuf field accessors.
    +     *
          * The client specifies whether the returned tensor values should be
          * filled tensor fields (float_val, int_val, etc.) or encoded in a
          * compact form in tensor.tensor_content.
    @@ -612,12 +600,13 @@ public Builder setNameBytes(
          * @return Whether the tensor field is set.
          */
         public boolean hasTensor() {
    -      return tensorBuilder_ != null || tensor_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
          * The client can populate a TensorProto using a tensorflow::Tensor`, or
          * directly using the protobuf field accessors.
    +     *
          * The client specifies whether the returned tensor values should be
          * filled tensor fields (float_val, int_val, etc.) or encoded in a
          * compact form in tensor.tensor_content.
    @@ -637,6 +626,7 @@ public org.tensorflow.proto.TensorProto getTensor() {
          * 
          * The client can populate a TensorProto using a tensorflow::Tensor`, or
          * directly using the protobuf field accessors.
    +     *
          * The client specifies whether the returned tensor values should be
          * filled tensor fields (float_val, int_val, etc.) or encoded in a
          * compact form in tensor.tensor_content.
    @@ -650,17 +640,18 @@ public Builder setTensor(org.tensorflow.proto.TensorProto value) {
               throw new NullPointerException();
             }
             tensor_ = value;
    -        onChanged();
           } else {
             tensorBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
          * 
          * The client can populate a TensorProto using a tensorflow::Tensor`, or
          * directly using the protobuf field accessors.
    +     *
          * The client specifies whether the returned tensor values should be
          * filled tensor fields (float_val, int_val, etc.) or encoded in a
          * compact form in tensor.tensor_content.
    @@ -672,17 +663,18 @@ public Builder setTensor(
             org.tensorflow.proto.TensorProto.Builder builderForValue) {
           if (tensorBuilder_ == null) {
             tensor_ = builderForValue.build();
    -        onChanged();
           } else {
             tensorBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
          * 
          * The client can populate a TensorProto using a tensorflow::Tensor`, or
          * directly using the protobuf field accessors.
    +     *
          * The client specifies whether the returned tensor values should be
          * filled tensor fields (float_val, int_val, etc.) or encoded in a
          * compact form in tensor.tensor_content.
    @@ -692,23 +684,27 @@ public Builder setTensor(
          */
         public Builder mergeTensor(org.tensorflow.proto.TensorProto value) {
           if (tensorBuilder_ == null) {
    -        if (tensor_ != null) {
    -          tensor_ =
    -            org.tensorflow.proto.TensorProto.newBuilder(tensor_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000002) != 0) &&
    +          tensor_ != null &&
    +          tensor_ != org.tensorflow.proto.TensorProto.getDefaultInstance()) {
    +          getTensorBuilder().mergeFrom(value);
             } else {
               tensor_ = value;
             }
    -        onChanged();
           } else {
             tensorBuilder_.mergeFrom(value);
           }
    -
    +      if (tensor_ != null) {
    +        bitField0_ |= 0x00000002;
    +        onChanged();
    +      }
           return this;
         }
         /**
          * 
          * The client can populate a TensorProto using a tensorflow::Tensor`, or
          * directly using the protobuf field accessors.
    +     *
          * The client specifies whether the returned tensor values should be
          * filled tensor fields (float_val, int_val, etc.) or encoded in a
          * compact form in tensor.tensor_content.
    @@ -717,20 +713,20 @@ public Builder mergeTensor(org.tensorflow.proto.TensorProto value) {
          * .tensorflow.TensorProto tensor = 2;
          */
         public Builder clearTensor() {
    -      if (tensorBuilder_ == null) {
    -        tensor_ = null;
    -        onChanged();
    -      } else {
    -        tensor_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      tensor_ = null;
    +      if (tensorBuilder_ != null) {
    +        tensorBuilder_.dispose();
             tensorBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
          * 
          * The client can populate a TensorProto using a tensorflow::Tensor`, or
          * directly using the protobuf field accessors.
    +     *
          * The client specifies whether the returned tensor values should be
          * filled tensor fields (float_val, int_val, etc.) or encoded in a
          * compact form in tensor.tensor_content.
    @@ -739,7 +735,7 @@ public Builder clearTensor() {
          * .tensorflow.TensorProto tensor = 2;
          */
         public org.tensorflow.proto.TensorProto.Builder getTensorBuilder() {
    -      
    +      bitField0_ |= 0x00000002;
           onChanged();
           return getTensorFieldBuilder().getBuilder();
         }
    @@ -747,6 +743,7 @@ public org.tensorflow.proto.TensorProto.Builder getTensorBuilder() {
          * 
          * The client can populate a TensorProto using a tensorflow::Tensor`, or
          * directly using the protobuf field accessors.
    +     *
          * The client specifies whether the returned tensor values should be
          * filled tensor fields (float_val, int_val, etc.) or encoded in a
          * compact form in tensor.tensor_content.
    @@ -766,6 +763,7 @@ public org.tensorflow.proto.TensorProtoOrBuilder getTensorOrBuilder() {
          * 
          * The client can populate a TensorProto using a tensorflow::Tensor`, or
          * directly using the protobuf field accessors.
    +     *
          * The client specifies whether the returned tensor values should be
          * filled tensor fields (float_val, int_val, etc.) or encoded in a
          * compact form in tensor.tensor_content.
    @@ -773,11 +771,11 @@ public org.tensorflow.proto.TensorProtoOrBuilder getTensorOrBuilder() {
          *
          * .tensorflow.TensorProto tensor = 2;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> 
             getTensorFieldBuilder() {
           if (tensorBuilder_ == null) {
    -        tensorBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        tensorBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder>(
                     getTensor(),
                     getParentForChildren(),
    @@ -786,18 +784,6 @@ public org.tensorflow.proto.TensorProtoOrBuilder getTensorOrBuilder() {
           }
           return tensorBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.NamedTensorProto)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NamedTensorProtoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NamedTensorProtoOrBuilder.java
    index 93096b794c0..236bd5974fe 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NamedTensorProtoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NamedTensorProtoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/named_tensor.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -31,6 +33,7 @@ public interface NamedTensorProtoOrBuilder extends
        * 
        * The client can populate a TensorProto using a tensorflow::Tensor`, or
        * directly using the protobuf field accessors.
    +   *
        * The client specifies whether the returned tensor values should be
        * filled tensor fields (float_val, int_val, etc.) or encoded in a
        * compact form in tensor.tensor_content.
    @@ -44,6 +47,7 @@ public interface NamedTensorProtoOrBuilder extends
        * 
        * The client can populate a TensorProto using a tensorflow::Tensor`, or
        * directly using the protobuf field accessors.
    +   *
        * The client specifies whether the returned tensor values should be
        * filled tensor fields (float_val, int_val, etc.) or encoded in a
        * compact form in tensor.tensor_content.
    @@ -57,6 +61,7 @@ public interface NamedTensorProtoOrBuilder extends
        * 
        * The client can populate a TensorProto using a tensorflow::Tensor`, or
        * directly using the protobuf field accessors.
    +   *
        * The client specifies whether the returned tensor values should be
        * filled tensor fields (float_val, int_val, etc.) or encoded in a
        * compact form in tensor.tensor_content.
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NamedTensorProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NamedTensorProtos.java
    index 8b98e05145e..bbc43be0671 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NamedTensorProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NamedTensorProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/named_tensor.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class NamedTensorProtos {
       private NamedTensorProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      NamedTensorProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,7 +28,7 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_NamedTensorProto_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_NamedTensorProto_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -45,9 +56,10 @@ public static void registerAllExtensions(
         internal_static_tensorflow_NamedTensorProto_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_NamedTensorProto_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_NamedTensorProto_descriptor,
             new java.lang.String[] { "Name", "Tensor", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.TensorProtos.getDescriptor();
       }
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeDef.java
    index 2097dfee0c9..c6490a052ac 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeDef.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeDef.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/node_def.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,33 +9,31 @@
      * Protobuf type {@code tensorflow.NodeDef}
      */
     public final class NodeDef extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.NodeDef)
         NodeDefOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      NodeDef.class.getName());
    +  }
       // Use NodeDef.newBuilder() to construct.
    -  private NodeDef(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private NodeDef(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private NodeDef() {
         name_ = "";
         op_ = "";
    -    input_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    input_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         device_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new NodeDef();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.NodeProto.internal_static_tensorflow_NodeDef_descriptor;
    @@ -41,7 +41,7 @@ protected java.lang.Object newInstance(
     
       @SuppressWarnings({"rawtypes"})
       @java.lang.Override
    -  protected com.google.protobuf.MapField internalGetMapField(
    +  protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
           int number) {
         switch (number) {
           case 5:
    @@ -52,7 +52,7 @@ protected com.google.protobuf.MapField internalGetMapField(
         }
       }
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.NodeProto.internal_static_tensorflow_NodeDef_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -66,6 +66,7 @@ public interface ExperimentalDebugInfoOrBuilder extends
         /**
          * 
          * Opaque string inserted into error messages created by the runtime.
    +     *
          * This is intended to store the list of names of the nodes from the
          * original graph that this node was derived. For example if this node, say
          * C, was result of a fusion of 2 nodes A and B, then 'original_node' would
    @@ -81,6 +82,7 @@ public interface ExperimentalDebugInfoOrBuilder extends
         /**
          * 
          * Opaque string inserted into error messages created by the runtime.
    +     *
          * This is intended to store the list of names of the nodes from the
          * original graph that this node was derived. For example if this node, say
          * C, was result of a fusion of 2 nodes A and B, then 'original_node' would
    @@ -95,6 +97,7 @@ public interface ExperimentalDebugInfoOrBuilder extends
         /**
          * 
          * Opaque string inserted into error messages created by the runtime.
    +     *
          * This is intended to store the list of names of the nodes from the
          * original graph that this node was derived. For example if this node, say
          * C, was result of a fusion of 2 nodes A and B, then 'original_node' would
    @@ -110,6 +113,7 @@ public interface ExperimentalDebugInfoOrBuilder extends
         /**
          * 
          * Opaque string inserted into error messages created by the runtime.
    +     *
          * This is intended to store the list of names of the nodes from the
          * original graph that this node was derived. For example if this node, say
          * C, was result of a fusion of 2 nodes A and B, then 'original_node' would
    @@ -193,38 +197,37 @@ public interface ExperimentalDebugInfoOrBuilder extends
        * Protobuf type {@code tensorflow.NodeDef.ExperimentalDebugInfo}
        */
       public static final class ExperimentalDebugInfo extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.NodeDef.ExperimentalDebugInfo)
           ExperimentalDebugInfoOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        ExperimentalDebugInfo.class.getName());
    +    }
         // Use ExperimentalDebugInfo.newBuilder() to construct.
    -    private ExperimentalDebugInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private ExperimentalDebugInfo(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private ExperimentalDebugInfo() {
    -      originalNodeNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      originalFuncNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +      originalNodeNames_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
    +      originalFuncNames_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new ExperimentalDebugInfo();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.NodeProto.internal_static_tensorflow_NodeDef_ExperimentalDebugInfo_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.NodeProto.internal_static_tensorflow_NodeDef_ExperimentalDebugInfo_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -232,10 +235,13 @@ protected java.lang.Object newInstance(
         }
     
         public static final int ORIGINAL_NODE_NAMES_FIELD_NUMBER = 1;
    -    private com.google.protobuf.LazyStringList originalNodeNames_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.LazyStringArrayList originalNodeNames_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         /**
          * 
          * Opaque string inserted into error messages created by the runtime.
    +     *
          * This is intended to store the list of names of the nodes from the
          * original graph that this node was derived. For example if this node, say
          * C, was result of a fusion of 2 nodes A and B, then 'original_node' would
    @@ -253,6 +259,7 @@ protected java.lang.Object newInstance(
         /**
          * 
          * Opaque string inserted into error messages created by the runtime.
    +     *
          * This is intended to store the list of names of the nodes from the
          * original graph that this node was derived. For example if this node, say
          * C, was result of a fusion of 2 nodes A and B, then 'original_node' would
    @@ -269,6 +276,7 @@ public int getOriginalNodeNamesCount() {
         /**
          * 
          * Opaque string inserted into error messages created by the runtime.
    +     *
          * This is intended to store the list of names of the nodes from the
          * original graph that this node was derived. For example if this node, say
          * C, was result of a fusion of 2 nodes A and B, then 'original_node' would
    @@ -286,6 +294,7 @@ public java.lang.String getOriginalNodeNames(int index) {
         /**
          * 
          * Opaque string inserted into error messages created by the runtime.
    +     *
          * This is intended to store the list of names of the nodes from the
          * original graph that this node was derived. For example if this node, say
          * C, was result of a fusion of 2 nodes A and B, then 'original_node' would
    @@ -303,7 +312,9 @@ public java.lang.String getOriginalNodeNames(int index) {
         }
     
         public static final int ORIGINAL_FUNC_NAMES_FIELD_NUMBER = 2;
    -    private com.google.protobuf.LazyStringList originalFuncNames_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.LazyStringArrayList originalFuncNames_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         /**
          * 
          * This is intended to store the list of names of the functions from the
    @@ -392,10 +403,10 @@ public final boolean isInitialized() {
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
           for (int i = 0; i < originalNodeNames_.size(); i++) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, originalNodeNames_.getRaw(i));
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, originalNodeNames_.getRaw(i));
           }
           for (int i = 0; i < originalFuncNames_.size(); i++) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, originalFuncNames_.getRaw(i));
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, originalFuncNames_.getRaw(i));
           }
           getUnknownFields().writeTo(output);
         }
    @@ -499,39 +510,41 @@ public static org.tensorflow.proto.NodeDef.ExperimentalDebugInfo parseFrom(
         }
         public static org.tensorflow.proto.NodeDef.ExperimentalDebugInfo parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.NodeDef.ExperimentalDebugInfo parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.NodeDef.ExperimentalDebugInfo parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.NodeDef.ExperimentalDebugInfo parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.NodeDef.ExperimentalDebugInfo parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.NodeDef.ExperimentalDebugInfo parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -551,7 +564,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -559,7 +572,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.NodeDef.ExperimentalDebugInfo}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.NodeDef.ExperimentalDebugInfo)
             org.tensorflow.proto.NodeDef.ExperimentalDebugInfoOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -568,7 +581,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.NodeProto.internal_static_tensorflow_NodeDef_ExperimentalDebugInfo_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -581,17 +594,18 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    -        originalNodeNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -        originalFuncNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        bitField0_ = 0;
    +        originalNodeNames_ =
    +            com.google.protobuf.LazyStringArrayList.emptyList();
    +        originalFuncNames_ =
    +            com.google.protobuf.LazyStringArrayList.emptyList();
             return this;
           }
     
    @@ -618,53 +632,23 @@ public org.tensorflow.proto.NodeDef.ExperimentalDebugInfo build() {
           @java.lang.Override
           public org.tensorflow.proto.NodeDef.ExperimentalDebugInfo buildPartial() {
             org.tensorflow.proto.NodeDef.ExperimentalDebugInfo result = new org.tensorflow.proto.NodeDef.ExperimentalDebugInfo(this);
    -        int from_bitField0_ = bitField0_;
    -        if (((bitField0_ & 0x00000001) != 0)) {
    -          originalNodeNames_ = originalNodeNames_.getUnmodifiableView();
    -          bitField0_ = (bitField0_ & ~0x00000001);
    -        }
    -        result.originalNodeNames_ = originalNodeNames_;
    -        if (((bitField0_ & 0x00000002) != 0)) {
    -          originalFuncNames_ = originalFuncNames_.getUnmodifiableView();
    -          bitField0_ = (bitField0_ & ~0x00000002);
    -        }
    -        result.originalFuncNames_ = originalFuncNames_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.NodeDef.ExperimentalDebugInfo result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          originalNodeNames_.makeImmutable();
    +          result.originalNodeNames_ = originalNodeNames_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          originalFuncNames_.makeImmutable();
    +          result.originalFuncNames_ = originalFuncNames_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.NodeDef.ExperimentalDebugInfo) {
    @@ -680,7 +664,7 @@ public Builder mergeFrom(org.tensorflow.proto.NodeDef.ExperimentalDebugInfo othe
             if (!other.originalNodeNames_.isEmpty()) {
               if (originalNodeNames_.isEmpty()) {
                 originalNodeNames_ = other.originalNodeNames_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ |= 0x00000001;
               } else {
                 ensureOriginalNodeNamesIsMutable();
                 originalNodeNames_.addAll(other.originalNodeNames_);
    @@ -690,7 +674,7 @@ public Builder mergeFrom(org.tensorflow.proto.NodeDef.ExperimentalDebugInfo othe
             if (!other.originalFuncNames_.isEmpty()) {
               if (originalFuncNames_.isEmpty()) {
                 originalFuncNames_ = other.originalFuncNames_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            bitField0_ |= 0x00000002;
               } else {
                 ensureOriginalFuncNamesIsMutable();
                 originalFuncNames_.addAll(other.originalFuncNames_);
    @@ -752,16 +736,18 @@ public Builder mergeFrom(
           }
           private int bitField0_;
     
    -      private com.google.protobuf.LazyStringList originalNodeNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +      private com.google.protobuf.LazyStringArrayList originalNodeNames_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           private void ensureOriginalNodeNamesIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    +        if (!originalNodeNames_.isModifiable()) {
               originalNodeNames_ = new com.google.protobuf.LazyStringArrayList(originalNodeNames_);
    -          bitField0_ |= 0x00000001;
    -         }
    +        }
    +        bitField0_ |= 0x00000001;
           }
           /**
            * 
            * Opaque string inserted into error messages created by the runtime.
    +       *
            * This is intended to store the list of names of the nodes from the
            * original graph that this node was derived. For example if this node, say
            * C, was result of a fusion of 2 nodes A and B, then 'original_node' would
    @@ -774,11 +760,13 @@ private void ensureOriginalNodeNamesIsMutable() {
            */
           public com.google.protobuf.ProtocolStringList
               getOriginalNodeNamesList() {
    -        return originalNodeNames_.getUnmodifiableView();
    +        originalNodeNames_.makeImmutable();
    +        return originalNodeNames_;
           }
           /**
            * 
            * Opaque string inserted into error messages created by the runtime.
    +       *
            * This is intended to store the list of names of the nodes from the
            * original graph that this node was derived. For example if this node, say
            * C, was result of a fusion of 2 nodes A and B, then 'original_node' would
    @@ -795,6 +783,7 @@ public int getOriginalNodeNamesCount() {
           /**
            * 
            * Opaque string inserted into error messages created by the runtime.
    +       *
            * This is intended to store the list of names of the nodes from the
            * original graph that this node was derived. For example if this node, say
            * C, was result of a fusion of 2 nodes A and B, then 'original_node' would
    @@ -812,6 +801,7 @@ public java.lang.String getOriginalNodeNames(int index) {
           /**
            * 
            * Opaque string inserted into error messages created by the runtime.
    +       *
            * This is intended to store the list of names of the nodes from the
            * original graph that this node was derived. For example if this node, say
            * C, was result of a fusion of 2 nodes A and B, then 'original_node' would
    @@ -830,6 +820,7 @@ public java.lang.String getOriginalNodeNames(int index) {
           /**
            * 
            * Opaque string inserted into error messages created by the runtime.
    +       *
            * This is intended to store the list of names of the nodes from the
            * original graph that this node was derived. For example if this node, say
            * C, was result of a fusion of 2 nodes A and B, then 'original_node' would
    @@ -844,17 +835,17 @@ public java.lang.String getOriginalNodeNames(int index) {
            */
           public Builder setOriginalNodeNames(
               int index, java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureOriginalNodeNamesIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureOriginalNodeNamesIsMutable();
             originalNodeNames_.set(index, value);
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
           /**
            * 
            * Opaque string inserted into error messages created by the runtime.
    +       *
            * This is intended to store the list of names of the nodes from the
            * original graph that this node was derived. For example if this node, say
            * C, was result of a fusion of 2 nodes A and B, then 'original_node' would
    @@ -868,17 +859,17 @@ public Builder setOriginalNodeNames(
            */
           public Builder addOriginalNodeNames(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureOriginalNodeNamesIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureOriginalNodeNamesIsMutable();
             originalNodeNames_.add(value);
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
           /**
            * 
            * Opaque string inserted into error messages created by the runtime.
    +       *
            * This is intended to store the list of names of the nodes from the
            * original graph that this node was derived. For example if this node, say
            * C, was result of a fusion of 2 nodes A and B, then 'original_node' would
    @@ -895,12 +886,14 @@ public Builder addAllOriginalNodeNames(
             ensureOriginalNodeNamesIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, originalNodeNames_);
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
           /**
            * 
            * Opaque string inserted into error messages created by the runtime.
    +       *
            * This is intended to store the list of names of the nodes from the
            * original graph that this node was derived. For example if this node, say
            * C, was result of a fusion of 2 nodes A and B, then 'original_node' would
    @@ -912,14 +905,16 @@ public Builder addAllOriginalNodeNames(
            * @return This builder for chaining.
            */
           public Builder clearOriginalNodeNames() {
    -        originalNodeNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        originalNodeNames_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
    +        bitField0_ = (bitField0_ & ~0x00000001);;
             onChanged();
             return this;
           }
           /**
            * 
            * Opaque string inserted into error messages created by the runtime.
    +       *
            * This is intended to store the list of names of the nodes from the
            * original graph that this node was derived. For example if this node, say
            * C, was result of a fusion of 2 nodes A and B, then 'original_node' would
    @@ -933,22 +928,22 @@ public Builder clearOriginalNodeNames() {
            */
           public Builder addOriginalNodeNamesBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             ensureOriginalNodeNamesIsMutable();
             originalNodeNames_.add(value);
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
     
    -      private com.google.protobuf.LazyStringList originalFuncNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +      private com.google.protobuf.LazyStringArrayList originalFuncNames_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           private void ensureOriginalFuncNamesIsMutable() {
    -        if (!((bitField0_ & 0x00000002) != 0)) {
    +        if (!originalFuncNames_.isModifiable()) {
               originalFuncNames_ = new com.google.protobuf.LazyStringArrayList(originalFuncNames_);
    -          bitField0_ |= 0x00000002;
    -         }
    +        }
    +        bitField0_ |= 0x00000002;
           }
           /**
            * 
    @@ -966,7 +961,8 @@ private void ensureOriginalFuncNamesIsMutable() {
            */
           public com.google.protobuf.ProtocolStringList
               getOriginalFuncNamesList() {
    -        return originalFuncNames_.getUnmodifiableView();
    +        originalFuncNames_.makeImmutable();
    +        return originalFuncNames_;
           }
           /**
            * 
    @@ -1040,11 +1036,10 @@ public java.lang.String getOriginalFuncNames(int index) {
            */
           public Builder setOriginalFuncNames(
               int index, java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureOriginalFuncNamesIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureOriginalFuncNamesIsMutable();
             originalFuncNames_.set(index, value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1065,11 +1060,10 @@ public Builder setOriginalFuncNames(
            */
           public Builder addOriginalFuncNames(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureOriginalFuncNamesIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureOriginalFuncNamesIsMutable();
             originalFuncNames_.add(value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1093,6 +1087,7 @@ public Builder addAllOriginalFuncNames(
             ensureOriginalFuncNamesIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, originalFuncNames_);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1111,8 +1106,9 @@ public Builder addAllOriginalFuncNames(
            * @return This builder for chaining.
            */
           public Builder clearOriginalFuncNames() {
    -        originalFuncNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        originalFuncNames_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
    +        bitField0_ = (bitField0_ & ~0x00000002);;
             onChanged();
             return this;
           }
    @@ -1133,27 +1129,14 @@ public Builder clearOriginalFuncNames() {
            */
           public Builder addOriginalFuncNamesBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             ensureOriginalFuncNamesIsMutable();
             originalFuncNames_.add(value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.NodeDef.ExperimentalDebugInfo)
         }
    @@ -1206,8 +1189,10 @@ public org.tensorflow.proto.NodeDef.ExperimentalDebugInfo getDefaultInstanceForT
     
       }
     
    +  private int bitField0_;
       public static final int NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object name_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object name_ = "";
       /**
        * 
        * The name given to this operator. Used for naming inputs,
    @@ -1257,7 +1242,8 @@ public java.lang.String getName() {
       }
     
       public static final int OP_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object op_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object op_ = "";
       /**
        * 
        * The operation name.  There may be custom parameters in attrs.
    @@ -1305,7 +1291,9 @@ public java.lang.String getOp() {
       }
     
       public static final int INPUT_FIELD_NUMBER = 3;
    -  private com.google.protobuf.LazyStringList input_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList input_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * Each input is "node:src_output" with "node" being a string name and
    @@ -1372,22 +1360,27 @@ public java.lang.String getInput(int index) {
       }
     
       public static final int DEVICE_FIELD_NUMBER = 4;
    -  private volatile java.lang.Object device_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object device_ = "";
       /**
        * 
        * A (possibly partial) specification for the device on which this
        * node should be placed.
        * The expected syntax for this string is as follows:
    +   *
        * DEVICE_SPEC ::= PARTIAL_SPEC
    +   *
        * PARTIAL_SPEC ::= ("/" CONSTRAINT) *
        * CONSTRAINT ::= ("job:" JOB_NAME)
    -   *              | ("replica:" [1-9][0-9]*)
    -   *              | ("task:" [1-9][0-9]*)
    -   *              | ("device:" [A-Za-z]* ":" ([1-9][0-9]* | "*") )
    +   * | ("replica:" [1-9][0-9]*)
    +   * | ("task:" [1-9][0-9]*)
    +   * | ("device:" [A-Za-z]* ":" ([1-9][0-9]* | "*") )
    +   *
        * Valid values for this string include:
        * * "/job:worker/replica:0/task:1/device:GPU:3"  (full specification)
        * * "/job:worker/device:GPU:3"                   (partial specification)
        * * ""                                    (no specification)
    +   *
        * If the constraints do not resolve to a single device (or if this
        * field is empty or not present), the runtime will attempt to
        * choose a device automatically.
    @@ -1414,16 +1407,20 @@ public java.lang.String getDevice() {
        * A (possibly partial) specification for the device on which this
        * node should be placed.
        * The expected syntax for this string is as follows:
    +   *
        * DEVICE_SPEC ::= PARTIAL_SPEC
    +   *
        * PARTIAL_SPEC ::= ("/" CONSTRAINT) *
        * CONSTRAINT ::= ("job:" JOB_NAME)
    -   *              | ("replica:" [1-9][0-9]*)
    -   *              | ("task:" [1-9][0-9]*)
    -   *              | ("device:" [A-Za-z]* ":" ([1-9][0-9]* | "*") )
    +   * | ("replica:" [1-9][0-9]*)
    +   * | ("task:" [1-9][0-9]*)
    +   * | ("device:" [A-Za-z]* ":" ([1-9][0-9]* | "*") )
    +   *
        * Valid values for this string include:
        * * "/job:worker/replica:0/task:1/device:GPU:3"  (full specification)
        * * "/job:worker/device:GPU:3"                   (partial specification)
        * * ""                                    (no specification)
    +   *
        * If the constraints do not resolve to a single device (or if this
        * field is empty or not present), the runtime will attempt to
        * choose a device automatically.
    @@ -1459,6 +1456,7 @@ private static final class AttrDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.MESSAGE,
                     org.tensorflow.proto.AttrValue.getDefaultInstance());
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.String, org.tensorflow.proto.AttrValue> attr_;
       private com.google.protobuf.MapField
    @@ -1469,7 +1467,6 @@ private static final class AttrDefaultEntryHolder {
         }
         return attr_;
       }
    -
       public int getAttrCount() {
         return internalGetAttr().getMap().size();
       }
    @@ -1491,7 +1488,6 @@ public int getAttrCount() {
        *
        * map<string, .tensorflow.AttrValue> attr = 5;
        */
    -
       @java.lang.Override
       public boolean containsAttr(
           java.lang.String key) {
    @@ -1525,7 +1521,6 @@ public java.util.Map getAttr()
        * map<string, .tensorflow.AttrValue> attr = 5;
        */
       @java.lang.Override
    -
       public java.util.Map getAttrMap() {
         return internalGetAttr().getMap();
       }
    @@ -1548,10 +1543,11 @@ public java.util.Map getAttrMa
        * map<string, .tensorflow.AttrValue> attr = 5;
        */
       @java.lang.Override
    -
    -  public org.tensorflow.proto.AttrValue getAttrOrDefault(
    +  public /* nullable */
    +org.tensorflow.proto.AttrValue getAttrOrDefault(
           java.lang.String key,
    -      org.tensorflow.proto.AttrValue defaultValue) {
    +      /* nullable */
    +org.tensorflow.proto.AttrValue defaultValue) {
         if (key == null) { throw new NullPointerException("map key"); }
         java.util.Map map =
             internalGetAttr().getMap();
    @@ -1576,7 +1572,6 @@ public org.tensorflow.proto.AttrValue getAttrOrDefault(
        * map<string, .tensorflow.AttrValue> attr = 5;
        */
       @java.lang.Override
    -
       public org.tensorflow.proto.AttrValue getAttrOrThrow(
           java.lang.String key) {
         if (key == null) { throw new NullPointerException("map key"); }
    @@ -1600,7 +1595,7 @@ public org.tensorflow.proto.AttrValue getAttrOrThrow(
        */
       @java.lang.Override
       public boolean hasExperimentalDebugInfo() {
    -    return experimentalDebugInfo_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -1623,7 +1618,7 @@ public org.tensorflow.proto.NodeDef.ExperimentalDebugInfo getExperimentalDebugIn
        */
       @java.lang.Override
       public org.tensorflow.proto.NodeDef.ExperimentalDebugInfoOrBuilder getExperimentalDebugInfoOrBuilder() {
    -    return getExperimentalDebugInfo();
    +    return experimentalDebugInfo_ == null ? org.tensorflow.proto.NodeDef.ExperimentalDebugInfo.getDefaultInstance() : experimentalDebugInfo_;
       }
     
       public static final int EXPERIMENTAL_TYPE_FIELD_NUMBER = 7;
    @@ -1641,7 +1636,7 @@ public org.tensorflow.proto.NodeDef.ExperimentalDebugInfoOrBuilder getExperiment
        */
       @java.lang.Override
       public boolean hasExperimentalType() {
    -    return experimentalType_ != null;
    +    return ((bitField0_ & 0x00000002) != 0);
       }
       /**
        * 
    @@ -1670,7 +1665,7 @@ public org.tensorflow.proto.FullTypeDef getExperimentalType() {
        */
       @java.lang.Override
       public org.tensorflow.proto.FullTypeDefOrBuilder getExperimentalTypeOrBuilder() {
    -    return getExperimentalType();
    +    return experimentalType_ == null ? org.tensorflow.proto.FullTypeDef.getDefaultInstance() : experimentalType_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -1687,28 +1682,28 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(op_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, op_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(op_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, op_);
         }
         for (int i = 0; i < input_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, input_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, input_.getRaw(i));
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(device_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 4, device_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(device_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 4, device_);
         }
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeStringMapTo(
             output,
             internalGetAttr(),
             AttrDefaultEntryHolder.defaultEntry,
             5);
    -    if (experimentalDebugInfo_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(6, getExperimentalDebugInfo());
         }
    -    if (experimentalType_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           output.writeMessage(7, getExperimentalType());
         }
         getUnknownFields().writeTo(output);
    @@ -1720,11 +1715,11 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(op_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, op_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(op_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, op_);
         }
         {
           int dataSize = 0;
    @@ -1734,8 +1729,8 @@ public int getSerializedSize() {
           size += dataSize;
           size += 1 * getInputList().size();
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(device_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, device_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(device_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(4, device_);
         }
         for (java.util.Map.Entry entry
              : internalGetAttr().getMap().entrySet()) {
    @@ -1747,11 +1742,11 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(5, attr__);
         }
    -    if (experimentalDebugInfo_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(6, getExperimentalDebugInfo());
         }
    -    if (experimentalType_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(7, getExperimentalType());
         }
    @@ -1862,39 +1857,41 @@ public static org.tensorflow.proto.NodeDef parseFrom(
       }
       public static org.tensorflow.proto.NodeDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.NodeDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.NodeDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.NodeDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.NodeDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.NodeDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -1914,7 +1911,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -1922,7 +1919,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.NodeDef}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.NodeDef)
           org.tensorflow.proto.NodeDefOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1931,7 +1928,7 @@ public static final class Builder extends
         }
     
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
             int number) {
           switch (number) {
             case 5:
    @@ -1942,7 +1939,7 @@ protected com.google.protobuf.MapField internalGetMapField(
           }
         }
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMutableMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(
             int number) {
           switch (number) {
             case 5:
    @@ -1953,7 +1950,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
           }
         }
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.NodeProto.internal_static_tensorflow_NodeDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -1962,36 +1959,39 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
     
         // Construct using org.tensorflow.proto.NodeDef.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getExperimentalDebugInfoFieldBuilder();
    +        getExperimentalTypeFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           name_ = "";
    -
           op_ = "";
    -
    -      input_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      input_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           device_ = "";
    -
           internalGetMutableAttr().clear();
    -      if (experimentalDebugInfoBuilder_ == null) {
    -        experimentalDebugInfo_ = null;
    -      } else {
    -        experimentalDebugInfo_ = null;
    +      experimentalDebugInfo_ = null;
    +      if (experimentalDebugInfoBuilder_ != null) {
    +        experimentalDebugInfoBuilder_.dispose();
             experimentalDebugInfoBuilder_ = null;
           }
    -      if (experimentalTypeBuilder_ == null) {
    -        experimentalType_ = null;
    -      } else {
    -        experimentalType_ = null;
    +      experimentalType_ = null;
    +      if (experimentalTypeBuilder_ != null) {
    +        experimentalTypeBuilder_.dispose();
             experimentalTypeBuilder_ = null;
           }
           return this;
    @@ -2020,63 +2020,45 @@ public org.tensorflow.proto.NodeDef build() {
         @java.lang.Override
         public org.tensorflow.proto.NodeDef buildPartial() {
           org.tensorflow.proto.NodeDef result = new org.tensorflow.proto.NodeDef(this);
    -      int from_bitField0_ = bitField0_;
    -      result.name_ = name_;
    -      result.op_ = op_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        input_ = input_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.input_ = input_;
    -      result.device_ = device_;
    -      result.attr_ = internalGetAttr();
    -      result.attr_.makeImmutable();
    -      if (experimentalDebugInfoBuilder_ == null) {
    -        result.experimentalDebugInfo_ = experimentalDebugInfo_;
    -      } else {
    -        result.experimentalDebugInfo_ = experimentalDebugInfoBuilder_.build();
    -      }
    -      if (experimentalTypeBuilder_ == null) {
    -        result.experimentalType_ = experimentalType_;
    -      } else {
    -        result.experimentalType_ = experimentalTypeBuilder_.build();
    -      }
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.NodeDef result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.name_ = name_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.op_ = op_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        input_.makeImmutable();
    +        result.input_ = input_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.device_ = device_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.attr_ = internalGetAttr().build(AttrDefaultEntryHolder.defaultEntry);
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.experimentalDebugInfo_ = experimentalDebugInfoBuilder_ == null
    +            ? experimentalDebugInfo_
    +            : experimentalDebugInfoBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000040) != 0)) {
    +        result.experimentalType_ = experimentalTypeBuilder_ == null
    +            ? experimentalType_
    +            : experimentalTypeBuilder_.build();
    +        to_bitField0_ |= 0x00000002;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.NodeDef) {
    @@ -2091,16 +2073,18 @@ public Builder mergeFrom(org.tensorflow.proto.NodeDef other) {
           if (other == org.tensorflow.proto.NodeDef.getDefaultInstance()) return this;
           if (!other.getName().isEmpty()) {
             name_ = other.name_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getOp().isEmpty()) {
             op_ = other.op_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (!other.input_.isEmpty()) {
             if (input_.isEmpty()) {
               input_ = other.input_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ |= 0x00000004;
             } else {
               ensureInputIsMutable();
               input_.addAll(other.input_);
    @@ -2109,10 +2093,12 @@ public Builder mergeFrom(org.tensorflow.proto.NodeDef other) {
           }
           if (!other.getDevice().isEmpty()) {
             device_ = other.device_;
    +        bitField0_ |= 0x00000008;
             onChanged();
           }
           internalGetMutableAttr().mergeFrom(
               other.internalGetAttr());
    +      bitField0_ |= 0x00000010;
           if (other.hasExperimentalDebugInfo()) {
             mergeExperimentalDebugInfo(other.getExperimentalDebugInfo());
           }
    @@ -2147,12 +2133,12 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   name_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   op_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
    @@ -2163,29 +2149,30 @@ public Builder mergeFrom(
                 } // case 26
                 case 34: {
                   device_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 34
                 case 42: {
                   com.google.protobuf.MapEntry
                   attr__ = input.readMessage(
                       AttrDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
    -              internalGetMutableAttr().getMutableMap().put(
    +              internalGetMutableAttr().ensureBuilderMap().put(
                       attr__.getKey(), attr__.getValue());
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 42
                 case 50: {
                   input.readMessage(
                       getExperimentalDebugInfoFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 50
                 case 58: {
                   input.readMessage(
                       getExperimentalTypeFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000040;
                   break;
                 } // case 58
                 default: {
    @@ -2264,11 +2251,9 @@ public java.lang.String getName() {
          */
         public Builder setName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -2283,8 +2268,8 @@ public Builder setName(
          * @return This builder for chaining.
          */
         public Builder clearName() {
    -      
           name_ = getDefaultInstance().getName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -2301,12 +2286,10 @@ public Builder clearName() {
          */
         public Builder setNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -2367,11 +2350,9 @@ public java.lang.String getOp() {
          */
         public Builder setOp(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           op_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -2385,8 +2366,8 @@ public Builder setOp(
          * @return This builder for chaining.
          */
         public Builder clearOp() {
    -      
           op_ = getDefaultInstance().getOp();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -2402,22 +2383,21 @@ public Builder clearOp() {
          */
         public Builder setOpBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           op_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.LazyStringList input_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList input_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureInputIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!input_.isModifiable()) {
             input_ = new com.google.protobuf.LazyStringArrayList(input_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      }
    +      bitField0_ |= 0x00000004;
         }
         /**
          * 
    @@ -2433,7 +2413,8 @@ private void ensureInputIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getInputList() {
    -      return input_.getUnmodifiableView();
    +      input_.makeImmutable();
    +      return input_;
         }
         /**
          * 
    @@ -2499,11 +2480,10 @@ public java.lang.String getInput(int index) {
          */
         public Builder setInput(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureInputIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureInputIsMutable();
           input_.set(index, value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -2522,11 +2502,10 @@ public Builder setInput(
          */
         public Builder addInput(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureInputIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureInputIsMutable();
           input_.add(value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -2548,6 +2527,7 @@ public Builder addAllInput(
           ensureInputIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, input_);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -2564,8 +2544,9 @@ public Builder addAllInput(
          * @return This builder for chaining.
          */
         public Builder clearInput() {
    -      input_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      input_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000004);;
           onChanged();
           return this;
         }
    @@ -2584,12 +2565,11 @@ public Builder clearInput() {
          */
         public Builder addInputBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureInputIsMutable();
           input_.add(value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -2600,16 +2580,20 @@ public Builder addInputBytes(
          * A (possibly partial) specification for the device on which this
          * node should be placed.
          * The expected syntax for this string is as follows:
    +     *
          * DEVICE_SPEC ::= PARTIAL_SPEC
    +     *
          * PARTIAL_SPEC ::= ("/" CONSTRAINT) *
          * CONSTRAINT ::= ("job:" JOB_NAME)
    -     *              | ("replica:" [1-9][0-9]*)
    -     *              | ("task:" [1-9][0-9]*)
    -     *              | ("device:" [A-Za-z]* ":" ([1-9][0-9]* | "*") )
    +     * | ("replica:" [1-9][0-9]*)
    +     * | ("task:" [1-9][0-9]*)
    +     * | ("device:" [A-Za-z]* ":" ([1-9][0-9]* | "*") )
    +     *
          * Valid values for this string include:
          * * "/job:worker/replica:0/task:1/device:GPU:3"  (full specification)
          * * "/job:worker/device:GPU:3"                   (partial specification)
          * * ""                                    (no specification)
    +     *
          * If the constraints do not resolve to a single device (or if this
          * field is empty or not present), the runtime will attempt to
          * choose a device automatically.
    @@ -2635,16 +2619,20 @@ public java.lang.String getDevice() {
          * A (possibly partial) specification for the device on which this
          * node should be placed.
          * The expected syntax for this string is as follows:
    +     *
          * DEVICE_SPEC ::= PARTIAL_SPEC
    +     *
          * PARTIAL_SPEC ::= ("/" CONSTRAINT) *
          * CONSTRAINT ::= ("job:" JOB_NAME)
    -     *              | ("replica:" [1-9][0-9]*)
    -     *              | ("task:" [1-9][0-9]*)
    -     *              | ("device:" [A-Za-z]* ":" ([1-9][0-9]* | "*") )
    +     * | ("replica:" [1-9][0-9]*)
    +     * | ("task:" [1-9][0-9]*)
    +     * | ("device:" [A-Za-z]* ":" ([1-9][0-9]* | "*") )
    +     *
          * Valid values for this string include:
          * * "/job:worker/replica:0/task:1/device:GPU:3"  (full specification)
          * * "/job:worker/device:GPU:3"                   (partial specification)
          * * ""                                    (no specification)
    +     *
          * If the constraints do not resolve to a single device (or if this
          * field is empty or not present), the runtime will attempt to
          * choose a device automatically.
    @@ -2671,16 +2659,20 @@ public java.lang.String getDevice() {
          * A (possibly partial) specification for the device on which this
          * node should be placed.
          * The expected syntax for this string is as follows:
    +     *
          * DEVICE_SPEC ::= PARTIAL_SPEC
    +     *
          * PARTIAL_SPEC ::= ("/" CONSTRAINT) *
          * CONSTRAINT ::= ("job:" JOB_NAME)
    -     *              | ("replica:" [1-9][0-9]*)
    -     *              | ("task:" [1-9][0-9]*)
    -     *              | ("device:" [A-Za-z]* ":" ([1-9][0-9]* | "*") )
    +     * | ("replica:" [1-9][0-9]*)
    +     * | ("task:" [1-9][0-9]*)
    +     * | ("device:" [A-Za-z]* ":" ([1-9][0-9]* | "*") )
    +     *
          * Valid values for this string include:
          * * "/job:worker/replica:0/task:1/device:GPU:3"  (full specification)
          * * "/job:worker/device:GPU:3"                   (partial specification)
          * * ""                                    (no specification)
    +     *
          * If the constraints do not resolve to a single device (or if this
          * field is empty or not present), the runtime will attempt to
          * choose a device automatically.
    @@ -2692,11 +2684,9 @@ public java.lang.String getDevice() {
          */
         public Builder setDevice(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           device_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -2705,16 +2695,20 @@ public Builder setDevice(
          * A (possibly partial) specification for the device on which this
          * node should be placed.
          * The expected syntax for this string is as follows:
    +     *
          * DEVICE_SPEC ::= PARTIAL_SPEC
    +     *
          * PARTIAL_SPEC ::= ("/" CONSTRAINT) *
          * CONSTRAINT ::= ("job:" JOB_NAME)
    -     *              | ("replica:" [1-9][0-9]*)
    -     *              | ("task:" [1-9][0-9]*)
    -     *              | ("device:" [A-Za-z]* ":" ([1-9][0-9]* | "*") )
    +     * | ("replica:" [1-9][0-9]*)
    +     * | ("task:" [1-9][0-9]*)
    +     * | ("device:" [A-Za-z]* ":" ([1-9][0-9]* | "*") )
    +     *
          * Valid values for this string include:
          * * "/job:worker/replica:0/task:1/device:GPU:3"  (full specification)
          * * "/job:worker/device:GPU:3"                   (partial specification)
          * * ""                                    (no specification)
    +     *
          * If the constraints do not resolve to a single device (or if this
          * field is empty or not present), the runtime will attempt to
          * choose a device automatically.
    @@ -2724,8 +2718,8 @@ public Builder setDevice(
          * @return This builder for chaining.
          */
         public Builder clearDevice() {
    -      
           device_ = getDefaultInstance().getDevice();
    +      bitField0_ = (bitField0_ & ~0x00000008);
           onChanged();
           return this;
         }
    @@ -2734,16 +2728,20 @@ public Builder clearDevice() {
          * A (possibly partial) specification for the device on which this
          * node should be placed.
          * The expected syntax for this string is as follows:
    +     *
          * DEVICE_SPEC ::= PARTIAL_SPEC
    +     *
          * PARTIAL_SPEC ::= ("/" CONSTRAINT) *
          * CONSTRAINT ::= ("job:" JOB_NAME)
    -     *              | ("replica:" [1-9][0-9]*)
    -     *              | ("task:" [1-9][0-9]*)
    -     *              | ("device:" [A-Za-z]* ":" ([1-9][0-9]* | "*") )
    +     * | ("replica:" [1-9][0-9]*)
    +     * | ("task:" [1-9][0-9]*)
    +     * | ("device:" [A-Za-z]* ":" ([1-9][0-9]* | "*") )
    +     *
          * Valid values for this string include:
          * * "/job:worker/replica:0/task:1/device:GPU:3"  (full specification)
          * * "/job:worker/device:GPU:3"                   (partial specification)
          * * ""                                    (no specification)
    +     *
          * If the constraints do not resolve to a single device (or if this
          * field is empty or not present), the runtime will attempt to
          * choose a device automatically.
    @@ -2755,41 +2753,48 @@ public Builder clearDevice() {
          */
         public Builder setDeviceBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           device_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.MapField<
    -        java.lang.String, org.tensorflow.proto.AttrValue> attr_;
    -    private com.google.protobuf.MapField
    -    internalGetAttr() {
    +    private static final class AttrConverter implements com.google.protobuf.MapFieldBuilder.Converter {
    +      @java.lang.Override
    +      public org.tensorflow.proto.AttrValue build(org.tensorflow.proto.AttrValueOrBuilder val) {
    +        if (val instanceof org.tensorflow.proto.AttrValue) { return (org.tensorflow.proto.AttrValue) val; }
    +        return ((org.tensorflow.proto.AttrValue.Builder) val).build();
    +      }
    +
    +      @java.lang.Override
    +      public com.google.protobuf.MapEntry defaultEntry() {
    +        return AttrDefaultEntryHolder.defaultEntry;
    +      }
    +    };
    +    private static final AttrConverter attrConverter = new AttrConverter();
    +
    +    private com.google.protobuf.MapFieldBuilder<
    +        java.lang.String, org.tensorflow.proto.AttrValueOrBuilder, org.tensorflow.proto.AttrValue, org.tensorflow.proto.AttrValue.Builder> attr_;
    +    private com.google.protobuf.MapFieldBuilder
    +        internalGetAttr() {
           if (attr_ == null) {
    -        return com.google.protobuf.MapField.emptyMapField(
    -            AttrDefaultEntryHolder.defaultEntry);
    +        return new com.google.protobuf.MapFieldBuilder<>(attrConverter);
           }
           return attr_;
         }
    -    private com.google.protobuf.MapField
    -    internalGetMutableAttr() {
    -      onChanged();;
    +    private com.google.protobuf.MapFieldBuilder
    +        internalGetMutableAttr() {
           if (attr_ == null) {
    -        attr_ = com.google.protobuf.MapField.newMapField(
    -            AttrDefaultEntryHolder.defaultEntry);
    -      }
    -      if (!attr_.isMutable()) {
    -        attr_ = attr_.copy();
    +        attr_ = new com.google.protobuf.MapFieldBuilder<>(attrConverter);
           }
    +      bitField0_ |= 0x00000010;
    +      onChanged();
           return attr_;
         }
    -
         public int getAttrCount() {
    -      return internalGetAttr().getMap().size();
    +      return internalGetAttr().ensureBuilderMap().size();
         }
         /**
          * 
    @@ -2809,12 +2814,11 @@ public int getAttrCount() {
          *
          * map<string, .tensorflow.AttrValue> attr = 5;
          */
    -
         @java.lang.Override
         public boolean containsAttr(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      return internalGetAttr().getMap().containsKey(key);
    +      return internalGetAttr().ensureBuilderMap().containsKey(key);
         }
         /**
          * Use {@link #getAttrMap()} instead.
    @@ -2843,9 +2847,8 @@ public java.util.Map getAttr()
          * map<string, .tensorflow.AttrValue> attr = 5;
          */
         @java.lang.Override
    -
         public java.util.Map getAttrMap() {
    -      return internalGetAttr().getMap();
    +      return internalGetAttr().getImmutableMap();
         }
         /**
          * 
    @@ -2866,14 +2869,14 @@ public java.util.Map getAttrMa
          * map<string, .tensorflow.AttrValue> attr = 5;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.AttrValue getAttrOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.AttrValue getAttrOrDefault(
             java.lang.String key,
    -        org.tensorflow.proto.AttrValue defaultValue) {
    +        /* nullable */
    +org.tensorflow.proto.AttrValue defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetAttr().getMap();
    -      return map.containsKey(key) ? map.get(key) : defaultValue;
    +      java.util.Map map = internalGetMutableAttr().ensureBuilderMap();
    +      return map.containsKey(key) ? attrConverter.build(map.get(key)) : defaultValue;
         }
         /**
          * 
    @@ -2894,21 +2897,18 @@ public org.tensorflow.proto.AttrValue getAttrOrDefault(
          * map<string, .tensorflow.AttrValue> attr = 5;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.AttrValue getAttrOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetAttr().getMap();
    +      java.util.Map map = internalGetMutableAttr().ensureBuilderMap();
           if (!map.containsKey(key)) {
             throw new java.lang.IllegalArgumentException();
           }
    -      return map.get(key);
    +      return attrConverter.build(map.get(key));
         }
    -
         public Builder clearAttr() {
    -      internalGetMutableAttr().getMutableMap()
    -          .clear();
    +      bitField0_ = (bitField0_ & ~0x00000010);
    +      internalGetMutableAttr().clear();
           return this;
         }
         /**
    @@ -2929,11 +2929,10 @@ public Builder clearAttr() {
          *
          * map<string, .tensorflow.AttrValue> attr = 5;
          */
    -
         public Builder removeAttr(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      internalGetMutableAttr().getMutableMap()
    +      internalGetMutableAttr().ensureBuilderMap()
               .remove(key);
           return this;
         }
    @@ -2942,8 +2941,9 @@ public Builder removeAttr(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableAttr() {
    -      return internalGetMutableAttr().getMutableMap();
    +        getMutableAttr() {
    +      bitField0_ |= 0x00000010;
    +      return internalGetMutableAttr().ensureMessageMap();
         }
         /**
          * 
    @@ -2967,12 +2967,10 @@ public Builder putAttr(
             java.lang.String key,
             org.tensorflow.proto.AttrValue value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    -      internalGetMutableAttr().getMutableMap()
    +      if (value == null) { throw new NullPointerException("map value"); }
    +      internalGetMutableAttr().ensureBuilderMap()
               .put(key, value);
    +      bitField0_ |= 0x00000010;
           return this;
         }
         /**
    @@ -2993,16 +2991,53 @@ public Builder putAttr(
          *
          * map<string, .tensorflow.AttrValue> attr = 5;
          */
    -
         public Builder putAllAttr(
             java.util.Map values) {
    -      internalGetMutableAttr().getMutableMap()
    +      for (java.util.Map.Entry e : values.entrySet()) {
    +        if (e.getKey() == null || e.getValue() == null) {
    +          throw new NullPointerException();
    +        }
    +      }
    +      internalGetMutableAttr().ensureBuilderMap()
               .putAll(values);
    +      bitField0_ |= 0x00000010;
           return this;
         }
    +    /**
    +     * 
    +     * Operation-specific graph-construction-time configuration.
    +     * Note that this should include all attrs defined in the
    +     * corresponding OpDef, including those with a value matching
    +     * the default -- this allows the default to change and makes
    +     * NodeDefs easier to interpret on their own.  However, if
    +     * an attr with a default is not specified in this list, the
    +     * default will be used.
    +     * The "names" (keys) must match the regexp "[a-z][a-z0-9_]+" (and
    +     * one of the names from the corresponding OpDef's attr field).
    +     * The values must have a type matching the corresponding OpDef
    +     * attr's type field.
    +     * TODO(josh11b): Add some examples here showing best practices.
    +     * 
    + * + * map<string, .tensorflow.AttrValue> attr = 5; + */ + public org.tensorflow.proto.AttrValue.Builder putAttrBuilderIfAbsent( + java.lang.String key) { + java.util.Map builderMap = internalGetMutableAttr().ensureBuilderMap(); + org.tensorflow.proto.AttrValueOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.AttrValue.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.AttrValue) { + entry = ((org.tensorflow.proto.AttrValue) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.AttrValue.Builder) entry; + } private org.tensorflow.proto.NodeDef.ExperimentalDebugInfo experimentalDebugInfo_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.NodeDef.ExperimentalDebugInfo, org.tensorflow.proto.NodeDef.ExperimentalDebugInfo.Builder, org.tensorflow.proto.NodeDef.ExperimentalDebugInfoOrBuilder> experimentalDebugInfoBuilder_; /** *
    @@ -3013,7 +3048,7 @@ public Builder putAllAttr(
          * @return Whether the experimentalDebugInfo field is set.
          */
         public boolean hasExperimentalDebugInfo() {
    -      return experimentalDebugInfoBuilder_ != null || experimentalDebugInfo_ != null;
    +      return ((bitField0_ & 0x00000020) != 0);
         }
         /**
          * 
    @@ -3043,11 +3078,11 @@ public Builder setExperimentalDebugInfo(org.tensorflow.proto.NodeDef.Experimenta
               throw new NullPointerException();
             }
             experimentalDebugInfo_ = value;
    -        onChanged();
           } else {
             experimentalDebugInfoBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000020;
    +      onChanged();
           return this;
         }
         /**
    @@ -3061,11 +3096,11 @@ public Builder setExperimentalDebugInfo(
             org.tensorflow.proto.NodeDef.ExperimentalDebugInfo.Builder builderForValue) {
           if (experimentalDebugInfoBuilder_ == null) {
             experimentalDebugInfo_ = builderForValue.build();
    -        onChanged();
           } else {
             experimentalDebugInfoBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000020;
    +      onChanged();
           return this;
         }
         /**
    @@ -3077,17 +3112,20 @@ public Builder setExperimentalDebugInfo(
          */
         public Builder mergeExperimentalDebugInfo(org.tensorflow.proto.NodeDef.ExperimentalDebugInfo value) {
           if (experimentalDebugInfoBuilder_ == null) {
    -        if (experimentalDebugInfo_ != null) {
    -          experimentalDebugInfo_ =
    -            org.tensorflow.proto.NodeDef.ExperimentalDebugInfo.newBuilder(experimentalDebugInfo_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000020) != 0) &&
    +          experimentalDebugInfo_ != null &&
    +          experimentalDebugInfo_ != org.tensorflow.proto.NodeDef.ExperimentalDebugInfo.getDefaultInstance()) {
    +          getExperimentalDebugInfoBuilder().mergeFrom(value);
             } else {
               experimentalDebugInfo_ = value;
             }
    -        onChanged();
           } else {
             experimentalDebugInfoBuilder_.mergeFrom(value);
           }
    -
    +      if (experimentalDebugInfo_ != null) {
    +        bitField0_ |= 0x00000020;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -3098,14 +3136,13 @@ public Builder mergeExperimentalDebugInfo(org.tensorflow.proto.NodeDef.Experimen
          * .tensorflow.NodeDef.ExperimentalDebugInfo experimental_debug_info = 6;
          */
         public Builder clearExperimentalDebugInfo() {
    -      if (experimentalDebugInfoBuilder_ == null) {
    -        experimentalDebugInfo_ = null;
    -        onChanged();
    -      } else {
    -        experimentalDebugInfo_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000020);
    +      experimentalDebugInfo_ = null;
    +      if (experimentalDebugInfoBuilder_ != null) {
    +        experimentalDebugInfoBuilder_.dispose();
             experimentalDebugInfoBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -3116,7 +3153,7 @@ public Builder clearExperimentalDebugInfo() {
          * .tensorflow.NodeDef.ExperimentalDebugInfo experimental_debug_info = 6;
          */
         public org.tensorflow.proto.NodeDef.ExperimentalDebugInfo.Builder getExperimentalDebugInfoBuilder() {
    -      
    +      bitField0_ |= 0x00000020;
           onChanged();
           return getExperimentalDebugInfoFieldBuilder().getBuilder();
         }
    @@ -3142,11 +3179,11 @@ public org.tensorflow.proto.NodeDef.ExperimentalDebugInfoOrBuilder getExperiment
          *
          * .tensorflow.NodeDef.ExperimentalDebugInfo experimental_debug_info = 6;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.NodeDef.ExperimentalDebugInfo, org.tensorflow.proto.NodeDef.ExperimentalDebugInfo.Builder, org.tensorflow.proto.NodeDef.ExperimentalDebugInfoOrBuilder> 
             getExperimentalDebugInfoFieldBuilder() {
           if (experimentalDebugInfoBuilder_ == null) {
    -        experimentalDebugInfoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        experimentalDebugInfoBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.NodeDef.ExperimentalDebugInfo, org.tensorflow.proto.NodeDef.ExperimentalDebugInfo.Builder, org.tensorflow.proto.NodeDef.ExperimentalDebugInfoOrBuilder>(
                     getExperimentalDebugInfo(),
                     getParentForChildren(),
    @@ -3157,7 +3194,7 @@ public org.tensorflow.proto.NodeDef.ExperimentalDebugInfoOrBuilder getExperiment
         }
     
         private org.tensorflow.proto.FullTypeDef experimentalType_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.FullTypeDef, org.tensorflow.proto.FullTypeDef.Builder, org.tensorflow.proto.FullTypeDefOrBuilder> experimentalTypeBuilder_;
         /**
          * 
    @@ -3171,7 +3208,7 @@ public org.tensorflow.proto.NodeDef.ExperimentalDebugInfoOrBuilder getExperiment
          * @return Whether the experimentalType field is set.
          */
         public boolean hasExperimentalType() {
    -      return experimentalTypeBuilder_ != null || experimentalType_ != null;
    +      return ((bitField0_ & 0x00000040) != 0);
         }
         /**
          * 
    @@ -3207,11 +3244,11 @@ public Builder setExperimentalType(org.tensorflow.proto.FullTypeDef value) {
               throw new NullPointerException();
             }
             experimentalType_ = value;
    -        onChanged();
           } else {
             experimentalTypeBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000040;
    +      onChanged();
           return this;
         }
         /**
    @@ -3228,11 +3265,11 @@ public Builder setExperimentalType(
             org.tensorflow.proto.FullTypeDef.Builder builderForValue) {
           if (experimentalTypeBuilder_ == null) {
             experimentalType_ = builderForValue.build();
    -        onChanged();
           } else {
             experimentalTypeBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000040;
    +      onChanged();
           return this;
         }
         /**
    @@ -3247,17 +3284,20 @@ public Builder setExperimentalType(
          */
         public Builder mergeExperimentalType(org.tensorflow.proto.FullTypeDef value) {
           if (experimentalTypeBuilder_ == null) {
    -        if (experimentalType_ != null) {
    -          experimentalType_ =
    -            org.tensorflow.proto.FullTypeDef.newBuilder(experimentalType_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000040) != 0) &&
    +          experimentalType_ != null &&
    +          experimentalType_ != org.tensorflow.proto.FullTypeDef.getDefaultInstance()) {
    +          getExperimentalTypeBuilder().mergeFrom(value);
             } else {
               experimentalType_ = value;
             }
    -        onChanged();
           } else {
             experimentalTypeBuilder_.mergeFrom(value);
           }
    -
    +      if (experimentalType_ != null) {
    +        bitField0_ |= 0x00000040;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -3271,14 +3311,13 @@ public Builder mergeExperimentalType(org.tensorflow.proto.FullTypeDef value) {
          * .tensorflow.FullTypeDef experimental_type = 7;
          */
         public Builder clearExperimentalType() {
    -      if (experimentalTypeBuilder_ == null) {
    -        experimentalType_ = null;
    -        onChanged();
    -      } else {
    -        experimentalType_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000040);
    +      experimentalType_ = null;
    +      if (experimentalTypeBuilder_ != null) {
    +        experimentalTypeBuilder_.dispose();
             experimentalTypeBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -3292,7 +3331,7 @@ public Builder clearExperimentalType() {
          * .tensorflow.FullTypeDef experimental_type = 7;
          */
         public org.tensorflow.proto.FullTypeDef.Builder getExperimentalTypeBuilder() {
    -      
    +      bitField0_ |= 0x00000040;
           onChanged();
           return getExperimentalTypeFieldBuilder().getBuilder();
         }
    @@ -3324,11 +3363,11 @@ public org.tensorflow.proto.FullTypeDefOrBuilder getExperimentalTypeOrBuilder()
          *
          * .tensorflow.FullTypeDef experimental_type = 7;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.FullTypeDef, org.tensorflow.proto.FullTypeDef.Builder, org.tensorflow.proto.FullTypeDefOrBuilder> 
             getExperimentalTypeFieldBuilder() {
           if (experimentalTypeBuilder_ == null) {
    -        experimentalTypeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        experimentalTypeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.FullTypeDef, org.tensorflow.proto.FullTypeDef.Builder, org.tensorflow.proto.FullTypeDefOrBuilder>(
                     getExperimentalType(),
                     getParentForChildren(),
    @@ -3337,18 +3376,6 @@ public org.tensorflow.proto.FullTypeDefOrBuilder getExperimentalTypeOrBuilder()
           }
           return experimentalTypeBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.NodeDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeDefOrBuilder.java
    index d45520f0666..481d28e251a 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/node_def.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -115,16 +117,20 @@ public interface NodeDefOrBuilder extends
        * A (possibly partial) specification for the device on which this
        * node should be placed.
        * The expected syntax for this string is as follows:
    +   *
        * DEVICE_SPEC ::= PARTIAL_SPEC
    +   *
        * PARTIAL_SPEC ::= ("/" CONSTRAINT) *
        * CONSTRAINT ::= ("job:" JOB_NAME)
    -   *              | ("replica:" [1-9][0-9]*)
    -   *              | ("task:" [1-9][0-9]*)
    -   *              | ("device:" [A-Za-z]* ":" ([1-9][0-9]* | "*") )
    +   * | ("replica:" [1-9][0-9]*)
    +   * | ("task:" [1-9][0-9]*)
    +   * | ("device:" [A-Za-z]* ":" ([1-9][0-9]* | "*") )
    +   *
        * Valid values for this string include:
        * * "/job:worker/replica:0/task:1/device:GPU:3"  (full specification)
        * * "/job:worker/device:GPU:3"                   (partial specification)
        * * ""                                    (no specification)
    +   *
        * If the constraints do not resolve to a single device (or if this
        * field is empty or not present), the runtime will attempt to
        * choose a device automatically.
    @@ -139,16 +145,20 @@ public interface NodeDefOrBuilder extends
        * A (possibly partial) specification for the device on which this
        * node should be placed.
        * The expected syntax for this string is as follows:
    +   *
        * DEVICE_SPEC ::= PARTIAL_SPEC
    +   *
        * PARTIAL_SPEC ::= ("/" CONSTRAINT) *
        * CONSTRAINT ::= ("job:" JOB_NAME)
    -   *              | ("replica:" [1-9][0-9]*)
    -   *              | ("task:" [1-9][0-9]*)
    -   *              | ("device:" [A-Za-z]* ":" ([1-9][0-9]* | "*") )
    +   * | ("replica:" [1-9][0-9]*)
    +   * | ("task:" [1-9][0-9]*)
    +   * | ("device:" [A-Za-z]* ":" ([1-9][0-9]* | "*") )
    +   *
        * Valid values for this string include:
        * * "/job:worker/replica:0/task:1/device:GPU:3"  (full specification)
        * * "/job:worker/device:GPU:3"                   (partial specification)
        * * ""                                    (no specification)
    +   *
        * If the constraints do not resolve to a single device (or if this
        * field is empty or not present), the runtime will attempt to
        * choose a device automatically.
    @@ -243,7 +253,6 @@ boolean containsAttr(
        *
        * map<string, .tensorflow.AttrValue> attr = 5;
        */
    -
       /* nullable */
     org.tensorflow.proto.AttrValue getAttrOrDefault(
           java.lang.String key,
    @@ -267,7 +276,6 @@ org.tensorflow.proto.AttrValue getAttrOrDefault(
        *
        * map<string, .tensorflow.AttrValue> attr = 5;
        */
    -
       org.tensorflow.proto.AttrValue getAttrOrThrow(
           java.lang.String key);
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeExecStats.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeExecStats.java
    index 1e8c3783451..64c5fad07c0 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeExecStats.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeExecStats.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/step_stats.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,12 +13,21 @@
      * Protobuf type {@code tensorflow.NodeExecStats}
      */
     public final class NodeExecStats extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.NodeExecStats)
         NodeExecStatsOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      NodeExecStats.class.getName());
    +  }
       // Use NodeExecStats.newBuilder() to construct.
    -  private NodeExecStats(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private NodeExecStats(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private NodeExecStats() {
    @@ -27,33 +38,23 @@ private NodeExecStats() {
         referencedTensor_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new NodeExecStats();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_NodeExecStats_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_NodeExecStats_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.NodeExecStats.class, org.tensorflow.proto.NodeExecStats.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int NODE_NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object nodeName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object nodeName_ = "";
       /**
        * 
        * TODO(tucker): Use some more compact form of node identity than
    @@ -105,7 +106,7 @@ public java.lang.String getNodeName() {
       }
     
       public static final int ALL_START_MICROS_FIELD_NUMBER = 2;
    -  private long allStartMicros_;
    +  private long allStartMicros_ = 0L;
       /**
        * int64 all_start_micros = 2;
        * @return The allStartMicros.
    @@ -116,7 +117,7 @@ public long getAllStartMicros() {
       }
     
       public static final int OP_START_REL_MICROS_FIELD_NUMBER = 3;
    -  private long opStartRelMicros_;
    +  private long opStartRelMicros_ = 0L;
       /**
        * int64 op_start_rel_micros = 3;
        * @return The opStartRelMicros.
    @@ -127,7 +128,7 @@ public long getOpStartRelMicros() {
       }
     
       public static final int OP_END_REL_MICROS_FIELD_NUMBER = 4;
    -  private long opEndRelMicros_;
    +  private long opEndRelMicros_ = 0L;
       /**
        * int64 op_end_rel_micros = 4;
        * @return The opEndRelMicros.
    @@ -138,7 +139,7 @@ public long getOpEndRelMicros() {
       }
     
       public static final int ALL_END_REL_MICROS_FIELD_NUMBER = 5;
    -  private long allEndRelMicros_;
    +  private long allEndRelMicros_ = 0L;
       /**
        * int64 all_end_rel_micros = 5;
        * @return The allEndRelMicros.
    @@ -149,6 +150,7 @@ public long getAllEndRelMicros() {
       }
     
       public static final int MEMORY_FIELD_NUMBER = 6;
    +  @SuppressWarnings("serial")
       private java.util.List memory_;
       /**
        * repeated .tensorflow.AllocatorMemoryUsed memory = 6;
    @@ -189,6 +191,7 @@ public org.tensorflow.proto.AllocatorMemoryUsedOrBuilder getMemoryOrBuilder(
       }
     
       public static final int OUTPUT_FIELD_NUMBER = 7;
    +  @SuppressWarnings("serial")
       private java.util.List output_;
       /**
        * repeated .tensorflow.NodeOutput output = 7;
    @@ -229,7 +232,8 @@ public org.tensorflow.proto.NodeOutputOrBuilder getOutputOrBuilder(
       }
     
       public static final int TIMELINE_LABEL_FIELD_NUMBER = 8;
    -  private volatile java.lang.Object timelineLabel_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object timelineLabel_ = "";
       /**
        * string timeline_label = 8;
        * @return The timelineLabel.
    @@ -267,7 +271,7 @@ public java.lang.String getTimelineLabel() {
       }
     
       public static final int SCHEDULED_MICROS_FIELD_NUMBER = 9;
    -  private long scheduledMicros_;
    +  private long scheduledMicros_ = 0L;
       /**
        * int64 scheduled_micros = 9;
        * @return The scheduledMicros.
    @@ -278,7 +282,7 @@ public long getScheduledMicros() {
       }
     
       public static final int THREAD_ID_FIELD_NUMBER = 10;
    -  private int threadId_;
    +  private int threadId_ = 0;
       /**
        * uint32 thread_id = 10;
        * @return The threadId.
    @@ -289,6 +293,7 @@ public int getThreadId() {
       }
     
       public static final int REFERENCED_TENSOR_FIELD_NUMBER = 11;
    +  @SuppressWarnings("serial")
       private java.util.List referencedTensor_;
       /**
        * repeated .tensorflow.AllocationDescription referenced_tensor = 11;
    @@ -336,7 +341,7 @@ public org.tensorflow.proto.AllocationDescriptionOrBuilder getReferencedTensorOr
        */
       @java.lang.Override
       public boolean hasMemoryStats() {
    -    return memoryStats_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * .tensorflow.MemoryStats memory_stats = 12;
    @@ -351,11 +356,11 @@ public org.tensorflow.proto.MemoryStats getMemoryStats() {
        */
       @java.lang.Override
       public org.tensorflow.proto.MemoryStatsOrBuilder getMemoryStatsOrBuilder() {
    -    return getMemoryStats();
    +    return memoryStats_ == null ? org.tensorflow.proto.MemoryStats.getDefaultInstance() : memoryStats_;
       }
     
       public static final int ALL_START_NANOS_FIELD_NUMBER = 13;
    -  private long allStartNanos_;
    +  private long allStartNanos_ = 0L;
       /**
        * int64 all_start_nanos = 13;
        * @return The allStartNanos.
    @@ -366,7 +371,7 @@ public long getAllStartNanos() {
       }
     
       public static final int OP_START_REL_NANOS_FIELD_NUMBER = 14;
    -  private long opStartRelNanos_;
    +  private long opStartRelNanos_ = 0L;
       /**
        * int64 op_start_rel_nanos = 14;
        * @return The opStartRelNanos.
    @@ -377,7 +382,7 @@ public long getOpStartRelNanos() {
       }
     
       public static final int OP_END_REL_NANOS_FIELD_NUMBER = 15;
    -  private long opEndRelNanos_;
    +  private long opEndRelNanos_ = 0L;
       /**
        * int64 op_end_rel_nanos = 15;
        * @return The opEndRelNanos.
    @@ -388,7 +393,7 @@ public long getOpEndRelNanos() {
       }
     
       public static final int ALL_END_REL_NANOS_FIELD_NUMBER = 16;
    -  private long allEndRelNanos_;
    +  private long allEndRelNanos_ = 0L;
       /**
        * int64 all_end_rel_nanos = 16;
        * @return The allEndRelNanos.
    @@ -399,7 +404,7 @@ public long getAllEndRelNanos() {
       }
     
       public static final int SCHEDULED_NANOS_FIELD_NUMBER = 17;
    -  private long scheduledNanos_;
    +  private long scheduledNanos_ = 0L;
       /**
        * int64 scheduled_nanos = 17;
        * @return The scheduledNanos.
    @@ -423,8 +428,8 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nodeName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, nodeName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(nodeName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, nodeName_);
         }
         if (allStartMicros_ != 0L) {
           output.writeInt64(2, allStartMicros_);
    @@ -444,8 +449,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         for (int i = 0; i < output_.size(); i++) {
           output.writeMessage(7, output_.get(i));
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(timelineLabel_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 8, timelineLabel_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(timelineLabel_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 8, timelineLabel_);
         }
         if (scheduledMicros_ != 0L) {
           output.writeInt64(9, scheduledMicros_);
    @@ -456,7 +461,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         for (int i = 0; i < referencedTensor_.size(); i++) {
           output.writeMessage(11, referencedTensor_.get(i));
         }
    -    if (memoryStats_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(12, getMemoryStats());
         }
         if (allStartNanos_ != 0L) {
    @@ -483,8 +488,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nodeName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, nodeName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(nodeName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, nodeName_);
         }
         if (allStartMicros_ != 0L) {
           size += com.google.protobuf.CodedOutputStream
    @@ -510,8 +515,8 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(7, output_.get(i));
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(timelineLabel_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, timelineLabel_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(timelineLabel_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(8, timelineLabel_);
         }
         if (scheduledMicros_ != 0L) {
           size += com.google.protobuf.CodedOutputStream
    @@ -525,7 +530,7 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(11, referencedTensor_.get(i));
         }
    -    if (memoryStats_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(12, getMemoryStats());
         }
    @@ -703,39 +708,41 @@ public static org.tensorflow.proto.NodeExecStats parseFrom(
       }
       public static org.tensorflow.proto.NodeExecStats parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.NodeExecStats parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.NodeExecStats parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.NodeExecStats parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.NodeExecStats parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.NodeExecStats parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -755,7 +762,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -767,7 +774,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.NodeExecStats}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.NodeExecStats)
           org.tensorflow.proto.NodeExecStatsOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -776,7 +783,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_NodeExecStats_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -785,70 +792,66 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.NodeExecStats.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getMemoryFieldBuilder();
    +        getOutputFieldBuilder();
    +        getReferencedTensorFieldBuilder();
    +        getMemoryStatsFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           nodeName_ = "";
    -
           allStartMicros_ = 0L;
    -
           opStartRelMicros_ = 0L;
    -
           opEndRelMicros_ = 0L;
    -
           allEndRelMicros_ = 0L;
    -
           if (memoryBuilder_ == null) {
             memory_ = java.util.Collections.emptyList();
           } else {
             memory_ = null;
             memoryBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000020);
           if (outputBuilder_ == null) {
             output_ = java.util.Collections.emptyList();
           } else {
             output_ = null;
             outputBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000002);
    +      bitField0_ = (bitField0_ & ~0x00000040);
           timelineLabel_ = "";
    -
           scheduledMicros_ = 0L;
    -
           threadId_ = 0;
    -
           if (referencedTensorBuilder_ == null) {
             referencedTensor_ = java.util.Collections.emptyList();
           } else {
             referencedTensor_ = null;
             referencedTensorBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000004);
    -      if (memoryStatsBuilder_ == null) {
    -        memoryStats_ = null;
    -      } else {
    -        memoryStats_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000400);
    +      memoryStats_ = null;
    +      if (memoryStatsBuilder_ != null) {
    +        memoryStatsBuilder_.dispose();
             memoryStatsBuilder_ = null;
           }
           allStartNanos_ = 0L;
    -
           opStartRelNanos_ = 0L;
    -
           opEndRelNanos_ = 0L;
    -
           allEndRelNanos_ = 0L;
    -
           scheduledNanos_ = 0L;
    -
           return this;
         }
     
    @@ -875,88 +878,93 @@ public org.tensorflow.proto.NodeExecStats build() {
         @java.lang.Override
         public org.tensorflow.proto.NodeExecStats buildPartial() {
           org.tensorflow.proto.NodeExecStats result = new org.tensorflow.proto.NodeExecStats(this);
    -      int from_bitField0_ = bitField0_;
    -      result.nodeName_ = nodeName_;
    -      result.allStartMicros_ = allStartMicros_;
    -      result.opStartRelMicros_ = opStartRelMicros_;
    -      result.opEndRelMicros_ = opEndRelMicros_;
    -      result.allEndRelMicros_ = allEndRelMicros_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.NodeExecStats result) {
           if (memoryBuilder_ == null) {
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((bitField0_ & 0x00000020) != 0)) {
               memory_ = java.util.Collections.unmodifiableList(memory_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000020);
             }
             result.memory_ = memory_;
           } else {
             result.memory_ = memoryBuilder_.build();
           }
           if (outputBuilder_ == null) {
    -        if (((bitField0_ & 0x00000002) != 0)) {
    +        if (((bitField0_ & 0x00000040) != 0)) {
               output_ = java.util.Collections.unmodifiableList(output_);
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          bitField0_ = (bitField0_ & ~0x00000040);
             }
             result.output_ = output_;
           } else {
             result.output_ = outputBuilder_.build();
           }
    -      result.timelineLabel_ = timelineLabel_;
    -      result.scheduledMicros_ = scheduledMicros_;
    -      result.threadId_ = threadId_;
           if (referencedTensorBuilder_ == null) {
    -        if (((bitField0_ & 0x00000004) != 0)) {
    +        if (((bitField0_ & 0x00000400) != 0)) {
               referencedTensor_ = java.util.Collections.unmodifiableList(referencedTensor_);
    -          bitField0_ = (bitField0_ & ~0x00000004);
    +          bitField0_ = (bitField0_ & ~0x00000400);
             }
             result.referencedTensor_ = referencedTensor_;
           } else {
             result.referencedTensor_ = referencedTensorBuilder_.build();
           }
    -      if (memoryStatsBuilder_ == null) {
    -        result.memoryStats_ = memoryStats_;
    -      } else {
    -        result.memoryStats_ = memoryStatsBuilder_.build();
    -      }
    -      result.allStartNanos_ = allStartNanos_;
    -      result.opStartRelNanos_ = opStartRelNanos_;
    -      result.opEndRelNanos_ = opEndRelNanos_;
    -      result.allEndRelNanos_ = allEndRelNanos_;
    -      result.scheduledNanos_ = scheduledNanos_;
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.NodeExecStats result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.nodeName_ = nodeName_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.allStartMicros_ = allStartMicros_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.opStartRelMicros_ = opStartRelMicros_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.opEndRelMicros_ = opEndRelMicros_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.allEndRelMicros_ = allEndRelMicros_;
    +      }
    +      if (((from_bitField0_ & 0x00000080) != 0)) {
    +        result.timelineLabel_ = timelineLabel_;
    +      }
    +      if (((from_bitField0_ & 0x00000100) != 0)) {
    +        result.scheduledMicros_ = scheduledMicros_;
    +      }
    +      if (((from_bitField0_ & 0x00000200) != 0)) {
    +        result.threadId_ = threadId_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000800) != 0)) {
    +        result.memoryStats_ = memoryStatsBuilder_ == null
    +            ? memoryStats_
    +            : memoryStatsBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00001000) != 0)) {
    +        result.allStartNanos_ = allStartNanos_;
    +      }
    +      if (((from_bitField0_ & 0x00002000) != 0)) {
    +        result.opStartRelNanos_ = opStartRelNanos_;
    +      }
    +      if (((from_bitField0_ & 0x00004000) != 0)) {
    +        result.opEndRelNanos_ = opEndRelNanos_;
    +      }
    +      if (((from_bitField0_ & 0x00008000) != 0)) {
    +        result.allEndRelNanos_ = allEndRelNanos_;
    +      }
    +      if (((from_bitField0_ & 0x00010000) != 0)) {
    +        result.scheduledNanos_ = scheduledNanos_;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.NodeExecStats) {
    @@ -971,6 +979,7 @@ public Builder mergeFrom(org.tensorflow.proto.NodeExecStats other) {
           if (other == org.tensorflow.proto.NodeExecStats.getDefaultInstance()) return this;
           if (!other.getNodeName().isEmpty()) {
             nodeName_ = other.nodeName_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (other.getAllStartMicros() != 0L) {
    @@ -989,7 +998,7 @@ public Builder mergeFrom(org.tensorflow.proto.NodeExecStats other) {
             if (!other.memory_.isEmpty()) {
               if (memory_.isEmpty()) {
                 memory_ = other.memory_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000020);
               } else {
                 ensureMemoryIsMutable();
                 memory_.addAll(other.memory_);
    @@ -1002,9 +1011,9 @@ public Builder mergeFrom(org.tensorflow.proto.NodeExecStats other) {
                 memoryBuilder_.dispose();
                 memoryBuilder_ = null;
                 memory_ = other.memory_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000020);
                 memoryBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getMemoryFieldBuilder() : null;
               } else {
                 memoryBuilder_.addAllMessages(other.memory_);
    @@ -1015,7 +1024,7 @@ public Builder mergeFrom(org.tensorflow.proto.NodeExecStats other) {
             if (!other.output_.isEmpty()) {
               if (output_.isEmpty()) {
                 output_ = other.output_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            bitField0_ = (bitField0_ & ~0x00000040);
               } else {
                 ensureOutputIsMutable();
                 output_.addAll(other.output_);
    @@ -1028,9 +1037,9 @@ public Builder mergeFrom(org.tensorflow.proto.NodeExecStats other) {
                 outputBuilder_.dispose();
                 outputBuilder_ = null;
                 output_ = other.output_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            bitField0_ = (bitField0_ & ~0x00000040);
                 outputBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getOutputFieldBuilder() : null;
               } else {
                 outputBuilder_.addAllMessages(other.output_);
    @@ -1039,6 +1048,7 @@ public Builder mergeFrom(org.tensorflow.proto.NodeExecStats other) {
           }
           if (!other.getTimelineLabel().isEmpty()) {
             timelineLabel_ = other.timelineLabel_;
    +        bitField0_ |= 0x00000080;
             onChanged();
           }
           if (other.getScheduledMicros() != 0L) {
    @@ -1051,7 +1061,7 @@ public Builder mergeFrom(org.tensorflow.proto.NodeExecStats other) {
             if (!other.referencedTensor_.isEmpty()) {
               if (referencedTensor_.isEmpty()) {
                 referencedTensor_ = other.referencedTensor_;
    -            bitField0_ = (bitField0_ & ~0x00000004);
    +            bitField0_ = (bitField0_ & ~0x00000400);
               } else {
                 ensureReferencedTensorIsMutable();
                 referencedTensor_.addAll(other.referencedTensor_);
    @@ -1064,9 +1074,9 @@ public Builder mergeFrom(org.tensorflow.proto.NodeExecStats other) {
                 referencedTensorBuilder_.dispose();
                 referencedTensorBuilder_ = null;
                 referencedTensor_ = other.referencedTensor_;
    -            bitField0_ = (bitField0_ & ~0x00000004);
    +            bitField0_ = (bitField0_ & ~0x00000400);
                 referencedTensorBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getReferencedTensorFieldBuilder() : null;
               } else {
                 referencedTensorBuilder_.addAllMessages(other.referencedTensor_);
    @@ -1119,27 +1129,27 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   nodeName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 16: {
                   allStartMicros_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 case 24: {
                   opStartRelMicros_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 24
                 case 32: {
                   opEndRelMicros_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 32
                 case 40: {
                   allEndRelMicros_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 40
                 case 50: {
    @@ -1170,17 +1180,17 @@ public Builder mergeFrom(
                 } // case 58
                 case 66: {
                   timelineLabel_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000080;
                   break;
                 } // case 66
                 case 72: {
                   scheduledMicros_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000100;
                   break;
                 } // case 72
                 case 80: {
                   threadId_ = input.readUInt32();
    -
    +              bitField0_ |= 0x00000200;
                   break;
                 } // case 80
                 case 90: {
    @@ -1200,32 +1210,32 @@ public Builder mergeFrom(
                   input.readMessage(
                       getMemoryStatsFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000800;
                   break;
                 } // case 98
                 case 104: {
                   allStartNanos_ = input.readInt64();
    -
    +              bitField0_ |= 0x00001000;
                   break;
                 } // case 104
                 case 112: {
                   opStartRelNanos_ = input.readInt64();
    -
    +              bitField0_ |= 0x00002000;
                   break;
                 } // case 112
                 case 120: {
                   opEndRelNanos_ = input.readInt64();
    -
    +              bitField0_ |= 0x00004000;
                   break;
                 } // case 120
                 case 128: {
                   allEndRelNanos_ = input.readInt64();
    -
    +              bitField0_ |= 0x00008000;
                   break;
                 } // case 128
                 case 136: {
                   scheduledNanos_ = input.readInt64();
    -
    +              bitField0_ |= 0x00010000;
                   break;
                 } // case 136
                 default: {
    @@ -1307,11 +1317,9 @@ public java.lang.String getNodeName() {
          */
         public Builder setNodeName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           nodeName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1327,8 +1335,8 @@ public Builder setNodeName(
          * @return This builder for chaining.
          */
         public Builder clearNodeName() {
    -      
           nodeName_ = getDefaultInstance().getNodeName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -1346,12 +1354,10 @@ public Builder clearNodeName() {
          */
         public Builder setNodeNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           nodeName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1371,8 +1377,9 @@ public long getAllStartMicros() {
          * @return This builder for chaining.
          */
         public Builder setAllStartMicros(long value) {
    -      
    +
           allStartMicros_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1381,7 +1388,7 @@ public Builder setAllStartMicros(long value) {
          * @return This builder for chaining.
          */
         public Builder clearAllStartMicros() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           allStartMicros_ = 0L;
           onChanged();
           return this;
    @@ -1402,8 +1409,9 @@ public long getOpStartRelMicros() {
          * @return This builder for chaining.
          */
         public Builder setOpStartRelMicros(long value) {
    -      
    +
           opStartRelMicros_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1412,7 +1420,7 @@ public Builder setOpStartRelMicros(long value) {
          * @return This builder for chaining.
          */
         public Builder clearOpStartRelMicros() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           opStartRelMicros_ = 0L;
           onChanged();
           return this;
    @@ -1433,8 +1441,9 @@ public long getOpEndRelMicros() {
          * @return This builder for chaining.
          */
         public Builder setOpEndRelMicros(long value) {
    -      
    +
           opEndRelMicros_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1443,7 +1452,7 @@ public Builder setOpEndRelMicros(long value) {
          * @return This builder for chaining.
          */
         public Builder clearOpEndRelMicros() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           opEndRelMicros_ = 0L;
           onChanged();
           return this;
    @@ -1464,8 +1473,9 @@ public long getAllEndRelMicros() {
          * @return This builder for chaining.
          */
         public Builder setAllEndRelMicros(long value) {
    -      
    +
           allEndRelMicros_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1474,7 +1484,7 @@ public Builder setAllEndRelMicros(long value) {
          * @return This builder for chaining.
          */
         public Builder clearAllEndRelMicros() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000010);
           allEndRelMicros_ = 0L;
           onChanged();
           return this;
    @@ -1483,13 +1493,13 @@ public Builder clearAllEndRelMicros() {
         private java.util.List memory_ =
           java.util.Collections.emptyList();
         private void ensureMemoryIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!((bitField0_ & 0x00000020) != 0)) {
             memory_ = new java.util.ArrayList(memory_);
    -        bitField0_ |= 0x00000001;
    +        bitField0_ |= 0x00000020;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.AllocatorMemoryUsed, org.tensorflow.proto.AllocatorMemoryUsed.Builder, org.tensorflow.proto.AllocatorMemoryUsedOrBuilder> memoryBuilder_;
     
         /**
    @@ -1635,7 +1645,7 @@ public Builder addAllMemory(
         public Builder clearMemory() {
           if (memoryBuilder_ == null) {
             memory_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000020);
             onChanged();
           } else {
             memoryBuilder_.clear();
    @@ -1705,14 +1715,14 @@ public org.tensorflow.proto.AllocatorMemoryUsed.Builder addMemoryBuilder(
              getMemoryBuilderList() {
           return getMemoryFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.AllocatorMemoryUsed, org.tensorflow.proto.AllocatorMemoryUsed.Builder, org.tensorflow.proto.AllocatorMemoryUsedOrBuilder> 
             getMemoryFieldBuilder() {
           if (memoryBuilder_ == null) {
    -        memoryBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        memoryBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.AllocatorMemoryUsed, org.tensorflow.proto.AllocatorMemoryUsed.Builder, org.tensorflow.proto.AllocatorMemoryUsedOrBuilder>(
                     memory_,
    -                ((bitField0_ & 0x00000001) != 0),
    +                ((bitField0_ & 0x00000020) != 0),
                     getParentForChildren(),
                     isClean());
             memory_ = null;
    @@ -1723,13 +1733,13 @@ public org.tensorflow.proto.AllocatorMemoryUsed.Builder addMemoryBuilder(
         private java.util.List output_ =
           java.util.Collections.emptyList();
         private void ensureOutputIsMutable() {
    -      if (!((bitField0_ & 0x00000002) != 0)) {
    +      if (!((bitField0_ & 0x00000040) != 0)) {
             output_ = new java.util.ArrayList(output_);
    -        bitField0_ |= 0x00000002;
    +        bitField0_ |= 0x00000040;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.NodeOutput, org.tensorflow.proto.NodeOutput.Builder, org.tensorflow.proto.NodeOutputOrBuilder> outputBuilder_;
     
         /**
    @@ -1875,7 +1885,7 @@ public Builder addAllOutput(
         public Builder clearOutput() {
           if (outputBuilder_ == null) {
             output_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        bitField0_ = (bitField0_ & ~0x00000040);
             onChanged();
           } else {
             outputBuilder_.clear();
    @@ -1945,14 +1955,14 @@ public org.tensorflow.proto.NodeOutput.Builder addOutputBuilder(
              getOutputBuilderList() {
           return getOutputFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.NodeOutput, org.tensorflow.proto.NodeOutput.Builder, org.tensorflow.proto.NodeOutputOrBuilder> 
             getOutputFieldBuilder() {
           if (outputBuilder_ == null) {
    -        outputBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        outputBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.NodeOutput, org.tensorflow.proto.NodeOutput.Builder, org.tensorflow.proto.NodeOutputOrBuilder>(
                     output_,
    -                ((bitField0_ & 0x00000002) != 0),
    +                ((bitField0_ & 0x00000040) != 0),
                     getParentForChildren(),
                     isClean());
             output_ = null;
    @@ -2001,11 +2011,9 @@ public java.lang.String getTimelineLabel() {
          */
         public Builder setTimelineLabel(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           timelineLabel_ = value;
    +      bitField0_ |= 0x00000080;
           onChanged();
           return this;
         }
    @@ -2014,8 +2022,8 @@ public Builder setTimelineLabel(
          * @return This builder for chaining.
          */
         public Builder clearTimelineLabel() {
    -      
           timelineLabel_ = getDefaultInstance().getTimelineLabel();
    +      bitField0_ = (bitField0_ & ~0x00000080);
           onChanged();
           return this;
         }
    @@ -2026,12 +2034,10 @@ public Builder clearTimelineLabel() {
          */
         public Builder setTimelineLabelBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           timelineLabel_ = value;
    +      bitField0_ |= 0x00000080;
           onChanged();
           return this;
         }
    @@ -2051,8 +2057,9 @@ public long getScheduledMicros() {
          * @return This builder for chaining.
          */
         public Builder setScheduledMicros(long value) {
    -      
    +
           scheduledMicros_ = value;
    +      bitField0_ |= 0x00000100;
           onChanged();
           return this;
         }
    @@ -2061,7 +2068,7 @@ public Builder setScheduledMicros(long value) {
          * @return This builder for chaining.
          */
         public Builder clearScheduledMicros() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000100);
           scheduledMicros_ = 0L;
           onChanged();
           return this;
    @@ -2082,8 +2089,9 @@ public int getThreadId() {
          * @return This builder for chaining.
          */
         public Builder setThreadId(int value) {
    -      
    +
           threadId_ = value;
    +      bitField0_ |= 0x00000200;
           onChanged();
           return this;
         }
    @@ -2092,7 +2100,7 @@ public Builder setThreadId(int value) {
          * @return This builder for chaining.
          */
         public Builder clearThreadId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000200);
           threadId_ = 0;
           onChanged();
           return this;
    @@ -2101,13 +2109,13 @@ public Builder clearThreadId() {
         private java.util.List referencedTensor_ =
           java.util.Collections.emptyList();
         private void ensureReferencedTensorIsMutable() {
    -      if (!((bitField0_ & 0x00000004) != 0)) {
    +      if (!((bitField0_ & 0x00000400) != 0)) {
             referencedTensor_ = new java.util.ArrayList(referencedTensor_);
    -        bitField0_ |= 0x00000004;
    +        bitField0_ |= 0x00000400;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.AllocationDescription, org.tensorflow.proto.AllocationDescription.Builder, org.tensorflow.proto.AllocationDescriptionOrBuilder> referencedTensorBuilder_;
     
         /**
    @@ -2253,7 +2261,7 @@ public Builder addAllReferencedTensor(
         public Builder clearReferencedTensor() {
           if (referencedTensorBuilder_ == null) {
             referencedTensor_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000004);
    +        bitField0_ = (bitField0_ & ~0x00000400);
             onChanged();
           } else {
             referencedTensorBuilder_.clear();
    @@ -2323,14 +2331,14 @@ public org.tensorflow.proto.AllocationDescription.Builder addReferencedTensorBui
              getReferencedTensorBuilderList() {
           return getReferencedTensorFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.AllocationDescription, org.tensorflow.proto.AllocationDescription.Builder, org.tensorflow.proto.AllocationDescriptionOrBuilder> 
             getReferencedTensorFieldBuilder() {
           if (referencedTensorBuilder_ == null) {
    -        referencedTensorBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        referencedTensorBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.AllocationDescription, org.tensorflow.proto.AllocationDescription.Builder, org.tensorflow.proto.AllocationDescriptionOrBuilder>(
                     referencedTensor_,
    -                ((bitField0_ & 0x00000004) != 0),
    +                ((bitField0_ & 0x00000400) != 0),
                     getParentForChildren(),
                     isClean());
             referencedTensor_ = null;
    @@ -2339,14 +2347,14 @@ public org.tensorflow.proto.AllocationDescription.Builder addReferencedTensorBui
         }
     
         private org.tensorflow.proto.MemoryStats memoryStats_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.MemoryStats, org.tensorflow.proto.MemoryStats.Builder, org.tensorflow.proto.MemoryStatsOrBuilder> memoryStatsBuilder_;
         /**
          * .tensorflow.MemoryStats memory_stats = 12;
          * @return Whether the memoryStats field is set.
          */
         public boolean hasMemoryStats() {
    -      return memoryStatsBuilder_ != null || memoryStats_ != null;
    +      return ((bitField0_ & 0x00000800) != 0);
         }
         /**
          * .tensorflow.MemoryStats memory_stats = 12;
    @@ -2368,11 +2376,11 @@ public Builder setMemoryStats(org.tensorflow.proto.MemoryStats value) {
               throw new NullPointerException();
             }
             memoryStats_ = value;
    -        onChanged();
           } else {
             memoryStatsBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000800;
    +      onChanged();
           return this;
         }
         /**
    @@ -2382,11 +2390,11 @@ public Builder setMemoryStats(
             org.tensorflow.proto.MemoryStats.Builder builderForValue) {
           if (memoryStatsBuilder_ == null) {
             memoryStats_ = builderForValue.build();
    -        onChanged();
           } else {
             memoryStatsBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000800;
    +      onChanged();
           return this;
         }
         /**
    @@ -2394,38 +2402,40 @@ public Builder setMemoryStats(
          */
         public Builder mergeMemoryStats(org.tensorflow.proto.MemoryStats value) {
           if (memoryStatsBuilder_ == null) {
    -        if (memoryStats_ != null) {
    -          memoryStats_ =
    -            org.tensorflow.proto.MemoryStats.newBuilder(memoryStats_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000800) != 0) &&
    +          memoryStats_ != null &&
    +          memoryStats_ != org.tensorflow.proto.MemoryStats.getDefaultInstance()) {
    +          getMemoryStatsBuilder().mergeFrom(value);
             } else {
               memoryStats_ = value;
             }
    -        onChanged();
           } else {
             memoryStatsBuilder_.mergeFrom(value);
           }
    -
    +      if (memoryStats_ != null) {
    +        bitField0_ |= 0x00000800;
    +        onChanged();
    +      }
           return this;
         }
         /**
          * .tensorflow.MemoryStats memory_stats = 12;
          */
         public Builder clearMemoryStats() {
    -      if (memoryStatsBuilder_ == null) {
    -        memoryStats_ = null;
    -        onChanged();
    -      } else {
    -        memoryStats_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000800);
    +      memoryStats_ = null;
    +      if (memoryStatsBuilder_ != null) {
    +        memoryStatsBuilder_.dispose();
             memoryStatsBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
          * .tensorflow.MemoryStats memory_stats = 12;
          */
         public org.tensorflow.proto.MemoryStats.Builder getMemoryStatsBuilder() {
    -      
    +      bitField0_ |= 0x00000800;
           onChanged();
           return getMemoryStatsFieldBuilder().getBuilder();
         }
    @@ -2443,11 +2453,11 @@ public org.tensorflow.proto.MemoryStatsOrBuilder getMemoryStatsOrBuilder() {
         /**
          * .tensorflow.MemoryStats memory_stats = 12;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.MemoryStats, org.tensorflow.proto.MemoryStats.Builder, org.tensorflow.proto.MemoryStatsOrBuilder> 
             getMemoryStatsFieldBuilder() {
           if (memoryStatsBuilder_ == null) {
    -        memoryStatsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        memoryStatsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.MemoryStats, org.tensorflow.proto.MemoryStats.Builder, org.tensorflow.proto.MemoryStatsOrBuilder>(
                     getMemoryStats(),
                     getParentForChildren(),
    @@ -2472,8 +2482,9 @@ public long getAllStartNanos() {
          * @return This builder for chaining.
          */
         public Builder setAllStartNanos(long value) {
    -      
    +
           allStartNanos_ = value;
    +      bitField0_ |= 0x00001000;
           onChanged();
           return this;
         }
    @@ -2482,7 +2493,7 @@ public Builder setAllStartNanos(long value) {
          * @return This builder for chaining.
          */
         public Builder clearAllStartNanos() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00001000);
           allStartNanos_ = 0L;
           onChanged();
           return this;
    @@ -2503,8 +2514,9 @@ public long getOpStartRelNanos() {
          * @return This builder for chaining.
          */
         public Builder setOpStartRelNanos(long value) {
    -      
    +
           opStartRelNanos_ = value;
    +      bitField0_ |= 0x00002000;
           onChanged();
           return this;
         }
    @@ -2513,7 +2525,7 @@ public Builder setOpStartRelNanos(long value) {
          * @return This builder for chaining.
          */
         public Builder clearOpStartRelNanos() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00002000);
           opStartRelNanos_ = 0L;
           onChanged();
           return this;
    @@ -2534,8 +2546,9 @@ public long getOpEndRelNanos() {
          * @return This builder for chaining.
          */
         public Builder setOpEndRelNanos(long value) {
    -      
    +
           opEndRelNanos_ = value;
    +      bitField0_ |= 0x00004000;
           onChanged();
           return this;
         }
    @@ -2544,7 +2557,7 @@ public Builder setOpEndRelNanos(long value) {
          * @return This builder for chaining.
          */
         public Builder clearOpEndRelNanos() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00004000);
           opEndRelNanos_ = 0L;
           onChanged();
           return this;
    @@ -2565,8 +2578,9 @@ public long getAllEndRelNanos() {
          * @return This builder for chaining.
          */
         public Builder setAllEndRelNanos(long value) {
    -      
    +
           allEndRelNanos_ = value;
    +      bitField0_ |= 0x00008000;
           onChanged();
           return this;
         }
    @@ -2575,7 +2589,7 @@ public Builder setAllEndRelNanos(long value) {
          * @return This builder for chaining.
          */
         public Builder clearAllEndRelNanos() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00008000);
           allEndRelNanos_ = 0L;
           onChanged();
           return this;
    @@ -2596,8 +2610,9 @@ public long getScheduledNanos() {
          * @return This builder for chaining.
          */
         public Builder setScheduledNanos(long value) {
    -      
    +
           scheduledNanos_ = value;
    +      bitField0_ |= 0x00010000;
           onChanged();
           return this;
         }
    @@ -2606,23 +2621,11 @@ public Builder setScheduledNanos(long value) {
          * @return This builder for chaining.
          */
         public Builder clearScheduledNanos() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00010000);
           scheduledNanos_ = 0L;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.NodeExecStats)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeExecStatsOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeExecStatsOrBuilder.java
    index 69f96e57ac1..96407c0f8eb 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeExecStatsOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeExecStatsOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/step_stats.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeOutput.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeOutput.java
    index b5899cd827f..d7d647f0d7c 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeOutput.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeOutput.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/step_stats.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,44 +13,42 @@
      * Protobuf type {@code tensorflow.NodeOutput}
      */
     public final class NodeOutput extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.NodeOutput)
         NodeOutputOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      NodeOutput.class.getName());
    +  }
       // Use NodeOutput.newBuilder() to construct.
    -  private NodeOutput(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private NodeOutput(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private NodeOutput() {
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new NodeOutput();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_NodeOutput_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_NodeOutput_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.NodeOutput.class, org.tensorflow.proto.NodeOutput.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int SLOT_FIELD_NUMBER = 1;
    -  private int slot_;
    +  private int slot_ = 0;
       /**
        * int32 slot = 1;
        * @return The slot.
    @@ -66,7 +66,7 @@ public int getSlot() {
        */
       @java.lang.Override
       public boolean hasTensorDescription() {
    -    return tensorDescription_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * .tensorflow.TensorDescription tensor_description = 3;
    @@ -81,7 +81,7 @@ public org.tensorflow.proto.TensorDescription getTensorDescription() {
        */
       @java.lang.Override
       public org.tensorflow.proto.TensorDescriptionOrBuilder getTensorDescriptionOrBuilder() {
    -    return getTensorDescription();
    +    return tensorDescription_ == null ? org.tensorflow.proto.TensorDescription.getDefaultInstance() : tensorDescription_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -101,7 +101,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (slot_ != 0) {
           output.writeInt32(1, slot_);
         }
    -    if (tensorDescription_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(3, getTensorDescription());
         }
         getUnknownFields().writeTo(output);
    @@ -117,7 +117,7 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeInt32Size(1, slot_);
         }
    -    if (tensorDescription_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(3, getTensorDescription());
         }
    @@ -199,39 +199,41 @@ public static org.tensorflow.proto.NodeOutput parseFrom(
       }
       public static org.tensorflow.proto.NodeOutput parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.NodeOutput parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.NodeOutput parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.NodeOutput parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.NodeOutput parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.NodeOutput parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -251,7 +253,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -263,7 +265,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.NodeOutput}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.NodeOutput)
           org.tensorflow.proto.NodeOutputOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -272,7 +274,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_NodeOutput_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -281,23 +283,28 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.NodeOutput.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getTensorDescriptionFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           slot_ = 0;
    -
    -      if (tensorDescriptionBuilder_ == null) {
    -        tensorDescription_ = null;
    -      } else {
    -        tensorDescription_ = null;
    +      tensorDescription_ = null;
    +      if (tensorDescriptionBuilder_ != null) {
    +        tensorDescriptionBuilder_.dispose();
             tensorDescriptionBuilder_ = null;
           }
           return this;
    @@ -326,48 +333,26 @@ public org.tensorflow.proto.NodeOutput build() {
         @java.lang.Override
         public org.tensorflow.proto.NodeOutput buildPartial() {
           org.tensorflow.proto.NodeOutput result = new org.tensorflow.proto.NodeOutput(this);
    -      result.slot_ = slot_;
    -      if (tensorDescriptionBuilder_ == null) {
    -        result.tensorDescription_ = tensorDescription_;
    -      } else {
    -        result.tensorDescription_ = tensorDescriptionBuilder_.build();
    -      }
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.NodeOutput result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.slot_ = slot_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.tensorDescription_ = tensorDescriptionBuilder_ == null
    +            ? tensorDescription_
    +            : tensorDescriptionBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.NodeOutput) {
    @@ -414,14 +399,14 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   slot_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 26: {
                   input.readMessage(
                       getTensorDescriptionFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 26
                 default: {
    @@ -439,6 +424,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private int slot_ ;
         /**
    @@ -455,8 +441,9 @@ public int getSlot() {
          * @return This builder for chaining.
          */
         public Builder setSlot(int value) {
    -      
    +
           slot_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -465,21 +452,21 @@ public Builder setSlot(int value) {
          * @return This builder for chaining.
          */
         public Builder clearSlot() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           slot_ = 0;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.TensorDescription tensorDescription_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorDescription, org.tensorflow.proto.TensorDescription.Builder, org.tensorflow.proto.TensorDescriptionOrBuilder> tensorDescriptionBuilder_;
         /**
          * .tensorflow.TensorDescription tensor_description = 3;
          * @return Whether the tensorDescription field is set.
          */
         public boolean hasTensorDescription() {
    -      return tensorDescriptionBuilder_ != null || tensorDescription_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * .tensorflow.TensorDescription tensor_description = 3;
    @@ -501,11 +488,11 @@ public Builder setTensorDescription(org.tensorflow.proto.TensorDescription value
               throw new NullPointerException();
             }
             tensorDescription_ = value;
    -        onChanged();
           } else {
             tensorDescriptionBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -515,11 +502,11 @@ public Builder setTensorDescription(
             org.tensorflow.proto.TensorDescription.Builder builderForValue) {
           if (tensorDescriptionBuilder_ == null) {
             tensorDescription_ = builderForValue.build();
    -        onChanged();
           } else {
             tensorDescriptionBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -527,38 +514,40 @@ public Builder setTensorDescription(
          */
         public Builder mergeTensorDescription(org.tensorflow.proto.TensorDescription value) {
           if (tensorDescriptionBuilder_ == null) {
    -        if (tensorDescription_ != null) {
    -          tensorDescription_ =
    -            org.tensorflow.proto.TensorDescription.newBuilder(tensorDescription_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000002) != 0) &&
    +          tensorDescription_ != null &&
    +          tensorDescription_ != org.tensorflow.proto.TensorDescription.getDefaultInstance()) {
    +          getTensorDescriptionBuilder().mergeFrom(value);
             } else {
               tensorDescription_ = value;
             }
    -        onChanged();
           } else {
             tensorDescriptionBuilder_.mergeFrom(value);
           }
    -
    +      if (tensorDescription_ != null) {
    +        bitField0_ |= 0x00000002;
    +        onChanged();
    +      }
           return this;
         }
         /**
          * .tensorflow.TensorDescription tensor_description = 3;
          */
         public Builder clearTensorDescription() {
    -      if (tensorDescriptionBuilder_ == null) {
    -        tensorDescription_ = null;
    -        onChanged();
    -      } else {
    -        tensorDescription_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      tensorDescription_ = null;
    +      if (tensorDescriptionBuilder_ != null) {
    +        tensorDescriptionBuilder_.dispose();
             tensorDescriptionBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
          * .tensorflow.TensorDescription tensor_description = 3;
          */
         public org.tensorflow.proto.TensorDescription.Builder getTensorDescriptionBuilder() {
    -      
    +      bitField0_ |= 0x00000002;
           onChanged();
           return getTensorDescriptionFieldBuilder().getBuilder();
         }
    @@ -576,11 +565,11 @@ public org.tensorflow.proto.TensorDescriptionOrBuilder getTensorDescriptionOrBui
         /**
          * .tensorflow.TensorDescription tensor_description = 3;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorDescription, org.tensorflow.proto.TensorDescription.Builder, org.tensorflow.proto.TensorDescriptionOrBuilder> 
             getTensorDescriptionFieldBuilder() {
           if (tensorDescriptionBuilder_ == null) {
    -        tensorDescriptionBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        tensorDescriptionBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorDescription, org.tensorflow.proto.TensorDescription.Builder, org.tensorflow.proto.TensorDescriptionOrBuilder>(
                     getTensorDescription(),
                     getParentForChildren(),
    @@ -589,18 +578,6 @@ public org.tensorflow.proto.TensorDescriptionOrBuilder getTensorDescriptionOrBui
           }
           return tensorDescriptionBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.NodeOutput)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeOutputOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeOutputOrBuilder.java
    index cf84ea50f58..544c48d05df 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeOutputOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeOutputOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/step_stats.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeProto.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeProto.java
    index 9799c5cc513..8e3f1a3aed9 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeProto.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/NodeProto.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/node_def.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class NodeProto {
       private NodeProto() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      NodeProto.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,17 +28,17 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_NodeDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_NodeDef_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_NodeDef_AttrEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_NodeDef_AttrEntry_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_NodeDef_ExperimentalDebugInfo_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_NodeDef_ExperimentalDebugInfo_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -65,21 +76,22 @@ public static void registerAllExtensions(
         internal_static_tensorflow_NodeDef_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_NodeDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_NodeDef_descriptor,
             new java.lang.String[] { "Name", "Op", "Input", "Device", "Attr", "ExperimentalDebugInfo", "ExperimentalType", });
         internal_static_tensorflow_NodeDef_AttrEntry_descriptor =
           internal_static_tensorflow_NodeDef_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_NodeDef_AttrEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_NodeDef_AttrEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_NodeDef_ExperimentalDebugInfo_descriptor =
           internal_static_tensorflow_NodeDef_descriptor.getNestedTypes().get(1);
         internal_static_tensorflow_NodeDef_ExperimentalDebugInfo_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_NodeDef_ExperimentalDebugInfo_descriptor,
             new java.lang.String[] { "OriginalNodeNames", "OriginalFuncNames", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.AttrValueProtos.getDescriptor();
         org.tensorflow.proto.FullTypeProtos.getDescriptor();
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDef.java
    index 6e4dbde8067..e24a3dd5e36 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDef.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDef.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/op_def.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -13,43 +15,41 @@
      * Protobuf type {@code tensorflow.OpDef}
      */
     public final class OpDef extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.OpDef)
         OpDefOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      OpDef.class.getName());
    +  }
       // Use OpDef.newBuilder() to construct.
    -  private OpDef(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private OpDef(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private OpDef() {
         name_ = "";
         inputArg_ = java.util.Collections.emptyList();
         outputArg_ = java.util.Collections.emptyList();
    -    controlOutput_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    controlOutput_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         attr_ = java.util.Collections.emptyList();
         summary_ = "";
         description_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new OpDef();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.OpDefProtos.internal_static_tensorflow_OpDef_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.OpDefProtos.internal_static_tensorflow_OpDef_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -105,13 +105,13 @@ public interface ArgDefOrBuilder extends
          * Describes the type of one or more tensors that are accepted/produced
          * by this input/output arg.  The only legal combinations are:
          * * For a single tensor: either the "type" field is set or the
    -     *   "type_attr" field is set to the name of an attr with type "type".
    +     * "type_attr" field is set to the name of an attr with type "type".
          * * For a sequence of tensors with the same type: the "number_attr"
    -     *   field will be set to the name of an attr with type "int", and
    -     *   either the "type" or "type_attr" field will be set as for
    -     *   single tensors.
    +     * field will be set to the name of an attr with type "int", and
    +     * either the "type" or "type_attr" field will be set as for
    +     * single tensors.
          * * For a sequence of tensors, the "type_list_attr" field will be set
    -     *   to the name of an attr with type "list(type)".
    +     * to the name of an attr with type "list(type)".
          * 
    * * .tensorflow.DataType type = 3; @@ -123,13 +123,13 @@ public interface ArgDefOrBuilder extends * Describes the type of one or more tensors that are accepted/produced * by this input/output arg. The only legal combinations are: * * For a single tensor: either the "type" field is set or the - * "type_attr" field is set to the name of an attr with type "type". + * "type_attr" field is set to the name of an attr with type "type". * * For a sequence of tensors with the same type: the "number_attr" - * field will be set to the name of an attr with type "int", and - * either the "type" or "type_attr" field will be set as for - * single tensors. + * field will be set to the name of an attr with type "int", and + * either the "type" or "type_attr" field will be set as for + * single tensors. * * For a sequence of tensors, the "type_list_attr" field will be set - * to the name of an attr with type "list(type)". + * to the name of an attr with type "list(type)". *
    * * .tensorflow.DataType type = 3; @@ -246,7 +246,7 @@ org.tensorflow.proto.ResourceHandleProto.DtypeAndShapeOrBuilder getHandleDataOrB /** *
          * For inputs: if true, the inputs are required to be refs.
    -     *   By default, inputs can be either refs or non-refs.
    +     * By default, inputs can be either refs or non-refs.
          * For outputs: if true, outputs are refs, otherwise they are not.
          * 
    * @@ -262,6 +262,7 @@ org.tensorflow.proto.ResourceHandleProto.DtypeAndShapeOrBuilder getHandleDataOrB * etc. into a unified representation. * This declaration may contain non-concrete types (for example, * Tensor<TypeVar<'T'>> is a valid type declaration. + * * Note: this is a transient field. The long-term aim is to represent the * entire OpDef as a single type: a callable. In that context, this field is * just the type of a single argument. @@ -278,6 +279,7 @@ org.tensorflow.proto.ResourceHandleProto.DtypeAndShapeOrBuilder getHandleDataOrB * etc. into a unified representation. * This declaration may contain non-concrete types (for example, * Tensor<TypeVar<'T'>> is a valid type declaration. + * * Note: this is a transient field. The long-term aim is to represent the * entire OpDef as a single type: a callable. In that context, this field is * just the type of a single argument. @@ -294,6 +296,7 @@ org.tensorflow.proto.ResourceHandleProto.DtypeAndShapeOrBuilder getHandleDataOrB * etc. into a unified representation. * This declaration may contain non-concrete types (for example, * Tensor<TypeVar<'T'>> is a valid type declaration. + * * Note: this is a transient field. The long-term aim is to represent the * entire OpDef as a single type: a callable. In that context, this field is * just the type of a single argument. @@ -311,12 +314,21 @@ org.tensorflow.proto.ResourceHandleProto.DtypeAndShapeOrBuilder getHandleDataOrB * Protobuf type {@code tensorflow.OpDef.ArgDef} */ public static final class ArgDef extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.OpDef.ArgDef) ArgDefOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + ArgDef.class.getName()); + } // Use ArgDef.newBuilder() to construct. - private ArgDef(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private ArgDef(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private ArgDef() { @@ -329,33 +341,23 @@ private ArgDef() { handleData_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new ArgDef(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.OpDefProtos.internal_static_tensorflow_OpDef_ArgDef_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.OpDefProtos.internal_static_tensorflow_OpDef_ArgDef_fieldAccessorTable .ensureFieldAccessorsInitialized( org.tensorflow.proto.OpDef.ArgDef.class, org.tensorflow.proto.OpDef.ArgDef.Builder.class); } + private int bitField0_; public static final int NAME_FIELD_NUMBER = 1; - private volatile java.lang.Object name_; + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; /** *
          * Name for the input/output.  Should match the regexp "[a-z][a-z0-9_]*".
    @@ -401,7 +403,8 @@ public java.lang.String getName() {
         }
     
         public static final int DESCRIPTION_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object description_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object description_ = "";
         /**
          * 
          * Human readable description.
    @@ -447,19 +450,19 @@ public java.lang.String getDescription() {
         }
     
         public static final int TYPE_FIELD_NUMBER = 3;
    -    private int type_;
    +    private int type_ = 0;
         /**
          * 
          * Describes the type of one or more tensors that are accepted/produced
          * by this input/output arg.  The only legal combinations are:
          * * For a single tensor: either the "type" field is set or the
    -     *   "type_attr" field is set to the name of an attr with type "type".
    +     * "type_attr" field is set to the name of an attr with type "type".
          * * For a sequence of tensors with the same type: the "number_attr"
    -     *   field will be set to the name of an attr with type "int", and
    -     *   either the "type" or "type_attr" field will be set as for
    -     *   single tensors.
    +     * field will be set to the name of an attr with type "int", and
    +     * either the "type" or "type_attr" field will be set as for
    +     * single tensors.
          * * For a sequence of tensors, the "type_list_attr" field will be set
    -     *   to the name of an attr with type "list(type)".
    +     * to the name of an attr with type "list(type)".
          * 
    * * .tensorflow.DataType type = 3; @@ -473,26 +476,26 @@ public java.lang.String getDescription() { * Describes the type of one or more tensors that are accepted/produced * by this input/output arg. The only legal combinations are: * * For a single tensor: either the "type" field is set or the - * "type_attr" field is set to the name of an attr with type "type". + * "type_attr" field is set to the name of an attr with type "type". * * For a sequence of tensors with the same type: the "number_attr" - * field will be set to the name of an attr with type "int", and - * either the "type" or "type_attr" field will be set as for - * single tensors. + * field will be set to the name of an attr with type "int", and + * either the "type" or "type_attr" field will be set as for + * single tensors. * * For a sequence of tensors, the "type_list_attr" field will be set - * to the name of an attr with type "list(type)". + * to the name of an attr with type "list(type)". *
    * * .tensorflow.DataType type = 3; * @return The type. */ @java.lang.Override public org.tensorflow.proto.DataType getType() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(type_); + org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(type_); return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result; } public static final int TYPE_ATTR_FIELD_NUMBER = 4; - private volatile java.lang.Object typeAttr_; + @SuppressWarnings("serial") + private volatile java.lang.Object typeAttr_ = ""; /** *
          * if specified, attr must have type "type"
    @@ -538,7 +541,8 @@ public java.lang.String getTypeAttr() {
         }
     
         public static final int NUMBER_ATTR_FIELD_NUMBER = 5;
    -    private volatile java.lang.Object numberAttr_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object numberAttr_ = "";
         /**
          * 
          * if specified, attr must have type "int"
    @@ -584,7 +588,8 @@ public java.lang.String getNumberAttr() {
         }
     
         public static final int TYPE_LIST_ATTR_FIELD_NUMBER = 6;
    -    private volatile java.lang.Object typeListAttr_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object typeListAttr_ = "";
         /**
          * 
          * If specified, attr must have type "list(type)", and none of
    @@ -632,6 +637,7 @@ public java.lang.String getTypeListAttr() {
         }
     
         public static final int HANDLE_DATA_FIELD_NUMBER = 7;
    +    @SuppressWarnings("serial")
         private java.util.List handleData_;
         /**
          * 
    @@ -692,11 +698,11 @@ public org.tensorflow.proto.ResourceHandleProto.DtypeAndShapeOrBuilder getHandle
         }
     
         public static final int IS_REF_FIELD_NUMBER = 16;
    -    private boolean isRef_;
    +    private boolean isRef_ = false;
         /**
          * 
          * For inputs: if true, the inputs are required to be refs.
    -     *   By default, inputs can be either refs or non-refs.
    +     * By default, inputs can be either refs or non-refs.
          * For outputs: if true, outputs are refs, otherwise they are not.
          * 
    * @@ -717,6 +723,7 @@ public boolean getIsRef() { * etc. into a unified representation. * This declaration may contain non-concrete types (for example, * Tensor<TypeVar<'T'>> is a valid type declaration. + * * Note: this is a transient field. The long-term aim is to represent the * entire OpDef as a single type: a callable. In that context, this field is * just the type of a single argument. @@ -727,7 +734,7 @@ public boolean getIsRef() { */ @java.lang.Override public boolean hasExperimentalFullType() { - return experimentalFullType_ != null; + return ((bitField0_ & 0x00000001) != 0); } /** *
    @@ -736,6 +743,7 @@ public boolean hasExperimentalFullType() {
          * etc. into a unified representation.
          * This declaration may contain non-concrete types (for example,
          * Tensor<TypeVar<'T'>> is a valid type declaration.
    +     *
          * Note: this is a transient field. The long-term aim is to represent the
          * entire OpDef as a single type: a callable. In that context, this field is
          * just the type of a single argument.
    @@ -755,6 +763,7 @@ public org.tensorflow.proto.FullTypeDef getExperimentalFullType() {
          * etc. into a unified representation.
          * This declaration may contain non-concrete types (for example,
          * Tensor<TypeVar<'T'>> is a valid type declaration.
    +     *
          * Note: this is a transient field. The long-term aim is to represent the
          * entire OpDef as a single type: a callable. In that context, this field is
          * just the type of a single argument.
    @@ -764,7 +773,7 @@ public org.tensorflow.proto.FullTypeDef getExperimentalFullType() {
          */
         @java.lang.Override
         public org.tensorflow.proto.FullTypeDefOrBuilder getExperimentalFullTypeOrBuilder() {
    -      return getExperimentalFullType();
    +      return experimentalFullType_ == null ? org.tensorflow.proto.FullTypeDef.getDefaultInstance() : experimentalFullType_;
         }
     
         private byte memoizedIsInitialized = -1;
    @@ -781,23 +790,23 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, description_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, description_);
           }
           if (type_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) {
             output.writeEnum(3, type_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(typeAttr_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, typeAttr_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(typeAttr_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 4, typeAttr_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(numberAttr_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, numberAttr_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(numberAttr_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 5, numberAttr_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(typeListAttr_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 6, typeListAttr_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(typeListAttr_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 6, typeListAttr_);
           }
           for (int i = 0; i < handleData_.size(); i++) {
             output.writeMessage(7, handleData_.get(i));
    @@ -805,7 +814,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (isRef_ != false) {
             output.writeBool(16, isRef_);
           }
    -      if (experimentalFullType_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(17, getExperimentalFullType());
           }
           getUnknownFields().writeTo(output);
    @@ -817,24 +826,24 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, description_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, description_);
           }
           if (type_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) {
             size += com.google.protobuf.CodedOutputStream
               .computeEnumSize(3, type_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(typeAttr_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, typeAttr_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(typeAttr_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(4, typeAttr_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(numberAttr_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, numberAttr_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(numberAttr_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(5, numberAttr_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(typeListAttr_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, typeListAttr_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(typeListAttr_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(6, typeListAttr_);
           }
           for (int i = 0; i < handleData_.size(); i++) {
             size += com.google.protobuf.CodedOutputStream
    @@ -844,7 +853,7 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeBoolSize(16, isRef_);
           }
    -      if (experimentalFullType_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(17, getExperimentalFullType());
           }
    @@ -956,39 +965,41 @@ public static org.tensorflow.proto.OpDef.ArgDef parseFrom(
         }
         public static org.tensorflow.proto.OpDef.ArgDef parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.OpDef.ArgDef parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.OpDef.ArgDef parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.OpDef.ArgDef parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.OpDef.ArgDef parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.OpDef.ArgDef parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -1008,7 +1019,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -1020,7 +1031,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.OpDef.ArgDef}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.OpDef.ArgDef)
             org.tensorflow.proto.OpDef.ArgDefOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1029,7 +1040,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.OpDefProtos.internal_static_tensorflow_OpDef_ArgDef_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -1038,42 +1049,42 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.OpDef.ArgDef.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getHandleDataFieldBuilder();
    +          getExperimentalFullTypeFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             name_ = "";
    -
             description_ = "";
    -
             type_ = 0;
    -
             typeAttr_ = "";
    -
             numberAttr_ = "";
    -
             typeListAttr_ = "";
    -
             if (handleDataBuilder_ == null) {
               handleData_ = java.util.Collections.emptyList();
             } else {
               handleData_ = null;
               handleDataBuilder_.clear();
             }
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000040);
             isRef_ = false;
    -
    -        if (experimentalFullTypeBuilder_ == null) {
    -          experimentalFullType_ = null;
    -        } else {
    -          experimentalFullType_ = null;
    +        experimentalFullType_ = null;
    +        if (experimentalFullTypeBuilder_ != null) {
    +          experimentalFullTypeBuilder_.dispose();
               experimentalFullTypeBuilder_ = null;
             }
             return this;
    @@ -1102,64 +1113,57 @@ public org.tensorflow.proto.OpDef.ArgDef build() {
           @java.lang.Override
           public org.tensorflow.proto.OpDef.ArgDef buildPartial() {
             org.tensorflow.proto.OpDef.ArgDef result = new org.tensorflow.proto.OpDef.ArgDef(this);
    -        int from_bitField0_ = bitField0_;
    -        result.name_ = name_;
    -        result.description_ = description_;
    -        result.type_ = type_;
    -        result.typeAttr_ = typeAttr_;
    -        result.numberAttr_ = numberAttr_;
    -        result.typeListAttr_ = typeListAttr_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.OpDef.ArgDef result) {
             if (handleDataBuilder_ == null) {
    -          if (((bitField0_ & 0x00000001) != 0)) {
    +          if (((bitField0_ & 0x00000040) != 0)) {
                 handleData_ = java.util.Collections.unmodifiableList(handleData_);
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000040);
               }
               result.handleData_ = handleData_;
             } else {
               result.handleData_ = handleDataBuilder_.build();
             }
    -        result.isRef_ = isRef_;
    -        if (experimentalFullTypeBuilder_ == null) {
    -          result.experimentalFullType_ = experimentalFullType_;
    -        } else {
    -          result.experimentalFullType_ = experimentalFullTypeBuilder_.build();
    -        }
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.OpDef.ArgDef result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.name_ = name_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.description_ = description_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.type_ = type_;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.typeAttr_ = typeAttr_;
    +        }
    +        if (((from_bitField0_ & 0x00000010) != 0)) {
    +          result.numberAttr_ = numberAttr_;
    +        }
    +        if (((from_bitField0_ & 0x00000020) != 0)) {
    +          result.typeListAttr_ = typeListAttr_;
    +        }
    +        if (((from_bitField0_ & 0x00000080) != 0)) {
    +          result.isRef_ = isRef_;
    +        }
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000100) != 0)) {
    +          result.experimentalFullType_ = experimentalFullTypeBuilder_ == null
    +              ? experimentalFullType_
    +              : experimentalFullTypeBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.OpDef.ArgDef) {
    @@ -1174,10 +1178,12 @@ public Builder mergeFrom(org.tensorflow.proto.OpDef.ArgDef other) {
             if (other == org.tensorflow.proto.OpDef.ArgDef.getDefaultInstance()) return this;
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (!other.getDescription().isEmpty()) {
               description_ = other.description_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             if (other.type_ != 0) {
    @@ -1185,21 +1191,24 @@ public Builder mergeFrom(org.tensorflow.proto.OpDef.ArgDef other) {
             }
             if (!other.getTypeAttr().isEmpty()) {
               typeAttr_ = other.typeAttr_;
    +          bitField0_ |= 0x00000008;
               onChanged();
             }
             if (!other.getNumberAttr().isEmpty()) {
               numberAttr_ = other.numberAttr_;
    +          bitField0_ |= 0x00000010;
               onChanged();
             }
             if (!other.getTypeListAttr().isEmpty()) {
               typeListAttr_ = other.typeListAttr_;
    +          bitField0_ |= 0x00000020;
               onChanged();
             }
             if (handleDataBuilder_ == null) {
               if (!other.handleData_.isEmpty()) {
                 if (handleData_.isEmpty()) {
                   handleData_ = other.handleData_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000040);
                 } else {
                   ensureHandleDataIsMutable();
                   handleData_.addAll(other.handleData_);
    @@ -1212,9 +1221,9 @@ public Builder mergeFrom(org.tensorflow.proto.OpDef.ArgDef other) {
                   handleDataBuilder_.dispose();
                   handleDataBuilder_ = null;
                   handleData_ = other.handleData_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000040);
                   handleDataBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getHandleDataFieldBuilder() : null;
                 } else {
                   handleDataBuilder_.addAllMessages(other.handleData_);
    @@ -1255,32 +1264,32 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     description_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 24: {
                     type_ = input.readEnum();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 24
                   case 34: {
                     typeAttr_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 34
                   case 42: {
                     numberAttr_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000010;
                     break;
                   } // case 42
                   case 50: {
                     typeListAttr_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000020;
                     break;
                   } // case 50
                   case 58: {
    @@ -1298,14 +1307,14 @@ public Builder mergeFrom(
                   } // case 58
                   case 128: {
                     isRef_ = input.readBool();
    -
    +                bitField0_ |= 0x00000080;
                     break;
                   } // case 128
                   case 138: {
                     input.readMessage(
                         getExperimentalFullTypeFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000100;
                     break;
                   } // case 138
                   default: {
    @@ -1378,11 +1387,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -1395,8 +1402,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -1411,12 +1418,10 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -1474,11 +1479,9 @@ public java.lang.String getDescription() {
            */
           public Builder setDescription(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             description_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1491,8 +1494,8 @@ public Builder setDescription(
            * @return This builder for chaining.
            */
           public Builder clearDescription() {
    -        
             description_ = getDefaultInstance().getDescription();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -1507,12 +1510,10 @@ public Builder clearDescription() {
            */
           public Builder setDescriptionBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             description_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1523,13 +1524,13 @@ public Builder setDescriptionBytes(
            * Describes the type of one or more tensors that are accepted/produced
            * by this input/output arg.  The only legal combinations are:
            * * For a single tensor: either the "type" field is set or the
    -       *   "type_attr" field is set to the name of an attr with type "type".
    +       * "type_attr" field is set to the name of an attr with type "type".
            * * For a sequence of tensors with the same type: the "number_attr"
    -       *   field will be set to the name of an attr with type "int", and
    -       *   either the "type" or "type_attr" field will be set as for
    -       *   single tensors.
    +       * field will be set to the name of an attr with type "int", and
    +       * either the "type" or "type_attr" field will be set as for
    +       * single tensors.
            * * For a sequence of tensors, the "type_list_attr" field will be set
    -       *   to the name of an attr with type "list(type)".
    +       * to the name of an attr with type "list(type)".
            * 
    * * .tensorflow.DataType type = 3; @@ -1543,13 +1544,13 @@ public Builder setDescriptionBytes( * Describes the type of one or more tensors that are accepted/produced * by this input/output arg. The only legal combinations are: * * For a single tensor: either the "type" field is set or the - * "type_attr" field is set to the name of an attr with type "type". + * "type_attr" field is set to the name of an attr with type "type". * * For a sequence of tensors with the same type: the "number_attr" - * field will be set to the name of an attr with type "int", and - * either the "type" or "type_attr" field will be set as for - * single tensors. + * field will be set to the name of an attr with type "int", and + * either the "type" or "type_attr" field will be set as for + * single tensors. * * For a sequence of tensors, the "type_list_attr" field will be set - * to the name of an attr with type "list(type)". + * to the name of an attr with type "list(type)". *
    * * .tensorflow.DataType type = 3; @@ -1557,8 +1558,8 @@ public Builder setDescriptionBytes( * @return This builder for chaining. */ public Builder setTypeValue(int value) { - type_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -1567,13 +1568,13 @@ public Builder setTypeValue(int value) { * Describes the type of one or more tensors that are accepted/produced * by this input/output arg. The only legal combinations are: * * For a single tensor: either the "type" field is set or the - * "type_attr" field is set to the name of an attr with type "type". + * "type_attr" field is set to the name of an attr with type "type". * * For a sequence of tensors with the same type: the "number_attr" - * field will be set to the name of an attr with type "int", and - * either the "type" or "type_attr" field will be set as for - * single tensors. + * field will be set to the name of an attr with type "int", and + * either the "type" or "type_attr" field will be set as for + * single tensors. * * For a sequence of tensors, the "type_list_attr" field will be set - * to the name of an attr with type "list(type)". + * to the name of an attr with type "list(type)". *
    * * .tensorflow.DataType type = 3; @@ -1581,8 +1582,7 @@ public Builder setTypeValue(int value) { */ @java.lang.Override public org.tensorflow.proto.DataType getType() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(type_); + org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(type_); return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result; } /** @@ -1590,13 +1590,13 @@ public org.tensorflow.proto.DataType getType() { * Describes the type of one or more tensors that are accepted/produced * by this input/output arg. The only legal combinations are: * * For a single tensor: either the "type" field is set or the - * "type_attr" field is set to the name of an attr with type "type". + * "type_attr" field is set to the name of an attr with type "type". * * For a sequence of tensors with the same type: the "number_attr" - * field will be set to the name of an attr with type "int", and - * either the "type" or "type_attr" field will be set as for - * single tensors. + * field will be set to the name of an attr with type "int", and + * either the "type" or "type_attr" field will be set as for + * single tensors. * * For a sequence of tensors, the "type_list_attr" field will be set - * to the name of an attr with type "list(type)". + * to the name of an attr with type "list(type)". *
    * * .tensorflow.DataType type = 3; @@ -1607,7 +1607,7 @@ public Builder setType(org.tensorflow.proto.DataType value) { if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00000004; type_ = value.getNumber(); onChanged(); return this; @@ -1617,20 +1617,20 @@ public Builder setType(org.tensorflow.proto.DataType value) { * Describes the type of one or more tensors that are accepted/produced * by this input/output arg. The only legal combinations are: * * For a single tensor: either the "type" field is set or the - * "type_attr" field is set to the name of an attr with type "type". + * "type_attr" field is set to the name of an attr with type "type". * * For a sequence of tensors with the same type: the "number_attr" - * field will be set to the name of an attr with type "int", and - * either the "type" or "type_attr" field will be set as for - * single tensors. + * field will be set to the name of an attr with type "int", and + * either the "type" or "type_attr" field will be set as for + * single tensors. * * For a sequence of tensors, the "type_list_attr" field will be set - * to the name of an attr with type "list(type)". + * to the name of an attr with type "list(type)". *
    * * .tensorflow.DataType type = 3; * @return This builder for chaining. */ public Builder clearType() { - + bitField0_ = (bitField0_ & ~0x00000004); type_ = 0; onChanged(); return this; @@ -1689,11 +1689,9 @@ public java.lang.String getTypeAttr() { */ public Builder setTypeAttr( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } typeAttr_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -1706,8 +1704,8 @@ public Builder setTypeAttr( * @return This builder for chaining. */ public Builder clearTypeAttr() { - typeAttr_ = getDefaultInstance().getTypeAttr(); + bitField0_ = (bitField0_ & ~0x00000008); onChanged(); return this; } @@ -1722,12 +1720,10 @@ public Builder clearTypeAttr() { */ public Builder setTypeAttrBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); typeAttr_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -1785,11 +1781,9 @@ public java.lang.String getNumberAttr() { */ public Builder setNumberAttr( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } numberAttr_ = value; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -1802,8 +1796,8 @@ public Builder setNumberAttr( * @return This builder for chaining. */ public Builder clearNumberAttr() { - numberAttr_ = getDefaultInstance().getNumberAttr(); + bitField0_ = (bitField0_ & ~0x00000010); onChanged(); return this; } @@ -1818,12 +1812,10 @@ public Builder clearNumberAttr() { */ public Builder setNumberAttrBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); numberAttr_ = value; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -1884,11 +1876,9 @@ public java.lang.String getTypeListAttr() { */ public Builder setTypeListAttr( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } typeListAttr_ = value; + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -1902,8 +1892,8 @@ public Builder setTypeListAttr( * @return This builder for chaining. */ public Builder clearTypeListAttr() { - typeListAttr_ = getDefaultInstance().getTypeListAttr(); + bitField0_ = (bitField0_ & ~0x00000020); onChanged(); return this; } @@ -1919,12 +1909,10 @@ public Builder clearTypeListAttr() { */ public Builder setTypeListAttrBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); typeListAttr_ = value; + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -1932,13 +1920,13 @@ public Builder setTypeListAttrBytes( private java.util.List handleData_ = java.util.Collections.emptyList(); private void ensureHandleDataIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { + if (!((bitField0_ & 0x00000040) != 0)) { handleData_ = new java.util.ArrayList(handleData_); - bitField0_ |= 0x00000001; + bitField0_ |= 0x00000040; } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.ResourceHandleProto.DtypeAndShape, org.tensorflow.proto.ResourceHandleProto.DtypeAndShape.Builder, org.tensorflow.proto.ResourceHandleProto.DtypeAndShapeOrBuilder> handleDataBuilder_; /** @@ -2128,7 +2116,7 @@ public Builder addAllHandleData( public Builder clearHandleData() { if (handleDataBuilder_ == null) { handleData_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000040); onChanged(); } else { handleDataBuilder_.clear(); @@ -2226,14 +2214,14 @@ public org.tensorflow.proto.ResourceHandleProto.DtypeAndShape.Builder addHandleD getHandleDataBuilderList() { return getHandleDataFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.ResourceHandleProto.DtypeAndShape, org.tensorflow.proto.ResourceHandleProto.DtypeAndShape.Builder, org.tensorflow.proto.ResourceHandleProto.DtypeAndShapeOrBuilder> getHandleDataFieldBuilder() { if (handleDataBuilder_ == null) { - handleDataBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + handleDataBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.ResourceHandleProto.DtypeAndShape, org.tensorflow.proto.ResourceHandleProto.DtypeAndShape.Builder, org.tensorflow.proto.ResourceHandleProto.DtypeAndShapeOrBuilder>( handleData_, - ((bitField0_ & 0x00000001) != 0), + ((bitField0_ & 0x00000040) != 0), getParentForChildren(), isClean()); handleData_ = null; @@ -2245,7 +2233,7 @@ public org.tensorflow.proto.ResourceHandleProto.DtypeAndShape.Builder addHandleD /** *
            * For inputs: if true, the inputs are required to be refs.
    -       *   By default, inputs can be either refs or non-refs.
    +       * By default, inputs can be either refs or non-refs.
            * For outputs: if true, outputs are refs, otherwise they are not.
            * 
    * @@ -2259,7 +2247,7 @@ public boolean getIsRef() { /** *
            * For inputs: if true, the inputs are required to be refs.
    -       *   By default, inputs can be either refs or non-refs.
    +       * By default, inputs can be either refs or non-refs.
            * For outputs: if true, outputs are refs, otherwise they are not.
            * 
    * @@ -2268,15 +2256,16 @@ public boolean getIsRef() { * @return This builder for chaining. */ public Builder setIsRef(boolean value) { - + isRef_ = value; + bitField0_ |= 0x00000080; onChanged(); return this; } /** *
            * For inputs: if true, the inputs are required to be refs.
    -       *   By default, inputs can be either refs or non-refs.
    +       * By default, inputs can be either refs or non-refs.
            * For outputs: if true, outputs are refs, otherwise they are not.
            * 
    * @@ -2284,14 +2273,14 @@ public Builder setIsRef(boolean value) { * @return This builder for chaining. */ public Builder clearIsRef() { - + bitField0_ = (bitField0_ & ~0x00000080); isRef_ = false; onChanged(); return this; } private org.tensorflow.proto.FullTypeDef experimentalFullType_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.FullTypeDef, org.tensorflow.proto.FullTypeDef.Builder, org.tensorflow.proto.FullTypeDefOrBuilder> experimentalFullTypeBuilder_; /** *
    @@ -2300,6 +2289,7 @@ public Builder clearIsRef() {
            * etc. into a unified representation.
            * This declaration may contain non-concrete types (for example,
            * Tensor<TypeVar<'T'>> is a valid type declaration.
    +       *
            * Note: this is a transient field. The long-term aim is to represent the
            * entire OpDef as a single type: a callable. In that context, this field is
            * just the type of a single argument.
    @@ -2309,7 +2299,7 @@ public Builder clearIsRef() {
            * @return Whether the experimentalFullType field is set.
            */
           public boolean hasExperimentalFullType() {
    -        return experimentalFullTypeBuilder_ != null || experimentalFullType_ != null;
    +        return ((bitField0_ & 0x00000100) != 0);
           }
           /**
            * 
    @@ -2318,6 +2308,7 @@ public boolean hasExperimentalFullType() {
            * etc. into a unified representation.
            * This declaration may contain non-concrete types (for example,
            * Tensor<TypeVar<'T'>> is a valid type declaration.
    +       *
            * Note: this is a transient field. The long-term aim is to represent the
            * entire OpDef as a single type: a callable. In that context, this field is
            * just the type of a single argument.
    @@ -2340,6 +2331,7 @@ public org.tensorflow.proto.FullTypeDef getExperimentalFullType() {
            * etc. into a unified representation.
            * This declaration may contain non-concrete types (for example,
            * Tensor<TypeVar<'T'>> is a valid type declaration.
    +       *
            * Note: this is a transient field. The long-term aim is to represent the
            * entire OpDef as a single type: a callable. In that context, this field is
            * just the type of a single argument.
    @@ -2353,11 +2345,11 @@ public Builder setExperimentalFullType(org.tensorflow.proto.FullTypeDef value) {
                 throw new NullPointerException();
               }
               experimentalFullType_ = value;
    -          onChanged();
             } else {
               experimentalFullTypeBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000100;
    +        onChanged();
             return this;
           }
           /**
    @@ -2367,6 +2359,7 @@ public Builder setExperimentalFullType(org.tensorflow.proto.FullTypeDef value) {
            * etc. into a unified representation.
            * This declaration may contain non-concrete types (for example,
            * Tensor<TypeVar<'T'>> is a valid type declaration.
    +       *
            * Note: this is a transient field. The long-term aim is to represent the
            * entire OpDef as a single type: a callable. In that context, this field is
            * just the type of a single argument.
    @@ -2378,11 +2371,11 @@ public Builder setExperimentalFullType(
               org.tensorflow.proto.FullTypeDef.Builder builderForValue) {
             if (experimentalFullTypeBuilder_ == null) {
               experimentalFullType_ = builderForValue.build();
    -          onChanged();
             } else {
               experimentalFullTypeBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000100;
    +        onChanged();
             return this;
           }
           /**
    @@ -2392,6 +2385,7 @@ public Builder setExperimentalFullType(
            * etc. into a unified representation.
            * This declaration may contain non-concrete types (for example,
            * Tensor<TypeVar<'T'>> is a valid type declaration.
    +       *
            * Note: this is a transient field. The long-term aim is to represent the
            * entire OpDef as a single type: a callable. In that context, this field is
            * just the type of a single argument.
    @@ -2401,17 +2395,20 @@ public Builder setExperimentalFullType(
            */
           public Builder mergeExperimentalFullType(org.tensorflow.proto.FullTypeDef value) {
             if (experimentalFullTypeBuilder_ == null) {
    -          if (experimentalFullType_ != null) {
    -            experimentalFullType_ =
    -              org.tensorflow.proto.FullTypeDef.newBuilder(experimentalFullType_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000100) != 0) &&
    +            experimentalFullType_ != null &&
    +            experimentalFullType_ != org.tensorflow.proto.FullTypeDef.getDefaultInstance()) {
    +            getExperimentalFullTypeBuilder().mergeFrom(value);
               } else {
                 experimentalFullType_ = value;
               }
    -          onChanged();
             } else {
               experimentalFullTypeBuilder_.mergeFrom(value);
             }
    -
    +        if (experimentalFullType_ != null) {
    +          bitField0_ |= 0x00000100;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -2421,6 +2418,7 @@ public Builder mergeExperimentalFullType(org.tensorflow.proto.FullTypeDef value)
            * etc. into a unified representation.
            * This declaration may contain non-concrete types (for example,
            * Tensor<TypeVar<'T'>> is a valid type declaration.
    +       *
            * Note: this is a transient field. The long-term aim is to represent the
            * entire OpDef as a single type: a callable. In that context, this field is
            * just the type of a single argument.
    @@ -2429,14 +2427,13 @@ public Builder mergeExperimentalFullType(org.tensorflow.proto.FullTypeDef value)
            * .tensorflow.FullTypeDef experimental_full_type = 17;
            */
           public Builder clearExperimentalFullType() {
    -        if (experimentalFullTypeBuilder_ == null) {
    -          experimentalFullType_ = null;
    -          onChanged();
    -        } else {
    -          experimentalFullType_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000100);
    +        experimentalFullType_ = null;
    +        if (experimentalFullTypeBuilder_ != null) {
    +          experimentalFullTypeBuilder_.dispose();
               experimentalFullTypeBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -2446,6 +2443,7 @@ public Builder clearExperimentalFullType() {
            * etc. into a unified representation.
            * This declaration may contain non-concrete types (for example,
            * Tensor<TypeVar<'T'>> is a valid type declaration.
    +       *
            * Note: this is a transient field. The long-term aim is to represent the
            * entire OpDef as a single type: a callable. In that context, this field is
            * just the type of a single argument.
    @@ -2454,7 +2452,7 @@ public Builder clearExperimentalFullType() {
            * .tensorflow.FullTypeDef experimental_full_type = 17;
            */
           public org.tensorflow.proto.FullTypeDef.Builder getExperimentalFullTypeBuilder() {
    -        
    +        bitField0_ |= 0x00000100;
             onChanged();
             return getExperimentalFullTypeFieldBuilder().getBuilder();
           }
    @@ -2465,6 +2463,7 @@ public org.tensorflow.proto.FullTypeDef.Builder getExperimentalFullTypeBuilder()
            * etc. into a unified representation.
            * This declaration may contain non-concrete types (for example,
            * Tensor<TypeVar<'T'>> is a valid type declaration.
    +       *
            * Note: this is a transient field. The long-term aim is to represent the
            * entire OpDef as a single type: a callable. In that context, this field is
            * just the type of a single argument.
    @@ -2487,6 +2486,7 @@ public org.tensorflow.proto.FullTypeDefOrBuilder getExperimentalFullTypeOrBuilde
            * etc. into a unified representation.
            * This declaration may contain non-concrete types (for example,
            * Tensor<TypeVar<'T'>> is a valid type declaration.
    +       *
            * Note: this is a transient field. The long-term aim is to represent the
            * entire OpDef as a single type: a callable. In that context, this field is
            * just the type of a single argument.
    @@ -2494,11 +2494,11 @@ public org.tensorflow.proto.FullTypeDefOrBuilder getExperimentalFullTypeOrBuilde
            *
            * .tensorflow.FullTypeDef experimental_full_type = 17;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.FullTypeDef, org.tensorflow.proto.FullTypeDef.Builder, org.tensorflow.proto.FullTypeDefOrBuilder> 
               getExperimentalFullTypeFieldBuilder() {
             if (experimentalFullTypeBuilder_ == null) {
    -          experimentalFullTypeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          experimentalFullTypeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.FullTypeDef, org.tensorflow.proto.FullTypeDef.Builder, org.tensorflow.proto.FullTypeDefOrBuilder>(
                       getExperimentalFullType(),
                       getParentForChildren(),
    @@ -2507,18 +2507,6 @@ public org.tensorflow.proto.FullTypeDefOrBuilder getExperimentalFullTypeOrBuilde
             }
             return experimentalFullTypeBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.OpDef.ArgDef)
         }
    @@ -2740,12 +2728,21 @@ public interface AttrDefOrBuilder extends
        * Protobuf type {@code tensorflow.OpDef.AttrDef}
        */
       public static final class AttrDef extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.OpDef.AttrDef)
           AttrDefOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        AttrDef.class.getName());
    +    }
         // Use AttrDef.newBuilder() to construct.
    -    private AttrDef(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private AttrDef(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private AttrDef() {
    @@ -2754,33 +2751,23 @@ private AttrDef() {
           description_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new AttrDef();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.OpDefProtos.internal_static_tensorflow_OpDef_AttrDef_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.OpDefProtos.internal_static_tensorflow_OpDef_AttrDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
                   org.tensorflow.proto.OpDef.AttrDef.class, org.tensorflow.proto.OpDef.AttrDef.Builder.class);
         }
     
    +    private int bitField0_;
         public static final int NAME_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object name_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object name_ = "";
         /**
          * 
          * A descriptive name for the argument.  May be used, e.g. by the
    @@ -2830,7 +2817,8 @@ public java.lang.String getName() {
         }
     
         public static final int TYPE_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object type_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object type_ = "";
         /**
          * 
          * One of the type names from attr_value.proto ("string", "list(string)",
    @@ -2890,7 +2878,7 @@ public java.lang.String getType() {
          */
         @java.lang.Override
         public boolean hasDefaultValue() {
    -      return defaultValue_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -2915,11 +2903,12 @@ public org.tensorflow.proto.AttrValue getDefaultValue() {
          */
         @java.lang.Override
         public org.tensorflow.proto.AttrValueOrBuilder getDefaultValueOrBuilder() {
    -      return getDefaultValue();
    +      return defaultValue_ == null ? org.tensorflow.proto.AttrValue.getDefaultInstance() : defaultValue_;
         }
     
         public static final int DESCRIPTION_FIELD_NUMBER = 4;
    -    private volatile java.lang.Object description_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object description_ = "";
         /**
          * 
          * Human-readable description.
    @@ -2965,7 +2954,7 @@ public java.lang.String getDescription() {
         }
     
         public static final int HAS_MINIMUM_FIELD_NUMBER = 5;
    -    private boolean hasMinimum_;
    +    private boolean hasMinimum_ = false;
         /**
          * 
          * For type == "int", this is a minimum value.  For "list(___)"
    @@ -2981,7 +2970,7 @@ public boolean getHasMinimum() {
         }
     
         public static final int MINIMUM_FIELD_NUMBER = 6;
    -    private long minimum_;
    +    private long minimum_ = 0L;
         /**
          * int64 minimum = 6;
          * @return The minimum.
    @@ -3008,7 +2997,7 @@ public long getMinimum() {
          */
         @java.lang.Override
         public boolean hasAllowedValues() {
    -      return allowedValues_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -3041,7 +3030,7 @@ public org.tensorflow.proto.AttrValue getAllowedValues() {
          */
         @java.lang.Override
         public org.tensorflow.proto.AttrValueOrBuilder getAllowedValuesOrBuilder() {
    -      return getAllowedValues();
    +      return allowedValues_ == null ? org.tensorflow.proto.AttrValue.getDefaultInstance() : allowedValues_;
         }
     
         private byte memoizedIsInitialized = -1;
    @@ -3058,17 +3047,17 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(type_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, type_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(type_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, type_);
           }
    -      if (defaultValue_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(3, getDefaultValue());
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, description_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 4, description_);
           }
           if (hasMinimum_ != false) {
             output.writeBool(5, hasMinimum_);
    @@ -3076,7 +3065,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (minimum_ != 0L) {
             output.writeInt64(6, minimum_);
           }
    -      if (allowedValues_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             output.writeMessage(7, getAllowedValues());
           }
           getUnknownFields().writeTo(output);
    @@ -3088,18 +3077,18 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(type_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, type_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(type_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, type_);
           }
    -      if (defaultValue_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(3, getDefaultValue());
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, description_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(4, description_);
           }
           if (hasMinimum_ != false) {
             size += com.google.protobuf.CodedOutputStream
    @@ -3109,7 +3098,7 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeInt64Size(6, minimum_);
           }
    -      if (allowedValues_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(7, getAllowedValues());
           }
    @@ -3218,39 +3207,41 @@ public static org.tensorflow.proto.OpDef.AttrDef parseFrom(
         }
         public static org.tensorflow.proto.OpDef.AttrDef parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.OpDef.AttrDef parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.OpDef.AttrDef parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.OpDef.AttrDef parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.OpDef.AttrDef parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.OpDef.AttrDef parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -3270,7 +3261,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -3284,7 +3275,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.OpDef.AttrDef}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.OpDef.AttrDef)
             org.tensorflow.proto.OpDef.AttrDefOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -3293,7 +3284,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.OpDefProtos.internal_static_tensorflow_OpDef_AttrDef_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -3302,37 +3293,38 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.OpDef.AttrDef.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getDefaultValueFieldBuilder();
    +          getAllowedValuesFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             name_ = "";
    -
             type_ = "";
    -
    -        if (defaultValueBuilder_ == null) {
    -          defaultValue_ = null;
    -        } else {
    -          defaultValue_ = null;
    +        defaultValue_ = null;
    +        if (defaultValueBuilder_ != null) {
    +          defaultValueBuilder_.dispose();
               defaultValueBuilder_ = null;
             }
             description_ = "";
    -
             hasMinimum_ = false;
    -
             minimum_ = 0L;
    -
    -        if (allowedValuesBuilder_ == null) {
    -          allowedValues_ = null;
    -        } else {
    -          allowedValues_ = null;
    +        allowedValues_ = null;
    +        if (allowedValuesBuilder_ != null) {
    +          allowedValuesBuilder_.dispose();
               allowedValuesBuilder_ = null;
             }
             return this;
    @@ -3361,57 +3353,44 @@ public org.tensorflow.proto.OpDef.AttrDef build() {
           @java.lang.Override
           public org.tensorflow.proto.OpDef.AttrDef buildPartial() {
             org.tensorflow.proto.OpDef.AttrDef result = new org.tensorflow.proto.OpDef.AttrDef(this);
    -        result.name_ = name_;
    -        result.type_ = type_;
    -        if (defaultValueBuilder_ == null) {
    -          result.defaultValue_ = defaultValue_;
    -        } else {
    -          result.defaultValue_ = defaultValueBuilder_.build();
    -        }
    -        result.description_ = description_;
    -        result.hasMinimum_ = hasMinimum_;
    -        result.minimum_ = minimum_;
    -        if (allowedValuesBuilder_ == null) {
    -          result.allowedValues_ = allowedValues_;
    -        } else {
    -          result.allowedValues_ = allowedValuesBuilder_.build();
    -        }
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.OpDef.AttrDef result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.name_ = name_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.type_ = type_;
    +        }
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.defaultValue_ = defaultValueBuilder_ == null
    +              ? defaultValue_
    +              : defaultValueBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.description_ = description_;
    +        }
    +        if (((from_bitField0_ & 0x00000010) != 0)) {
    +          result.hasMinimum_ = hasMinimum_;
    +        }
    +        if (((from_bitField0_ & 0x00000020) != 0)) {
    +          result.minimum_ = minimum_;
    +        }
    +        if (((from_bitField0_ & 0x00000040) != 0)) {
    +          result.allowedValues_ = allowedValuesBuilder_ == null
    +              ? allowedValues_
    +              : allowedValuesBuilder_.build();
    +          to_bitField0_ |= 0x00000002;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.OpDef.AttrDef) {
    @@ -3426,10 +3405,12 @@ public Builder mergeFrom(org.tensorflow.proto.OpDef.AttrDef other) {
             if (other == org.tensorflow.proto.OpDef.AttrDef.getDefaultInstance()) return this;
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (!other.getType().isEmpty()) {
               type_ = other.type_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             if (other.hasDefaultValue()) {
    @@ -3437,6 +3418,7 @@ public Builder mergeFrom(org.tensorflow.proto.OpDef.AttrDef other) {
             }
             if (!other.getDescription().isEmpty()) {
               description_ = other.description_;
    +          bitField0_ |= 0x00000008;
               onChanged();
             }
             if (other.getHasMinimum() != false) {
    @@ -3476,41 +3458,41 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     type_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 26: {
                     input.readMessage(
                         getDefaultValueFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 26
                   case 34: {
                     description_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 34
                   case 40: {
                     hasMinimum_ = input.readBool();
    -
    +                bitField0_ |= 0x00000010;
                     break;
                   } // case 40
                   case 48: {
                     minimum_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000020;
                     break;
                   } // case 48
                   case 58: {
                     input.readMessage(
                         getAllowedValuesFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000040;
                     break;
                   } // case 58
                   default: {
    @@ -3528,6 +3510,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private java.lang.Object name_ = "";
           /**
    @@ -3588,11 +3571,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -3607,8 +3588,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -3625,12 +3606,10 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -3691,11 +3670,9 @@ public java.lang.String getType() {
            */
           public Builder setType(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             type_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -3709,8 +3686,8 @@ public Builder setType(
            * @return This builder for chaining.
            */
           public Builder clearType() {
    -        
             type_ = getDefaultInstance().getType();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -3726,18 +3703,16 @@ public Builder clearType() {
            */
           public Builder setTypeBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             type_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
     
           private org.tensorflow.proto.AttrValue defaultValue_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.AttrValue, org.tensorflow.proto.AttrValue.Builder, org.tensorflow.proto.AttrValueOrBuilder> defaultValueBuilder_;
           /**
            * 
    @@ -3749,7 +3724,7 @@ public Builder setTypeBytes(
            * @return Whether the defaultValue field is set.
            */
           public boolean hasDefaultValue() {
    -        return defaultValueBuilder_ != null || defaultValue_ != null;
    +        return ((bitField0_ & 0x00000004) != 0);
           }
           /**
            * 
    @@ -3781,11 +3756,11 @@ public Builder setDefaultValue(org.tensorflow.proto.AttrValue value) {
                 throw new NullPointerException();
               }
               defaultValue_ = value;
    -          onChanged();
             } else {
               defaultValueBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000004;
    +        onChanged();
             return this;
           }
           /**
    @@ -3800,11 +3775,11 @@ public Builder setDefaultValue(
               org.tensorflow.proto.AttrValue.Builder builderForValue) {
             if (defaultValueBuilder_ == null) {
               defaultValue_ = builderForValue.build();
    -          onChanged();
             } else {
               defaultValueBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000004;
    +        onChanged();
             return this;
           }
           /**
    @@ -3817,17 +3792,20 @@ public Builder setDefaultValue(
            */
           public Builder mergeDefaultValue(org.tensorflow.proto.AttrValue value) {
             if (defaultValueBuilder_ == null) {
    -          if (defaultValue_ != null) {
    -            defaultValue_ =
    -              org.tensorflow.proto.AttrValue.newBuilder(defaultValue_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000004) != 0) &&
    +            defaultValue_ != null &&
    +            defaultValue_ != org.tensorflow.proto.AttrValue.getDefaultInstance()) {
    +            getDefaultValueBuilder().mergeFrom(value);
               } else {
                 defaultValue_ = value;
               }
    -          onChanged();
             } else {
               defaultValueBuilder_.mergeFrom(value);
             }
    -
    +        if (defaultValue_ != null) {
    +          bitField0_ |= 0x00000004;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -3839,14 +3817,13 @@ public Builder mergeDefaultValue(org.tensorflow.proto.AttrValue value) {
            * .tensorflow.AttrValue default_value = 3;
            */
           public Builder clearDefaultValue() {
    -        if (defaultValueBuilder_ == null) {
    -          defaultValue_ = null;
    -          onChanged();
    -        } else {
    -          defaultValue_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000004);
    +        defaultValue_ = null;
    +        if (defaultValueBuilder_ != null) {
    +          defaultValueBuilder_.dispose();
               defaultValueBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -3858,7 +3835,7 @@ public Builder clearDefaultValue() {
            * .tensorflow.AttrValue default_value = 3;
            */
           public org.tensorflow.proto.AttrValue.Builder getDefaultValueBuilder() {
    -        
    +        bitField0_ |= 0x00000004;
             onChanged();
             return getDefaultValueFieldBuilder().getBuilder();
           }
    @@ -3886,11 +3863,11 @@ public org.tensorflow.proto.AttrValueOrBuilder getDefaultValueOrBuilder() {
            *
            * .tensorflow.AttrValue default_value = 3;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.AttrValue, org.tensorflow.proto.AttrValue.Builder, org.tensorflow.proto.AttrValueOrBuilder> 
               getDefaultValueFieldBuilder() {
             if (defaultValueBuilder_ == null) {
    -          defaultValueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          defaultValueBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.AttrValue, org.tensorflow.proto.AttrValue.Builder, org.tensorflow.proto.AttrValueOrBuilder>(
                       getDefaultValue(),
                       getParentForChildren(),
    @@ -3953,11 +3930,9 @@ public java.lang.String getDescription() {
            */
           public Builder setDescription(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             description_ = value;
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -3970,8 +3945,8 @@ public Builder setDescription(
            * @return This builder for chaining.
            */
           public Builder clearDescription() {
    -        
             description_ = getDefaultInstance().getDescription();
    +        bitField0_ = (bitField0_ & ~0x00000008);
             onChanged();
             return this;
           }
    @@ -3986,12 +3961,10 @@ public Builder clearDescription() {
            */
           public Builder setDescriptionBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             description_ = value;
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -4021,8 +3994,9 @@ public boolean getHasMinimum() {
            * @return This builder for chaining.
            */
           public Builder setHasMinimum(boolean value) {
    -        
    +
             hasMinimum_ = value;
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -4036,7 +4010,7 @@ public Builder setHasMinimum(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearHasMinimum() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000010);
             hasMinimum_ = false;
             onChanged();
             return this;
    @@ -4057,8 +4031,9 @@ public long getMinimum() {
            * @return This builder for chaining.
            */
           public Builder setMinimum(long value) {
    -        
    +
             minimum_ = value;
    +        bitField0_ |= 0x00000020;
             onChanged();
             return this;
           }
    @@ -4067,14 +4042,14 @@ public Builder setMinimum(long value) {
            * @return This builder for chaining.
            */
           public Builder clearMinimum() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000020);
             minimum_ = 0L;
             onChanged();
             return this;
           }
     
           private org.tensorflow.proto.AttrValue allowedValues_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.AttrValue, org.tensorflow.proto.AttrValue.Builder, org.tensorflow.proto.AttrValueOrBuilder> allowedValuesBuilder_;
           /**
            * 
    @@ -4090,7 +4065,7 @@ public Builder clearMinimum() {
            * @return Whether the allowedValues field is set.
            */
           public boolean hasAllowedValues() {
    -        return allowedValuesBuilder_ != null || allowedValues_ != null;
    +        return ((bitField0_ & 0x00000040) != 0);
           }
           /**
            * 
    @@ -4130,11 +4105,11 @@ public Builder setAllowedValues(org.tensorflow.proto.AttrValue value) {
                 throw new NullPointerException();
               }
               allowedValues_ = value;
    -          onChanged();
             } else {
               allowedValuesBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000040;
    +        onChanged();
             return this;
           }
           /**
    @@ -4153,11 +4128,11 @@ public Builder setAllowedValues(
               org.tensorflow.proto.AttrValue.Builder builderForValue) {
             if (allowedValuesBuilder_ == null) {
               allowedValues_ = builderForValue.build();
    -          onChanged();
             } else {
               allowedValuesBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000040;
    +        onChanged();
             return this;
           }
           /**
    @@ -4174,17 +4149,20 @@ public Builder setAllowedValues(
            */
           public Builder mergeAllowedValues(org.tensorflow.proto.AttrValue value) {
             if (allowedValuesBuilder_ == null) {
    -          if (allowedValues_ != null) {
    -            allowedValues_ =
    -              org.tensorflow.proto.AttrValue.newBuilder(allowedValues_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000040) != 0) &&
    +            allowedValues_ != null &&
    +            allowedValues_ != org.tensorflow.proto.AttrValue.getDefaultInstance()) {
    +            getAllowedValuesBuilder().mergeFrom(value);
               } else {
                 allowedValues_ = value;
               }
    -          onChanged();
             } else {
               allowedValuesBuilder_.mergeFrom(value);
             }
    -
    +        if (allowedValues_ != null) {
    +          bitField0_ |= 0x00000040;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -4200,14 +4178,13 @@ public Builder mergeAllowedValues(org.tensorflow.proto.AttrValue value) {
            * .tensorflow.AttrValue allowed_values = 7;
            */
           public Builder clearAllowedValues() {
    -        if (allowedValuesBuilder_ == null) {
    -          allowedValues_ = null;
    -          onChanged();
    -        } else {
    -          allowedValues_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000040);
    +        allowedValues_ = null;
    +        if (allowedValuesBuilder_ != null) {
    +          allowedValuesBuilder_.dispose();
               allowedValuesBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -4223,7 +4200,7 @@ public Builder clearAllowedValues() {
            * .tensorflow.AttrValue allowed_values = 7;
            */
           public org.tensorflow.proto.AttrValue.Builder getAllowedValuesBuilder() {
    -        
    +        bitField0_ |= 0x00000040;
             onChanged();
             return getAllowedValuesFieldBuilder().getBuilder();
           }
    @@ -4259,11 +4236,11 @@ public org.tensorflow.proto.AttrValueOrBuilder getAllowedValuesOrBuilder() {
            *
            * .tensorflow.AttrValue allowed_values = 7;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.AttrValue, org.tensorflow.proto.AttrValue.Builder, org.tensorflow.proto.AttrValueOrBuilder> 
               getAllowedValuesFieldBuilder() {
             if (allowedValuesBuilder_ == null) {
    -          allowedValuesBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          allowedValuesBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.AttrValue, org.tensorflow.proto.AttrValue.Builder, org.tensorflow.proto.AttrValueOrBuilder>(
                       getAllowedValues(),
                       getParentForChildren(),
    @@ -4272,18 +4249,6 @@ public org.tensorflow.proto.AttrValueOrBuilder getAllowedValuesOrBuilder() {
             }
             return allowedValuesBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.OpDef.AttrDef)
         }
    @@ -4336,8 +4301,10 @@ public org.tensorflow.proto.OpDef.AttrDef getDefaultInstanceForType() {
     
       }
     
    +  private int bitField0_;
       public static final int NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object name_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object name_ = "";
       /**
        * 
        * Op names starting with an underscore are reserved for internal use.
    @@ -4385,6 +4352,7 @@ public java.lang.String getName() {
       }
     
       public static final int INPUT_ARG_FIELD_NUMBER = 2;
    +  @SuppressWarnings("serial")
       private java.util.List inputArg_;
       /**
        * 
    @@ -4445,6 +4413,7 @@ public org.tensorflow.proto.OpDef.ArgDefOrBuilder getInputArgOrBuilder(
       }
     
       public static final int OUTPUT_ARG_FIELD_NUMBER = 3;
    +  @SuppressWarnings("serial")
       private java.util.List outputArg_;
       /**
        * 
    @@ -4505,7 +4474,9 @@ public org.tensorflow.proto.OpDef.ArgDefOrBuilder getOutputArgOrBuilder(
       }
     
       public static final int CONTROL_OUTPUT_FIELD_NUMBER = 20;
    -  private com.google.protobuf.LazyStringList controlOutput_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList controlOutput_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * Named control outputs for this operation. Useful only for composite
    @@ -4560,6 +4531,7 @@ public java.lang.String getControlOutput(int index) {
       }
     
       public static final int ATTR_FIELD_NUMBER = 4;
    +  @SuppressWarnings("serial")
       private java.util.List attr_;
       /**
        * repeated .tensorflow.OpDef.AttrDef attr = 4;
    @@ -4611,7 +4583,7 @@ public org.tensorflow.proto.OpDef.AttrDefOrBuilder getAttrOrBuilder(
        */
       @java.lang.Override
       public boolean hasDeprecation() {
    -    return deprecation_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -4634,11 +4606,12 @@ public org.tensorflow.proto.OpDeprecation getDeprecation() {
        */
       @java.lang.Override
       public org.tensorflow.proto.OpDeprecationOrBuilder getDeprecationOrBuilder() {
    -    return getDeprecation();
    +    return deprecation_ == null ? org.tensorflow.proto.OpDeprecation.getDefaultInstance() : deprecation_;
       }
     
       public static final int SUMMARY_FIELD_NUMBER = 5;
    -  private volatile java.lang.Object summary_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object summary_ = "";
       /**
        * 
        * One-line human-readable description of what the Op does.
    @@ -4684,7 +4657,8 @@ public java.lang.String getSummary() {
       }
     
       public static final int DESCRIPTION_FIELD_NUMBER = 6;
    -  private volatile java.lang.Object description_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object description_ = "";
       /**
        * 
        * Additional, longer human-readable description of what the Op does.
    @@ -4730,7 +4704,7 @@ public java.lang.String getDescription() {
       }
     
       public static final int IS_COMMUTATIVE_FIELD_NUMBER = 18;
    -  private boolean isCommutative_;
    +  private boolean isCommutative_ = false;
       /**
        * 
        * True if the operation is commutative ("op(a,b) == op(b,a)" for all inputs)
    @@ -4745,7 +4719,7 @@ public boolean getIsCommutative() {
       }
     
       public static final int IS_AGGREGATE_FIELD_NUMBER = 16;
    -  private boolean isAggregate_;
    +  private boolean isAggregate_ = false;
       /**
        * 
        * If is_aggregate is true, then this operation accepts N >= 2
    @@ -4767,7 +4741,7 @@ public boolean getIsAggregate() {
       }
     
       public static final int IS_STATEFUL_FIELD_NUMBER = 17;
    -  private boolean isStateful_;
    +  private boolean isStateful_ = false;
       /**
        * 
        * Ops are marked as stateful if their behavior depends on some state beyond
    @@ -4775,6 +4749,7 @@ public boolean getIsAggregate() {
        * a side-effect (e.g. printing or asserting ops). Equivalently, stateless ops
        * must always produce the same output for the same input and have
        * no side-effects.
    +   *
        * By default Ops may be moved between devices.  Stateful ops should
        * either not be moved, or should only be moved if that state can also
        * be moved (e.g. via some sort of save / restore).
    @@ -4791,7 +4766,7 @@ public boolean getIsStateful() {
       }
     
       public static final int ALLOWS_UNINITIALIZED_INPUT_FIELD_NUMBER = 19;
    -  private boolean allowsUninitializedInput_;
    +  private boolean allowsUninitializedInput_ = false;
       /**
        * 
        * By default, all inputs to an Op must be initialized Tensors.  Ops
    @@ -4809,7 +4784,7 @@ public boolean getAllowsUninitializedInput() {
       }
     
       public static final int IS_DISTRIBUTED_COMMUNICATION_FIELD_NUMBER = 21;
    -  private boolean isDistributedCommunication_;
    +  private boolean isDistributedCommunication_ = false;
       /**
        * 
        * Indicates whether the op implementation uses distributed communication.
    @@ -4839,8 +4814,8 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
         }
         for (int i = 0; i < inputArg_.size(); i++) {
           output.writeMessage(2, inputArg_.get(i));
    @@ -4851,13 +4826,13 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         for (int i = 0; i < attr_.size(); i++) {
           output.writeMessage(4, attr_.get(i));
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(summary_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 5, summary_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(summary_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 5, summary_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 6, description_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 6, description_);
         }
    -    if (deprecation_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(8, getDeprecation());
         }
         if (isAggregate_ != false) {
    @@ -4873,7 +4848,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           output.writeBool(19, allowsUninitializedInput_);
         }
         for (int i = 0; i < controlOutput_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 20, controlOutput_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 20, controlOutput_.getRaw(i));
         }
         if (isDistributedCommunication_ != false) {
           output.writeBool(21, isDistributedCommunication_);
    @@ -4887,8 +4862,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
         }
         for (int i = 0; i < inputArg_.size(); i++) {
           size += com.google.protobuf.CodedOutputStream
    @@ -4902,13 +4877,13 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(4, attr_.get(i));
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(summary_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, summary_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(summary_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(5, summary_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, description_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(6, description_);
         }
    -    if (deprecation_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(8, getDeprecation());
         }
    @@ -5075,39 +5050,41 @@ public static org.tensorflow.proto.OpDef parseFrom(
       }
       public static org.tensorflow.proto.OpDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.OpDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.OpDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.OpDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.OpDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.OpDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -5127,7 +5104,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -5141,7 +5118,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.OpDef}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.OpDef)
           org.tensorflow.proto.OpDefOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -5150,7 +5127,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.OpDefProtos.internal_static_tensorflow_OpDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -5159,62 +5136,63 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.OpDef.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getInputArgFieldBuilder();
    +        getOutputArgFieldBuilder();
    +        getAttrFieldBuilder();
    +        getDeprecationFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           name_ = "";
    -
           if (inputArgBuilder_ == null) {
             inputArg_ = java.util.Collections.emptyList();
           } else {
             inputArg_ = null;
             inputArgBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000002);
           if (outputArgBuilder_ == null) {
             outputArg_ = java.util.Collections.emptyList();
           } else {
             outputArg_ = null;
             outputArgBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000002);
    -      controlOutput_ = com.google.protobuf.LazyStringArrayList.EMPTY;
           bitField0_ = (bitField0_ & ~0x00000004);
    +      controlOutput_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           if (attrBuilder_ == null) {
             attr_ = java.util.Collections.emptyList();
           } else {
             attr_ = null;
             attrBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000008);
    -      if (deprecationBuilder_ == null) {
    -        deprecation_ = null;
    -      } else {
    -        deprecation_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000010);
    +      deprecation_ = null;
    +      if (deprecationBuilder_ != null) {
    +        deprecationBuilder_.dispose();
             deprecationBuilder_ = null;
           }
           summary_ = "";
    -
           description_ = "";
    -
           isCommutative_ = false;
    -
           isAggregate_ = false;
    -
           isStateful_ = false;
    -
           allowsUninitializedInput_ = false;
    -
           isDistributedCommunication_ = false;
    -
           return this;
         }
     
    @@ -5241,88 +5219,82 @@ public org.tensorflow.proto.OpDef build() {
         @java.lang.Override
         public org.tensorflow.proto.OpDef buildPartial() {
           org.tensorflow.proto.OpDef result = new org.tensorflow.proto.OpDef(this);
    -      int from_bitField0_ = bitField0_;
    -      result.name_ = name_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.OpDef result) {
           if (inputArgBuilder_ == null) {
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((bitField0_ & 0x00000002) != 0)) {
               inputArg_ = java.util.Collections.unmodifiableList(inputArg_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000002);
             }
             result.inputArg_ = inputArg_;
           } else {
             result.inputArg_ = inputArgBuilder_.build();
           }
           if (outputArgBuilder_ == null) {
    -        if (((bitField0_ & 0x00000002) != 0)) {
    +        if (((bitField0_ & 0x00000004) != 0)) {
               outputArg_ = java.util.Collections.unmodifiableList(outputArg_);
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          bitField0_ = (bitField0_ & ~0x00000004);
             }
             result.outputArg_ = outputArg_;
           } else {
             result.outputArg_ = outputArgBuilder_.build();
           }
    -      if (((bitField0_ & 0x00000004) != 0)) {
    -        controlOutput_ = controlOutput_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000004);
    -      }
    -      result.controlOutput_ = controlOutput_;
           if (attrBuilder_ == null) {
    -        if (((bitField0_ & 0x00000008) != 0)) {
    +        if (((bitField0_ & 0x00000010) != 0)) {
               attr_ = java.util.Collections.unmodifiableList(attr_);
    -          bitField0_ = (bitField0_ & ~0x00000008);
    +          bitField0_ = (bitField0_ & ~0x00000010);
             }
             result.attr_ = attr_;
           } else {
             result.attr_ = attrBuilder_.build();
           }
    -      if (deprecationBuilder_ == null) {
    -        result.deprecation_ = deprecation_;
    -      } else {
    -        result.deprecation_ = deprecationBuilder_.build();
    -      }
    -      result.summary_ = summary_;
    -      result.description_ = description_;
    -      result.isCommutative_ = isCommutative_;
    -      result.isAggregate_ = isAggregate_;
    -      result.isStateful_ = isStateful_;
    -      result.allowsUninitializedInput_ = allowsUninitializedInput_;
    -      result.isDistributedCommunication_ = isDistributedCommunication_;
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.OpDef result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.name_ = name_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        controlOutput_.makeImmutable();
    +        result.controlOutput_ = controlOutput_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.deprecation_ = deprecationBuilder_ == null
    +            ? deprecation_
    +            : deprecationBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000040) != 0)) {
    +        result.summary_ = summary_;
    +      }
    +      if (((from_bitField0_ & 0x00000080) != 0)) {
    +        result.description_ = description_;
    +      }
    +      if (((from_bitField0_ & 0x00000100) != 0)) {
    +        result.isCommutative_ = isCommutative_;
    +      }
    +      if (((from_bitField0_ & 0x00000200) != 0)) {
    +        result.isAggregate_ = isAggregate_;
    +      }
    +      if (((from_bitField0_ & 0x00000400) != 0)) {
    +        result.isStateful_ = isStateful_;
    +      }
    +      if (((from_bitField0_ & 0x00000800) != 0)) {
    +        result.allowsUninitializedInput_ = allowsUninitializedInput_;
    +      }
    +      if (((from_bitField0_ & 0x00001000) != 0)) {
    +        result.isDistributedCommunication_ = isDistributedCommunication_;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.OpDef) {
    @@ -5337,13 +5309,14 @@ public Builder mergeFrom(org.tensorflow.proto.OpDef other) {
           if (other == org.tensorflow.proto.OpDef.getDefaultInstance()) return this;
           if (!other.getName().isEmpty()) {
             name_ = other.name_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (inputArgBuilder_ == null) {
             if (!other.inputArg_.isEmpty()) {
               if (inputArg_.isEmpty()) {
                 inputArg_ = other.inputArg_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000002);
               } else {
                 ensureInputArgIsMutable();
                 inputArg_.addAll(other.inputArg_);
    @@ -5356,9 +5329,9 @@ public Builder mergeFrom(org.tensorflow.proto.OpDef other) {
                 inputArgBuilder_.dispose();
                 inputArgBuilder_ = null;
                 inputArg_ = other.inputArg_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000002);
                 inputArgBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getInputArgFieldBuilder() : null;
               } else {
                 inputArgBuilder_.addAllMessages(other.inputArg_);
    @@ -5369,7 +5342,7 @@ public Builder mergeFrom(org.tensorflow.proto.OpDef other) {
             if (!other.outputArg_.isEmpty()) {
               if (outputArg_.isEmpty()) {
                 outputArg_ = other.outputArg_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            bitField0_ = (bitField0_ & ~0x00000004);
               } else {
                 ensureOutputArgIsMutable();
                 outputArg_.addAll(other.outputArg_);
    @@ -5382,9 +5355,9 @@ public Builder mergeFrom(org.tensorflow.proto.OpDef other) {
                 outputArgBuilder_.dispose();
                 outputArgBuilder_ = null;
                 outputArg_ = other.outputArg_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            bitField0_ = (bitField0_ & ~0x00000004);
                 outputArgBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getOutputArgFieldBuilder() : null;
               } else {
                 outputArgBuilder_.addAllMessages(other.outputArg_);
    @@ -5394,7 +5367,7 @@ public Builder mergeFrom(org.tensorflow.proto.OpDef other) {
           if (!other.controlOutput_.isEmpty()) {
             if (controlOutput_.isEmpty()) {
               controlOutput_ = other.controlOutput_;
    -          bitField0_ = (bitField0_ & ~0x00000004);
    +          bitField0_ |= 0x00000008;
             } else {
               ensureControlOutputIsMutable();
               controlOutput_.addAll(other.controlOutput_);
    @@ -5405,7 +5378,7 @@ public Builder mergeFrom(org.tensorflow.proto.OpDef other) {
             if (!other.attr_.isEmpty()) {
               if (attr_.isEmpty()) {
                 attr_ = other.attr_;
    -            bitField0_ = (bitField0_ & ~0x00000008);
    +            bitField0_ = (bitField0_ & ~0x00000010);
               } else {
                 ensureAttrIsMutable();
                 attr_.addAll(other.attr_);
    @@ -5418,9 +5391,9 @@ public Builder mergeFrom(org.tensorflow.proto.OpDef other) {
                 attrBuilder_.dispose();
                 attrBuilder_ = null;
                 attr_ = other.attr_;
    -            bitField0_ = (bitField0_ & ~0x00000008);
    +            bitField0_ = (bitField0_ & ~0x00000010);
                 attrBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getAttrFieldBuilder() : null;
               } else {
                 attrBuilder_.addAllMessages(other.attr_);
    @@ -5432,10 +5405,12 @@ public Builder mergeFrom(org.tensorflow.proto.OpDef other) {
           }
           if (!other.getSummary().isEmpty()) {
             summary_ = other.summary_;
    +        bitField0_ |= 0x00000040;
             onChanged();
           }
           if (!other.getDescription().isEmpty()) {
             description_ = other.description_;
    +        bitField0_ |= 0x00000080;
             onChanged();
           }
           if (other.getIsCommutative() != false) {
    @@ -5481,7 +5456,7 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   name_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
    @@ -5525,39 +5500,39 @@ public Builder mergeFrom(
                 } // case 34
                 case 42: {
                   summary_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000040;
                   break;
                 } // case 42
                 case 50: {
                   description_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000080;
                   break;
                 } // case 50
                 case 66: {
                   input.readMessage(
                       getDeprecationFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 66
                 case 128: {
                   isAggregate_ = input.readBool();
    -
    +              bitField0_ |= 0x00000200;
                   break;
                 } // case 128
                 case 136: {
                   isStateful_ = input.readBool();
    -
    +              bitField0_ |= 0x00000400;
                   break;
                 } // case 136
                 case 144: {
                   isCommutative_ = input.readBool();
    -
    +              bitField0_ |= 0x00000100;
                   break;
                 } // case 144
                 case 152: {
                   allowsUninitializedInput_ = input.readBool();
    -
    +              bitField0_ |= 0x00000800;
                   break;
                 } // case 152
                 case 162: {
    @@ -5568,7 +5543,7 @@ public Builder mergeFrom(
                 } // case 162
                 case 168: {
                   isDistributedCommunication_ = input.readBool();
    -
    +              bitField0_ |= 0x00001000;
                   break;
                 } // case 168
                 default: {
    @@ -5644,11 +5619,9 @@ public java.lang.String getName() {
          */
         public Builder setName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -5662,8 +5635,8 @@ public Builder setName(
          * @return This builder for chaining.
          */
         public Builder clearName() {
    -      
           name_ = getDefaultInstance().getName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -5679,12 +5652,10 @@ public Builder clearName() {
          */
         public Builder setNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -5692,13 +5663,13 @@ public Builder setNameBytes(
         private java.util.List inputArg_ =
           java.util.Collections.emptyList();
         private void ensureInputArgIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!((bitField0_ & 0x00000002) != 0)) {
             inputArg_ = new java.util.ArrayList(inputArg_);
    -        bitField0_ |= 0x00000001;
    +        bitField0_ |= 0x00000002;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.OpDef.ArgDef, org.tensorflow.proto.OpDef.ArgDef.Builder, org.tensorflow.proto.OpDef.ArgDefOrBuilder> inputArgBuilder_;
     
         /**
    @@ -5888,7 +5859,7 @@ public Builder addAllInputArg(
         public Builder clearInputArg() {
           if (inputArgBuilder_ == null) {
             inputArg_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
           } else {
             inputArgBuilder_.clear();
    @@ -5986,14 +5957,14 @@ public org.tensorflow.proto.OpDef.ArgDef.Builder addInputArgBuilder(
              getInputArgBuilderList() {
           return getInputArgFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.OpDef.ArgDef, org.tensorflow.proto.OpDef.ArgDef.Builder, org.tensorflow.proto.OpDef.ArgDefOrBuilder> 
             getInputArgFieldBuilder() {
           if (inputArgBuilder_ == null) {
    -        inputArgBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        inputArgBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.OpDef.ArgDef, org.tensorflow.proto.OpDef.ArgDef.Builder, org.tensorflow.proto.OpDef.ArgDefOrBuilder>(
                     inputArg_,
    -                ((bitField0_ & 0x00000001) != 0),
    +                ((bitField0_ & 0x00000002) != 0),
                     getParentForChildren(),
                     isClean());
             inputArg_ = null;
    @@ -6004,13 +5975,13 @@ public org.tensorflow.proto.OpDef.ArgDef.Builder addInputArgBuilder(
         private java.util.List outputArg_ =
           java.util.Collections.emptyList();
         private void ensureOutputArgIsMutable() {
    -      if (!((bitField0_ & 0x00000002) != 0)) {
    +      if (!((bitField0_ & 0x00000004) != 0)) {
             outputArg_ = new java.util.ArrayList(outputArg_);
    -        bitField0_ |= 0x00000002;
    +        bitField0_ |= 0x00000004;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.OpDef.ArgDef, org.tensorflow.proto.OpDef.ArgDef.Builder, org.tensorflow.proto.OpDef.ArgDefOrBuilder> outputArgBuilder_;
     
         /**
    @@ -6200,7 +6171,7 @@ public Builder addAllOutputArg(
         public Builder clearOutputArg() {
           if (outputArgBuilder_ == null) {
             outputArg_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        bitField0_ = (bitField0_ & ~0x00000004);
             onChanged();
           } else {
             outputArgBuilder_.clear();
    @@ -6298,14 +6269,14 @@ public org.tensorflow.proto.OpDef.ArgDef.Builder addOutputArgBuilder(
              getOutputArgBuilderList() {
           return getOutputArgFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.OpDef.ArgDef, org.tensorflow.proto.OpDef.ArgDef.Builder, org.tensorflow.proto.OpDef.ArgDefOrBuilder> 
             getOutputArgFieldBuilder() {
           if (outputArgBuilder_ == null) {
    -        outputArgBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        outputArgBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.OpDef.ArgDef, org.tensorflow.proto.OpDef.ArgDef.Builder, org.tensorflow.proto.OpDef.ArgDefOrBuilder>(
                     outputArg_,
    -                ((bitField0_ & 0x00000002) != 0),
    +                ((bitField0_ & 0x00000004) != 0),
                     getParentForChildren(),
                     isClean());
             outputArg_ = null;
    @@ -6313,12 +6284,13 @@ public org.tensorflow.proto.OpDef.ArgDef.Builder addOutputArgBuilder(
           return outputArgBuilder_;
         }
     
    -    private com.google.protobuf.LazyStringList controlOutput_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList controlOutput_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureControlOutputIsMutable() {
    -      if (!((bitField0_ & 0x00000004) != 0)) {
    +      if (!controlOutput_.isModifiable()) {
             controlOutput_ = new com.google.protobuf.LazyStringArrayList(controlOutput_);
    -        bitField0_ |= 0x00000004;
    -       }
    +      }
    +      bitField0_ |= 0x00000008;
         }
         /**
          * 
    @@ -6331,7 +6303,8 @@ private void ensureControlOutputIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getControlOutputList() {
    -      return controlOutput_.getUnmodifiableView();
    +      controlOutput_.makeImmutable();
    +      return controlOutput_;
         }
         /**
          * 
    @@ -6385,11 +6358,10 @@ public java.lang.String getControlOutput(int index) {
          */
         public Builder setControlOutput(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureControlOutputIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureControlOutputIsMutable();
           controlOutput_.set(index, value);
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -6405,11 +6377,10 @@ public Builder setControlOutput(
          */
         public Builder addControlOutput(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureControlOutputIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureControlOutputIsMutable();
           controlOutput_.add(value);
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -6428,6 +6399,7 @@ public Builder addAllControlOutput(
           ensureControlOutputIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, controlOutput_);
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -6441,8 +6413,9 @@ public Builder addAllControlOutput(
          * @return This builder for chaining.
          */
         public Builder clearControlOutput() {
    -      controlOutput_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000004);
    +      controlOutput_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000008);;
           onChanged();
           return this;
         }
    @@ -6458,12 +6431,11 @@ public Builder clearControlOutput() {
          */
         public Builder addControlOutputBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureControlOutputIsMutable();
           controlOutput_.add(value);
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -6471,13 +6443,13 @@ public Builder addControlOutputBytes(
         private java.util.List attr_ =
           java.util.Collections.emptyList();
         private void ensureAttrIsMutable() {
    -      if (!((bitField0_ & 0x00000008) != 0)) {
    +      if (!((bitField0_ & 0x00000010) != 0)) {
             attr_ = new java.util.ArrayList(attr_);
    -        bitField0_ |= 0x00000008;
    +        bitField0_ |= 0x00000010;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.OpDef.AttrDef, org.tensorflow.proto.OpDef.AttrDef.Builder, org.tensorflow.proto.OpDef.AttrDefOrBuilder> attrBuilder_;
     
         /**
    @@ -6623,7 +6595,7 @@ public Builder addAllAttr(
         public Builder clearAttr() {
           if (attrBuilder_ == null) {
             attr_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000008);
    +        bitField0_ = (bitField0_ & ~0x00000010);
             onChanged();
           } else {
             attrBuilder_.clear();
    @@ -6693,14 +6665,14 @@ public org.tensorflow.proto.OpDef.AttrDef.Builder addAttrBuilder(
              getAttrBuilderList() {
           return getAttrFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.OpDef.AttrDef, org.tensorflow.proto.OpDef.AttrDef.Builder, org.tensorflow.proto.OpDef.AttrDefOrBuilder> 
             getAttrFieldBuilder() {
           if (attrBuilder_ == null) {
    -        attrBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        attrBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.OpDef.AttrDef, org.tensorflow.proto.OpDef.AttrDef.Builder, org.tensorflow.proto.OpDef.AttrDefOrBuilder>(
                     attr_,
    -                ((bitField0_ & 0x00000008) != 0),
    +                ((bitField0_ & 0x00000010) != 0),
                     getParentForChildren(),
                     isClean());
             attr_ = null;
    @@ -6709,7 +6681,7 @@ public org.tensorflow.proto.OpDef.AttrDef.Builder addAttrBuilder(
         }
     
         private org.tensorflow.proto.OpDeprecation deprecation_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.OpDeprecation, org.tensorflow.proto.OpDeprecation.Builder, org.tensorflow.proto.OpDeprecationOrBuilder> deprecationBuilder_;
         /**
          * 
    @@ -6720,7 +6692,7 @@ public org.tensorflow.proto.OpDef.AttrDef.Builder addAttrBuilder(
          * @return Whether the deprecation field is set.
          */
         public boolean hasDeprecation() {
    -      return deprecationBuilder_ != null || deprecation_ != null;
    +      return ((bitField0_ & 0x00000020) != 0);
         }
         /**
          * 
    @@ -6750,11 +6722,11 @@ public Builder setDeprecation(org.tensorflow.proto.OpDeprecation value) {
               throw new NullPointerException();
             }
             deprecation_ = value;
    -        onChanged();
           } else {
             deprecationBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000020;
    +      onChanged();
           return this;
         }
         /**
    @@ -6768,11 +6740,11 @@ public Builder setDeprecation(
             org.tensorflow.proto.OpDeprecation.Builder builderForValue) {
           if (deprecationBuilder_ == null) {
             deprecation_ = builderForValue.build();
    -        onChanged();
           } else {
             deprecationBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000020;
    +      onChanged();
           return this;
         }
         /**
    @@ -6784,17 +6756,20 @@ public Builder setDeprecation(
          */
         public Builder mergeDeprecation(org.tensorflow.proto.OpDeprecation value) {
           if (deprecationBuilder_ == null) {
    -        if (deprecation_ != null) {
    -          deprecation_ =
    -            org.tensorflow.proto.OpDeprecation.newBuilder(deprecation_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000020) != 0) &&
    +          deprecation_ != null &&
    +          deprecation_ != org.tensorflow.proto.OpDeprecation.getDefaultInstance()) {
    +          getDeprecationBuilder().mergeFrom(value);
             } else {
               deprecation_ = value;
             }
    -        onChanged();
           } else {
             deprecationBuilder_.mergeFrom(value);
           }
    -
    +      if (deprecation_ != null) {
    +        bitField0_ |= 0x00000020;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -6805,14 +6780,13 @@ public Builder mergeDeprecation(org.tensorflow.proto.OpDeprecation value) {
          * .tensorflow.OpDeprecation deprecation = 8;
          */
         public Builder clearDeprecation() {
    -      if (deprecationBuilder_ == null) {
    -        deprecation_ = null;
    -        onChanged();
    -      } else {
    -        deprecation_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000020);
    +      deprecation_ = null;
    +      if (deprecationBuilder_ != null) {
    +        deprecationBuilder_.dispose();
             deprecationBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -6823,7 +6797,7 @@ public Builder clearDeprecation() {
          * .tensorflow.OpDeprecation deprecation = 8;
          */
         public org.tensorflow.proto.OpDeprecation.Builder getDeprecationBuilder() {
    -      
    +      bitField0_ |= 0x00000020;
           onChanged();
           return getDeprecationFieldBuilder().getBuilder();
         }
    @@ -6849,11 +6823,11 @@ public org.tensorflow.proto.OpDeprecationOrBuilder getDeprecationOrBuilder() {
          *
          * .tensorflow.OpDeprecation deprecation = 8;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.OpDeprecation, org.tensorflow.proto.OpDeprecation.Builder, org.tensorflow.proto.OpDeprecationOrBuilder> 
             getDeprecationFieldBuilder() {
           if (deprecationBuilder_ == null) {
    -        deprecationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        deprecationBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.OpDeprecation, org.tensorflow.proto.OpDeprecation.Builder, org.tensorflow.proto.OpDeprecationOrBuilder>(
                     getDeprecation(),
                     getParentForChildren(),
    @@ -6916,11 +6890,9 @@ public java.lang.String getSummary() {
          */
         public Builder setSummary(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           summary_ = value;
    +      bitField0_ |= 0x00000040;
           onChanged();
           return this;
         }
    @@ -6933,8 +6905,8 @@ public Builder setSummary(
          * @return This builder for chaining.
          */
         public Builder clearSummary() {
    -      
           summary_ = getDefaultInstance().getSummary();
    +      bitField0_ = (bitField0_ & ~0x00000040);
           onChanged();
           return this;
         }
    @@ -6949,12 +6921,10 @@ public Builder clearSummary() {
          */
         public Builder setSummaryBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           summary_ = value;
    +      bitField0_ |= 0x00000040;
           onChanged();
           return this;
         }
    @@ -7012,11 +6982,9 @@ public java.lang.String getDescription() {
          */
         public Builder setDescription(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           description_ = value;
    +      bitField0_ |= 0x00000080;
           onChanged();
           return this;
         }
    @@ -7029,8 +6997,8 @@ public Builder setDescription(
          * @return This builder for chaining.
          */
         public Builder clearDescription() {
    -      
           description_ = getDefaultInstance().getDescription();
    +      bitField0_ = (bitField0_ & ~0x00000080);
           onChanged();
           return this;
         }
    @@ -7045,12 +7013,10 @@ public Builder clearDescription() {
          */
         public Builder setDescriptionBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           description_ = value;
    +      bitField0_ |= 0x00000080;
           onChanged();
           return this;
         }
    @@ -7078,8 +7044,9 @@ public boolean getIsCommutative() {
          * @return This builder for chaining.
          */
         public Builder setIsCommutative(boolean value) {
    -      
    +
           isCommutative_ = value;
    +      bitField0_ |= 0x00000100;
           onChanged();
           return this;
         }
    @@ -7092,7 +7059,7 @@ public Builder setIsCommutative(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearIsCommutative() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000100);
           isCommutative_ = false;
           onChanged();
           return this;
    @@ -7135,8 +7102,9 @@ public boolean getIsAggregate() {
          * @return This builder for chaining.
          */
         public Builder setIsAggregate(boolean value) {
    -      
    +
           isAggregate_ = value;
    +      bitField0_ |= 0x00000200;
           onChanged();
           return this;
         }
    @@ -7156,7 +7124,7 @@ public Builder setIsAggregate(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearIsAggregate() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000200);
           isAggregate_ = false;
           onChanged();
           return this;
    @@ -7170,6 +7138,7 @@ public Builder clearIsAggregate() {
          * a side-effect (e.g. printing or asserting ops). Equivalently, stateless ops
          * must always produce the same output for the same input and have
          * no side-effects.
    +     *
          * By default Ops may be moved between devices.  Stateful ops should
          * either not be moved, or should only be moved if that state can also
          * be moved (e.g. via some sort of save / restore).
    @@ -7191,6 +7160,7 @@ public boolean getIsStateful() {
          * a side-effect (e.g. printing or asserting ops). Equivalently, stateless ops
          * must always produce the same output for the same input and have
          * no side-effects.
    +     *
          * By default Ops may be moved between devices.  Stateful ops should
          * either not be moved, or should only be moved if that state can also
          * be moved (e.g. via some sort of save / restore).
    @@ -7203,8 +7173,9 @@ public boolean getIsStateful() {
          * @return This builder for chaining.
          */
         public Builder setIsStateful(boolean value) {
    -      
    +
           isStateful_ = value;
    +      bitField0_ |= 0x00000400;
           onChanged();
           return this;
         }
    @@ -7215,6 +7186,7 @@ public Builder setIsStateful(boolean value) {
          * a side-effect (e.g. printing or asserting ops). Equivalently, stateless ops
          * must always produce the same output for the same input and have
          * no side-effects.
    +     *
          * By default Ops may be moved between devices.  Stateful ops should
          * either not be moved, or should only be moved if that state can also
          * be moved (e.g. via some sort of save / restore).
    @@ -7226,7 +7198,7 @@ public Builder setIsStateful(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearIsStateful() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000400);
           isStateful_ = false;
           onChanged();
           return this;
    @@ -7261,8 +7233,9 @@ public boolean getAllowsUninitializedInput() {
          * @return This builder for chaining.
          */
         public Builder setAllowsUninitializedInput(boolean value) {
    -      
    +
           allowsUninitializedInput_ = value;
    +      bitField0_ |= 0x00000800;
           onChanged();
           return this;
         }
    @@ -7278,7 +7251,7 @@ public Builder setAllowsUninitializedInput(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearAllowsUninitializedInput() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000800);
           allowsUninitializedInput_ = false;
           onChanged();
           return this;
    @@ -7311,8 +7284,9 @@ public boolean getIsDistributedCommunication() {
          * @return This builder for chaining.
          */
         public Builder setIsDistributedCommunication(boolean value) {
    -      
    +
           isDistributedCommunication_ = value;
    +      bitField0_ |= 0x00001000;
           onChanged();
           return this;
         }
    @@ -7327,23 +7301,11 @@ public Builder setIsDistributedCommunication(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearIsDistributedCommunication() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00001000);
           isDistributedCommunication_ = false;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.OpDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDefOrBuilder.java
    index 65df7e4bbe1..598ed6ae27c 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/op_def.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -287,6 +289,7 @@ org.tensorflow.proto.OpDef.AttrDefOrBuilder getAttrOrBuilder(
        * a side-effect (e.g. printing or asserting ops). Equivalently, stateless ops
        * must always produce the same output for the same input and have
        * no side-effects.
    +   *
        * By default Ops may be moved between devices.  Stateful ops should
        * either not be moved, or should only be moved if that state can also
        * be moved (e.g. via some sort of save / restore).
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDefProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDefProtos.java
    index f19f72b5012..a840147d89e 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDefProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDefProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/op_def.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class OpDefProtos {
       private OpDefProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      OpDefProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,27 +28,27 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_OpDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_OpDef_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_OpDef_ArgDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_OpDef_ArgDef_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_OpDef_AttrDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_OpDef_AttrDef_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_OpDeprecation_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_OpDeprecation_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_OpList_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_OpList_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -94,33 +105,34 @@ public static void registerAllExtensions(
         internal_static_tensorflow_OpDef_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_OpDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_OpDef_descriptor,
             new java.lang.String[] { "Name", "InputArg", "OutputArg", "ControlOutput", "Attr", "Deprecation", "Summary", "Description", "IsCommutative", "IsAggregate", "IsStateful", "AllowsUninitializedInput", "IsDistributedCommunication", });
         internal_static_tensorflow_OpDef_ArgDef_descriptor =
           internal_static_tensorflow_OpDef_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_OpDef_ArgDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_OpDef_ArgDef_descriptor,
             new java.lang.String[] { "Name", "Description", "Type", "TypeAttr", "NumberAttr", "TypeListAttr", "HandleData", "IsRef", "ExperimentalFullType", });
         internal_static_tensorflow_OpDef_AttrDef_descriptor =
           internal_static_tensorflow_OpDef_descriptor.getNestedTypes().get(1);
         internal_static_tensorflow_OpDef_AttrDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_OpDef_AttrDef_descriptor,
             new java.lang.String[] { "Name", "Type", "DefaultValue", "Description", "HasMinimum", "Minimum", "AllowedValues", });
         internal_static_tensorflow_OpDeprecation_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_OpDeprecation_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_OpDeprecation_descriptor,
             new java.lang.String[] { "Version", "Explanation", });
         internal_static_tensorflow_OpList_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_OpList_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_OpList_descriptor,
             new java.lang.String[] { "Op", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.AttrValueProtos.getDescriptor();
         org.tensorflow.proto.FullTypeProtos.getDescriptor();
         org.tensorflow.proto.ResourceHandle.getDescriptor();
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDeprecation.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDeprecation.java
    index 36bbe4851b8..984020421f7 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDeprecation.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDeprecation.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/op_def.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,37 +13,34 @@
      * Protobuf type {@code tensorflow.OpDeprecation}
      */
     public final class OpDeprecation extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.OpDeprecation)
         OpDeprecationOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      OpDeprecation.class.getName());
    +  }
       // Use OpDeprecation.newBuilder() to construct.
    -  private OpDeprecation(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private OpDeprecation(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private OpDeprecation() {
         explanation_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new OpDeprecation();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.OpDefProtos.internal_static_tensorflow_OpDeprecation_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.OpDefProtos.internal_static_tensorflow_OpDeprecation_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -49,7 +48,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int VERSION_FIELD_NUMBER = 1;
    -  private int version_;
    +  private int version_ = 0;
       /**
        * 
        * First GraphDef version at which the op is disallowed.
    @@ -64,7 +63,8 @@ public int getVersion() {
       }
     
       public static final int EXPLANATION_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object explanation_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object explanation_ = "";
       /**
        * 
        * Explanation of why it was deprecated and what to use instead.
    @@ -126,8 +126,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (version_ != 0) {
           output.writeInt32(1, version_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(explanation_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, explanation_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(explanation_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, explanation_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -142,8 +142,8 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeInt32Size(1, version_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(explanation_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, explanation_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(explanation_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, explanation_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -218,39 +218,41 @@ public static org.tensorflow.proto.OpDeprecation parseFrom(
       }
       public static org.tensorflow.proto.OpDeprecation parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.OpDeprecation parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.OpDeprecation parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.OpDeprecation parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.OpDeprecation parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.OpDeprecation parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -270,7 +272,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -282,7 +284,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.OpDeprecation}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.OpDeprecation)
           org.tensorflow.proto.OpDeprecationOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -291,7 +293,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.OpDefProtos.internal_static_tensorflow_OpDeprecation_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -304,17 +306,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           version_ = 0;
    -
           explanation_ = "";
    -
           return this;
         }
     
    @@ -341,44 +342,21 @@ public org.tensorflow.proto.OpDeprecation build() {
         @java.lang.Override
         public org.tensorflow.proto.OpDeprecation buildPartial() {
           org.tensorflow.proto.OpDeprecation result = new org.tensorflow.proto.OpDeprecation(this);
    -      result.version_ = version_;
    -      result.explanation_ = explanation_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.OpDeprecation result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.version_ = version_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.explanation_ = explanation_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.OpDeprecation) {
    @@ -396,6 +374,7 @@ public Builder mergeFrom(org.tensorflow.proto.OpDeprecation other) {
           }
           if (!other.getExplanation().isEmpty()) {
             explanation_ = other.explanation_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -426,12 +405,12 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   version_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 18: {
                   explanation_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 default: {
    @@ -449,6 +428,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private int version_ ;
         /**
    @@ -473,8 +453,9 @@ public int getVersion() {
          * @return This builder for chaining.
          */
         public Builder setVersion(int value) {
    -      
    +
           version_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -487,7 +468,7 @@ public Builder setVersion(int value) {
          * @return This builder for chaining.
          */
         public Builder clearVersion() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           version_ = 0;
           onChanged();
           return this;
    @@ -546,11 +527,9 @@ public java.lang.String getExplanation() {
          */
         public Builder setExplanation(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           explanation_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -563,8 +542,8 @@ public Builder setExplanation(
          * @return This builder for chaining.
          */
         public Builder clearExplanation() {
    -      
           explanation_ = getDefaultInstance().getExplanation();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -579,27 +558,13 @@ public Builder clearExplanation() {
          */
         public Builder setExplanationBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           explanation_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.OpDeprecation)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDeprecationOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDeprecationOrBuilder.java
    index 2ae5686c536..e88fe5daf67 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDeprecationOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpDeprecationOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/op_def.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpList.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpList.java
    index 9e609472f97..6af1a400c7c 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpList.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpList.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/op_def.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,37 +13,34 @@
      * Protobuf type {@code tensorflow.OpList}
      */
     public final class OpList extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.OpList)
         OpListOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      OpList.class.getName());
    +  }
       // Use OpList.newBuilder() to construct.
    -  private OpList(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private OpList(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private OpList() {
         op_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new OpList();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.OpDefProtos.internal_static_tensorflow_OpList_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.OpDefProtos.internal_static_tensorflow_OpList_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -49,6 +48,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int OP_FIELD_NUMBER = 1;
    +  @SuppressWarnings("serial")
       private java.util.List op_;
       /**
        * repeated .tensorflow.OpDef op = 1;
    @@ -189,39 +189,41 @@ public static org.tensorflow.proto.OpList parseFrom(
       }
       public static org.tensorflow.proto.OpList parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.OpList parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.OpList parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.OpList parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.OpList parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.OpList parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -241,7 +243,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -253,7 +255,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.OpList}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.OpList)
           org.tensorflow.proto.OpListOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -262,7 +264,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.OpDefProtos.internal_static_tensorflow_OpList_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -275,13 +277,14 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           if (opBuilder_ == null) {
             op_ = java.util.Collections.emptyList();
           } else {
    @@ -315,7 +318,13 @@ public org.tensorflow.proto.OpList build() {
         @java.lang.Override
         public org.tensorflow.proto.OpList buildPartial() {
           org.tensorflow.proto.OpList result = new org.tensorflow.proto.OpList(this);
    -      int from_bitField0_ = bitField0_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.OpList result) {
           if (opBuilder_ == null) {
             if (((bitField0_ & 0x00000001) != 0)) {
               op_ = java.util.Collections.unmodifiableList(op_);
    @@ -325,42 +334,12 @@ public org.tensorflow.proto.OpList buildPartial() {
           } else {
             result.op_ = opBuilder_.build();
           }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.OpList result) {
    +      int from_bitField0_ = bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.OpList) {
    @@ -392,7 +371,7 @@ public Builder mergeFrom(org.tensorflow.proto.OpList other) {
                 op_ = other.op_;
                 bitField0_ = (bitField0_ & ~0x00000001);
                 opBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getOpFieldBuilder() : null;
               } else {
                 opBuilder_.addAllMessages(other.op_);
    @@ -464,7 +443,7 @@ private void ensureOpIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.OpDef, org.tensorflow.proto.OpDef.Builder, org.tensorflow.proto.OpDefOrBuilder> opBuilder_;
     
         /**
    @@ -680,11 +659,11 @@ public org.tensorflow.proto.OpDef.Builder addOpBuilder(
              getOpBuilderList() {
           return getOpFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.OpDef, org.tensorflow.proto.OpDef.Builder, org.tensorflow.proto.OpDefOrBuilder> 
             getOpFieldBuilder() {
           if (opBuilder_ == null) {
    -        opBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        opBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.OpDef, org.tensorflow.proto.OpDef.Builder, org.tensorflow.proto.OpDefOrBuilder>(
                     op_,
                     ((bitField0_ & 0x00000001) != 0),
    @@ -694,18 +673,6 @@ public org.tensorflow.proto.OpDef.Builder addOpBuilder(
           }
           return opBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.OpList)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpListOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpListOrBuilder.java
    index f3a2c2b3d78..5e13bc021f6 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpListOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpListOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/op_def.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpPerformanceData.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpPerformanceData.java
    index 20e07da09d4..a6c88007b41 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpPerformanceData.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OpPerformanceData.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/grappler/costs/op_performance_data.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class OpPerformanceData {
       private OpPerformanceData() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      OpPerformanceData.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -32,36 +43,33 @@ public interface SessionInfoOrBuilder extends
        * Protobuf type {@code tensorflow.SessionInfo}
        */
       public static final class SessionInfo extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.SessionInfo)
           SessionInfoOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        SessionInfo.class.getName());
    +    }
         // Use SessionInfo.newBuilder() to construct.
    -    private SessionInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private SessionInfo(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private SessionInfo() {
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new SessionInfo();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_SessionInfo_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_SessionInfo_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -69,7 +77,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int INTRA_OP_PARALLELISM_FIELD_NUMBER = 1;
    -    private long intraOpParallelism_;
    +    private long intraOpParallelism_ = 0L;
         /**
          * int64 intra_op_parallelism = 1;
          * @return The intraOpParallelism.
    @@ -179,39 +187,41 @@ public static org.tensorflow.proto.OpPerformanceData.SessionInfo parseFrom(
         }
         public static org.tensorflow.proto.OpPerformanceData.SessionInfo parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.OpPerformanceData.SessionInfo parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.OpPerformanceData.SessionInfo parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.OpPerformanceData.SessionInfo parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.OpPerformanceData.SessionInfo parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.OpPerformanceData.SessionInfo parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -231,7 +241,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -243,7 +253,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.SessionInfo}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.SessionInfo)
             org.tensorflow.proto.OpPerformanceData.SessionInfoOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -252,7 +262,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_SessionInfo_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -265,15 +275,15 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             intraOpParallelism_ = 0L;
    -
             return this;
           }
     
    @@ -300,43 +310,18 @@ public org.tensorflow.proto.OpPerformanceData.SessionInfo build() {
           @java.lang.Override
           public org.tensorflow.proto.OpPerformanceData.SessionInfo buildPartial() {
             org.tensorflow.proto.OpPerformanceData.SessionInfo result = new org.tensorflow.proto.OpPerformanceData.SessionInfo(this);
    -        result.intraOpParallelism_ = intraOpParallelism_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.OpPerformanceData.SessionInfo result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.intraOpParallelism_ = intraOpParallelism_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.OpPerformanceData.SessionInfo) {
    @@ -380,7 +365,7 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     intraOpParallelism_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   default: {
    @@ -398,6 +383,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private long intraOpParallelism_ ;
           /**
    @@ -414,8 +400,9 @@ public long getIntraOpParallelism() {
            * @return This builder for chaining.
            */
           public Builder setIntraOpParallelism(long value) {
    -        
    +
             intraOpParallelism_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -424,23 +411,11 @@ public Builder setIntraOpParallelism(long value) {
            * @return This builder for chaining.
            */
           public Builder clearIntraOpParallelism() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             intraOpParallelism_ = 0L;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.SessionInfo)
         }
    @@ -556,7 +531,6 @@ boolean containsAttr(
          *
          * map<string, .tensorflow.AttrValue> attr = 2;
          */
    -
         /* nullable */
     org.tensorflow.proto.AttrValue getAttrOrDefault(
             java.lang.String key,
    @@ -569,7 +543,6 @@ org.tensorflow.proto.AttrValue getAttrOrDefault(
          *
          * map<string, .tensorflow.AttrValue> attr = 2;
          */
    -
         org.tensorflow.proto.AttrValue getAttrOrThrow(
             java.lang.String key);
     
    @@ -704,12 +677,21 @@ org.tensorflow.proto.OpPerformanceData.OpInfo.TensorPropertiesOrBuilder getOutpu
        * Protobuf type {@code tensorflow.OpInfo}
        */
       public static final class OpInfo extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.OpInfo)
           OpInfoOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        OpInfo.class.getName());
    +    }
         // Use OpInfo.newBuilder() to construct.
    -    private OpInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private OpInfo(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private OpInfo() {
    @@ -718,18 +700,6 @@ private OpInfo() {
           outputs_ = java.util.Collections.emptyList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new OpInfo();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_OpInfo_descriptor;
    @@ -737,7 +707,7 @@ protected java.lang.Object newInstance(
     
         @SuppressWarnings({"rawtypes"})
         @java.lang.Override
    -    protected com.google.protobuf.MapField internalGetMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
             int number) {
           switch (number) {
             case 2:
    @@ -748,7 +718,7 @@ protected com.google.protobuf.MapField internalGetMapField(
           }
         }
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_OpInfo_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -808,45 +778,43 @@ public interface TensorPropertiesOrBuilder extends
          * Protobuf type {@code tensorflow.OpInfo.TensorProperties}
          */
         public static final class TensorProperties extends
    -        com.google.protobuf.GeneratedMessageV3 implements
    +        com.google.protobuf.GeneratedMessage implements
             // @@protoc_insertion_point(message_implements:tensorflow.OpInfo.TensorProperties)
             TensorPropertiesOrBuilder {
         private static final long serialVersionUID = 0L;
    +      static {
    +        com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +          com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +          /* major= */ 4,
    +          /* minor= */ 28,
    +          /* patch= */ 3,
    +          /* suffix= */ "",
    +          TensorProperties.class.getName());
    +      }
           // Use TensorProperties.newBuilder() to construct.
    -      private TensorProperties(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +      private TensorProperties(com.google.protobuf.GeneratedMessage.Builder builder) {
             super(builder);
           }
           private TensorProperties() {
             dtype_ = 0;
           }
     
    -      @java.lang.Override
    -      @SuppressWarnings({"unused"})
    -      protected java.lang.Object newInstance(
    -          UnusedPrivateParameter unused) {
    -        return new TensorProperties();
    -      }
    -
    -      @java.lang.Override
    -      public final com.google.protobuf.UnknownFieldSet
    -      getUnknownFields() {
    -        return this.unknownFields;
    -      }
           public static final com.google.protobuf.Descriptors.Descriptor
               getDescriptor() {
             return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_OpInfo_TensorProperties_descriptor;
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_OpInfo_TensorProperties_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
                     org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties.class, org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties.Builder.class);
           }
     
    +      private int bitField0_;
           public static final int DTYPE_FIELD_NUMBER = 1;
    -      private int dtype_;
    +      private int dtype_ = 0;
           /**
            * .tensorflow.DataType dtype = 1;
            * @return The enum numeric value on the wire for dtype.
    @@ -859,8 +827,7 @@ protected java.lang.Object newInstance(
            * @return The dtype.
            */
           @java.lang.Override public org.tensorflow.proto.DataType getDtype() {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +        org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
             return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
           }
     
    @@ -872,7 +839,7 @@ protected java.lang.Object newInstance(
            */
           @java.lang.Override
           public boolean hasShape() {
    -        return shape_ != null;
    +        return ((bitField0_ & 0x00000001) != 0);
           }
           /**
            * .tensorflow.TensorShapeProto shape = 2;
    @@ -887,7 +854,7 @@ public org.tensorflow.proto.TensorShapeProto getShape() {
            */
           @java.lang.Override
           public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
    -        return getShape();
    +        return shape_ == null ? org.tensorflow.proto.TensorShapeProto.getDefaultInstance() : shape_;
           }
     
           public static final int VALUE_FIELD_NUMBER = 3;
    @@ -898,7 +865,7 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
            */
           @java.lang.Override
           public boolean hasValue() {
    -        return value_ != null;
    +        return ((bitField0_ & 0x00000002) != 0);
           }
           /**
            * .tensorflow.TensorProto value = 3;
    @@ -913,7 +880,7 @@ public org.tensorflow.proto.TensorProto getValue() {
            */
           @java.lang.Override
           public org.tensorflow.proto.TensorProtoOrBuilder getValueOrBuilder() {
    -        return getValue();
    +        return value_ == null ? org.tensorflow.proto.TensorProto.getDefaultInstance() : value_;
           }
     
           private byte memoizedIsInitialized = -1;
    @@ -933,10 +900,10 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
             if (dtype_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) {
               output.writeEnum(1, dtype_);
             }
    -        if (shape_ != null) {
    +        if (((bitField0_ & 0x00000001) != 0)) {
               output.writeMessage(2, getShape());
             }
    -        if (value_ != null) {
    +        if (((bitField0_ & 0x00000002) != 0)) {
               output.writeMessage(3, getValue());
             }
             getUnknownFields().writeTo(output);
    @@ -952,11 +919,11 @@ public int getSerializedSize() {
               size += com.google.protobuf.CodedOutputStream
                 .computeEnumSize(1, dtype_);
             }
    -        if (shape_ != null) {
    +        if (((bitField0_ & 0x00000001) != 0)) {
               size += com.google.protobuf.CodedOutputStream
                 .computeMessageSize(2, getShape());
             }
    -        if (value_ != null) {
    +        if (((bitField0_ & 0x00000002) != 0)) {
               size += com.google.protobuf.CodedOutputStream
                 .computeMessageSize(3, getValue());
             }
    @@ -1046,39 +1013,41 @@ public static org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties par
           }
           public static org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties parseFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties parseFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
    +
           public static org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties parseDelimitedFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input);
           }
    +
           public static org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties parseDelimitedFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
           }
           public static org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties parseFrom(
               com.google.protobuf.CodedInputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties parseFrom(
               com.google.protobuf.CodedInputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
     
    @@ -1098,7 +1067,7 @@ public Builder toBuilder() {
     
           @java.lang.Override
           protected Builder newBuilderForType(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             Builder builder = new Builder(parent);
             return builder;
           }
    @@ -1110,7 +1079,7 @@ protected Builder newBuilderForType(
            * Protobuf type {@code tensorflow.OpInfo.TensorProperties}
            */
           public static final class Builder extends
    -          com.google.protobuf.GeneratedMessageV3.Builder implements
    +          com.google.protobuf.GeneratedMessage.Builder implements
               // @@protoc_insertion_point(builder_implements:tensorflow.OpInfo.TensorProperties)
               org.tensorflow.proto.OpPerformanceData.OpInfo.TensorPropertiesOrBuilder {
             public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1119,7 +1088,7 @@ public static final class Builder extends
             }
     
             @java.lang.Override
    -        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
                 internalGetFieldAccessorTable() {
               return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_OpInfo_TensorProperties_fieldAccessorTable
                   .ensureFieldAccessorsInitialized(
    @@ -1128,29 +1097,34 @@ public static final class Builder extends
     
             // Construct using org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties.newBuilder()
             private Builder() {
    -
    +          maybeForceBuilderInitialization();
             }
     
             private Builder(
    -            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
               super(parent);
    -
    +          maybeForceBuilderInitialization();
    +        }
    +        private void maybeForceBuilderInitialization() {
    +          if (com.google.protobuf.GeneratedMessage
    +                  .alwaysUseFieldBuilders) {
    +            getShapeFieldBuilder();
    +            getValueFieldBuilder();
    +          }
             }
             @java.lang.Override
             public Builder clear() {
               super.clear();
    +          bitField0_ = 0;
               dtype_ = 0;
    -
    -          if (shapeBuilder_ == null) {
    -            shape_ = null;
    -          } else {
    -            shape_ = null;
    +          shape_ = null;
    +          if (shapeBuilder_ != null) {
    +            shapeBuilder_.dispose();
                 shapeBuilder_ = null;
               }
    -          if (valueBuilder_ == null) {
    -            value_ = null;
    -          } else {
    -            value_ = null;
    +          value_ = null;
    +          if (valueBuilder_ != null) {
    +            valueBuilder_.dispose();
                 valueBuilder_ = null;
               }
               return this;
    @@ -1179,53 +1153,32 @@ public org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties build() {
             @java.lang.Override
             public org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties buildPartial() {
               org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties result = new org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties(this);
    -          result.dtype_ = dtype_;
    -          if (shapeBuilder_ == null) {
    -            result.shape_ = shape_;
    -          } else {
    -            result.shape_ = shapeBuilder_.build();
    -          }
    -          if (valueBuilder_ == null) {
    -            result.value_ = value_;
    -          } else {
    -            result.value_ = valueBuilder_.build();
    -          }
    +          if (bitField0_ != 0) { buildPartial0(result); }
               onBuilt();
               return result;
             }
     
    -        @java.lang.Override
    -        public Builder clone() {
    -          return super.clone();
    -        }
    -        @java.lang.Override
    -        public Builder setField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.setField(field, value);
    -        }
    -        @java.lang.Override
    -        public Builder clearField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field) {
    -          return super.clearField(field);
    -        }
    -        @java.lang.Override
    -        public Builder clearOneof(
    -            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -          return super.clearOneof(oneof);
    -        }
    -        @java.lang.Override
    -        public Builder setRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            int index, java.lang.Object value) {
    -          return super.setRepeatedField(field, index, value);
    -        }
    -        @java.lang.Override
    -        public Builder addRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.addRepeatedField(field, value);
    +        private void buildPartial0(org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties result) {
    +          int from_bitField0_ = bitField0_;
    +          if (((from_bitField0_ & 0x00000001) != 0)) {
    +            result.dtype_ = dtype_;
    +          }
    +          int to_bitField0_ = 0;
    +          if (((from_bitField0_ & 0x00000002) != 0)) {
    +            result.shape_ = shapeBuilder_ == null
    +                ? shape_
    +                : shapeBuilder_.build();
    +            to_bitField0_ |= 0x00000001;
    +          }
    +          if (((from_bitField0_ & 0x00000004) != 0)) {
    +            result.value_ = valueBuilder_ == null
    +                ? value_
    +                : valueBuilder_.build();
    +            to_bitField0_ |= 0x00000002;
    +          }
    +          result.bitField0_ |= to_bitField0_;
             }
    +
             @java.lang.Override
             public Builder mergeFrom(com.google.protobuf.Message other) {
               if (other instanceof org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties) {
    @@ -1275,21 +1228,21 @@ public Builder mergeFrom(
                       break;
                     case 8: {
                       dtype_ = input.readEnum();
    -
    +                  bitField0_ |= 0x00000001;
                       break;
                     } // case 8
                     case 18: {
                       input.readMessage(
                           getShapeFieldBuilder().getBuilder(),
                           extensionRegistry);
    -
    +                  bitField0_ |= 0x00000002;
                       break;
                     } // case 18
                     case 26: {
                       input.readMessage(
                           getValueFieldBuilder().getBuilder(),
                           extensionRegistry);
    -
    +                  bitField0_ |= 0x00000004;
                       break;
                     } // case 26
                     default: {
    @@ -1307,6 +1260,7 @@ public Builder mergeFrom(
               } // finally
               return this;
             }
    +        private int bitField0_;
     
             private int dtype_ = 0;
             /**
    @@ -1322,8 +1276,8 @@ public Builder mergeFrom(
              * @return This builder for chaining.
              */
             public Builder setDtypeValue(int value) {
    -          
               dtype_ = value;
    +          bitField0_ |= 0x00000001;
               onChanged();
               return this;
             }
    @@ -1333,8 +1287,7 @@ public Builder setDtypeValue(int value) {
              */
             @java.lang.Override
             public org.tensorflow.proto.DataType getDtype() {
    -          @SuppressWarnings("deprecation")
    -          org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +          org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
               return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
             }
             /**
    @@ -1346,7 +1299,7 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
               if (value == null) {
                 throw new NullPointerException();
               }
    -          
    +          bitField0_ |= 0x00000001;
               dtype_ = value.getNumber();
               onChanged();
               return this;
    @@ -1356,21 +1309,21 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
              * @return This builder for chaining.
              */
             public Builder clearDtype() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000001);
               dtype_ = 0;
               onChanged();
               return this;
             }
     
             private org.tensorflow.proto.TensorShapeProto shape_;
    -        private com.google.protobuf.SingleFieldBuilderV3<
    +        private com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> shapeBuilder_;
             /**
              * .tensorflow.TensorShapeProto shape = 2;
              * @return Whether the shape field is set.
              */
             public boolean hasShape() {
    -          return shapeBuilder_ != null || shape_ != null;
    +          return ((bitField0_ & 0x00000002) != 0);
             }
             /**
              * .tensorflow.TensorShapeProto shape = 2;
    @@ -1392,11 +1345,11 @@ public Builder setShape(org.tensorflow.proto.TensorShapeProto value) {
                   throw new NullPointerException();
                 }
                 shape_ = value;
    -            onChanged();
               } else {
                 shapeBuilder_.setMessage(value);
               }
    -
    +          bitField0_ |= 0x00000002;
    +          onChanged();
               return this;
             }
             /**
    @@ -1406,11 +1359,11 @@ public Builder setShape(
                 org.tensorflow.proto.TensorShapeProto.Builder builderForValue) {
               if (shapeBuilder_ == null) {
                 shape_ = builderForValue.build();
    -            onChanged();
               } else {
                 shapeBuilder_.setMessage(builderForValue.build());
               }
    -
    +          bitField0_ |= 0x00000002;
    +          onChanged();
               return this;
             }
             /**
    @@ -1418,38 +1371,40 @@ public Builder setShape(
              */
             public Builder mergeShape(org.tensorflow.proto.TensorShapeProto value) {
               if (shapeBuilder_ == null) {
    -            if (shape_ != null) {
    -              shape_ =
    -                org.tensorflow.proto.TensorShapeProto.newBuilder(shape_).mergeFrom(value).buildPartial();
    +            if (((bitField0_ & 0x00000002) != 0) &&
    +              shape_ != null &&
    +              shape_ != org.tensorflow.proto.TensorShapeProto.getDefaultInstance()) {
    +              getShapeBuilder().mergeFrom(value);
                 } else {
                   shape_ = value;
                 }
    -            onChanged();
               } else {
                 shapeBuilder_.mergeFrom(value);
               }
    -
    +          if (shape_ != null) {
    +            bitField0_ |= 0x00000002;
    +            onChanged();
    +          }
               return this;
             }
             /**
              * .tensorflow.TensorShapeProto shape = 2;
              */
             public Builder clearShape() {
    -          if (shapeBuilder_ == null) {
    -            shape_ = null;
    -            onChanged();
    -          } else {
    -            shape_ = null;
    +          bitField0_ = (bitField0_ & ~0x00000002);
    +          shape_ = null;
    +          if (shapeBuilder_ != null) {
    +            shapeBuilder_.dispose();
                 shapeBuilder_ = null;
               }
    -
    +          onChanged();
               return this;
             }
             /**
              * .tensorflow.TensorShapeProto shape = 2;
              */
             public org.tensorflow.proto.TensorShapeProto.Builder getShapeBuilder() {
    -          
    +          bitField0_ |= 0x00000002;
               onChanged();
               return getShapeFieldBuilder().getBuilder();
             }
    @@ -1467,11 +1422,11 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
             /**
              * .tensorflow.TensorShapeProto shape = 2;
              */
    -        private com.google.protobuf.SingleFieldBuilderV3<
    +        private com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> 
                 getShapeFieldBuilder() {
               if (shapeBuilder_ == null) {
    -            shapeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +            shapeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                     org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>(
                         getShape(),
                         getParentForChildren(),
    @@ -1482,14 +1437,14 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
             }
     
             private org.tensorflow.proto.TensorProto value_;
    -        private com.google.protobuf.SingleFieldBuilderV3<
    +        private com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> valueBuilder_;
             /**
              * .tensorflow.TensorProto value = 3;
              * @return Whether the value field is set.
              */
             public boolean hasValue() {
    -          return valueBuilder_ != null || value_ != null;
    +          return ((bitField0_ & 0x00000004) != 0);
             }
             /**
              * .tensorflow.TensorProto value = 3;
    @@ -1511,11 +1466,11 @@ public Builder setValue(org.tensorflow.proto.TensorProto value) {
                   throw new NullPointerException();
                 }
                 value_ = value;
    -            onChanged();
               } else {
                 valueBuilder_.setMessage(value);
               }
    -
    +          bitField0_ |= 0x00000004;
    +          onChanged();
               return this;
             }
             /**
    @@ -1525,11 +1480,11 @@ public Builder setValue(
                 org.tensorflow.proto.TensorProto.Builder builderForValue) {
               if (valueBuilder_ == null) {
                 value_ = builderForValue.build();
    -            onChanged();
               } else {
                 valueBuilder_.setMessage(builderForValue.build());
               }
    -
    +          bitField0_ |= 0x00000004;
    +          onChanged();
               return this;
             }
             /**
    @@ -1537,38 +1492,40 @@ public Builder setValue(
              */
             public Builder mergeValue(org.tensorflow.proto.TensorProto value) {
               if (valueBuilder_ == null) {
    -            if (value_ != null) {
    -              value_ =
    -                org.tensorflow.proto.TensorProto.newBuilder(value_).mergeFrom(value).buildPartial();
    +            if (((bitField0_ & 0x00000004) != 0) &&
    +              value_ != null &&
    +              value_ != org.tensorflow.proto.TensorProto.getDefaultInstance()) {
    +              getValueBuilder().mergeFrom(value);
                 } else {
                   value_ = value;
                 }
    -            onChanged();
               } else {
                 valueBuilder_.mergeFrom(value);
               }
    -
    +          if (value_ != null) {
    +            bitField0_ |= 0x00000004;
    +            onChanged();
    +          }
               return this;
             }
             /**
              * .tensorflow.TensorProto value = 3;
              */
             public Builder clearValue() {
    -          if (valueBuilder_ == null) {
    -            value_ = null;
    -            onChanged();
    -          } else {
    -            value_ = null;
    +          bitField0_ = (bitField0_ & ~0x00000004);
    +          value_ = null;
    +          if (valueBuilder_ != null) {
    +            valueBuilder_.dispose();
                 valueBuilder_ = null;
               }
    -
    +          onChanged();
               return this;
             }
             /**
              * .tensorflow.TensorProto value = 3;
              */
             public org.tensorflow.proto.TensorProto.Builder getValueBuilder() {
    -          
    +          bitField0_ |= 0x00000004;
               onChanged();
               return getValueFieldBuilder().getBuilder();
             }
    @@ -1586,11 +1543,11 @@ public org.tensorflow.proto.TensorProtoOrBuilder getValueOrBuilder() {
             /**
              * .tensorflow.TensorProto value = 3;
              */
    -        private com.google.protobuf.SingleFieldBuilderV3<
    +        private com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> 
                 getValueFieldBuilder() {
               if (valueBuilder_ == null) {
    -            valueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +            valueBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                     org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder>(
                         getValue(),
                         getParentForChildren(),
    @@ -1599,18 +1556,6 @@ public org.tensorflow.proto.TensorProtoOrBuilder getValueOrBuilder() {
               }
               return valueBuilder_;
             }
    -        @java.lang.Override
    -        public final Builder setUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.setUnknownFields(unknownFields);
    -        }
    -
    -        @java.lang.Override
    -        public final Builder mergeUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.mergeUnknownFields(unknownFields);
    -        }
    -
     
             // @@protoc_insertion_point(builder_scope:tensorflow.OpInfo.TensorProperties)
           }
    @@ -1663,8 +1608,10 @@ public org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties getDefault
     
         }
     
    +    private int bitField0_;
         public static final int OP_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object op_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object op_ = "";
         /**
          * 
          * The operation name.  There may be custom parameters in attrs.
    @@ -1721,6 +1668,7 @@ private static final class AttrDefaultEntryHolder {
                       com.google.protobuf.WireFormat.FieldType.MESSAGE,
                       org.tensorflow.proto.AttrValue.getDefaultInstance());
         }
    +    @SuppressWarnings("serial")
         private com.google.protobuf.MapField<
             java.lang.String, org.tensorflow.proto.AttrValue> attr_;
         private com.google.protobuf.MapField
    @@ -1731,7 +1679,6 @@ private static final class AttrDefaultEntryHolder {
           }
           return attr_;
         }
    -
         public int getAttrCount() {
           return internalGetAttr().getMap().size();
         }
    @@ -1742,7 +1689,6 @@ public int getAttrCount() {
          *
          * map<string, .tensorflow.AttrValue> attr = 2;
          */
    -
         @java.lang.Override
         public boolean containsAttr(
             java.lang.String key) {
    @@ -1765,7 +1711,6 @@ public java.util.Map getAttr()
          * map<string, .tensorflow.AttrValue> attr = 2;
          */
         @java.lang.Override
    -
         public java.util.Map getAttrMap() {
           return internalGetAttr().getMap();
         }
    @@ -1777,10 +1722,11 @@ public java.util.Map getAttrMa
          * map<string, .tensorflow.AttrValue> attr = 2;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.AttrValue getAttrOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.AttrValue getAttrOrDefault(
             java.lang.String key,
    -        org.tensorflow.proto.AttrValue defaultValue) {
    +        /* nullable */
    +org.tensorflow.proto.AttrValue defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
           java.util.Map map =
               internalGetAttr().getMap();
    @@ -1794,7 +1740,6 @@ public org.tensorflow.proto.AttrValue getAttrOrDefault(
          * map<string, .tensorflow.AttrValue> attr = 2;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.AttrValue getAttrOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -1807,6 +1752,7 @@ public org.tensorflow.proto.AttrValue getAttrOrThrow(
         }
     
         public static final int INPUTS_FIELD_NUMBER = 3;
    +    @SuppressWarnings("serial")
         private java.util.List inputs_;
         /**
          * repeated .tensorflow.OpInfo.TensorProperties inputs = 3;
    @@ -1847,6 +1793,7 @@ public org.tensorflow.proto.OpPerformanceData.OpInfo.TensorPropertiesOrBuilder g
         }
     
         public static final int OUTPUTS_FIELD_NUMBER = 5;
    +    @SuppressWarnings("serial")
         private java.util.List outputs_;
         /**
          * 
    @@ -1918,7 +1865,7 @@ public org.tensorflow.proto.OpPerformanceData.OpInfo.TensorPropertiesOrBuilder g
          */
         @java.lang.Override
         public boolean hasDevice() {
    -      return device_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -1941,7 +1888,7 @@ public org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties getDevice()
          */
         @java.lang.Override
         public org.tensorflow.proto.DevicePropertiesProtos.DevicePropertiesOrBuilder getDeviceOrBuilder() {
    -      return getDevice();
    +      return device_ == null ? org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties.getDefaultInstance() : device_;
         }
     
         public static final int SESSION_INFO_FIELD_NUMBER = 6;
    @@ -1956,7 +1903,7 @@ public org.tensorflow.proto.DevicePropertiesProtos.DevicePropertiesOrBuilder get
          */
         @java.lang.Override
         public boolean hasSessionInfo() {
    -      return sessionInfo_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -1979,7 +1926,7 @@ public org.tensorflow.proto.OpPerformanceData.SessionInfo getSessionInfo() {
          */
         @java.lang.Override
         public org.tensorflow.proto.OpPerformanceData.SessionInfoOrBuilder getSessionInfoOrBuilder() {
    -      return getSessionInfo();
    +      return sessionInfo_ == null ? org.tensorflow.proto.OpPerformanceData.SessionInfo.getDefaultInstance() : sessionInfo_;
         }
     
         private byte memoizedIsInitialized = -1;
    @@ -1996,10 +1943,10 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(op_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, op_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(op_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, op_);
           }
    -      com.google.protobuf.GeneratedMessageV3
    +      com.google.protobuf.GeneratedMessage
             .serializeStringMapTo(
               output,
               internalGetAttr(),
    @@ -2008,13 +1955,13 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           for (int i = 0; i < inputs_.size(); i++) {
             output.writeMessage(3, inputs_.get(i));
           }
    -      if (device_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(4, getDevice());
           }
           for (int i = 0; i < outputs_.size(); i++) {
             output.writeMessage(5, outputs_.get(i));
           }
    -      if (sessionInfo_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             output.writeMessage(6, getSessionInfo());
           }
           getUnknownFields().writeTo(output);
    @@ -2026,8 +1973,8 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(op_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, op_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(op_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, op_);
           }
           for (java.util.Map.Entry entry
                : internalGetAttr().getMap().entrySet()) {
    @@ -2043,7 +1990,7 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(3, inputs_.get(i));
           }
    -      if (device_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(4, getDevice());
           }
    @@ -2051,7 +1998,7 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(5, outputs_.get(i));
           }
    -      if (sessionInfo_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(6, getSessionInfo());
           }
    @@ -2160,39 +2107,41 @@ public static org.tensorflow.proto.OpPerformanceData.OpInfo parseFrom(
         }
         public static org.tensorflow.proto.OpPerformanceData.OpInfo parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.OpPerformanceData.OpInfo parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.OpPerformanceData.OpInfo parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.OpPerformanceData.OpInfo parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.OpPerformanceData.OpInfo parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.OpPerformanceData.OpInfo parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -2212,7 +2161,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -2225,7 +2174,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.OpInfo}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.OpInfo)
             org.tensorflow.proto.OpPerformanceData.OpInfoOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -2234,7 +2183,7 @@ public static final class Builder extends
           }
     
           @SuppressWarnings({"rawtypes"})
    -      protected com.google.protobuf.MapField internalGetMapField(
    +      protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
               int number) {
             switch (number) {
               case 2:
    @@ -2245,7 +2194,7 @@ protected com.google.protobuf.MapField internalGetMapField(
             }
           }
           @SuppressWarnings({"rawtypes"})
    -      protected com.google.protobuf.MapField internalGetMutableMapField(
    +      protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(
               int number) {
             switch (number) {
               case 2:
    @@ -2256,7 +2205,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
             }
           }
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_OpInfo_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -2265,19 +2214,28 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
     
           // Construct using org.tensorflow.proto.OpPerformanceData.OpInfo.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getInputsFieldBuilder();
    +          getOutputsFieldBuilder();
    +          getDeviceFieldBuilder();
    +          getSessionInfoFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             op_ = "";
    -
             internalGetMutableAttr().clear();
             if (inputsBuilder_ == null) {
               inputs_ = java.util.Collections.emptyList();
    @@ -2285,24 +2243,22 @@ public Builder clear() {
               inputs_ = null;
               inputsBuilder_.clear();
             }
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        bitField0_ = (bitField0_ & ~0x00000004);
             if (outputsBuilder_ == null) {
               outputs_ = java.util.Collections.emptyList();
             } else {
               outputs_ = null;
               outputsBuilder_.clear();
             }
    -        bitField0_ = (bitField0_ & ~0x00000004);
    -        if (deviceBuilder_ == null) {
    -          device_ = null;
    -        } else {
    -          device_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000008);
    +        device_ = null;
    +        if (deviceBuilder_ != null) {
    +          deviceBuilder_.dispose();
               deviceBuilder_ = null;
             }
    -        if (sessionInfoBuilder_ == null) {
    -          sessionInfo_ = null;
    -        } else {
    -          sessionInfo_ = null;
    +        sessionInfo_ = null;
    +        if (sessionInfoBuilder_ != null) {
    +          sessionInfoBuilder_.dispose();
               sessionInfoBuilder_ = null;
             }
             return this;
    @@ -2331,74 +2287,57 @@ public org.tensorflow.proto.OpPerformanceData.OpInfo build() {
           @java.lang.Override
           public org.tensorflow.proto.OpPerformanceData.OpInfo buildPartial() {
             org.tensorflow.proto.OpPerformanceData.OpInfo result = new org.tensorflow.proto.OpPerformanceData.OpInfo(this);
    -        int from_bitField0_ = bitField0_;
    -        result.op_ = op_;
    -        result.attr_ = internalGetAttr();
    -        result.attr_.makeImmutable();
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.OpPerformanceData.OpInfo result) {
             if (inputsBuilder_ == null) {
    -          if (((bitField0_ & 0x00000002) != 0)) {
    +          if (((bitField0_ & 0x00000004) != 0)) {
                 inputs_ = java.util.Collections.unmodifiableList(inputs_);
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            bitField0_ = (bitField0_ & ~0x00000004);
               }
               result.inputs_ = inputs_;
             } else {
               result.inputs_ = inputsBuilder_.build();
             }
             if (outputsBuilder_ == null) {
    -          if (((bitField0_ & 0x00000004) != 0)) {
    +          if (((bitField0_ & 0x00000008) != 0)) {
                 outputs_ = java.util.Collections.unmodifiableList(outputs_);
    -            bitField0_ = (bitField0_ & ~0x00000004);
    +            bitField0_ = (bitField0_ & ~0x00000008);
               }
               result.outputs_ = outputs_;
             } else {
               result.outputs_ = outputsBuilder_.build();
             }
    -        if (deviceBuilder_ == null) {
    -          result.device_ = device_;
    -        } else {
    -          result.device_ = deviceBuilder_.build();
    +      }
    +
    +      private void buildPartial0(org.tensorflow.proto.OpPerformanceData.OpInfo result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.op_ = op_;
             }
    -        if (sessionInfoBuilder_ == null) {
    -          result.sessionInfo_ = sessionInfo_;
    -        } else {
    -          result.sessionInfo_ = sessionInfoBuilder_.build();
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.attr_ = internalGetAttr().build(AttrDefaultEntryHolder.defaultEntry);
             }
    -        onBuilt();
    -        return result;
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000010) != 0)) {
    +          result.device_ = deviceBuilder_ == null
    +              ? device_
    +              : deviceBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
    +        }
    +        if (((from_bitField0_ & 0x00000020) != 0)) {
    +          result.sessionInfo_ = sessionInfoBuilder_ == null
    +              ? sessionInfo_
    +              : sessionInfoBuilder_.build();
    +          to_bitField0_ |= 0x00000002;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    -      }
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.OpPerformanceData.OpInfo) {
    @@ -2413,15 +2352,17 @@ public Builder mergeFrom(org.tensorflow.proto.OpPerformanceData.OpInfo other) {
             if (other == org.tensorflow.proto.OpPerformanceData.OpInfo.getDefaultInstance()) return this;
             if (!other.getOp().isEmpty()) {
               op_ = other.op_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             internalGetMutableAttr().mergeFrom(
                 other.internalGetAttr());
    +        bitField0_ |= 0x00000002;
             if (inputsBuilder_ == null) {
               if (!other.inputs_.isEmpty()) {
                 if (inputs_.isEmpty()) {
                   inputs_ = other.inputs_;
    -              bitField0_ = (bitField0_ & ~0x00000002);
    +              bitField0_ = (bitField0_ & ~0x00000004);
                 } else {
                   ensureInputsIsMutable();
                   inputs_.addAll(other.inputs_);
    @@ -2434,9 +2375,9 @@ public Builder mergeFrom(org.tensorflow.proto.OpPerformanceData.OpInfo other) {
                   inputsBuilder_.dispose();
                   inputsBuilder_ = null;
                   inputs_ = other.inputs_;
    -              bitField0_ = (bitField0_ & ~0x00000002);
    +              bitField0_ = (bitField0_ & ~0x00000004);
                   inputsBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getInputsFieldBuilder() : null;
                 } else {
                   inputsBuilder_.addAllMessages(other.inputs_);
    @@ -2447,7 +2388,7 @@ public Builder mergeFrom(org.tensorflow.proto.OpPerformanceData.OpInfo other) {
               if (!other.outputs_.isEmpty()) {
                 if (outputs_.isEmpty()) {
                   outputs_ = other.outputs_;
    -              bitField0_ = (bitField0_ & ~0x00000004);
    +              bitField0_ = (bitField0_ & ~0x00000008);
                 } else {
                   ensureOutputsIsMutable();
                   outputs_.addAll(other.outputs_);
    @@ -2460,9 +2401,9 @@ public Builder mergeFrom(org.tensorflow.proto.OpPerformanceData.OpInfo other) {
                   outputsBuilder_.dispose();
                   outputsBuilder_ = null;
                   outputs_ = other.outputs_;
    -              bitField0_ = (bitField0_ & ~0x00000004);
    +              bitField0_ = (bitField0_ & ~0x00000008);
                   outputsBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getOutputsFieldBuilder() : null;
                 } else {
                   outputsBuilder_.addAllMessages(other.outputs_);
    @@ -2503,15 +2444,16 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     op_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     com.google.protobuf.MapEntry
                     attr__ = input.readMessage(
                         AttrDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
    -                internalGetMutableAttr().getMutableMap().put(
    +                internalGetMutableAttr().ensureBuilderMap().put(
                         attr__.getKey(), attr__.getValue());
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 26: {
    @@ -2531,7 +2473,7 @@ public Builder mergeFrom(
                     input.readMessage(
                         getDeviceFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000010;
                     break;
                   } // case 34
                   case 42: {
    @@ -2551,7 +2493,7 @@ public Builder mergeFrom(
                     input.readMessage(
                         getSessionInfoFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000020;
                     break;
                   } // case 50
                   default: {
    @@ -2624,11 +2566,9 @@ public java.lang.String getOp() {
            */
           public Builder setOp(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             op_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -2641,8 +2581,8 @@ public Builder setOp(
            * @return This builder for chaining.
            */
           public Builder clearOp() {
    -        
             op_ = getDefaultInstance().getOp();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -2657,41 +2597,48 @@ public Builder clearOp() {
            */
           public Builder setOpBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             op_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
     
    -      private com.google.protobuf.MapField<
    -          java.lang.String, org.tensorflow.proto.AttrValue> attr_;
    -      private com.google.protobuf.MapField
    -      internalGetAttr() {
    +      private static final class AttrConverter implements com.google.protobuf.MapFieldBuilder.Converter {
    +        @java.lang.Override
    +        public org.tensorflow.proto.AttrValue build(org.tensorflow.proto.AttrValueOrBuilder val) {
    +          if (val instanceof org.tensorflow.proto.AttrValue) { return (org.tensorflow.proto.AttrValue) val; }
    +          return ((org.tensorflow.proto.AttrValue.Builder) val).build();
    +        }
    +
    +        @java.lang.Override
    +        public com.google.protobuf.MapEntry defaultEntry() {
    +          return AttrDefaultEntryHolder.defaultEntry;
    +        }
    +      };
    +      private static final AttrConverter attrConverter = new AttrConverter();
    +
    +      private com.google.protobuf.MapFieldBuilder<
    +          java.lang.String, org.tensorflow.proto.AttrValueOrBuilder, org.tensorflow.proto.AttrValue, org.tensorflow.proto.AttrValue.Builder> attr_;
    +      private com.google.protobuf.MapFieldBuilder
    +          internalGetAttr() {
             if (attr_ == null) {
    -          return com.google.protobuf.MapField.emptyMapField(
    -              AttrDefaultEntryHolder.defaultEntry);
    +          return new com.google.protobuf.MapFieldBuilder<>(attrConverter);
             }
             return attr_;
           }
    -      private com.google.protobuf.MapField
    -      internalGetMutableAttr() {
    -        onChanged();;
    +      private com.google.protobuf.MapFieldBuilder
    +          internalGetMutableAttr() {
             if (attr_ == null) {
    -          attr_ = com.google.protobuf.MapField.newMapField(
    -              AttrDefaultEntryHolder.defaultEntry);
    -        }
    -        if (!attr_.isMutable()) {
    -          attr_ = attr_.copy();
    +          attr_ = new com.google.protobuf.MapFieldBuilder<>(attrConverter);
             }
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return attr_;
           }
    -
           public int getAttrCount() {
    -        return internalGetAttr().getMap().size();
    +        return internalGetAttr().ensureBuilderMap().size();
           }
           /**
            * 
    @@ -2700,12 +2647,11 @@ public int getAttrCount() {
            *
            * map<string, .tensorflow.AttrValue> attr = 2;
            */
    -
           @java.lang.Override
           public boolean containsAttr(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        return internalGetAttr().getMap().containsKey(key);
    +        return internalGetAttr().ensureBuilderMap().containsKey(key);
           }
           /**
            * Use {@link #getAttrMap()} instead.
    @@ -2723,9 +2669,8 @@ public java.util.Map getAttr()
            * map<string, .tensorflow.AttrValue> attr = 2;
            */
           @java.lang.Override
    -
           public java.util.Map getAttrMap() {
    -        return internalGetAttr().getMap();
    +        return internalGetAttr().getImmutableMap();
           }
           /**
            * 
    @@ -2735,14 +2680,14 @@ public java.util.Map getAttrMa
            * map<string, .tensorflow.AttrValue> attr = 2;
            */
           @java.lang.Override
    -
    -      public org.tensorflow.proto.AttrValue getAttrOrDefault(
    +      public /* nullable */
    +org.tensorflow.proto.AttrValue getAttrOrDefault(
               java.lang.String key,
    -          org.tensorflow.proto.AttrValue defaultValue) {
    +          /* nullable */
    +org.tensorflow.proto.AttrValue defaultValue) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        java.util.Map map =
    -            internalGetAttr().getMap();
    -        return map.containsKey(key) ? map.get(key) : defaultValue;
    +        java.util.Map map = internalGetMutableAttr().ensureBuilderMap();
    +        return map.containsKey(key) ? attrConverter.build(map.get(key)) : defaultValue;
           }
           /**
            * 
    @@ -2752,21 +2697,18 @@ public org.tensorflow.proto.AttrValue getAttrOrDefault(
            * map<string, .tensorflow.AttrValue> attr = 2;
            */
           @java.lang.Override
    -
           public org.tensorflow.proto.AttrValue getAttrOrThrow(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        java.util.Map map =
    -            internalGetAttr().getMap();
    +        java.util.Map map = internalGetMutableAttr().ensureBuilderMap();
             if (!map.containsKey(key)) {
               throw new java.lang.IllegalArgumentException();
             }
    -        return map.get(key);
    +        return attrConverter.build(map.get(key));
           }
    -
           public Builder clearAttr() {
    -        internalGetMutableAttr().getMutableMap()
    -            .clear();
    +        bitField0_ = (bitField0_ & ~0x00000002);
    +        internalGetMutableAttr().clear();
             return this;
           }
           /**
    @@ -2776,11 +2718,10 @@ public Builder clearAttr() {
            *
            * map<string, .tensorflow.AttrValue> attr = 2;
            */
    -
           public Builder removeAttr(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        internalGetMutableAttr().getMutableMap()
    +        internalGetMutableAttr().ensureBuilderMap()
                 .remove(key);
             return this;
           }
    @@ -2789,8 +2730,9 @@ public Builder removeAttr(
            */
           @java.lang.Deprecated
           public java.util.Map
    -      getMutableAttr() {
    -        return internalGetMutableAttr().getMutableMap();
    +          getMutableAttr() {
    +        bitField0_ |= 0x00000002;
    +        return internalGetMutableAttr().ensureMessageMap();
           }
           /**
            * 
    @@ -2803,12 +2745,10 @@ public Builder putAttr(
               java.lang.String key,
               org.tensorflow.proto.AttrValue value) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    -        internalGetMutableAttr().getMutableMap()
    +        if (value == null) { throw new NullPointerException("map value"); }
    +        internalGetMutableAttr().ensureBuilderMap()
                 .put(key, value);
    +        bitField0_ |= 0x00000002;
             return this;
           }
           /**
    @@ -2818,24 +2758,50 @@ public Builder putAttr(
            *
            * map<string, .tensorflow.AttrValue> attr = 2;
            */
    -
           public Builder putAllAttr(
               java.util.Map values) {
    -        internalGetMutableAttr().getMutableMap()
    +        for (java.util.Map.Entry e : values.entrySet()) {
    +          if (e.getKey() == null || e.getValue() == null) {
    +            throw new NullPointerException();
    +          }
    +        }
    +        internalGetMutableAttr().ensureBuilderMap()
                 .putAll(values);
    +        bitField0_ |= 0x00000002;
             return this;
           }
    +      /**
    +       * 
    +       * Custom parameters impacting the behavior of the op.
    +       * 
    + * + * map<string, .tensorflow.AttrValue> attr = 2; + */ + public org.tensorflow.proto.AttrValue.Builder putAttrBuilderIfAbsent( + java.lang.String key) { + java.util.Map builderMap = internalGetMutableAttr().ensureBuilderMap(); + org.tensorflow.proto.AttrValueOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.AttrValue.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.AttrValue) { + entry = ((org.tensorflow.proto.AttrValue) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.AttrValue.Builder) entry; + } private java.util.List inputs_ = java.util.Collections.emptyList(); private void ensureInputsIsMutable() { - if (!((bitField0_ & 0x00000002) != 0)) { + if (!((bitField0_ & 0x00000004) != 0)) { inputs_ = new java.util.ArrayList(inputs_); - bitField0_ |= 0x00000002; + bitField0_ |= 0x00000004; } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties, org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties.Builder, org.tensorflow.proto.OpPerformanceData.OpInfo.TensorPropertiesOrBuilder> inputsBuilder_; /** @@ -2981,7 +2947,7 @@ public Builder addAllInputs( public Builder clearInputs() { if (inputsBuilder_ == null) { inputs_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); + bitField0_ = (bitField0_ & ~0x00000004); onChanged(); } else { inputsBuilder_.clear(); @@ -3051,14 +3017,14 @@ public org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties.Builder ad getInputsBuilderList() { return getInputsFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties, org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties.Builder, org.tensorflow.proto.OpPerformanceData.OpInfo.TensorPropertiesOrBuilder> getInputsFieldBuilder() { if (inputsBuilder_ == null) { - inputsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + inputsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties, org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties.Builder, org.tensorflow.proto.OpPerformanceData.OpInfo.TensorPropertiesOrBuilder>( inputs_, - ((bitField0_ & 0x00000002) != 0), + ((bitField0_ & 0x00000004) != 0), getParentForChildren(), isClean()); inputs_ = null; @@ -3069,13 +3035,13 @@ public org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties.Builder ad private java.util.List outputs_ = java.util.Collections.emptyList(); private void ensureOutputsIsMutable() { - if (!((bitField0_ & 0x00000004) != 0)) { + if (!((bitField0_ & 0x00000008) != 0)) { outputs_ = new java.util.ArrayList(outputs_); - bitField0_ |= 0x00000004; + bitField0_ |= 0x00000008; } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties, org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties.Builder, org.tensorflow.proto.OpPerformanceData.OpInfo.TensorPropertiesOrBuilder> outputsBuilder_; /** @@ -3265,7 +3231,7 @@ public Builder addAllOutputs( public Builder clearOutputs() { if (outputsBuilder_ == null) { outputs_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000004); + bitField0_ = (bitField0_ & ~0x00000008); onChanged(); } else { outputsBuilder_.clear(); @@ -3363,14 +3329,14 @@ public org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties.Builder ad getOutputsBuilderList() { return getOutputsFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties, org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties.Builder, org.tensorflow.proto.OpPerformanceData.OpInfo.TensorPropertiesOrBuilder> getOutputsFieldBuilder() { if (outputsBuilder_ == null) { - outputsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + outputsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties, org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties.Builder, org.tensorflow.proto.OpPerformanceData.OpInfo.TensorPropertiesOrBuilder>( outputs_, - ((bitField0_ & 0x00000004) != 0), + ((bitField0_ & 0x00000008) != 0), getParentForChildren(), isClean()); outputs_ = null; @@ -3379,7 +3345,7 @@ public org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties.Builder ad } private org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties device_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties, org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties.Builder, org.tensorflow.proto.DevicePropertiesProtos.DevicePropertiesOrBuilder> deviceBuilder_; /** *
    @@ -3390,7 +3356,7 @@ public org.tensorflow.proto.OpPerformanceData.OpInfo.TensorProperties.Builder ad
            * @return Whether the device field is set.
            */
           public boolean hasDevice() {
    -        return deviceBuilder_ != null || device_ != null;
    +        return ((bitField0_ & 0x00000010) != 0);
           }
           /**
            * 
    @@ -3420,11 +3386,11 @@ public Builder setDevice(org.tensorflow.proto.DevicePropertiesProtos.DevicePrope
                 throw new NullPointerException();
               }
               device_ = value;
    -          onChanged();
             } else {
               deviceBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000010;
    +        onChanged();
             return this;
           }
           /**
    @@ -3438,11 +3404,11 @@ public Builder setDevice(
               org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties.Builder builderForValue) {
             if (deviceBuilder_ == null) {
               device_ = builderForValue.build();
    -          onChanged();
             } else {
               deviceBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000010;
    +        onChanged();
             return this;
           }
           /**
    @@ -3454,17 +3420,20 @@ public Builder setDevice(
            */
           public Builder mergeDevice(org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties value) {
             if (deviceBuilder_ == null) {
    -          if (device_ != null) {
    -            device_ =
    -              org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties.newBuilder(device_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000010) != 0) &&
    +            device_ != null &&
    +            device_ != org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties.getDefaultInstance()) {
    +            getDeviceBuilder().mergeFrom(value);
               } else {
                 device_ = value;
               }
    -          onChanged();
             } else {
               deviceBuilder_.mergeFrom(value);
             }
    -
    +        if (device_ != null) {
    +          bitField0_ |= 0x00000010;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -3475,14 +3444,13 @@ public Builder mergeDevice(org.tensorflow.proto.DevicePropertiesProtos.DevicePro
            * .tensorflow.DeviceProperties device = 4;
            */
           public Builder clearDevice() {
    -        if (deviceBuilder_ == null) {
    -          device_ = null;
    -          onChanged();
    -        } else {
    -          device_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000010);
    +        device_ = null;
    +        if (deviceBuilder_ != null) {
    +          deviceBuilder_.dispose();
               deviceBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -3493,7 +3461,7 @@ public Builder clearDevice() {
            * .tensorflow.DeviceProperties device = 4;
            */
           public org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties.Builder getDeviceBuilder() {
    -        
    +        bitField0_ |= 0x00000010;
             onChanged();
             return getDeviceFieldBuilder().getBuilder();
           }
    @@ -3519,11 +3487,11 @@ public org.tensorflow.proto.DevicePropertiesProtos.DevicePropertiesOrBuilder get
            *
            * .tensorflow.DeviceProperties device = 4;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties, org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties.Builder, org.tensorflow.proto.DevicePropertiesProtos.DevicePropertiesOrBuilder> 
               getDeviceFieldBuilder() {
             if (deviceBuilder_ == null) {
    -          deviceBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          deviceBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties, org.tensorflow.proto.DevicePropertiesProtos.DeviceProperties.Builder, org.tensorflow.proto.DevicePropertiesProtos.DevicePropertiesOrBuilder>(
                       getDevice(),
                       getParentForChildren(),
    @@ -3534,7 +3502,7 @@ public org.tensorflow.proto.DevicePropertiesProtos.DevicePropertiesOrBuilder get
           }
     
           private org.tensorflow.proto.OpPerformanceData.SessionInfo sessionInfo_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.OpPerformanceData.SessionInfo, org.tensorflow.proto.OpPerformanceData.SessionInfo.Builder, org.tensorflow.proto.OpPerformanceData.SessionInfoOrBuilder> sessionInfoBuilder_;
           /**
            * 
    @@ -3545,7 +3513,7 @@ public org.tensorflow.proto.DevicePropertiesProtos.DevicePropertiesOrBuilder get
            * @return Whether the sessionInfo field is set.
            */
           public boolean hasSessionInfo() {
    -        return sessionInfoBuilder_ != null || sessionInfo_ != null;
    +        return ((bitField0_ & 0x00000020) != 0);
           }
           /**
            * 
    @@ -3575,11 +3543,11 @@ public Builder setSessionInfo(org.tensorflow.proto.OpPerformanceData.SessionInfo
                 throw new NullPointerException();
               }
               sessionInfo_ = value;
    -          onChanged();
             } else {
               sessionInfoBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000020;
    +        onChanged();
             return this;
           }
           /**
    @@ -3593,11 +3561,11 @@ public Builder setSessionInfo(
               org.tensorflow.proto.OpPerformanceData.SessionInfo.Builder builderForValue) {
             if (sessionInfoBuilder_ == null) {
               sessionInfo_ = builderForValue.build();
    -          onChanged();
             } else {
               sessionInfoBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000020;
    +        onChanged();
             return this;
           }
           /**
    @@ -3609,17 +3577,20 @@ public Builder setSessionInfo(
            */
           public Builder mergeSessionInfo(org.tensorflow.proto.OpPerformanceData.SessionInfo value) {
             if (sessionInfoBuilder_ == null) {
    -          if (sessionInfo_ != null) {
    -            sessionInfo_ =
    -              org.tensorflow.proto.OpPerformanceData.SessionInfo.newBuilder(sessionInfo_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000020) != 0) &&
    +            sessionInfo_ != null &&
    +            sessionInfo_ != org.tensorflow.proto.OpPerformanceData.SessionInfo.getDefaultInstance()) {
    +            getSessionInfoBuilder().mergeFrom(value);
               } else {
                 sessionInfo_ = value;
               }
    -          onChanged();
             } else {
               sessionInfoBuilder_.mergeFrom(value);
             }
    -
    +        if (sessionInfo_ != null) {
    +          bitField0_ |= 0x00000020;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -3630,14 +3601,13 @@ public Builder mergeSessionInfo(org.tensorflow.proto.OpPerformanceData.SessionIn
            * .tensorflow.SessionInfo session_info = 6;
            */
           public Builder clearSessionInfo() {
    -        if (sessionInfoBuilder_ == null) {
    -          sessionInfo_ = null;
    -          onChanged();
    -        } else {
    -          sessionInfo_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000020);
    +        sessionInfo_ = null;
    +        if (sessionInfoBuilder_ != null) {
    +          sessionInfoBuilder_.dispose();
               sessionInfoBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -3648,7 +3618,7 @@ public Builder clearSessionInfo() {
            * .tensorflow.SessionInfo session_info = 6;
            */
           public org.tensorflow.proto.OpPerformanceData.SessionInfo.Builder getSessionInfoBuilder() {
    -        
    +        bitField0_ |= 0x00000020;
             onChanged();
             return getSessionInfoFieldBuilder().getBuilder();
           }
    @@ -3674,11 +3644,11 @@ public org.tensorflow.proto.OpPerformanceData.SessionInfoOrBuilder getSessionInf
            *
            * .tensorflow.SessionInfo session_info = 6;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.OpPerformanceData.SessionInfo, org.tensorflow.proto.OpPerformanceData.SessionInfo.Builder, org.tensorflow.proto.OpPerformanceData.SessionInfoOrBuilder> 
               getSessionInfoFieldBuilder() {
             if (sessionInfoBuilder_ == null) {
    -          sessionInfoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          sessionInfoBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.OpPerformanceData.SessionInfo, org.tensorflow.proto.OpPerformanceData.SessionInfo.Builder, org.tensorflow.proto.OpPerformanceData.SessionInfoOrBuilder>(
                       getSessionInfo(),
                       getParentForChildren(),
    @@ -3687,18 +3657,6 @@ public org.tensorflow.proto.OpPerformanceData.SessionInfoOrBuilder getSessionInf
             }
             return sessionInfoBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.OpInfo)
         }
    @@ -3771,36 +3729,33 @@ public interface NormalDistributionOrBuilder extends
        * Protobuf type {@code tensorflow.NormalDistribution}
        */
       public static final class NormalDistribution extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.NormalDistribution)
           NormalDistributionOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        NormalDistribution.class.getName());
    +    }
         // Use NormalDistribution.newBuilder() to construct.
    -    private NormalDistribution(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private NormalDistribution(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private NormalDistribution() {
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new NormalDistribution();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_NormalDistribution_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_NormalDistribution_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -3808,7 +3763,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int MU_FIELD_NUMBER = 1;
    -    private double mu_;
    +    private double mu_ = 0D;
         /**
          * double mu = 1;
          * @return The mu.
    @@ -3819,7 +3774,7 @@ public double getMu() {
         }
     
         public static final int SIGMA_FIELD_NUMBER = 2;
    -    private double sigma_;
    +    private double sigma_ = 0D;
         /**
          * double sigma = 2;
          * @return The sigma.
    @@ -3943,39 +3898,41 @@ public static org.tensorflow.proto.OpPerformanceData.NormalDistribution parseFro
         }
         public static org.tensorflow.proto.OpPerformanceData.NormalDistribution parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.OpPerformanceData.NormalDistribution parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.OpPerformanceData.NormalDistribution parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.OpPerformanceData.NormalDistribution parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.OpPerformanceData.NormalDistribution parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.OpPerformanceData.NormalDistribution parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -3995,7 +3952,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -4003,7 +3960,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.NormalDistribution}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.NormalDistribution)
             org.tensorflow.proto.OpPerformanceData.NormalDistributionOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -4012,7 +3969,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_NormalDistribution_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -4025,17 +3982,16 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             mu_ = 0D;
    -
             sigma_ = 0D;
    -
             return this;
           }
     
    @@ -4062,44 +4018,21 @@ public org.tensorflow.proto.OpPerformanceData.NormalDistribution build() {
           @java.lang.Override
           public org.tensorflow.proto.OpPerformanceData.NormalDistribution buildPartial() {
             org.tensorflow.proto.OpPerformanceData.NormalDistribution result = new org.tensorflow.proto.OpPerformanceData.NormalDistribution(this);
    -        result.mu_ = mu_;
    -        result.sigma_ = sigma_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.OpPerformanceData.NormalDistribution result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.mu_ = mu_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.sigma_ = sigma_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.OpPerformanceData.NormalDistribution) {
    @@ -4146,12 +4079,12 @@ public Builder mergeFrom(
                     break;
                   case 9: {
                     mu_ = input.readDouble();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 9
                   case 17: {
                     sigma_ = input.readDouble();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 17
                   default: {
    @@ -4169,6 +4102,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private double mu_ ;
           /**
    @@ -4185,8 +4119,9 @@ public double getMu() {
            * @return This builder for chaining.
            */
           public Builder setMu(double value) {
    -        
    +
             mu_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -4195,7 +4130,7 @@ public Builder setMu(double value) {
            * @return This builder for chaining.
            */
           public Builder clearMu() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             mu_ = 0D;
             onChanged();
             return this;
    @@ -4216,8 +4151,9 @@ public double getSigma() {
            * @return This builder for chaining.
            */
           public Builder setSigma(double value) {
    -        
    +
             sigma_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -4226,23 +4162,11 @@ public Builder setSigma(double value) {
            * @return This builder for chaining.
            */
           public Builder clearSigma() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000002);
             sigma_ = 0D;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.NormalDistribution)
         }
    @@ -4315,36 +4239,33 @@ public interface LogNormalDistributionOrBuilder extends
        * Protobuf type {@code tensorflow.LogNormalDistribution}
        */
       public static final class LogNormalDistribution extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.LogNormalDistribution)
           LogNormalDistributionOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        LogNormalDistribution.class.getName());
    +    }
         // Use LogNormalDistribution.newBuilder() to construct.
    -    private LogNormalDistribution(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private LogNormalDistribution(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private LogNormalDistribution() {
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new LogNormalDistribution();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_LogNormalDistribution_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_LogNormalDistribution_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -4352,7 +4273,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int MU_FIELD_NUMBER = 1;
    -    private double mu_;
    +    private double mu_ = 0D;
         /**
          * double mu = 1;
          * @return The mu.
    @@ -4363,7 +4284,7 @@ public double getMu() {
         }
     
         public static final int SIGMA_FIELD_NUMBER = 2;
    -    private double sigma_;
    +    private double sigma_ = 0D;
         /**
          * double sigma = 2;
          * @return The sigma.
    @@ -4487,39 +4408,41 @@ public static org.tensorflow.proto.OpPerformanceData.LogNormalDistribution parse
         }
         public static org.tensorflow.proto.OpPerformanceData.LogNormalDistribution parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.OpPerformanceData.LogNormalDistribution parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.OpPerformanceData.LogNormalDistribution parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.OpPerformanceData.LogNormalDistribution parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.OpPerformanceData.LogNormalDistribution parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.OpPerformanceData.LogNormalDistribution parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -4539,7 +4462,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -4547,7 +4470,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.LogNormalDistribution}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.LogNormalDistribution)
             org.tensorflow.proto.OpPerformanceData.LogNormalDistributionOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -4556,7 +4479,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_LogNormalDistribution_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -4569,17 +4492,16 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             mu_ = 0D;
    -
             sigma_ = 0D;
    -
             return this;
           }
     
    @@ -4606,44 +4528,21 @@ public org.tensorflow.proto.OpPerformanceData.LogNormalDistribution build() {
           @java.lang.Override
           public org.tensorflow.proto.OpPerformanceData.LogNormalDistribution buildPartial() {
             org.tensorflow.proto.OpPerformanceData.LogNormalDistribution result = new org.tensorflow.proto.OpPerformanceData.LogNormalDistribution(this);
    -        result.mu_ = mu_;
    -        result.sigma_ = sigma_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.OpPerformanceData.LogNormalDistribution result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.mu_ = mu_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.sigma_ = sigma_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.OpPerformanceData.LogNormalDistribution) {
    @@ -4690,12 +4589,12 @@ public Builder mergeFrom(
                     break;
                   case 9: {
                     mu_ = input.readDouble();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 9
                   case 17: {
                     sigma_ = input.readDouble();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 17
                   default: {
    @@ -4713,6 +4612,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private double mu_ ;
           /**
    @@ -4729,8 +4629,9 @@ public double getMu() {
            * @return This builder for chaining.
            */
           public Builder setMu(double value) {
    -        
    +
             mu_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -4739,7 +4640,7 @@ public Builder setMu(double value) {
            * @return This builder for chaining.
            */
           public Builder clearMu() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             mu_ = 0D;
             onChanged();
             return this;
    @@ -4760,8 +4661,9 @@ public double getSigma() {
            * @return This builder for chaining.
            */
           public Builder setSigma(double value) {
    -        
    +
             sigma_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -4770,23 +4672,11 @@ public Builder setSigma(double value) {
            * @return This builder for chaining.
            */
           public Builder clearSigma() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000002);
             sigma_ = 0D;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.LogNormalDistribution)
         }
    @@ -5028,7 +4918,7 @@ public interface OpPerformanceOrBuilder extends
          */
         org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemoryOrBuilder getOpMemoryOrBuilder();
     
    -    public org.tensorflow.proto.OpPerformanceData.OpPerformance.ExecutionTimeCase getExecutionTimeCase();
    +    org.tensorflow.proto.OpPerformanceData.OpPerformance.ExecutionTimeCase getExecutionTimeCase();
       }
       /**
        * 
    @@ -5038,37 +4928,34 @@ public interface OpPerformanceOrBuilder extends
        * Protobuf type {@code tensorflow.OpPerformance}
        */
       public static final class OpPerformance extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.OpPerformance)
           OpPerformanceOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        OpPerformance.class.getName());
    +    }
         // Use OpPerformance.newBuilder() to construct.
    -    private OpPerformance(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private OpPerformance(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private OpPerformance() {
           node_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new OpPerformance();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_OpPerformance_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_OpPerformance_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -5148,37 +5035,34 @@ public interface OpMemoryOrBuilder extends
          * Protobuf type {@code tensorflow.OpPerformance.OpMemory}
          */
         public static final class OpMemory extends
    -        com.google.protobuf.GeneratedMessageV3 implements
    +        com.google.protobuf.GeneratedMessage implements
             // @@protoc_insertion_point(message_implements:tensorflow.OpPerformance.OpMemory)
             OpMemoryOrBuilder {
         private static final long serialVersionUID = 0L;
    +      static {
    +        com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +          com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +          /* major= */ 4,
    +          /* minor= */ 28,
    +          /* patch= */ 3,
    +          /* suffix= */ "",
    +          OpMemory.class.getName());
    +      }
           // Use OpMemory.newBuilder() to construct.
    -      private OpMemory(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +      private OpMemory(com.google.protobuf.GeneratedMessage.Builder builder) {
             super(builder);
           }
           private OpMemory() {
             outputMemory_ = emptyLongList();
           }
     
    -      @java.lang.Override
    -      @SuppressWarnings({"unused"})
    -      protected java.lang.Object newInstance(
    -          UnusedPrivateParameter unused) {
    -        return new OpMemory();
    -      }
    -
    -      @java.lang.Override
    -      public final com.google.protobuf.UnknownFieldSet
    -      getUnknownFields() {
    -        return this.unknownFields;
    -      }
           public static final com.google.protobuf.Descriptors.Descriptor
               getDescriptor() {
             return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_OpPerformance_OpMemory_descriptor;
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_OpPerformance_OpMemory_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -5186,7 +5070,9 @@ protected java.lang.Object newInstance(
           }
     
           public static final int OUTPUT_MEMORY_FIELD_NUMBER = 1;
    -      private com.google.protobuf.Internal.LongList outputMemory_;
    +      @SuppressWarnings("serial")
    +      private com.google.protobuf.Internal.LongList outputMemory_ =
    +          emptyLongList();
           /**
            * 
            * The output information may have memory usage and output shapes.
    @@ -5226,7 +5112,7 @@ public long getOutputMemory(int index) {
           private int outputMemoryMemoizedSerializedSize = -1;
     
           public static final int TEMP_MEMORY_FIELD_NUMBER = 2;
    -      private long tempMemory_;
    +      private long tempMemory_ = 0L;
           /**
            * 
            * Temp and persistent memory allocated by this node.
    @@ -5241,7 +5127,7 @@ public long getTempMemory() {
           }
     
           public static final int PERSISTENT_MEMORY_FIELD_NUMBER = 4;
    -      private long persistentMemory_;
    +      private long persistentMemory_ = 0L;
           /**
            * int64 persistent_memory = 4;
            * @return The persistentMemory.
    @@ -5252,7 +5138,7 @@ public long getPersistentMemory() {
           }
     
           public static final int DEVICE_TEMP_MEMORY_FIELD_NUMBER = 3;
    -      private long deviceTempMemory_;
    +      private long deviceTempMemory_ = 0L;
           /**
            * int64 device_temp_memory = 3 [deprecated = true];
            * @deprecated tensorflow.OpPerformance.OpMemory.device_temp_memory is deprecated.
    @@ -5265,7 +5151,7 @@ public long getPersistentMemory() {
           }
     
           public static final int DEVICE_PERSISTENT_MEMORY_FIELD_NUMBER = 5;
    -      private long devicePersistentMemory_;
    +      private long devicePersistentMemory_ = 0L;
           /**
            * int64 device_persistent_memory = 5 [deprecated = true];
            * @deprecated tensorflow.OpPerformance.OpMemory.device_persistent_memory is deprecated.
    @@ -5441,39 +5327,41 @@ public static org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory pars
           }
           public static org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory parseFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory parseFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
    +
           public static org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory parseDelimitedFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input);
           }
    +
           public static org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory parseDelimitedFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
           }
           public static org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory parseFrom(
               com.google.protobuf.CodedInputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory parseFrom(
               com.google.protobuf.CodedInputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
     
    @@ -5493,7 +5381,7 @@ public Builder toBuilder() {
     
           @java.lang.Override
           protected Builder newBuilderForType(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             Builder builder = new Builder(parent);
             return builder;
           }
    @@ -5505,7 +5393,7 @@ protected Builder newBuilderForType(
            * Protobuf type {@code tensorflow.OpPerformance.OpMemory}
            */
           public static final class Builder extends
    -          com.google.protobuf.GeneratedMessageV3.Builder implements
    +          com.google.protobuf.GeneratedMessage.Builder implements
               // @@protoc_insertion_point(builder_implements:tensorflow.OpPerformance.OpMemory)
               org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemoryOrBuilder {
             public static final com.google.protobuf.Descriptors.Descriptor
    @@ -5514,7 +5402,7 @@ public static final class Builder extends
             }
     
             @java.lang.Override
    -        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
                 internalGetFieldAccessorTable() {
               return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_OpPerformance_OpMemory_fieldAccessorTable
                   .ensureFieldAccessorsInitialized(
    @@ -5527,23 +5415,19 @@ private Builder() {
             }
     
             private Builder(
    -            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
               super(parent);
     
             }
             @java.lang.Override
             public Builder clear() {
               super.clear();
    +          bitField0_ = 0;
               outputMemory_ = emptyLongList();
    -          bitField0_ = (bitField0_ & ~0x00000001);
               tempMemory_ = 0L;
    -
               persistentMemory_ = 0L;
    -
               deviceTempMemory_ = 0L;
    -
               devicePersistentMemory_ = 0L;
    -
               return this;
             }
     
    @@ -5570,52 +5454,31 @@ public org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory build() {
             @java.lang.Override
             public org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory buildPartial() {
               org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory result = new org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory(this);
    -          int from_bitField0_ = bitField0_;
    -          if (((bitField0_ & 0x00000001) != 0)) {
    -            outputMemory_.makeImmutable();
    -            bitField0_ = (bitField0_ & ~0x00000001);
    -          }
    -          result.outputMemory_ = outputMemory_;
    -          result.tempMemory_ = tempMemory_;
    -          result.persistentMemory_ = persistentMemory_;
    -          result.deviceTempMemory_ = deviceTempMemory_;
    -          result.devicePersistentMemory_ = devicePersistentMemory_;
    +          if (bitField0_ != 0) { buildPartial0(result); }
               onBuilt();
               return result;
             }
     
    -        @java.lang.Override
    -        public Builder clone() {
    -          return super.clone();
    -        }
    -        @java.lang.Override
    -        public Builder setField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.setField(field, value);
    -        }
    -        @java.lang.Override
    -        public Builder clearField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field) {
    -          return super.clearField(field);
    -        }
    -        @java.lang.Override
    -        public Builder clearOneof(
    -            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -          return super.clearOneof(oneof);
    -        }
    -        @java.lang.Override
    -        public Builder setRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            int index, java.lang.Object value) {
    -          return super.setRepeatedField(field, index, value);
    -        }
    -        @java.lang.Override
    -        public Builder addRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.addRepeatedField(field, value);
    +        private void buildPartial0(org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory result) {
    +          int from_bitField0_ = bitField0_;
    +          if (((from_bitField0_ & 0x00000001) != 0)) {
    +            outputMemory_.makeImmutable();
    +            result.outputMemory_ = outputMemory_;
    +          }
    +          if (((from_bitField0_ & 0x00000002) != 0)) {
    +            result.tempMemory_ = tempMemory_;
    +          }
    +          if (((from_bitField0_ & 0x00000004) != 0)) {
    +            result.persistentMemory_ = persistentMemory_;
    +          }
    +          if (((from_bitField0_ & 0x00000008) != 0)) {
    +            result.deviceTempMemory_ = deviceTempMemory_;
    +          }
    +          if (((from_bitField0_ & 0x00000010) != 0)) {
    +            result.devicePersistentMemory_ = devicePersistentMemory_;
    +          }
             }
    +
             @java.lang.Override
             public Builder mergeFrom(com.google.protobuf.Message other) {
               if (other instanceof org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory) {
    @@ -5631,7 +5494,8 @@ public Builder mergeFrom(org.tensorflow.proto.OpPerformanceData.OpPerformance.Op
               if (!other.outputMemory_.isEmpty()) {
                 if (outputMemory_.isEmpty()) {
                   outputMemory_ = other.outputMemory_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              outputMemory_.makeImmutable();
    +              bitField0_ |= 0x00000001;
                 } else {
                   ensureOutputMemoryIsMutable();
                   outputMemory_.addAll(other.outputMemory_);
    @@ -5694,22 +5558,22 @@ public Builder mergeFrom(
                     } // case 10
                     case 16: {
                       tempMemory_ = input.readInt64();
    -
    +                  bitField0_ |= 0x00000002;
                       break;
                     } // case 16
                     case 24: {
                       deviceTempMemory_ = input.readInt64();
    -
    +                  bitField0_ |= 0x00000008;
                       break;
                     } // case 24
                     case 32: {
                       persistentMemory_ = input.readInt64();
    -
    +                  bitField0_ |= 0x00000004;
                       break;
                     } // case 32
                     case 40: {
                       devicePersistentMemory_ = input.readInt64();
    -
    +                  bitField0_ |= 0x00000010;
                       break;
                     } // case 40
                     default: {
    @@ -5731,10 +5595,10 @@ public Builder mergeFrom(
     
             private com.google.protobuf.Internal.LongList outputMemory_ = emptyLongList();
             private void ensureOutputMemoryIsMutable() {
    -          if (!((bitField0_ & 0x00000001) != 0)) {
    -            outputMemory_ = mutableCopy(outputMemory_);
    -            bitField0_ |= 0x00000001;
    -           }
    +          if (!outputMemory_.isModifiable()) {
    +            outputMemory_ = makeMutableCopy(outputMemory_);
    +          }
    +          bitField0_ |= 0x00000001;
             }
             /**
              * 
    @@ -5746,8 +5610,8 @@ private void ensureOutputMemoryIsMutable() {
              */
             public java.util.List
                 getOutputMemoryList() {
    -          return ((bitField0_ & 0x00000001) != 0) ?
    -                   java.util.Collections.unmodifiableList(outputMemory_) : outputMemory_;
    +          outputMemory_.makeImmutable();
    +          return outputMemory_;
             }
             /**
              * 
    @@ -5784,8 +5648,10 @@ public long getOutputMemory(int index) {
              */
             public Builder setOutputMemory(
                 int index, long value) {
    +
               ensureOutputMemoryIsMutable();
               outputMemory_.setLong(index, value);
    +          bitField0_ |= 0x00000001;
               onChanged();
               return this;
             }
    @@ -5799,8 +5665,10 @@ public Builder setOutputMemory(
              * @return This builder for chaining.
              */
             public Builder addOutputMemory(long value) {
    +
               ensureOutputMemoryIsMutable();
               outputMemory_.addLong(value);
    +          bitField0_ |= 0x00000001;
               onChanged();
               return this;
             }
    @@ -5818,6 +5686,7 @@ public Builder addAllOutputMemory(
               ensureOutputMemoryIsMutable();
               com.google.protobuf.AbstractMessageLite.Builder.addAll(
                   values, outputMemory_);
    +          bitField0_ |= 0x00000001;
               onChanged();
               return this;
             }
    @@ -5859,8 +5728,9 @@ public long getTempMemory() {
              * @return This builder for chaining.
              */
             public Builder setTempMemory(long value) {
    -          
    +
               tempMemory_ = value;
    +          bitField0_ |= 0x00000002;
               onChanged();
               return this;
             }
    @@ -5873,7 +5743,7 @@ public Builder setTempMemory(long value) {
              * @return This builder for chaining.
              */
             public Builder clearTempMemory() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000002);
               tempMemory_ = 0L;
               onChanged();
               return this;
    @@ -5894,8 +5764,9 @@ public long getPersistentMemory() {
              * @return This builder for chaining.
              */
             public Builder setPersistentMemory(long value) {
    -          
    +
               persistentMemory_ = value;
    +          bitField0_ |= 0x00000004;
               onChanged();
               return this;
             }
    @@ -5904,7 +5775,7 @@ public Builder setPersistentMemory(long value) {
              * @return This builder for chaining.
              */
             public Builder clearPersistentMemory() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000004);
               persistentMemory_ = 0L;
               onChanged();
               return this;
    @@ -5929,8 +5800,9 @@ public Builder clearPersistentMemory() {
              * @return This builder for chaining.
              */
             @java.lang.Deprecated public Builder setDeviceTempMemory(long value) {
    -          
    +
               deviceTempMemory_ = value;
    +          bitField0_ |= 0x00000008;
               onChanged();
               return this;
             }
    @@ -5941,7 +5813,7 @@ public Builder clearPersistentMemory() {
              * @return This builder for chaining.
              */
             @java.lang.Deprecated public Builder clearDeviceTempMemory() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000008);
               deviceTempMemory_ = 0L;
               onChanged();
               return this;
    @@ -5966,8 +5838,9 @@ public Builder clearPersistentMemory() {
              * @return This builder for chaining.
              */
             @java.lang.Deprecated public Builder setDevicePersistentMemory(long value) {
    -          
    +
               devicePersistentMemory_ = value;
    +          bitField0_ |= 0x00000010;
               onChanged();
               return this;
             }
    @@ -5978,23 +5851,11 @@ public Builder clearPersistentMemory() {
              * @return This builder for chaining.
              */
             @java.lang.Deprecated public Builder clearDevicePersistentMemory() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000010);
               devicePersistentMemory_ = 0L;
               onChanged();
               return this;
             }
    -        @java.lang.Override
    -        public final Builder setUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.setUnknownFields(unknownFields);
    -        }
    -
    -        @java.lang.Override
    -        public final Builder mergeUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.mergeUnknownFields(unknownFields);
    -        }
    -
     
             // @@protoc_insertion_point(builder_scope:tensorflow.OpPerformance.OpMemory)
           }
    @@ -6047,7 +5908,9 @@ public org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory getDefaultI
     
         }
     
    +    private int bitField0_;
         private int executionTimeCase_ = 0;
    +    @SuppressWarnings("serial")
         private java.lang.Object executionTime_;
         public enum ExecutionTimeCase
             implements com.google.protobuf.Internal.EnumLite,
    @@ -6100,7 +5963,7 @@ public int getNumber() {
          */
         @java.lang.Override
         public boolean hasOp() {
    -      return op_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -6123,7 +5986,7 @@ public org.tensorflow.proto.OpPerformanceData.OpInfo getOp() {
          */
         @java.lang.Override
         public org.tensorflow.proto.OpPerformanceData.OpInfoOrBuilder getOpOrBuilder() {
    -      return getOp();
    +      return op_ == null ? org.tensorflow.proto.OpPerformanceData.OpInfo.getDefaultInstance() : op_;
         }
     
         public static final int SESSION_INFO_FIELD_NUMBER = 12;
    @@ -6140,7 +6003,7 @@ public org.tensorflow.proto.OpPerformanceData.OpInfoOrBuilder getOpOrBuilder() {
          */
         @java.lang.Override
         @java.lang.Deprecated public boolean hasSessionInfo() {
    -      return sessionInfo_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -6165,11 +6028,12 @@ public org.tensorflow.proto.OpPerformanceData.OpInfoOrBuilder getOpOrBuilder() {
          */
         @java.lang.Override
         @java.lang.Deprecated public org.tensorflow.proto.OpPerformanceData.SessionInfoOrBuilder getSessionInfoOrBuilder() {
    -      return getSessionInfo();
    +      return sessionInfo_ == null ? org.tensorflow.proto.OpPerformanceData.SessionInfo.getDefaultInstance() : sessionInfo_;
         }
     
         public static final int NODE_FIELD_NUMBER = 5;
    -    private volatile java.lang.Object node_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object node_ = "";
         /**
          * 
          * The node name (optional). Makes it easier to associate the performance data
    @@ -6217,7 +6081,7 @@ public java.lang.String getNode() {
         }
     
         public static final int TEMPORARY_MEMORY_SIZE_FIELD_NUMBER = 2;
    -    private long temporaryMemorySize_;
    +    private long temporaryMemorySize_ = 0L;
         /**
          * 
          * Temporary memory used by this node (in bytes).
    @@ -6232,7 +6096,7 @@ public long getTemporaryMemorySize() {
         }
     
         public static final int COMPUTE_COST_FIELD_NUMBER = 3;
    -    private long computeCost_;
    +    private long computeCost_ = 0L;
         /**
          * 
          * Time it takes to run the op (in nanoseconds).
    @@ -6247,7 +6111,7 @@ public long getComputeCost() {
         }
     
         public static final int COMPUTE_TIME_FIELD_NUMBER = 6;
    -    private long computeTime_;
    +    private long computeTime_ = 0L;
         /**
          * 
          * Analytical compute cost (in nanoseconds).
    @@ -6262,7 +6126,7 @@ public long getComputeTime() {
         }
     
         public static final int MEMORY_TIME_FIELD_NUMBER = 7;
    -    private long memoryTime_;
    +    private long memoryTime_ = 0L;
         /**
          * 
          * Analytical memory access cost (in nanoseconds).
    @@ -6277,7 +6141,7 @@ public long getMemoryTime() {
         }
     
         public static final int COMPUTE_EFFICIENCY_FIELD_NUMBER = 4;
    -    private double computeEfficiency_;
    +    private double computeEfficiency_ = 0D;
         /**
          * 
          * Percentage of theoretical compute performance.
    @@ -6292,7 +6156,7 @@ public double getComputeEfficiency() {
         }
     
         public static final int MEMORY_EFFICIENCY_FIELD_NUMBER = 8;
    -    private double memoryEfficiency_;
    +    private double memoryEfficiency_ = 0D;
         /**
          * 
          * Percentage of theoretical memory performance.
    @@ -6376,7 +6240,7 @@ public org.tensorflow.proto.OpPerformanceData.LogNormalDistributionOrBuilder get
          */
         @java.lang.Override
         public boolean hasOpMemory() {
    -      return opMemory_ != null;
    +      return ((bitField0_ & 0x00000004) != 0);
         }
         /**
          * .tensorflow.OpPerformance.OpMemory op_memory = 9;
    @@ -6391,7 +6255,7 @@ public org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory getOpMemory
          */
         @java.lang.Override
         public org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemoryOrBuilder getOpMemoryOrBuilder() {
    -      return getOpMemory();
    +      return opMemory_ == null ? org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory.getDefaultInstance() : opMemory_;
         }
     
         private byte memoizedIsInitialized = -1;
    @@ -6408,7 +6272,7 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (op_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(1, getOp());
           }
           if (temporaryMemorySize_ != 0L) {
    @@ -6420,8 +6284,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (java.lang.Double.doubleToRawLongBits(computeEfficiency_) != 0) {
             output.writeDouble(4, computeEfficiency_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(node_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, node_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(node_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 5, node_);
           }
           if (computeTime_ != 0L) {
             output.writeInt64(6, computeTime_);
    @@ -6432,7 +6296,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (java.lang.Double.doubleToRawLongBits(memoryEfficiency_) != 0) {
             output.writeDouble(8, memoryEfficiency_);
           }
    -      if (opMemory_ != null) {
    +      if (((bitField0_ & 0x00000004) != 0)) {
             output.writeMessage(9, getOpMemory());
           }
           if (executionTimeCase_ == 10) {
    @@ -6441,7 +6305,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (executionTimeCase_ == 11) {
             output.writeMessage(11, (org.tensorflow.proto.OpPerformanceData.LogNormalDistribution) executionTime_);
           }
    -      if (sessionInfo_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             output.writeMessage(12, getSessionInfo());
           }
           getUnknownFields().writeTo(output);
    @@ -6453,7 +6317,7 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (op_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(1, getOp());
           }
    @@ -6469,8 +6333,8 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeDoubleSize(4, computeEfficiency_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(node_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, node_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(node_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(5, node_);
           }
           if (computeTime_ != 0L) {
             size += com.google.protobuf.CodedOutputStream
    @@ -6484,7 +6348,7 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeDoubleSize(8, memoryEfficiency_);
           }
    -      if (opMemory_ != null) {
    +      if (((bitField0_ & 0x00000004) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(9, getOpMemory());
           }
    @@ -6496,7 +6360,7 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(11, (org.tensorflow.proto.OpPerformanceData.LogNormalDistribution) executionTime_);
           }
    -      if (sessionInfo_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(12, getSessionInfo());
           }
    @@ -6653,39 +6517,41 @@ public static org.tensorflow.proto.OpPerformanceData.OpPerformance parseFrom(
         }
         public static org.tensorflow.proto.OpPerformanceData.OpPerformance parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.OpPerformanceData.OpPerformance parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.OpPerformanceData.OpPerformance parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.OpPerformanceData.OpPerformance parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.OpPerformanceData.OpPerformance parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.OpPerformanceData.OpPerformance parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -6705,7 +6571,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -6717,7 +6583,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.OpPerformance}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.OpPerformance)
             org.tensorflow.proto.OpPerformanceData.OpPerformanceOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -6726,7 +6592,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_OpPerformance_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -6735,53 +6601,52 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.OpPerformanceData.OpPerformance.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getOpFieldBuilder();
    +          getSessionInfoFieldBuilder();
    +          getOpMemoryFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    -        if (opBuilder_ == null) {
    -          op_ = null;
    -        } else {
    -          op_ = null;
    +        bitField0_ = 0;
    +        op_ = null;
    +        if (opBuilder_ != null) {
    +          opBuilder_.dispose();
               opBuilder_ = null;
             }
    -        if (sessionInfoBuilder_ == null) {
    -          sessionInfo_ = null;
    -        } else {
    -          sessionInfo_ = null;
    +        sessionInfo_ = null;
    +        if (sessionInfoBuilder_ != null) {
    +          sessionInfoBuilder_.dispose();
               sessionInfoBuilder_ = null;
             }
             node_ = "";
    -
             temporaryMemorySize_ = 0L;
    -
             computeCost_ = 0L;
    -
             computeTime_ = 0L;
    -
             memoryTime_ = 0L;
    -
             computeEfficiency_ = 0D;
    -
             memoryEfficiency_ = 0D;
    -
             if (executionTimeNormalBuilder_ != null) {
               executionTimeNormalBuilder_.clear();
             }
             if (executionTimeLogNormalBuilder_ != null) {
               executionTimeLogNormalBuilder_.clear();
             }
    -        if (opMemoryBuilder_ == null) {
    -          opMemory_ = null;
    -        } else {
    -          opMemory_ = null;
    +        opMemory_ = null;
    +        if (opMemoryBuilder_ != null) {
    +          opMemoryBuilder_.dispose();
               opMemoryBuilder_ = null;
             }
             executionTimeCase_ = 0;
    @@ -6812,79 +6677,70 @@ public org.tensorflow.proto.OpPerformanceData.OpPerformance build() {
           @java.lang.Override
           public org.tensorflow.proto.OpPerformanceData.OpPerformance buildPartial() {
             org.tensorflow.proto.OpPerformanceData.OpPerformance result = new org.tensorflow.proto.OpPerformanceData.OpPerformance(this);
    -        if (opBuilder_ == null) {
    -          result.op_ = op_;
    -        } else {
    -          result.op_ = opBuilder_.build();
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        buildPartialOneofs(result);
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartial0(org.tensorflow.proto.OpPerformanceData.OpPerformance result) {
    +        int from_bitField0_ = bitField0_;
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.op_ = opBuilder_ == null
    +              ? op_
    +              : opBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
             }
    -        if (sessionInfoBuilder_ == null) {
    -          result.sessionInfo_ = sessionInfo_;
    -        } else {
    -          result.sessionInfo_ = sessionInfoBuilder_.build();
    -        }
    -        result.node_ = node_;
    -        result.temporaryMemorySize_ = temporaryMemorySize_;
    -        result.computeCost_ = computeCost_;
    -        result.computeTime_ = computeTime_;
    -        result.memoryTime_ = memoryTime_;
    -        result.computeEfficiency_ = computeEfficiency_;
    -        result.memoryEfficiency_ = memoryEfficiency_;
    -        if (executionTimeCase_ == 10) {
    -          if (executionTimeNormalBuilder_ == null) {
    -            result.executionTime_ = executionTime_;
    -          } else {
    -            result.executionTime_ = executionTimeNormalBuilder_.build();
    -          }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.sessionInfo_ = sessionInfoBuilder_ == null
    +              ? sessionInfo_
    +              : sessionInfoBuilder_.build();
    +          to_bitField0_ |= 0x00000002;
             }
    -        if (executionTimeCase_ == 11) {
    -          if (executionTimeLogNormalBuilder_ == null) {
    -            result.executionTime_ = executionTime_;
    -          } else {
    -            result.executionTime_ = executionTimeLogNormalBuilder_.build();
    -          }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.node_ = node_;
             }
    -        if (opMemoryBuilder_ == null) {
    -          result.opMemory_ = opMemory_;
    -        } else {
    -          result.opMemory_ = opMemoryBuilder_.build();
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.temporaryMemorySize_ = temporaryMemorySize_;
             }
    -        result.executionTimeCase_ = executionTimeCase_;
    -        onBuilt();
    -        return result;
    +        if (((from_bitField0_ & 0x00000010) != 0)) {
    +          result.computeCost_ = computeCost_;
    +        }
    +        if (((from_bitField0_ & 0x00000020) != 0)) {
    +          result.computeTime_ = computeTime_;
    +        }
    +        if (((from_bitField0_ & 0x00000040) != 0)) {
    +          result.memoryTime_ = memoryTime_;
    +        }
    +        if (((from_bitField0_ & 0x00000080) != 0)) {
    +          result.computeEfficiency_ = computeEfficiency_;
    +        }
    +        if (((from_bitField0_ & 0x00000100) != 0)) {
    +          result.memoryEfficiency_ = memoryEfficiency_;
    +        }
    +        if (((from_bitField0_ & 0x00000800) != 0)) {
    +          result.opMemory_ = opMemoryBuilder_ == null
    +              ? opMemory_
    +              : opMemoryBuilder_.build();
    +          to_bitField0_ |= 0x00000004;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartialOneofs(org.tensorflow.proto.OpPerformanceData.OpPerformance result) {
    +        result.executionTimeCase_ = executionTimeCase_;
    +        result.executionTime_ = this.executionTime_;
    +        if (executionTimeCase_ == 10 &&
    +            executionTimeNormalBuilder_ != null) {
    +          result.executionTime_ = executionTimeNormalBuilder_.build();
    +        }
    +        if (executionTimeCase_ == 11 &&
    +            executionTimeLogNormalBuilder_ != null) {
    +          result.executionTime_ = executionTimeLogNormalBuilder_.build();
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.OpPerformanceData.OpPerformance) {
    @@ -6905,6 +6761,7 @@ public Builder mergeFrom(org.tensorflow.proto.OpPerformanceData.OpPerformance ot
             }
             if (!other.getNode().isEmpty()) {
               node_ = other.node_;
    +          bitField0_ |= 0x00000004;
               onChanged();
             }
             if (other.getTemporaryMemorySize() != 0L) {
    @@ -6971,49 +6828,49 @@ public Builder mergeFrom(
                     input.readMessage(
                         getOpFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 16: {
                     temporaryMemorySize_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 16
                   case 24: {
                     computeCost_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000010;
                     break;
                   } // case 24
                   case 33: {
                     computeEfficiency_ = input.readDouble();
    -
    +                bitField0_ |= 0x00000080;
                     break;
                   } // case 33
                   case 42: {
                     node_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 42
                   case 48: {
                     computeTime_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000020;
                     break;
                   } // case 48
                   case 56: {
                     memoryTime_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000040;
                     break;
                   } // case 56
                   case 65: {
                     memoryEfficiency_ = input.readDouble();
    -
    +                bitField0_ |= 0x00000100;
                     break;
                   } // case 65
                   case 74: {
                     input.readMessage(
                         getOpMemoryFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000800;
                     break;
                   } // case 74
                   case 82: {
    @@ -7034,7 +6891,7 @@ public Builder mergeFrom(
                     input.readMessage(
                         getSessionInfoFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 98
                   default: {
    @@ -7067,9 +6924,10 @@ public Builder clearExecutionTime() {
             return this;
           }
     
    +      private int bitField0_;
     
           private org.tensorflow.proto.OpPerformanceData.OpInfo op_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.OpPerformanceData.OpInfo, org.tensorflow.proto.OpPerformanceData.OpInfo.Builder, org.tensorflow.proto.OpPerformanceData.OpInfoOrBuilder> opBuilder_;
           /**
            * 
    @@ -7080,7 +6938,7 @@ public Builder clearExecutionTime() {
            * @return Whether the op field is set.
            */
           public boolean hasOp() {
    -        return opBuilder_ != null || op_ != null;
    +        return ((bitField0_ & 0x00000001) != 0);
           }
           /**
            * 
    @@ -7110,11 +6968,11 @@ public Builder setOp(org.tensorflow.proto.OpPerformanceData.OpInfo value) {
                 throw new NullPointerException();
               }
               op_ = value;
    -          onChanged();
             } else {
               opBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000001;
    +        onChanged();
             return this;
           }
           /**
    @@ -7128,11 +6986,11 @@ public Builder setOp(
               org.tensorflow.proto.OpPerformanceData.OpInfo.Builder builderForValue) {
             if (opBuilder_ == null) {
               op_ = builderForValue.build();
    -          onChanged();
             } else {
               opBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000001;
    +        onChanged();
             return this;
           }
           /**
    @@ -7144,17 +7002,20 @@ public Builder setOp(
            */
           public Builder mergeOp(org.tensorflow.proto.OpPerformanceData.OpInfo value) {
             if (opBuilder_ == null) {
    -          if (op_ != null) {
    -            op_ =
    -              org.tensorflow.proto.OpPerformanceData.OpInfo.newBuilder(op_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000001) != 0) &&
    +            op_ != null &&
    +            op_ != org.tensorflow.proto.OpPerformanceData.OpInfo.getDefaultInstance()) {
    +            getOpBuilder().mergeFrom(value);
               } else {
                 op_ = value;
               }
    -          onChanged();
             } else {
               opBuilder_.mergeFrom(value);
             }
    -
    +        if (op_ != null) {
    +          bitField0_ |= 0x00000001;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -7165,14 +7026,13 @@ public Builder mergeOp(org.tensorflow.proto.OpPerformanceData.OpInfo value) {
            * .tensorflow.OpInfo op = 1;
            */
           public Builder clearOp() {
    -        if (opBuilder_ == null) {
    -          op_ = null;
    -          onChanged();
    -        } else {
    -          op_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000001);
    +        op_ = null;
    +        if (opBuilder_ != null) {
    +          opBuilder_.dispose();
               opBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -7183,7 +7043,7 @@ public Builder clearOp() {
            * .tensorflow.OpInfo op = 1;
            */
           public org.tensorflow.proto.OpPerformanceData.OpInfo.Builder getOpBuilder() {
    -        
    +        bitField0_ |= 0x00000001;
             onChanged();
             return getOpFieldBuilder().getBuilder();
           }
    @@ -7209,11 +7069,11 @@ public org.tensorflow.proto.OpPerformanceData.OpInfoOrBuilder getOpOrBuilder() {
            *
            * .tensorflow.OpInfo op = 1;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.OpPerformanceData.OpInfo, org.tensorflow.proto.OpPerformanceData.OpInfo.Builder, org.tensorflow.proto.OpPerformanceData.OpInfoOrBuilder> 
               getOpFieldBuilder() {
             if (opBuilder_ == null) {
    -          opBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          opBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.OpPerformanceData.OpInfo, org.tensorflow.proto.OpPerformanceData.OpInfo.Builder, org.tensorflow.proto.OpPerformanceData.OpInfoOrBuilder>(
                       getOp(),
                       getParentForChildren(),
    @@ -7224,7 +7084,7 @@ public org.tensorflow.proto.OpPerformanceData.OpInfoOrBuilder getOpOrBuilder() {
           }
     
           private org.tensorflow.proto.OpPerformanceData.SessionInfo sessionInfo_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.OpPerformanceData.SessionInfo, org.tensorflow.proto.OpPerformanceData.SessionInfo.Builder, org.tensorflow.proto.OpPerformanceData.SessionInfoOrBuilder> sessionInfoBuilder_;
           /**
            * 
    @@ -7237,7 +7097,7 @@ public org.tensorflow.proto.OpPerformanceData.OpInfoOrBuilder getOpOrBuilder() {
            * @return Whether the sessionInfo field is set.
            */
           @java.lang.Deprecated public boolean hasSessionInfo() {
    -        return sessionInfoBuilder_ != null || sessionInfo_ != null;
    +        return ((bitField0_ & 0x00000002) != 0);
           }
           /**
            * 
    @@ -7269,11 +7129,11 @@ public org.tensorflow.proto.OpPerformanceData.OpInfoOrBuilder getOpOrBuilder() {
                 throw new NullPointerException();
               }
               sessionInfo_ = value;
    -          onChanged();
             } else {
               sessionInfoBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -7287,11 +7147,11 @@ public org.tensorflow.proto.OpPerformanceData.OpInfoOrBuilder getOpOrBuilder() {
               org.tensorflow.proto.OpPerformanceData.SessionInfo.Builder builderForValue) {
             if (sessionInfoBuilder_ == null) {
               sessionInfo_ = builderForValue.build();
    -          onChanged();
             } else {
               sessionInfoBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -7303,17 +7163,20 @@ public org.tensorflow.proto.OpPerformanceData.OpInfoOrBuilder getOpOrBuilder() {
            */
           @java.lang.Deprecated public Builder mergeSessionInfo(org.tensorflow.proto.OpPerformanceData.SessionInfo value) {
             if (sessionInfoBuilder_ == null) {
    -          if (sessionInfo_ != null) {
    -            sessionInfo_ =
    -              org.tensorflow.proto.OpPerformanceData.SessionInfo.newBuilder(sessionInfo_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000002) != 0) &&
    +            sessionInfo_ != null &&
    +            sessionInfo_ != org.tensorflow.proto.OpPerformanceData.SessionInfo.getDefaultInstance()) {
    +            getSessionInfoBuilder().mergeFrom(value);
               } else {
                 sessionInfo_ = value;
               }
    -          onChanged();
             } else {
               sessionInfoBuilder_.mergeFrom(value);
             }
    -
    +        if (sessionInfo_ != null) {
    +          bitField0_ |= 0x00000002;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -7324,14 +7187,13 @@ public org.tensorflow.proto.OpPerformanceData.OpInfoOrBuilder getOpOrBuilder() {
            * .tensorflow.SessionInfo session_info = 12 [deprecated = true];
            */
           @java.lang.Deprecated public Builder clearSessionInfo() {
    -        if (sessionInfoBuilder_ == null) {
    -          sessionInfo_ = null;
    -          onChanged();
    -        } else {
    -          sessionInfo_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000002);
    +        sessionInfo_ = null;
    +        if (sessionInfoBuilder_ != null) {
    +          sessionInfoBuilder_.dispose();
               sessionInfoBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -7342,7 +7204,7 @@ public org.tensorflow.proto.OpPerformanceData.OpInfoOrBuilder getOpOrBuilder() {
            * .tensorflow.SessionInfo session_info = 12 [deprecated = true];
            */
           @java.lang.Deprecated public org.tensorflow.proto.OpPerformanceData.SessionInfo.Builder getSessionInfoBuilder() {
    -        
    +        bitField0_ |= 0x00000002;
             onChanged();
             return getSessionInfoFieldBuilder().getBuilder();
           }
    @@ -7368,11 +7230,11 @@ public org.tensorflow.proto.OpPerformanceData.OpInfoOrBuilder getOpOrBuilder() {
            *
            * .tensorflow.SessionInfo session_info = 12 [deprecated = true];
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.OpPerformanceData.SessionInfo, org.tensorflow.proto.OpPerformanceData.SessionInfo.Builder, org.tensorflow.proto.OpPerformanceData.SessionInfoOrBuilder> 
               getSessionInfoFieldBuilder() {
             if (sessionInfoBuilder_ == null) {
    -          sessionInfoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          sessionInfoBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.OpPerformanceData.SessionInfo, org.tensorflow.proto.OpPerformanceData.SessionInfo.Builder, org.tensorflow.proto.OpPerformanceData.SessionInfoOrBuilder>(
                       getSessionInfo(),
                       getParentForChildren(),
    @@ -7438,11 +7300,9 @@ public java.lang.String getNode() {
            */
           public Builder setNode(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             node_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -7456,8 +7316,8 @@ public Builder setNode(
            * @return This builder for chaining.
            */
           public Builder clearNode() {
    -        
             node_ = getDefaultInstance().getNode();
    +        bitField0_ = (bitField0_ & ~0x00000004);
             onChanged();
             return this;
           }
    @@ -7473,12 +7333,10 @@ public Builder clearNode() {
            */
           public Builder setNodeBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             node_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -7506,8 +7364,9 @@ public long getTemporaryMemorySize() {
            * @return This builder for chaining.
            */
           public Builder setTemporaryMemorySize(long value) {
    -        
    +
             temporaryMemorySize_ = value;
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -7520,7 +7379,7 @@ public Builder setTemporaryMemorySize(long value) {
            * @return This builder for chaining.
            */
           public Builder clearTemporaryMemorySize() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000008);
             temporaryMemorySize_ = 0L;
             onChanged();
             return this;
    @@ -7549,8 +7408,9 @@ public long getComputeCost() {
            * @return This builder for chaining.
            */
           public Builder setComputeCost(long value) {
    -        
    +
             computeCost_ = value;
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -7563,7 +7423,7 @@ public Builder setComputeCost(long value) {
            * @return This builder for chaining.
            */
           public Builder clearComputeCost() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000010);
             computeCost_ = 0L;
             onChanged();
             return this;
    @@ -7592,8 +7452,9 @@ public long getComputeTime() {
            * @return This builder for chaining.
            */
           public Builder setComputeTime(long value) {
    -        
    +
             computeTime_ = value;
    +        bitField0_ |= 0x00000020;
             onChanged();
             return this;
           }
    @@ -7606,7 +7467,7 @@ public Builder setComputeTime(long value) {
            * @return This builder for chaining.
            */
           public Builder clearComputeTime() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000020);
             computeTime_ = 0L;
             onChanged();
             return this;
    @@ -7635,8 +7496,9 @@ public long getMemoryTime() {
            * @return This builder for chaining.
            */
           public Builder setMemoryTime(long value) {
    -        
    +
             memoryTime_ = value;
    +        bitField0_ |= 0x00000040;
             onChanged();
             return this;
           }
    @@ -7649,7 +7511,7 @@ public Builder setMemoryTime(long value) {
            * @return This builder for chaining.
            */
           public Builder clearMemoryTime() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000040);
             memoryTime_ = 0L;
             onChanged();
             return this;
    @@ -7678,8 +7540,9 @@ public double getComputeEfficiency() {
            * @return This builder for chaining.
            */
           public Builder setComputeEfficiency(double value) {
    -        
    +
             computeEfficiency_ = value;
    +        bitField0_ |= 0x00000080;
             onChanged();
             return this;
           }
    @@ -7692,7 +7555,7 @@ public Builder setComputeEfficiency(double value) {
            * @return This builder for chaining.
            */
           public Builder clearComputeEfficiency() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000080);
             computeEfficiency_ = 0D;
             onChanged();
             return this;
    @@ -7721,8 +7584,9 @@ public double getMemoryEfficiency() {
            * @return This builder for chaining.
            */
           public Builder setMemoryEfficiency(double value) {
    -        
    +
             memoryEfficiency_ = value;
    +        bitField0_ |= 0x00000100;
             onChanged();
             return this;
           }
    @@ -7735,13 +7599,13 @@ public Builder setMemoryEfficiency(double value) {
            * @return This builder for chaining.
            */
           public Builder clearMemoryEfficiency() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000100);
             memoryEfficiency_ = 0D;
             onChanged();
             return this;
           }
     
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.OpPerformanceData.NormalDistribution, org.tensorflow.proto.OpPerformanceData.NormalDistribution.Builder, org.tensorflow.proto.OpPerformanceData.NormalDistributionOrBuilder> executionTimeNormalBuilder_;
           /**
            * .tensorflow.NormalDistribution execution_time_normal = 10;
    @@ -7864,14 +7728,14 @@ public org.tensorflow.proto.OpPerformanceData.NormalDistributionOrBuilder getExe
           /**
            * .tensorflow.NormalDistribution execution_time_normal = 10;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.OpPerformanceData.NormalDistribution, org.tensorflow.proto.OpPerformanceData.NormalDistribution.Builder, org.tensorflow.proto.OpPerformanceData.NormalDistributionOrBuilder> 
               getExecutionTimeNormalFieldBuilder() {
             if (executionTimeNormalBuilder_ == null) {
               if (!(executionTimeCase_ == 10)) {
                 executionTime_ = org.tensorflow.proto.OpPerformanceData.NormalDistribution.getDefaultInstance();
               }
    -          executionTimeNormalBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          executionTimeNormalBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.OpPerformanceData.NormalDistribution, org.tensorflow.proto.OpPerformanceData.NormalDistribution.Builder, org.tensorflow.proto.OpPerformanceData.NormalDistributionOrBuilder>(
                       (org.tensorflow.proto.OpPerformanceData.NormalDistribution) executionTime_,
                       getParentForChildren(),
    @@ -7879,11 +7743,11 @@ public org.tensorflow.proto.OpPerformanceData.NormalDistributionOrBuilder getExe
               executionTime_ = null;
             }
             executionTimeCase_ = 10;
    -        onChanged();;
    +        onChanged();
             return executionTimeNormalBuilder_;
           }
     
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.OpPerformanceData.LogNormalDistribution, org.tensorflow.proto.OpPerformanceData.LogNormalDistribution.Builder, org.tensorflow.proto.OpPerformanceData.LogNormalDistributionOrBuilder> executionTimeLogNormalBuilder_;
           /**
            * .tensorflow.LogNormalDistribution execution_time_log_normal = 11;
    @@ -8006,14 +7870,14 @@ public org.tensorflow.proto.OpPerformanceData.LogNormalDistributionOrBuilder get
           /**
            * .tensorflow.LogNormalDistribution execution_time_log_normal = 11;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.OpPerformanceData.LogNormalDistribution, org.tensorflow.proto.OpPerformanceData.LogNormalDistribution.Builder, org.tensorflow.proto.OpPerformanceData.LogNormalDistributionOrBuilder> 
               getExecutionTimeLogNormalFieldBuilder() {
             if (executionTimeLogNormalBuilder_ == null) {
               if (!(executionTimeCase_ == 11)) {
                 executionTime_ = org.tensorflow.proto.OpPerformanceData.LogNormalDistribution.getDefaultInstance();
               }
    -          executionTimeLogNormalBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          executionTimeLogNormalBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.OpPerformanceData.LogNormalDistribution, org.tensorflow.proto.OpPerformanceData.LogNormalDistribution.Builder, org.tensorflow.proto.OpPerformanceData.LogNormalDistributionOrBuilder>(
                       (org.tensorflow.proto.OpPerformanceData.LogNormalDistribution) executionTime_,
                       getParentForChildren(),
    @@ -8021,19 +7885,19 @@ public org.tensorflow.proto.OpPerformanceData.LogNormalDistributionOrBuilder get
               executionTime_ = null;
             }
             executionTimeCase_ = 11;
    -        onChanged();;
    +        onChanged();
             return executionTimeLogNormalBuilder_;
           }
     
           private org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory opMemory_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory, org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory.Builder, org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemoryOrBuilder> opMemoryBuilder_;
           /**
            * .tensorflow.OpPerformance.OpMemory op_memory = 9;
            * @return Whether the opMemory field is set.
            */
           public boolean hasOpMemory() {
    -        return opMemoryBuilder_ != null || opMemory_ != null;
    +        return ((bitField0_ & 0x00000800) != 0);
           }
           /**
            * .tensorflow.OpPerformance.OpMemory op_memory = 9;
    @@ -8055,11 +7919,11 @@ public Builder setOpMemory(org.tensorflow.proto.OpPerformanceData.OpPerformance.
                 throw new NullPointerException();
               }
               opMemory_ = value;
    -          onChanged();
             } else {
               opMemoryBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000800;
    +        onChanged();
             return this;
           }
           /**
    @@ -8069,11 +7933,11 @@ public Builder setOpMemory(
               org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory.Builder builderForValue) {
             if (opMemoryBuilder_ == null) {
               opMemory_ = builderForValue.build();
    -          onChanged();
             } else {
               opMemoryBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000800;
    +        onChanged();
             return this;
           }
           /**
    @@ -8081,38 +7945,40 @@ public Builder setOpMemory(
            */
           public Builder mergeOpMemory(org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory value) {
             if (opMemoryBuilder_ == null) {
    -          if (opMemory_ != null) {
    -            opMemory_ =
    -              org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory.newBuilder(opMemory_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000800) != 0) &&
    +            opMemory_ != null &&
    +            opMemory_ != org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory.getDefaultInstance()) {
    +            getOpMemoryBuilder().mergeFrom(value);
               } else {
                 opMemory_ = value;
               }
    -          onChanged();
             } else {
               opMemoryBuilder_.mergeFrom(value);
             }
    -
    +        if (opMemory_ != null) {
    +          bitField0_ |= 0x00000800;
    +          onChanged();
    +        }
             return this;
           }
           /**
            * .tensorflow.OpPerformance.OpMemory op_memory = 9;
            */
           public Builder clearOpMemory() {
    -        if (opMemoryBuilder_ == null) {
    -          opMemory_ = null;
    -          onChanged();
    -        } else {
    -          opMemory_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000800);
    +        opMemory_ = null;
    +        if (opMemoryBuilder_ != null) {
    +          opMemoryBuilder_.dispose();
               opMemoryBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
            * .tensorflow.OpPerformance.OpMemory op_memory = 9;
            */
           public org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory.Builder getOpMemoryBuilder() {
    -        
    +        bitField0_ |= 0x00000800;
             onChanged();
             return getOpMemoryFieldBuilder().getBuilder();
           }
    @@ -8130,11 +7996,11 @@ public org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemoryOrBuilder ge
           /**
            * .tensorflow.OpPerformance.OpMemory op_memory = 9;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory, org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory.Builder, org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemoryOrBuilder> 
               getOpMemoryFieldBuilder() {
             if (opMemoryBuilder_ == null) {
    -          opMemoryBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          opMemoryBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory, org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemory.Builder, org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemoryOrBuilder>(
                       getOpMemory(),
                       getParentForChildren(),
    @@ -8143,18 +8009,6 @@ public org.tensorflow.proto.OpPerformanceData.OpPerformance.OpMemoryOrBuilder ge
             }
             return opMemoryBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.OpPerformance)
         }
    @@ -8243,37 +8097,34 @@ org.tensorflow.proto.OpPerformanceData.OpPerformanceOrBuilder getOpPerformanceOr
        * Protobuf type {@code tensorflow.OpPerformanceList}
        */
       public static final class OpPerformanceList extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.OpPerformanceList)
           OpPerformanceListOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        OpPerformanceList.class.getName());
    +    }
         // Use OpPerformanceList.newBuilder() to construct.
    -    private OpPerformanceList(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private OpPerformanceList(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private OpPerformanceList() {
           opPerformance_ = java.util.Collections.emptyList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new OpPerformanceList();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_OpPerformanceList_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_OpPerformanceList_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -8281,6 +8132,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int OP_PERFORMANCE_FIELD_NUMBER = 1;
    +    @SuppressWarnings("serial")
         private java.util.List opPerformance_;
         /**
          * repeated .tensorflow.OpPerformance op_performance = 1;
    @@ -8421,39 +8273,41 @@ public static org.tensorflow.proto.OpPerformanceData.OpPerformanceList parseFrom
         }
         public static org.tensorflow.proto.OpPerformanceData.OpPerformanceList parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.OpPerformanceData.OpPerformanceList parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.OpPerformanceData.OpPerformanceList parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.OpPerformanceData.OpPerformanceList parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.OpPerformanceData.OpPerformanceList parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.OpPerformanceData.OpPerformanceList parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -8473,7 +8327,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -8485,7 +8339,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.OpPerformanceList}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.OpPerformanceList)
             org.tensorflow.proto.OpPerformanceData.OpPerformanceListOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -8494,7 +8348,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.OpPerformanceData.internal_static_tensorflow_OpPerformanceList_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -8507,13 +8361,14 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             if (opPerformanceBuilder_ == null) {
               opPerformance_ = java.util.Collections.emptyList();
             } else {
    @@ -8547,7 +8402,13 @@ public org.tensorflow.proto.OpPerformanceData.OpPerformanceList build() {
           @java.lang.Override
           public org.tensorflow.proto.OpPerformanceData.OpPerformanceList buildPartial() {
             org.tensorflow.proto.OpPerformanceData.OpPerformanceList result = new org.tensorflow.proto.OpPerformanceData.OpPerformanceList(this);
    -        int from_bitField0_ = bitField0_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.OpPerformanceData.OpPerformanceList result) {
             if (opPerformanceBuilder_ == null) {
               if (((bitField0_ & 0x00000001) != 0)) {
                 opPerformance_ = java.util.Collections.unmodifiableList(opPerformance_);
    @@ -8557,42 +8418,12 @@ public org.tensorflow.proto.OpPerformanceData.OpPerformanceList buildPartial() {
             } else {
               result.opPerformance_ = opPerformanceBuilder_.build();
             }
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.OpPerformanceData.OpPerformanceList result) {
    +        int from_bitField0_ = bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.OpPerformanceData.OpPerformanceList) {
    @@ -8624,7 +8455,7 @@ public Builder mergeFrom(org.tensorflow.proto.OpPerformanceData.OpPerformanceLis
                   opPerformance_ = other.opPerformance_;
                   bitField0_ = (bitField0_ & ~0x00000001);
                   opPerformanceBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getOpPerformanceFieldBuilder() : null;
                 } else {
                   opPerformanceBuilder_.addAllMessages(other.opPerformance_);
    @@ -8696,7 +8527,7 @@ private void ensureOpPerformanceIsMutable() {
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.OpPerformanceData.OpPerformance, org.tensorflow.proto.OpPerformanceData.OpPerformance.Builder, org.tensorflow.proto.OpPerformanceData.OpPerformanceOrBuilder> opPerformanceBuilder_;
     
           /**
    @@ -8912,11 +8743,11 @@ public org.tensorflow.proto.OpPerformanceData.OpPerformance.Builder addOpPerform
                getOpPerformanceBuilderList() {
             return getOpPerformanceFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.OpPerformanceData.OpPerformance, org.tensorflow.proto.OpPerformanceData.OpPerformance.Builder, org.tensorflow.proto.OpPerformanceData.OpPerformanceOrBuilder> 
               getOpPerformanceFieldBuilder() {
             if (opPerformanceBuilder_ == null) {
    -          opPerformanceBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          opPerformanceBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.OpPerformanceData.OpPerformance, org.tensorflow.proto.OpPerformanceData.OpPerformance.Builder, org.tensorflow.proto.OpPerformanceData.OpPerformanceOrBuilder>(
                       opPerformance_,
                       ((bitField0_ & 0x00000001) != 0),
    @@ -8926,18 +8757,6 @@ public org.tensorflow.proto.OpPerformanceData.OpPerformance.Builder addOpPerform
             }
             return opPerformanceBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.OpPerformanceList)
         }
    @@ -8993,47 +8812,47 @@ public org.tensorflow.proto.OpPerformanceData.OpPerformanceList getDefaultInstan
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SessionInfo_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SessionInfo_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_OpInfo_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_OpInfo_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_OpInfo_AttrEntry_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_OpInfo_AttrEntry_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_OpInfo_TensorProperties_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_OpInfo_TensorProperties_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_NormalDistribution_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_NormalDistribution_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_LogNormalDistribution_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_LogNormalDistribution_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_OpPerformance_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_OpPerformance_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_OpPerformance_OpMemory_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_OpPerformance_OpMemory_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_OpPerformanceList_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_OpPerformanceList_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -9099,57 +8918,58 @@ public org.tensorflow.proto.OpPerformanceData.OpPerformanceList getDefaultInstan
         internal_static_tensorflow_SessionInfo_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_SessionInfo_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SessionInfo_descriptor,
             new java.lang.String[] { "IntraOpParallelism", });
         internal_static_tensorflow_OpInfo_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_OpInfo_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_OpInfo_descriptor,
             new java.lang.String[] { "Op", "Attr", "Inputs", "Outputs", "Device", "SessionInfo", });
         internal_static_tensorflow_OpInfo_AttrEntry_descriptor =
           internal_static_tensorflow_OpInfo_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_OpInfo_AttrEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_OpInfo_AttrEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_OpInfo_TensorProperties_descriptor =
           internal_static_tensorflow_OpInfo_descriptor.getNestedTypes().get(1);
         internal_static_tensorflow_OpInfo_TensorProperties_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_OpInfo_TensorProperties_descriptor,
             new java.lang.String[] { "Dtype", "Shape", "Value", });
         internal_static_tensorflow_NormalDistribution_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_NormalDistribution_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_NormalDistribution_descriptor,
             new java.lang.String[] { "Mu", "Sigma", });
         internal_static_tensorflow_LogNormalDistribution_descriptor =
           getDescriptor().getMessageTypes().get(3);
         internal_static_tensorflow_LogNormalDistribution_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_LogNormalDistribution_descriptor,
             new java.lang.String[] { "Mu", "Sigma", });
         internal_static_tensorflow_OpPerformance_descriptor =
           getDescriptor().getMessageTypes().get(4);
         internal_static_tensorflow_OpPerformance_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_OpPerformance_descriptor,
             new java.lang.String[] { "Op", "SessionInfo", "Node", "TemporaryMemorySize", "ComputeCost", "ComputeTime", "MemoryTime", "ComputeEfficiency", "MemoryEfficiency", "ExecutionTimeNormal", "ExecutionTimeLogNormal", "OpMemory", "ExecutionTime", });
         internal_static_tensorflow_OpPerformance_OpMemory_descriptor =
           internal_static_tensorflow_OpPerformance_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_OpPerformance_OpMemory_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_OpPerformance_OpMemory_descriptor,
             new java.lang.String[] { "OutputMemory", "TempMemory", "PersistentMemory", "DeviceTempMemory", "DevicePersistentMemory", });
         internal_static_tensorflow_OpPerformanceList_descriptor =
           getDescriptor().getMessageTypes().get(5);
         internal_static_tensorflow_OpPerformanceList_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_OpPerformanceList_descriptor,
             new java.lang.String[] { "OpPerformance", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.TensorProtos.getDescriptor();
         org.tensorflow.proto.TensorShapeProtos.getDescriptor();
         org.tensorflow.proto.TypesProtos.getDescriptor();
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OptimizedFunctionGraphOuterClass.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OptimizedFunctionGraphOuterClass.java
    index 70e1dc2e94d..324e2a3431c 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OptimizedFunctionGraphOuterClass.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OptimizedFunctionGraphOuterClass.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/optimized_function_graph.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class OptimizedFunctionGraphOuterClass {
       private OptimizedFunctionGraphOuterClass() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      OptimizedFunctionGraphOuterClass.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -110,7 +121,6 @@ boolean containsNodeNameToControlRet(
          *
          * map<string, string> node_name_to_control_ret = 3;
          */
    -
         /* nullable */
     java.lang.String getNodeNameToControlRetOrDefault(
             java.lang.String key,
    @@ -124,7 +134,6 @@ java.lang.String getNodeNameToControlRetOrDefault(
          *
          * map<string, string> node_name_to_control_ret = 3;
          */
    -
         java.lang.String getNodeNameToControlRetOrThrow(
             java.lang.String key);
     
    @@ -252,32 +261,29 @@ java.lang.String getNodeNameToControlRetOrThrow(
        * Protobuf type {@code tensorflow.OptimizedFunctionGraph}
        */
       public static final class OptimizedFunctionGraph extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.OptimizedFunctionGraph)
           OptimizedFunctionGraphOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        OptimizedFunctionGraph.class.getName());
    +    }
         // Use OptimizedFunctionGraph.newBuilder() to construct.
    -    private OptimizedFunctionGraph(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private OptimizedFunctionGraph(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private OptimizedFunctionGraph() {
           name_ = "";
    -      retTypes_ = java.util.Collections.emptyList();
    +      retTypes_ = emptyIntList();
           source_ = 0;
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new OptimizedFunctionGraph();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.OptimizedFunctionGraphOuterClass.internal_static_tensorflow_OptimizedFunctionGraph_descriptor;
    @@ -285,7 +291,7 @@ protected java.lang.Object newInstance(
     
         @SuppressWarnings({"rawtypes"})
         @java.lang.Override
    -    protected com.google.protobuf.MapField internalGetMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
             int number) {
           switch (number) {
             case 3:
    @@ -296,7 +302,7 @@ protected com.google.protobuf.MapField internalGetMapField(
           }
         }
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.OptimizedFunctionGraphOuterClass.internal_static_tensorflow_OptimizedFunctionGraph_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -306,8 +312,10 @@ protected com.google.protobuf.MapField internalGetMapField(
         /**
          * 
          * Enum for distinguishing the origin where the proto is created.
    +     *
          * AOT: proto is created in ahead-of-time environment, which can be different
          * from the environment where the graph is actually executed.
    +     *
          * JIT: proto is created in just-in-time execution, which has the same
          * environment as the one the graph is actually executed.
          * 
    @@ -331,6 +339,15 @@ public enum OptimizationSource UNRECOGNIZED(-1), ; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + OptimizationSource.class.getName()); + } /** * SOURCE_UNSPECIFIED = 0; */ @@ -430,7 +447,8 @@ private OptimizationSource(int value) { private int bitField0_; public static final int NAME_FIELD_NUMBER = 1; - private volatile java.lang.Object name_; + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; /** *
          * Function name. It can be a human-readable SignatureDef's method name, or a
    @@ -489,7 +507,7 @@ public java.lang.String getName() {
          */
         @java.lang.Override
         public boolean hasFunctionGraph() {
    -      return functionGraph_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -512,7 +530,7 @@ public org.tensorflow.proto.GraphDef getFunctionGraph() {
          */
         @java.lang.Override
         public org.tensorflow.proto.GraphDefOrBuilder getFunctionGraphOrBuilder() {
    -      return getFunctionGraph();
    +      return functionGraph_ == null ? org.tensorflow.proto.GraphDef.getDefaultInstance() : functionGraph_;
         }
     
         public static final int NODE_NAME_TO_CONTROL_RET_FIELD_NUMBER = 3;
    @@ -527,6 +545,7 @@ private static final class NodeNameToControlRetDefaultEntryHolder {
                       com.google.protobuf.WireFormat.FieldType.STRING,
                       "");
         }
    +    @SuppressWarnings("serial")
         private com.google.protobuf.MapField<
             java.lang.String, java.lang.String> nodeNameToControlRet_;
         private com.google.protobuf.MapField
    @@ -537,7 +556,6 @@ private static final class NodeNameToControlRetDefaultEntryHolder {
           }
           return nodeNameToControlRet_;
         }
    -
         public int getNodeNameToControlRetCount() {
           return internalGetNodeNameToControlRet().getMap().size();
         }
    @@ -549,7 +567,6 @@ public int getNodeNameToControlRetCount() {
          *
          * map<string, string> node_name_to_control_ret = 3;
          */
    -
         @java.lang.Override
         public boolean containsNodeNameToControlRet(
             java.lang.String key) {
    @@ -573,7 +590,6 @@ public java.util.Map getNodeNameToControlRet
          * map<string, string> node_name_to_control_ret = 3;
          */
         @java.lang.Override
    -
         public java.util.Map getNodeNameToControlRetMap() {
           return internalGetNodeNameToControlRet().getMap();
         }
    @@ -586,10 +602,11 @@ public java.util.Map getNodeNameToControlRet
          * map<string, string> node_name_to_control_ret = 3;
          */
         @java.lang.Override
    -
    -    public java.lang.String getNodeNameToControlRetOrDefault(
    +    public /* nullable */
    +java.lang.String getNodeNameToControlRetOrDefault(
             java.lang.String key,
    -        java.lang.String defaultValue) {
    +        /* nullable */
    +java.lang.String defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
           java.util.Map map =
               internalGetNodeNameToControlRet().getMap();
    @@ -604,7 +621,6 @@ public java.lang.String getNodeNameToControlRetOrDefault(
          * map<string, string> node_name_to_control_ret = 3;
          */
         @java.lang.Override
    -
         public java.lang.String getNodeNameToControlRetOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -617,14 +633,14 @@ public java.lang.String getNodeNameToControlRetOrThrow(
         }
     
         public static final int RET_TYPES_FIELD_NUMBER = 4;
    -    private java.util.List retTypes_;
    -    private static final com.google.protobuf.Internal.ListAdapter.Converter<
    -        java.lang.Integer, org.tensorflow.proto.DataType> retTypes_converter_ =
    -            new com.google.protobuf.Internal.ListAdapter.Converter<
    -                java.lang.Integer, org.tensorflow.proto.DataType>() {
    -              public org.tensorflow.proto.DataType convert(java.lang.Integer from) {
    -                @SuppressWarnings("deprecation")
    -                org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(from);
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.Internal.IntList retTypes_;
    +    private static final com.google.protobuf.Internal.IntListAdapter.IntConverter<
    +        org.tensorflow.proto.DataType> retTypes_converter_ =
    +            new com.google.protobuf.Internal.IntListAdapter.IntConverter<
    +                org.tensorflow.proto.DataType>() {
    +              public org.tensorflow.proto.DataType convert(int from) {
    +                org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(from);
                     return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
                   }
                 };
    @@ -639,8 +655,8 @@ public org.tensorflow.proto.DataType convert(java.lang.Integer from) {
          */
         @java.lang.Override
         public java.util.List getRetTypesList() {
    -      return new com.google.protobuf.Internal.ListAdapter<
    -          java.lang.Integer, org.tensorflow.proto.DataType>(retTypes_, retTypes_converter_);
    +      return new com.google.protobuf.Internal.IntListAdapter<
    +          org.tensorflow.proto.DataType>(retTypes_, retTypes_converter_);
         }
         /**
          * 
    @@ -667,7 +683,7 @@ public int getRetTypesCount() {
          */
         @java.lang.Override
         public org.tensorflow.proto.DataType getRetTypes(int index) {
    -      return retTypes_converter_.convert(retTypes_.get(index));
    +      return retTypes_converter_.convert(retTypes_.getInt(index));
         }
         /**
          * 
    @@ -695,12 +711,12 @@ public org.tensorflow.proto.DataType getRetTypes(int index) {
          */
         @java.lang.Override
         public int getRetTypesValue(int index) {
    -      return retTypes_.get(index);
    +      return retTypes_.getInt(index);
         }
         private int retTypesMemoizedSerializedSize;
     
         public static final int NUM_RETURN_NODES_FIELD_NUMBER = 5;
    -    private int numReturnNodes_;
    +    private int numReturnNodes_ = 0;
         /**
          * 
          * Number of return nodes. This is an output of graph preprocessing.
    @@ -715,7 +731,7 @@ public int getNumReturnNodes() {
         }
     
         public static final int SOURCE_FIELD_NUMBER = 7;
    -    private int source_;
    +    private int source_ = 0;
         /**
          * 
          * Indicates the source environment where this proto is generated.
    @@ -725,7 +741,7 @@ public int getNumReturnNodes() {
          * @return Whether the source field is set.
          */
         @java.lang.Override public boolean hasSource() {
    -      return ((bitField0_ & 0x00000001) != 0);
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -747,13 +763,12 @@ public int getNumReturnNodes() {
          * @return The source.
          */
         @java.lang.Override public org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph.OptimizationSource getSource() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph.OptimizationSource result = org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph.OptimizationSource.valueOf(source_);
    +      org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph.OptimizationSource result = org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph.OptimizationSource.forNumber(source_);
           return result == null ? org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph.OptimizationSource.UNRECOGNIZED : result;
         }
     
         public static final int OPTIMIZATION_TIME_USECS_FIELD_NUMBER = 8;
    -    private long optimizationTimeUsecs_;
    +    private long optimizationTimeUsecs_ = 0L;
         /**
          * 
          * Time (in microseconds) spent on running the graph optimization passes for
    @@ -765,7 +780,7 @@ public int getNumReturnNodes() {
          */
         @java.lang.Override
         public boolean hasOptimizationTimeUsecs() {
    -      return ((bitField0_ & 0x00000002) != 0);
    +      return ((bitField0_ & 0x00000004) != 0);
         }
         /**
          * 
    @@ -796,13 +811,13 @@ public final boolean isInitialized() {
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
           getSerializedSize();
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
           }
    -      if (functionGraph_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(2, getFunctionGraph());
           }
    -      com.google.protobuf.GeneratedMessageV3
    +      com.google.protobuf.GeneratedMessage
             .serializeStringMapTo(
               output,
               internalGetNodeNameToControlRet(),
    @@ -813,15 +828,15 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
             output.writeUInt32NoTag(retTypesMemoizedSerializedSize);
           }
           for (int i = 0; i < retTypes_.size(); i++) {
    -        output.writeEnumNoTag(retTypes_.get(i));
    +        output.writeEnumNoTag(retTypes_.getInt(i));
           }
           if (numReturnNodes_ != 0) {
             output.writeUInt32(5, numReturnNodes_);
           }
    -      if (((bitField0_ & 0x00000001) != 0)) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             output.writeEnum(7, source_);
           }
    -      if (((bitField0_ & 0x00000002) != 0)) {
    +      if (((bitField0_ & 0x00000004) != 0)) {
             output.writeUInt64(8, optimizationTimeUsecs_);
           }
           getUnknownFields().writeTo(output);
    @@ -833,10 +848,10 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
           }
    -      if (functionGraph_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(2, getFunctionGraph());
           }
    @@ -854,7 +869,7 @@ public int getSerializedSize() {
             int dataSize = 0;
             for (int i = 0; i < retTypes_.size(); i++) {
               dataSize += com.google.protobuf.CodedOutputStream
    -            .computeEnumSizeNoTag(retTypes_.get(i));
    +            .computeEnumSizeNoTag(retTypes_.getInt(i));
             }
             size += dataSize;
             if (!getRetTypesList().isEmpty()) {  size += 1;
    @@ -866,11 +881,11 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeUInt32Size(5, numReturnNodes_);
           }
    -      if (((bitField0_ & 0x00000001) != 0)) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeEnumSize(7, source_);
           }
    -      if (((bitField0_ & 0x00000002) != 0)) {
    +      if (((bitField0_ & 0x00000004) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeUInt64Size(8, optimizationTimeUsecs_);
           }
    @@ -985,39 +1000,41 @@ public static org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFun
         }
         public static org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -1037,7 +1054,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -1052,7 +1069,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.OptimizedFunctionGraph}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.OptimizedFunctionGraph)
             org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraphOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1061,7 +1078,7 @@ public static final class Builder extends
           }
     
           @SuppressWarnings({"rawtypes"})
    -      protected com.google.protobuf.MapField internalGetMapField(
    +      protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
               int number) {
             switch (number) {
               case 3:
    @@ -1072,7 +1089,7 @@ protected com.google.protobuf.MapField internalGetMapField(
             }
           }
           @SuppressWarnings({"rawtypes"})
    -      protected com.google.protobuf.MapField internalGetMutableMapField(
    +      protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(
               int number) {
             switch (number) {
               case 3:
    @@ -1083,7 +1100,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
             }
           }
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.OptimizedFunctionGraphOuterClass.internal_static_tensorflow_OptimizedFunctionGraph_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -1092,34 +1109,36 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
     
           // Construct using org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getFunctionGraphFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             name_ = "";
    -
    -        if (functionGraphBuilder_ == null) {
    -          functionGraph_ = null;
    -        } else {
    -          functionGraph_ = null;
    +        functionGraph_ = null;
    +        if (functionGraphBuilder_ != null) {
    +          functionGraphBuilder_.dispose();
               functionGraphBuilder_ = null;
             }
             internalGetMutableNodeNameToControlRet().clear();
    -        retTypes_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        retTypes_ = emptyIntList();
    +        bitField0_ = (bitField0_ & ~0x00000008);
             numReturnNodes_ = 0;
    -
             source_ = 0;
    -        bitField0_ = (bitField0_ & ~0x00000004);
             optimizationTimeUsecs_ = 0L;
    -        bitField0_ = (bitField0_ & ~0x00000008);
             return this;
           }
     
    @@ -1146,67 +1165,50 @@ public org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGr
           @java.lang.Override
           public org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph buildPartial() {
             org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph result = new org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph(this);
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph result) {
    +        if (((bitField0_ & 0x00000008) != 0)) {
    +          retTypes_.makeImmutable();
    +          bitField0_ = (bitField0_ & ~0x00000008);
    +        }
    +        result.retTypes_ = retTypes_;
    +      }
    +
    +      private void buildPartial0(org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph result) {
             int from_bitField0_ = bitField0_;
    -        int to_bitField0_ = 0;
    -        result.name_ = name_;
    -        if (functionGraphBuilder_ == null) {
    -          result.functionGraph_ = functionGraph_;
    -        } else {
    -          result.functionGraph_ = functionGraphBuilder_.build();
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.name_ = name_;
             }
    -        result.nodeNameToControlRet_ = internalGetNodeNameToControlRet();
    -        result.nodeNameToControlRet_.makeImmutable();
    -        if (((bitField0_ & 0x00000002) != 0)) {
    -          retTypes_ = java.util.Collections.unmodifiableList(retTypes_);
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.functionGraph_ = functionGraphBuilder_ == null
    +              ? functionGraph_
    +              : functionGraphBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
             }
    -        result.retTypes_ = retTypes_;
    -        result.numReturnNodes_ = numReturnNodes_;
             if (((from_bitField0_ & 0x00000004) != 0)) {
    -          to_bitField0_ |= 0x00000001;
    +          result.nodeNameToControlRet_ = internalGetNodeNameToControlRet();
    +          result.nodeNameToControlRet_.makeImmutable();
             }
    -        result.source_ = source_;
    -        if (((from_bitField0_ & 0x00000008) != 0)) {
    -          result.optimizationTimeUsecs_ = optimizationTimeUsecs_;
    +        if (((from_bitField0_ & 0x00000010) != 0)) {
    +          result.numReturnNodes_ = numReturnNodes_;
    +        }
    +        if (((from_bitField0_ & 0x00000020) != 0)) {
    +          result.source_ = source_;
               to_bitField0_ |= 0x00000002;
             }
    -        result.bitField0_ = to_bitField0_;
    -        onBuilt();
    -        return result;
    +        if (((from_bitField0_ & 0x00000040) != 0)) {
    +          result.optimizationTimeUsecs_ = optimizationTimeUsecs_;
    +          to_bitField0_ |= 0x00000004;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    -      }
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph) {
    @@ -1221,6 +1223,7 @@ public Builder mergeFrom(org.tensorflow.proto.OptimizedFunctionGraphOuterClass.O
             if (other == org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph.getDefaultInstance()) return this;
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (other.hasFunctionGraph()) {
    @@ -1228,10 +1231,11 @@ public Builder mergeFrom(org.tensorflow.proto.OptimizedFunctionGraphOuterClass.O
             }
             internalGetMutableNodeNameToControlRet().mergeFrom(
                 other.internalGetNodeNameToControlRet());
    +        bitField0_ |= 0x00000004;
             if (!other.retTypes_.isEmpty()) {
               if (retTypes_.isEmpty()) {
                 retTypes_ = other.retTypes_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            bitField0_ = (bitField0_ & ~0x00000008);
               } else {
                 ensureRetTypesIsMutable();
                 retTypes_.addAll(other.retTypes_);
    @@ -1275,14 +1279,14 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     input.readMessage(
                         getFunctionGraphFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 26: {
    @@ -1291,12 +1295,13 @@ public Builder mergeFrom(
                         NodeNameToControlRetDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                     internalGetMutableNodeNameToControlRet().getMutableMap().put(
                         nodeNameToControlRet__.getKey(), nodeNameToControlRet__.getValue());
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 26
                   case 32: {
                     int tmpRaw = input.readEnum();
                     ensureRetTypesIsMutable();
    -                retTypes_.add(tmpRaw);
    +                retTypes_.addInt(tmpRaw);
                     break;
                   } // case 32
                   case 34: {
    @@ -1305,24 +1310,24 @@ public Builder mergeFrom(
                     while(input.getBytesUntilLimit() > 0) {
                       int tmpRaw = input.readEnum();
                       ensureRetTypesIsMutable();
    -                  retTypes_.add(tmpRaw);
    +                  retTypes_.addInt(tmpRaw);
                     }
                     input.popLimit(oldLimit);
                     break;
                   } // case 34
                   case 40: {
                     numReturnNodes_ = input.readUInt32();
    -
    +                bitField0_ |= 0x00000010;
                     break;
                   } // case 40
                   case 56: {
                     source_ = input.readEnum();
    -                bitField0_ |= 0x00000004;
    +                bitField0_ |= 0x00000020;
                     break;
                   } // case 56
                   case 64: {
                     optimizationTimeUsecs_ = input.readUInt64();
    -                bitField0_ |= 0x00000008;
    +                bitField0_ |= 0x00000040;
                     break;
                   } // case 64
                   default: {
    @@ -1398,11 +1403,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -1416,8 +1419,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -1433,18 +1436,16 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
     
           private org.tensorflow.proto.GraphDef functionGraph_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.GraphDef, org.tensorflow.proto.GraphDef.Builder, org.tensorflow.proto.GraphDefOrBuilder> functionGraphBuilder_;
           /**
            * 
    @@ -1455,7 +1456,7 @@ public Builder setNameBytes(
            * @return Whether the functionGraph field is set.
            */
           public boolean hasFunctionGraph() {
    -        return functionGraphBuilder_ != null || functionGraph_ != null;
    +        return ((bitField0_ & 0x00000002) != 0);
           }
           /**
            * 
    @@ -1485,11 +1486,11 @@ public Builder setFunctionGraph(org.tensorflow.proto.GraphDef value) {
                 throw new NullPointerException();
               }
               functionGraph_ = value;
    -          onChanged();
             } else {
               functionGraphBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -1503,11 +1504,11 @@ public Builder setFunctionGraph(
               org.tensorflow.proto.GraphDef.Builder builderForValue) {
             if (functionGraphBuilder_ == null) {
               functionGraph_ = builderForValue.build();
    -          onChanged();
             } else {
               functionGraphBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -1519,17 +1520,20 @@ public Builder setFunctionGraph(
            */
           public Builder mergeFunctionGraph(org.tensorflow.proto.GraphDef value) {
             if (functionGraphBuilder_ == null) {
    -          if (functionGraph_ != null) {
    -            functionGraph_ =
    -              org.tensorflow.proto.GraphDef.newBuilder(functionGraph_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000002) != 0) &&
    +            functionGraph_ != null &&
    +            functionGraph_ != org.tensorflow.proto.GraphDef.getDefaultInstance()) {
    +            getFunctionGraphBuilder().mergeFrom(value);
               } else {
                 functionGraph_ = value;
               }
    -          onChanged();
             } else {
               functionGraphBuilder_.mergeFrom(value);
             }
    -
    +        if (functionGraph_ != null) {
    +          bitField0_ |= 0x00000002;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -1540,14 +1544,13 @@ public Builder mergeFunctionGraph(org.tensorflow.proto.GraphDef value) {
            * .tensorflow.GraphDef function_graph = 2;
            */
           public Builder clearFunctionGraph() {
    -        if (functionGraphBuilder_ == null) {
    -          functionGraph_ = null;
    -          onChanged();
    -        } else {
    -          functionGraph_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000002);
    +        functionGraph_ = null;
    +        if (functionGraphBuilder_ != null) {
    +          functionGraphBuilder_.dispose();
               functionGraphBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -1558,7 +1561,7 @@ public Builder clearFunctionGraph() {
            * .tensorflow.GraphDef function_graph = 2;
            */
           public org.tensorflow.proto.GraphDef.Builder getFunctionGraphBuilder() {
    -        
    +        bitField0_ |= 0x00000002;
             onChanged();
             return getFunctionGraphFieldBuilder().getBuilder();
           }
    @@ -1584,11 +1587,11 @@ public org.tensorflow.proto.GraphDefOrBuilder getFunctionGraphOrBuilder() {
            *
            * .tensorflow.GraphDef function_graph = 2;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.GraphDef, org.tensorflow.proto.GraphDef.Builder, org.tensorflow.proto.GraphDefOrBuilder> 
               getFunctionGraphFieldBuilder() {
             if (functionGraphBuilder_ == null) {
    -          functionGraphBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          functionGraphBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.GraphDef, org.tensorflow.proto.GraphDef.Builder, org.tensorflow.proto.GraphDefOrBuilder>(
                       getFunctionGraph(),
                       getParentForChildren(),
    @@ -1601,7 +1604,7 @@ public org.tensorflow.proto.GraphDefOrBuilder getFunctionGraphOrBuilder() {
           private com.google.protobuf.MapField<
               java.lang.String, java.lang.String> nodeNameToControlRet_;
           private com.google.protobuf.MapField
    -      internalGetNodeNameToControlRet() {
    +          internalGetNodeNameToControlRet() {
             if (nodeNameToControlRet_ == null) {
               return com.google.protobuf.MapField.emptyMapField(
                   NodeNameToControlRetDefaultEntryHolder.defaultEntry);
    @@ -1609,8 +1612,7 @@ public org.tensorflow.proto.GraphDefOrBuilder getFunctionGraphOrBuilder() {
             return nodeNameToControlRet_;
           }
           private com.google.protobuf.MapField
    -      internalGetMutableNodeNameToControlRet() {
    -        onChanged();;
    +          internalGetMutableNodeNameToControlRet() {
             if (nodeNameToControlRet_ == null) {
               nodeNameToControlRet_ = com.google.protobuf.MapField.newMapField(
                   NodeNameToControlRetDefaultEntryHolder.defaultEntry);
    @@ -1618,9 +1620,10 @@ public org.tensorflow.proto.GraphDefOrBuilder getFunctionGraphOrBuilder() {
             if (!nodeNameToControlRet_.isMutable()) {
               nodeNameToControlRet_ = nodeNameToControlRet_.copy();
             }
    +        bitField0_ |= 0x00000004;
    +        onChanged();
             return nodeNameToControlRet_;
           }
    -
           public int getNodeNameToControlRetCount() {
             return internalGetNodeNameToControlRet().getMap().size();
           }
    @@ -1632,7 +1635,6 @@ public int getNodeNameToControlRetCount() {
            *
            * map<string, string> node_name_to_control_ret = 3;
            */
    -
           @java.lang.Override
           public boolean containsNodeNameToControlRet(
               java.lang.String key) {
    @@ -1656,7 +1658,6 @@ public java.util.Map getNodeNameToControlRet
            * map<string, string> node_name_to_control_ret = 3;
            */
           @java.lang.Override
    -
           public java.util.Map getNodeNameToControlRetMap() {
             return internalGetNodeNameToControlRet().getMap();
           }
    @@ -1669,10 +1670,11 @@ public java.util.Map getNodeNameToControlRet
            * map<string, string> node_name_to_control_ret = 3;
            */
           @java.lang.Override
    -
    -      public java.lang.String getNodeNameToControlRetOrDefault(
    +      public /* nullable */
    +java.lang.String getNodeNameToControlRetOrDefault(
               java.lang.String key,
    -          java.lang.String defaultValue) {
    +          /* nullable */
    +java.lang.String defaultValue) {
             if (key == null) { throw new NullPointerException("map key"); }
             java.util.Map map =
                 internalGetNodeNameToControlRet().getMap();
    @@ -1687,7 +1689,6 @@ public java.lang.String getNodeNameToControlRetOrDefault(
            * map<string, string> node_name_to_control_ret = 3;
            */
           @java.lang.Override
    -
           public java.lang.String getNodeNameToControlRetOrThrow(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    @@ -1698,8 +1699,8 @@ public java.lang.String getNodeNameToControlRetOrThrow(
             }
             return map.get(key);
           }
    -
           public Builder clearNodeNameToControlRet() {
    +        bitField0_ = (bitField0_ & ~0x00000004);
             internalGetMutableNodeNameToControlRet().getMutableMap()
                 .clear();
             return this;
    @@ -1712,7 +1713,6 @@ public Builder clearNodeNameToControlRet() {
            *
            * map<string, string> node_name_to_control_ret = 3;
            */
    -
           public Builder removeNodeNameToControlRet(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    @@ -1725,7 +1725,8 @@ public Builder removeNodeNameToControlRet(
            */
           @java.lang.Deprecated
           public java.util.Map
    -      getMutableNodeNameToControlRet() {
    +          getMutableNodeNameToControlRet() {
    +        bitField0_ |= 0x00000004;
             return internalGetMutableNodeNameToControlRet().getMutableMap();
           }
           /**
    @@ -1740,12 +1741,10 @@ public Builder putNodeNameToControlRet(
               java.lang.String key,
               java.lang.String value) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    +        if (value == null) { throw new NullPointerException("map value"); }
             internalGetMutableNodeNameToControlRet().getMutableMap()
                 .put(key, value);
    +        bitField0_ |= 0x00000004;
             return this;
           }
           /**
    @@ -1756,20 +1755,20 @@ public Builder putNodeNameToControlRet(
            *
            * map<string, string> node_name_to_control_ret = 3;
            */
    -
           public Builder putAllNodeNameToControlRet(
               java.util.Map values) {
             internalGetMutableNodeNameToControlRet().getMutableMap()
                 .putAll(values);
    +        bitField0_ |= 0x00000004;
             return this;
           }
     
    -      private java.util.List retTypes_ =
    -        java.util.Collections.emptyList();
    +      private com.google.protobuf.Internal.IntList retTypes_ =
    +        emptyIntList();
           private void ensureRetTypesIsMutable() {
    -        if (!((bitField0_ & 0x00000002) != 0)) {
    -          retTypes_ = new java.util.ArrayList(retTypes_);
    -          bitField0_ |= 0x00000002;
    +        if (!((bitField0_ & 0x00000008) != 0)) {
    +          retTypes_ = makeMutableCopy(retTypes_);
    +          bitField0_ |= 0x00000008;
             }
           }
           /**
    @@ -1782,8 +1781,8 @@ private void ensureRetTypesIsMutable() {
            * @return A list containing the retTypes.
            */
           public java.util.List getRetTypesList() {
    -        return new com.google.protobuf.Internal.ListAdapter<
    -            java.lang.Integer, org.tensorflow.proto.DataType>(retTypes_, retTypes_converter_);
    +        return new com.google.protobuf.Internal.IntListAdapter<
    +            org.tensorflow.proto.DataType>(retTypes_, retTypes_converter_);
           }
           /**
            * 
    @@ -1808,7 +1807,7 @@ public int getRetTypesCount() {
            * @return The retTypes at the given index.
            */
           public org.tensorflow.proto.DataType getRetTypes(int index) {
    -        return retTypes_converter_.convert(retTypes_.get(index));
    +        return retTypes_converter_.convert(retTypes_.getInt(index));
           }
           /**
            * 
    @@ -1827,7 +1826,7 @@ public Builder setRetTypes(
               throw new NullPointerException();
             }
             ensureRetTypesIsMutable();
    -        retTypes_.set(index, value.getNumber());
    +        retTypes_.setInt(index, value.getNumber());
             onChanged();
             return this;
           }
    @@ -1846,7 +1845,7 @@ public Builder addRetTypes(org.tensorflow.proto.DataType value) {
               throw new NullPointerException();
             }
             ensureRetTypesIsMutable();
    -        retTypes_.add(value.getNumber());
    +        retTypes_.addInt(value.getNumber());
             onChanged();
             return this;
           }
    @@ -1864,7 +1863,7 @@ public Builder addAllRetTypes(
               java.lang.Iterable values) {
             ensureRetTypesIsMutable();
             for (org.tensorflow.proto.DataType value : values) {
    -          retTypes_.add(value.getNumber());
    +          retTypes_.addInt(value.getNumber());
             }
             onChanged();
             return this;
    @@ -1879,8 +1878,8 @@ public Builder addAllRetTypes(
            * @return This builder for chaining.
            */
           public Builder clearRetTypes() {
    -        retTypes_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        retTypes_ = emptyIntList();
    +        bitField0_ = (bitField0_ & ~0x00000008);
             onChanged();
             return this;
           }
    @@ -1908,7 +1907,7 @@ public Builder clearRetTypes() {
            * @return The enum numeric value on the wire of retTypes at the given index.
            */
           public int getRetTypesValue(int index) {
    -        return retTypes_.get(index);
    +        return retTypes_.getInt(index);
           }
           /**
            * 
    @@ -1924,7 +1923,7 @@ public int getRetTypesValue(int index) {
           public Builder setRetTypesValue(
               int index, int value) {
             ensureRetTypesIsMutable();
    -        retTypes_.set(index, value);
    +        retTypes_.setInt(index, value);
             onChanged();
             return this;
           }
    @@ -1940,7 +1939,7 @@ public Builder setRetTypesValue(
            */
           public Builder addRetTypesValue(int value) {
             ensureRetTypesIsMutable();
    -        retTypes_.add(value);
    +        retTypes_.addInt(value);
             onChanged();
             return this;
           }
    @@ -1958,7 +1957,7 @@ public Builder addAllRetTypesValue(
               java.lang.Iterable values) {
             ensureRetTypesIsMutable();
             for (int value : values) {
    -          retTypes_.add(value);
    +          retTypes_.addInt(value);
             }
             onChanged();
             return this;
    @@ -1987,8 +1986,9 @@ public int getNumReturnNodes() {
            * @return This builder for chaining.
            */
           public Builder setNumReturnNodes(int value) {
    -        
    +
             numReturnNodes_ = value;
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -2001,7 +2001,7 @@ public Builder setNumReturnNodes(int value) {
            * @return This builder for chaining.
            */
           public Builder clearNumReturnNodes() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000010);
             numReturnNodes_ = 0;
             onChanged();
             return this;
    @@ -2017,7 +2017,7 @@ public Builder clearNumReturnNodes() {
            * @return Whether the source field is set.
            */
           @java.lang.Override public boolean hasSource() {
    -        return ((bitField0_ & 0x00000004) != 0);
    +        return ((bitField0_ & 0x00000020) != 0);
           }
           /**
            * 
    @@ -2040,8 +2040,8 @@ public Builder clearNumReturnNodes() {
            * @return This builder for chaining.
            */
           public Builder setSourceValue(int value) {
    -        bitField0_ |= 0x00000004;
             source_ = value;
    +        bitField0_ |= 0x00000020;
             onChanged();
             return this;
           }
    @@ -2055,8 +2055,7 @@ public Builder setSourceValue(int value) {
            */
           @java.lang.Override
           public org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph.OptimizationSource getSource() {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph.OptimizationSource result = org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph.OptimizationSource.valueOf(source_);
    +        org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph.OptimizationSource result = org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph.OptimizationSource.forNumber(source_);
             return result == null ? org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGraph.OptimizationSource.UNRECOGNIZED : result;
           }
           /**
    @@ -2072,7 +2071,7 @@ public Builder setSource(org.tensorflow.proto.OptimizedFunctionGraphOuterClass.O
             if (value == null) {
               throw new NullPointerException();
             }
    -        bitField0_ |= 0x00000004;
    +        bitField0_ |= 0x00000020;
             source_ = value.getNumber();
             onChanged();
             return this;
    @@ -2086,7 +2085,7 @@ public Builder setSource(org.tensorflow.proto.OptimizedFunctionGraphOuterClass.O
            * @return This builder for chaining.
            */
           public Builder clearSource() {
    -        bitField0_ = (bitField0_ & ~0x00000004);
    +        bitField0_ = (bitField0_ & ~0x00000020);
             source_ = 0;
             onChanged();
             return this;
    @@ -2104,7 +2103,7 @@ public Builder clearSource() {
            */
           @java.lang.Override
           public boolean hasOptimizationTimeUsecs() {
    -        return ((bitField0_ & 0x00000008) != 0);
    +        return ((bitField0_ & 0x00000040) != 0);
           }
           /**
            * 
    @@ -2130,8 +2129,9 @@ public long getOptimizationTimeUsecs() {
            * @return This builder for chaining.
            */
           public Builder setOptimizationTimeUsecs(long value) {
    -        bitField0_ |= 0x00000008;
    +
             optimizationTimeUsecs_ = value;
    +        bitField0_ |= 0x00000040;
             onChanged();
             return this;
           }
    @@ -2145,23 +2145,11 @@ public Builder setOptimizationTimeUsecs(long value) {
            * @return This builder for chaining.
            */
           public Builder clearOptimizationTimeUsecs() {
    -        bitField0_ = (bitField0_ & ~0x00000008);
    +        bitField0_ = (bitField0_ & ~0x00000040);
             optimizationTimeUsecs_ = 0L;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.OptimizedFunctionGraph)
         }
    @@ -2217,12 +2205,12 @@ public org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGr
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_OptimizedFunctionGraph_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_OptimizedFunctionGraph_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_OptimizedFunctionGraph_NodeNameToControlRetEntry_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_OptimizedFunctionGraph_NodeNameToControlRetEntry_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -2261,15 +2249,16 @@ public org.tensorflow.proto.OptimizedFunctionGraphOuterClass.OptimizedFunctionGr
         internal_static_tensorflow_OptimizedFunctionGraph_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_OptimizedFunctionGraph_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_OptimizedFunctionGraph_descriptor,
    -        new java.lang.String[] { "Name", "FunctionGraph", "NodeNameToControlRet", "RetTypes", "NumReturnNodes", "Source", "OptimizationTimeUsecs", "Source", "OptimizationTimeUsecs", });
    +        new java.lang.String[] { "Name", "FunctionGraph", "NodeNameToControlRet", "RetTypes", "NumReturnNodes", "Source", "OptimizationTimeUsecs", });
         internal_static_tensorflow_OptimizedFunctionGraph_NodeNameToControlRetEntry_descriptor =
           internal_static_tensorflow_OptimizedFunctionGraph_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_OptimizedFunctionGraph_NodeNameToControlRetEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_OptimizedFunctionGraph_NodeNameToControlRetEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.GraphProtos.getDescriptor();
         org.tensorflow.proto.TypesProtos.getDescriptor();
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OptimizerOptions.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OptimizerOptions.java
    index 3d35bce9caf..3db93f28f92 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OptimizerOptions.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OptimizerOptions.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,12 +13,21 @@
      * Protobuf type {@code tensorflow.OptimizerOptions}
      */
     public final class OptimizerOptions extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.OptimizerOptions)
         OptimizerOptionsOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      OptimizerOptions.class.getName());
    +  }
       // Use OptimizerOptions.newBuilder() to construct.
    -  private OptimizerOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private OptimizerOptions(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private OptimizerOptions() {
    @@ -24,25 +35,13 @@ private OptimizerOptions() {
         globalJitLevel_ = 0;
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new OptimizerOptions();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_OptimizerOptions_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_OptimizerOptions_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -80,6 +79,15 @@ public enum Level
         UNRECOGNIZED(-1),
         ;
     
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        Level.class.getName());
    +    }
         /**
          * 
          * L1 is the default level.
    @@ -222,6 +230,15 @@ public enum GlobalJitLevel
         UNRECOGNIZED(-1),
         ;
     
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        GlobalJitLevel.class.getName());
    +    }
         /**
          * 
          * Default setting ("off" now, but later expected to be "on")
    @@ -336,7 +353,7 @@ private GlobalJitLevel(int value) {
       }
     
       public static final int DO_COMMON_SUBEXPRESSION_ELIMINATION_FIELD_NUMBER = 1;
    -  private boolean doCommonSubexpressionElimination_;
    +  private boolean doCommonSubexpressionElimination_ = false;
       /**
        * 
        * If true, optimize the graph using common subexpression elimination.
    @@ -354,7 +371,7 @@ public boolean getDoCommonSubexpressionElimination() {
       }
     
       public static final int DO_CONSTANT_FOLDING_FIELD_NUMBER = 2;
    -  private boolean doConstantFolding_;
    +  private boolean doConstantFolding_ = false;
       /**
        * 
        * If true, perform constant folding optimization on the graph.
    @@ -371,7 +388,7 @@ public boolean getDoConstantFolding() {
       }
     
       public static final int MAX_FOLDED_CONSTANT_IN_BYTES_FIELD_NUMBER = 6;
    -  private long maxFoldedConstantInBytes_;
    +  private long maxFoldedConstantInBytes_ = 0L;
       /**
        * 
        * Constant folding optimization replaces tensors whose values can be
    @@ -390,7 +407,7 @@ public long getMaxFoldedConstantInBytes() {
       }
     
       public static final int DO_FUNCTION_INLINING_FIELD_NUMBER = 4;
    -  private boolean doFunctionInlining_;
    +  private boolean doFunctionInlining_ = false;
       /**
        * 
        * If true, perform function inlining on the graph.
    @@ -405,7 +422,7 @@ public boolean getDoFunctionInlining() {
       }
     
       public static final int OPT_LEVEL_FIELD_NUMBER = 3;
    -  private int optLevel_;
    +  private int optLevel_ = 0;
       /**
        * 
        * Overall optimization level. The actual optimizations applied will be the
    @@ -428,13 +445,12 @@ public boolean getDoFunctionInlining() {
        * @return The optLevel.
        */
       @java.lang.Override public org.tensorflow.proto.OptimizerOptions.Level getOptLevel() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.OptimizerOptions.Level result = org.tensorflow.proto.OptimizerOptions.Level.valueOf(optLevel_);
    +    org.tensorflow.proto.OptimizerOptions.Level result = org.tensorflow.proto.OptimizerOptions.Level.forNumber(optLevel_);
         return result == null ? org.tensorflow.proto.OptimizerOptions.Level.UNRECOGNIZED : result;
       }
     
       public static final int GLOBAL_JIT_LEVEL_FIELD_NUMBER = 5;
    -  private int globalJitLevel_;
    +  private int globalJitLevel_ = 0;
       /**
        * .tensorflow.OptimizerOptions.GlobalJitLevel global_jit_level = 5;
        * @return The enum numeric value on the wire for globalJitLevel.
    @@ -447,18 +463,17 @@ public boolean getDoFunctionInlining() {
        * @return The globalJitLevel.
        */
       @java.lang.Override public org.tensorflow.proto.OptimizerOptions.GlobalJitLevel getGlobalJitLevel() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.OptimizerOptions.GlobalJitLevel result = org.tensorflow.proto.OptimizerOptions.GlobalJitLevel.valueOf(globalJitLevel_);
    +    org.tensorflow.proto.OptimizerOptions.GlobalJitLevel result = org.tensorflow.proto.OptimizerOptions.GlobalJitLevel.forNumber(globalJitLevel_);
         return result == null ? org.tensorflow.proto.OptimizerOptions.GlobalJitLevel.UNRECOGNIZED : result;
       }
     
       public static final int CPU_GLOBAL_JIT_FIELD_NUMBER = 7;
    -  private boolean cpuGlobalJit_;
    +  private boolean cpuGlobalJit_ = false;
       /**
        * 
        * CPU code will be autoclustered only if global_jit_level >= ON_1 and either:
    -   *  - this flag is true, or
    -   *  - TF_XLA_FLAGS contains --tf_xla_cpu_global_jit=true.
    +   * - this flag is true, or
    +   * - TF_XLA_FLAGS contains --tf_xla_cpu_global_jit=true.
        * 
    * * bool cpu_global_jit = 7; @@ -637,39 +652,41 @@ public static org.tensorflow.proto.OptimizerOptions parseFrom( } public static org.tensorflow.proto.OptimizerOptions parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.OptimizerOptions parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.OptimizerOptions parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.OptimizerOptions parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.OptimizerOptions parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.OptimizerOptions parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -689,7 +706,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -701,7 +718,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.OptimizerOptions} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.OptimizerOptions) org.tensorflow.proto.OptimizerOptionsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -710,7 +727,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_OptimizerOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -723,27 +740,21 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; doCommonSubexpressionElimination_ = false; - doConstantFolding_ = false; - maxFoldedConstantInBytes_ = 0L; - doFunctionInlining_ = false; - optLevel_ = 0; - globalJitLevel_ = 0; - cpuGlobalJit_ = false; - return this; } @@ -770,49 +781,36 @@ public org.tensorflow.proto.OptimizerOptions build() { @java.lang.Override public org.tensorflow.proto.OptimizerOptions buildPartial() { org.tensorflow.proto.OptimizerOptions result = new org.tensorflow.proto.OptimizerOptions(this); - result.doCommonSubexpressionElimination_ = doCommonSubexpressionElimination_; - result.doConstantFolding_ = doConstantFolding_; - result.maxFoldedConstantInBytes_ = maxFoldedConstantInBytes_; - result.doFunctionInlining_ = doFunctionInlining_; - result.optLevel_ = optLevel_; - result.globalJitLevel_ = globalJitLevel_; - result.cpuGlobalJit_ = cpuGlobalJit_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.OptimizerOptions result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.doCommonSubexpressionElimination_ = doCommonSubexpressionElimination_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.doConstantFolding_ = doConstantFolding_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.maxFoldedConstantInBytes_ = maxFoldedConstantInBytes_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.doFunctionInlining_ = doFunctionInlining_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.optLevel_ = optLevel_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.globalJitLevel_ = globalJitLevel_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.cpuGlobalJit_ = cpuGlobalJit_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.OptimizerOptions) { @@ -874,37 +872,37 @@ public Builder mergeFrom( break; case 8: { doCommonSubexpressionElimination_ = input.readBool(); - + bitField0_ |= 0x00000001; break; } // case 8 case 16: { doConstantFolding_ = input.readBool(); - + bitField0_ |= 0x00000002; break; } // case 16 case 24: { optLevel_ = input.readEnum(); - + bitField0_ |= 0x00000010; break; } // case 24 case 32: { doFunctionInlining_ = input.readBool(); - + bitField0_ |= 0x00000008; break; } // case 32 case 40: { globalJitLevel_ = input.readEnum(); - + bitField0_ |= 0x00000020; break; } // case 40 case 48: { maxFoldedConstantInBytes_ = input.readInt64(); - + bitField0_ |= 0x00000004; break; } // case 48 case 56: { cpuGlobalJit_ = input.readBool(); - + bitField0_ |= 0x00000040; break; } // case 56 default: { @@ -922,6 +920,7 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private boolean doCommonSubexpressionElimination_ ; /** @@ -952,8 +951,9 @@ public boolean getDoCommonSubexpressionElimination() { * @return This builder for chaining. */ public Builder setDoCommonSubexpressionElimination(boolean value) { - + doCommonSubexpressionElimination_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -969,7 +969,7 @@ public Builder setDoCommonSubexpressionElimination(boolean value) { * @return This builder for chaining. */ public Builder clearDoCommonSubexpressionElimination() { - + bitField0_ = (bitField0_ & ~0x00000001); doCommonSubexpressionElimination_ = false; onChanged(); return this; @@ -1002,8 +1002,9 @@ public boolean getDoConstantFolding() { * @return This builder for chaining. */ public Builder setDoConstantFolding(boolean value) { - + doConstantFolding_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -1018,7 +1019,7 @@ public Builder setDoConstantFolding(boolean value) { * @return This builder for chaining. */ public Builder clearDoConstantFolding() { - + bitField0_ = (bitField0_ & ~0x00000002); doConstantFolding_ = false; onChanged(); return this; @@ -1055,8 +1056,9 @@ public long getMaxFoldedConstantInBytes() { * @return This builder for chaining. */ public Builder setMaxFoldedConstantInBytes(long value) { - + maxFoldedConstantInBytes_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -1073,7 +1075,7 @@ public Builder setMaxFoldedConstantInBytes(long value) { * @return This builder for chaining. */ public Builder clearMaxFoldedConstantInBytes() { - + bitField0_ = (bitField0_ & ~0x00000004); maxFoldedConstantInBytes_ = 0L; onChanged(); return this; @@ -1102,8 +1104,9 @@ public boolean getDoFunctionInlining() { * @return This builder for chaining. */ public Builder setDoFunctionInlining(boolean value) { - + doFunctionInlining_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -1116,7 +1119,7 @@ public Builder setDoFunctionInlining(boolean value) { * @return This builder for chaining. */ public Builder clearDoFunctionInlining() { - + bitField0_ = (bitField0_ & ~0x00000008); doFunctionInlining_ = false; onChanged(); return this; @@ -1146,8 +1149,8 @@ public Builder clearDoFunctionInlining() { * @return This builder for chaining. */ public Builder setOptLevelValue(int value) { - optLevel_ = value; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -1162,8 +1165,7 @@ public Builder setOptLevelValue(int value) { */ @java.lang.Override public org.tensorflow.proto.OptimizerOptions.Level getOptLevel() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.OptimizerOptions.Level result = org.tensorflow.proto.OptimizerOptions.Level.valueOf(optLevel_); + org.tensorflow.proto.OptimizerOptions.Level result = org.tensorflow.proto.OptimizerOptions.Level.forNumber(optLevel_); return result == null ? org.tensorflow.proto.OptimizerOptions.Level.UNRECOGNIZED : result; } /** @@ -1180,7 +1182,7 @@ public Builder setOptLevel(org.tensorflow.proto.OptimizerOptions.Level value) { if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00000010; optLevel_ = value.getNumber(); onChanged(); return this; @@ -1195,7 +1197,7 @@ public Builder setOptLevel(org.tensorflow.proto.OptimizerOptions.Level value) { * @return This builder for chaining. */ public Builder clearOptLevel() { - + bitField0_ = (bitField0_ & ~0x00000010); optLevel_ = 0; onChanged(); return this; @@ -1215,8 +1217,8 @@ public Builder clearOptLevel() { * @return This builder for chaining. */ public Builder setGlobalJitLevelValue(int value) { - globalJitLevel_ = value; + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -1226,8 +1228,7 @@ public Builder setGlobalJitLevelValue(int value) { */ @java.lang.Override public org.tensorflow.proto.OptimizerOptions.GlobalJitLevel getGlobalJitLevel() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.OptimizerOptions.GlobalJitLevel result = org.tensorflow.proto.OptimizerOptions.GlobalJitLevel.valueOf(globalJitLevel_); + org.tensorflow.proto.OptimizerOptions.GlobalJitLevel result = org.tensorflow.proto.OptimizerOptions.GlobalJitLevel.forNumber(globalJitLevel_); return result == null ? org.tensorflow.proto.OptimizerOptions.GlobalJitLevel.UNRECOGNIZED : result; } /** @@ -1239,7 +1240,7 @@ public Builder setGlobalJitLevel(org.tensorflow.proto.OptimizerOptions.GlobalJit if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00000020; globalJitLevel_ = value.getNumber(); onChanged(); return this; @@ -1249,7 +1250,7 @@ public Builder setGlobalJitLevel(org.tensorflow.proto.OptimizerOptions.GlobalJit * @return This builder for chaining. */ public Builder clearGlobalJitLevel() { - + bitField0_ = (bitField0_ & ~0x00000020); globalJitLevel_ = 0; onChanged(); return this; @@ -1259,8 +1260,8 @@ public Builder clearGlobalJitLevel() { /** *
          * CPU code will be autoclustered only if global_jit_level >= ON_1 and either:
    -     *  - this flag is true, or
    -     *  - TF_XLA_FLAGS contains --tf_xla_cpu_global_jit=true.
    +     * - this flag is true, or
    +     * - TF_XLA_FLAGS contains --tf_xla_cpu_global_jit=true.
          * 
    * * bool cpu_global_jit = 7; @@ -1273,8 +1274,8 @@ public boolean getCpuGlobalJit() { /** *
          * CPU code will be autoclustered only if global_jit_level >= ON_1 and either:
    -     *  - this flag is true, or
    -     *  - TF_XLA_FLAGS contains --tf_xla_cpu_global_jit=true.
    +     * - this flag is true, or
    +     * - TF_XLA_FLAGS contains --tf_xla_cpu_global_jit=true.
          * 
    * * bool cpu_global_jit = 7; @@ -1282,39 +1283,28 @@ public boolean getCpuGlobalJit() { * @return This builder for chaining. */ public Builder setCpuGlobalJit(boolean value) { - + cpuGlobalJit_ = value; + bitField0_ |= 0x00000040; onChanged(); return this; } /** *
          * CPU code will be autoclustered only if global_jit_level >= ON_1 and either:
    -     *  - this flag is true, or
    -     *  - TF_XLA_FLAGS contains --tf_xla_cpu_global_jit=true.
    +     * - this flag is true, or
    +     * - TF_XLA_FLAGS contains --tf_xla_cpu_global_jit=true.
          * 
    * * bool cpu_global_jit = 7; * @return This builder for chaining. */ public Builder clearCpuGlobalJit() { - + bitField0_ = (bitField0_ & ~0x00000040); cpuGlobalJit_ = false; onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.OptimizerOptions) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OptimizerOptionsOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OptimizerOptionsOrBuilder.java index e2f0ecbcf88..0f08f0071ec 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OptimizerOptionsOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/OptimizerOptionsOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/config.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -91,8 +93,8 @@ public interface OptimizerOptionsOrBuilder extends /** *
        * CPU code will be autoclustered only if global_jit_level >= ON_1 and either:
    -   *  - this flag is true, or
    -   *  - TF_XLA_FLAGS contains --tf_xla_cpu_global_jit=true.
    +   * - this flag is true, or
    +   * - TF_XLA_FLAGS contains --tf_xla_cpu_global_jit=true.
        * 
    * * bool cpu_global_jit = 7; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/PlatformInfo.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/PlatformInfo.java index 782524cf4d4..1f78bab992e 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/PlatformInfo.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/PlatformInfo.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! -// source: tsl/protobuf/test_log.proto +// NO CHECKED-IN PROTOBUF GENCODE +// source: xla/tsl/protobuf/test_log.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,12 +9,21 @@ * Protobuf type {@code tensorflow.PlatformInfo} */ public final class PlatformInfo extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.PlatformInfo) PlatformInfoOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + PlatformInfo.class.getName()); + } // Use PlatformInfo.newBuilder() to construct. - private PlatformInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private PlatformInfo(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private PlatformInfo() { @@ -24,25 +35,13 @@ private PlatformInfo() { version_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new PlatformInfo(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_PlatformInfo_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_PlatformInfo_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -50,7 +49,8 @@ protected java.lang.Object newInstance( } public static final int BITS_FIELD_NUMBER = 1; - private volatile java.lang.Object bits_; + @SuppressWarnings("serial") + private volatile java.lang.Object bits_ = ""; /** *
        * e.g. '64bit'
    @@ -96,7 +96,8 @@ public java.lang.String getBits() {
       }
     
       public static final int LINKAGE_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object linkage_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object linkage_ = "";
       /**
        * 
        * e.g. 'ELF'
    @@ -142,7 +143,8 @@ public java.lang.String getLinkage() {
       }
     
       public static final int MACHINE_FIELD_NUMBER = 3;
    -  private volatile java.lang.Object machine_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object machine_ = "";
       /**
        * 
        * e.g. 'i386'
    @@ -188,7 +190,8 @@ public java.lang.String getMachine() {
       }
     
       public static final int RELEASE_FIELD_NUMBER = 4;
    -  private volatile java.lang.Object release_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object release_ = "";
       /**
        * 
        * e.g. '3.13.0-76-generic'
    @@ -234,7 +237,8 @@ public java.lang.String getRelease() {
       }
     
       public static final int SYSTEM_FIELD_NUMBER = 5;
    -  private volatile java.lang.Object system_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object system_ = "";
       /**
        * 
        * e.g. 'Linux'
    @@ -280,7 +284,8 @@ public java.lang.String getSystem() {
       }
     
       public static final int VERSION_FIELD_NUMBER = 6;
    -  private volatile java.lang.Object version_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object version_ = "";
       /**
        * 
        * e.g. '#120-Ubuntu SMP Mon Jan 18 15:59:10 UTC 2016'
    @@ -339,23 +344,23 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(bits_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, bits_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(bits_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, bits_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(linkage_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, linkage_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(linkage_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, linkage_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(machine_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, machine_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(machine_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, machine_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(release_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 4, release_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(release_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 4, release_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(system_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 5, system_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(system_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 5, system_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(version_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 6, version_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(version_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 6, version_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -366,23 +371,23 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(bits_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, bits_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(bits_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, bits_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(linkage_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, linkage_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(linkage_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, linkage_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(machine_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, machine_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(machine_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, machine_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(release_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, release_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(release_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(4, release_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(system_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, system_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(system_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(5, system_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(version_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, version_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(version_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(6, version_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -473,39 +478,41 @@ public static org.tensorflow.proto.PlatformInfo parseFrom(
       }
       public static org.tensorflow.proto.PlatformInfo parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.PlatformInfo parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.PlatformInfo parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.PlatformInfo parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.PlatformInfo parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.PlatformInfo parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -525,7 +532,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -533,7 +540,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.PlatformInfo}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.PlatformInfo)
           org.tensorflow.proto.PlatformInfoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -542,7 +549,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_PlatformInfo_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -555,25 +562,20 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           bits_ = "";
    -
           linkage_ = "";
    -
           machine_ = "";
    -
           release_ = "";
    -
           system_ = "";
    -
           version_ = "";
    -
           return this;
         }
     
    @@ -600,48 +602,33 @@ public org.tensorflow.proto.PlatformInfo build() {
         @java.lang.Override
         public org.tensorflow.proto.PlatformInfo buildPartial() {
           org.tensorflow.proto.PlatformInfo result = new org.tensorflow.proto.PlatformInfo(this);
    -      result.bits_ = bits_;
    -      result.linkage_ = linkage_;
    -      result.machine_ = machine_;
    -      result.release_ = release_;
    -      result.system_ = system_;
    -      result.version_ = version_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.PlatformInfo result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.bits_ = bits_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.linkage_ = linkage_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.machine_ = machine_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.release_ = release_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.system_ = system_;
    +      }
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.version_ = version_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.PlatformInfo) {
    @@ -656,26 +643,32 @@ public Builder mergeFrom(org.tensorflow.proto.PlatformInfo other) {
           if (other == org.tensorflow.proto.PlatformInfo.getDefaultInstance()) return this;
           if (!other.getBits().isEmpty()) {
             bits_ = other.bits_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getLinkage().isEmpty()) {
             linkage_ = other.linkage_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (!other.getMachine().isEmpty()) {
             machine_ = other.machine_;
    +        bitField0_ |= 0x00000004;
             onChanged();
           }
           if (!other.getRelease().isEmpty()) {
             release_ = other.release_;
    +        bitField0_ |= 0x00000008;
             onChanged();
           }
           if (!other.getSystem().isEmpty()) {
             system_ = other.system_;
    +        bitField0_ |= 0x00000010;
             onChanged();
           }
           if (!other.getVersion().isEmpty()) {
             version_ = other.version_;
    +        bitField0_ |= 0x00000020;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -706,32 +699,32 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   bits_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   linkage_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
                   machine_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 case 34: {
                   release_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 34
                 case 42: {
                   system_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 42
                 case 50: {
                   version_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 50
                 default: {
    @@ -749,6 +742,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object bits_ = "";
         /**
    @@ -803,11 +797,9 @@ public java.lang.String getBits() {
          */
         public Builder setBits(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           bits_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -820,8 +812,8 @@ public Builder setBits(
          * @return This builder for chaining.
          */
         public Builder clearBits() {
    -      
           bits_ = getDefaultInstance().getBits();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -836,12 +828,10 @@ public Builder clearBits() {
          */
         public Builder setBitsBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           bits_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -899,11 +889,9 @@ public java.lang.String getLinkage() {
          */
         public Builder setLinkage(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           linkage_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -916,8 +904,8 @@ public Builder setLinkage(
          * @return This builder for chaining.
          */
         public Builder clearLinkage() {
    -      
           linkage_ = getDefaultInstance().getLinkage();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -932,12 +920,10 @@ public Builder clearLinkage() {
          */
         public Builder setLinkageBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           linkage_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -995,11 +981,9 @@ public java.lang.String getMachine() {
          */
         public Builder setMachine(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           machine_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1012,8 +996,8 @@ public Builder setMachine(
          * @return This builder for chaining.
          */
         public Builder clearMachine() {
    -      
           machine_ = getDefaultInstance().getMachine();
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -1028,12 +1012,10 @@ public Builder clearMachine() {
          */
         public Builder setMachineBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           machine_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1091,11 +1073,9 @@ public java.lang.String getRelease() {
          */
         public Builder setRelease(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           release_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1108,8 +1088,8 @@ public Builder setRelease(
          * @return This builder for chaining.
          */
         public Builder clearRelease() {
    -      
           release_ = getDefaultInstance().getRelease();
    +      bitField0_ = (bitField0_ & ~0x00000008);
           onChanged();
           return this;
         }
    @@ -1124,12 +1104,10 @@ public Builder clearRelease() {
          */
         public Builder setReleaseBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           release_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1187,11 +1165,9 @@ public java.lang.String getSystem() {
          */
         public Builder setSystem(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           system_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1204,8 +1180,8 @@ public Builder setSystem(
          * @return This builder for chaining.
          */
         public Builder clearSystem() {
    -      
           system_ = getDefaultInstance().getSystem();
    +      bitField0_ = (bitField0_ & ~0x00000010);
           onChanged();
           return this;
         }
    @@ -1220,12 +1196,10 @@ public Builder clearSystem() {
          */
         public Builder setSystemBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           system_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1283,11 +1257,9 @@ public java.lang.String getVersion() {
          */
         public Builder setVersion(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           version_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -1300,8 +1272,8 @@ public Builder setVersion(
          * @return This builder for chaining.
          */
         public Builder clearVersion() {
    -      
           version_ = getDefaultInstance().getVersion();
    +      bitField0_ = (bitField0_ & ~0x00000020);
           onChanged();
           return this;
         }
    @@ -1316,27 +1288,13 @@ public Builder clearVersion() {
          */
         public Builder setVersionBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           version_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.PlatformInfo)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/PlatformInfoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/PlatformInfoOrBuilder.java
    index fd9455571a2..28ee5913d54 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/PlatformInfoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/PlatformInfoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ProfilerOptions.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ProfilerOptions.java
    index 0f0507070a7..aaf846a8472 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ProfilerOptions.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ProfilerOptions.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tsl/profiler/protobuf/profiler_options.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class ProfilerOptions {
       private ProfilerOptions() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ProfilerOptions.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -76,12 +87,12 @@ public interface ProfileOptionsOrBuilder extends
          * 
          * Levels of host tracing: (version >= 1)
          * - Level 0 is used to disable host traces.
    -     * - Level 1 enables tracing of only user instrumented (or default) TraceMe.
    +     * - Level 1 enables tracing of only user instrumented (or default) TraceMe,
    +     * this is the default.
          * - Level 2 enables tracing of all level 1 TraceMe(s) and instrumented high
    -     *           level program execution details (expensive TF ops, XLA ops, etc).
    -     *           This is the default.
    +     * level program execution details (expensive TF ops, XLA ops, etc).
          * - Level 3 enables tracing of all level 2 TraceMe(s) and more verbose
    -     *           (low-level) program execution details (cheap TF ops, etc).
    +     * (low-level) program execution details (cheap TF ops, etc).
          * 
    * * uint32 host_tracer_level = 2; @@ -95,7 +106,7 @@ public interface ProfileOptionsOrBuilder extends * - Level 0 is used to disable device traces. * - Level 1 is used to enable device traces. * - More levels might be defined for specific device for controlling the - * verbosity of the trace. + * verbosity of the trace. *
    * * uint32 device_tracer_level = 3; @@ -164,21 +175,145 @@ public interface ProfileOptionsOrBuilder extends */ com.google.protobuf.ByteString getRepositoryPathBytes(); + + /** + * .tensorflow.ProfileOptions.TraceOptions trace_options = 11; + * @return Whether the traceOptions field is set. + */ + boolean hasTraceOptions(); + /** + * .tensorflow.ProfileOptions.TraceOptions trace_options = 11; + * @return The traceOptions. + */ + org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions getTraceOptions(); + /** + * .tensorflow.ProfileOptions.TraceOptions trace_options = 11; + */ + org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptionsOrBuilder getTraceOptionsOrBuilder(); + + /** + *
    +     * Advanced configuration for the profiler contains a map of config name to
    +     * config value. It gives the flexibility to pass any configuration to the
    +     * profiler. eg:
    +     * advanced_configuration {
    +     * key: "tpu_trace_mode"
    +     * value: {
    +     * int64_value: 2
    +     * }
    +     * }
    +     * 
    + * + * map<string, .tensorflow.ProfileOptions.AdvancedConfigValue> advanced_configuration = 12; + */ + int getAdvancedConfigurationCount(); + /** + *
    +     * Advanced configuration for the profiler contains a map of config name to
    +     * config value. It gives the flexibility to pass any configuration to the
    +     * profiler. eg:
    +     * advanced_configuration {
    +     * key: "tpu_trace_mode"
    +     * value: {
    +     * int64_value: 2
    +     * }
    +     * }
    +     * 
    + * + * map<string, .tensorflow.ProfileOptions.AdvancedConfigValue> advanced_configuration = 12; + */ + boolean containsAdvancedConfiguration( + java.lang.String key); + /** + * Use {@link #getAdvancedConfigurationMap()} instead. + */ + @java.lang.Deprecated + java.util.Map + getAdvancedConfiguration(); + /** + *
    +     * Advanced configuration for the profiler contains a map of config name to
    +     * config value. It gives the flexibility to pass any configuration to the
    +     * profiler. eg:
    +     * advanced_configuration {
    +     * key: "tpu_trace_mode"
    +     * value: {
    +     * int64_value: 2
    +     * }
    +     * }
    +     * 
    + * + * map<string, .tensorflow.ProfileOptions.AdvancedConfigValue> advanced_configuration = 12; + */ + java.util.Map + getAdvancedConfigurationMap(); + /** + *
    +     * Advanced configuration for the profiler contains a map of config name to
    +     * config value. It gives the flexibility to pass any configuration to the
    +     * profiler. eg:
    +     * advanced_configuration {
    +     * key: "tpu_trace_mode"
    +     * value: {
    +     * int64_value: 2
    +     * }
    +     * }
    +     * 
    + * + * map<string, .tensorflow.ProfileOptions.AdvancedConfigValue> advanced_configuration = 12; + */ + /* nullable */ +org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue getAdvancedConfigurationOrDefault( + java.lang.String key, + /* nullable */ +org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue defaultValue); + /** + *
    +     * Advanced configuration for the profiler contains a map of config name to
    +     * config value. It gives the flexibility to pass any configuration to the
    +     * profiler. eg:
    +     * advanced_configuration {
    +     * key: "tpu_trace_mode"
    +     * value: {
    +     * int64_value: 2
    +     * }
    +     * }
    +     * 
    + * + * map<string, .tensorflow.ProfileOptions.AdvancedConfigValue> advanced_configuration = 12; + */ + org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue getAdvancedConfigurationOrThrow( + java.lang.String key); + + /** + * bool raise_error_on_start_failure = 13; + * @return The raiseErrorOnStartFailure. + */ + boolean getRaiseErrorOnStartFailure(); } /** *
    -   * Next ID: 11
    +   * Next ID: 14
        * 
    * * Protobuf type {@code tensorflow.ProfileOptions} */ public static final class ProfileOptions extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.ProfileOptions) ProfileOptionsOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + ProfileOptions.class.getName()); + } // Use ProfileOptions.newBuilder() to construct. - private ProfileOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private ProfileOptions(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private ProfileOptions() { @@ -186,25 +321,25 @@ private ProfileOptions() { repositoryPath_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new ProfileOptions(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.ProfilerOptions.internal_static_tensorflow_ProfileOptions_descriptor; } + @SuppressWarnings({"rawtypes"}) @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 12: + return internalGetAdvancedConfiguration(); + default: + throw new RuntimeException( + "Invalid map field number: " + number); + } + } + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ProfilerOptions.internal_static_tensorflow_ProfileOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -239,6 +374,15 @@ public enum DeviceType UNRECOGNIZED(-1), ; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + DeviceType.class.getName()); + } /** * UNSPECIFIED = 0; */ @@ -261,93 +405,1409 @@ public enum DeviceType public static final int PLUGGABLE_DEVICE_VALUE = 4; - public final int getNumber() { - if (this == UNRECOGNIZED) { - throw new java.lang.IllegalArgumentException( - "Can't get the number of an unknown enum value."); + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static DeviceType valueOf(int value) { + return forNumber(value); + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + */ + public static DeviceType forNumber(int value) { + switch (value) { + case 0: return UNSPECIFIED; + case 1: return CPU; + case 2: return GPU; + case 3: return TPU; + case 4: return PLUGGABLE_DEVICE; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + DeviceType> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public DeviceType findValueByNumber(int number) { + return DeviceType.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor + getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); + } + public final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptorForType() { + return getDescriptor(); + } + public static final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptor() { + return org.tensorflow.proto.ProfilerOptions.ProfileOptions.getDescriptor().getEnumTypes().get(0); + } + + private static final DeviceType[] VALUES = values(); + + public static DeviceType valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private DeviceType(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:tensorflow.ProfileOptions.DeviceType) + } + + public interface TraceOptionsOrBuilder extends + // @@protoc_insertion_point(interface_extends:tensorflow.ProfileOptions.TraceOptions) + com.google.protobuf.MessageOrBuilder { + + /** + *
    +       * Filter mask for TraceMe events. If the traceme_filter_mask is set, a
    +       * TraceMe event will be recorded if it passes the filter.
    +       * Only lowest 32 bits of the mask are used. The higher 32 bits are reserved
    +       * and won't be applied if set.
    +       * 
    + * + * uint64 host_traceme_filter_mask = 1; + * @return The hostTracemeFilterMask. + */ + long getHostTracemeFilterMask(); + } + /** + * Protobuf type {@code tensorflow.ProfileOptions.TraceOptions} + */ + public static final class TraceOptions extends + com.google.protobuf.GeneratedMessage implements + // @@protoc_insertion_point(message_implements:tensorflow.ProfileOptions.TraceOptions) + TraceOptionsOrBuilder { + private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + TraceOptions.class.getName()); + } + // Use TraceOptions.newBuilder() to construct. + private TraceOptions(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + private TraceOptions() { + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return org.tensorflow.proto.ProfilerOptions.internal_static_tensorflow_ProfileOptions_TraceOptions_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return org.tensorflow.proto.ProfilerOptions.internal_static_tensorflow_ProfileOptions_TraceOptions_fieldAccessorTable + .ensureFieldAccessorsInitialized( + org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions.class, org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions.Builder.class); + } + + public static final int HOST_TRACEME_FILTER_MASK_FIELD_NUMBER = 1; + private long hostTracemeFilterMask_ = 0L; + /** + *
    +       * Filter mask for TraceMe events. If the traceme_filter_mask is set, a
    +       * TraceMe event will be recorded if it passes the filter.
    +       * Only lowest 32 bits of the mask are used. The higher 32 bits are reserved
    +       * and won't be applied if set.
    +       * 
    + * + * uint64 host_traceme_filter_mask = 1; + * @return The hostTracemeFilterMask. + */ + @java.lang.Override + public long getHostTracemeFilterMask() { + return hostTracemeFilterMask_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (hostTracemeFilterMask_ != 0L) { + output.writeUInt64(1, hostTracemeFilterMask_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (hostTracemeFilterMask_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeUInt64Size(1, hostTracemeFilterMask_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions)) { + return super.equals(obj); + } + org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions other = (org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions) obj; + + if (getHostTracemeFilterMask() + != other.getHostTracemeFilterMask()) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + HOST_TRACEME_FILTER_MASK_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getHostTracemeFilterMask()); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input); + } + + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code tensorflow.ProfileOptions.TraceOptions} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessage.Builder implements + // @@protoc_insertion_point(builder_implements:tensorflow.ProfileOptions.TraceOptions) + org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptionsOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return org.tensorflow.proto.ProfilerOptions.internal_static_tensorflow_ProfileOptions_TraceOptions_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return org.tensorflow.proto.ProfilerOptions.internal_static_tensorflow_ProfileOptions_TraceOptions_fieldAccessorTable + .ensureFieldAccessorsInitialized( + org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions.class, org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions.Builder.class); + } + + // Construct using org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + hostTracemeFilterMask_ = 0L; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return org.tensorflow.proto.ProfilerOptions.internal_static_tensorflow_ProfileOptions_TraceOptions_descriptor; + } + + @java.lang.Override + public org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions getDefaultInstanceForType() { + return org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions.getDefaultInstance(); + } + + @java.lang.Override + public org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions build() { + org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions buildPartial() { + org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions result = new org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions(this); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartial0(org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.hostTracemeFilterMask_ = hostTracemeFilterMask_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions) { + return mergeFrom((org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions other) { + if (other == org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions.getDefaultInstance()) return this; + if (other.getHostTracemeFilterMask() != 0L) { + setHostTracemeFilterMask(other.getHostTracemeFilterMask()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + hostTracemeFilterMask_ = input.readUInt64(); + bitField0_ |= 0x00000001; + break; + } // case 8 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private long hostTracemeFilterMask_ ; + /** + *
    +         * Filter mask for TraceMe events. If the traceme_filter_mask is set, a
    +         * TraceMe event will be recorded if it passes the filter.
    +         * Only lowest 32 bits of the mask are used. The higher 32 bits are reserved
    +         * and won't be applied if set.
    +         * 
    + * + * uint64 host_traceme_filter_mask = 1; + * @return The hostTracemeFilterMask. + */ + @java.lang.Override + public long getHostTracemeFilterMask() { + return hostTracemeFilterMask_; + } + /** + *
    +         * Filter mask for TraceMe events. If the traceme_filter_mask is set, a
    +         * TraceMe event will be recorded if it passes the filter.
    +         * Only lowest 32 bits of the mask are used. The higher 32 bits are reserved
    +         * and won't be applied if set.
    +         * 
    + * + * uint64 host_traceme_filter_mask = 1; + * @param value The hostTracemeFilterMask to set. + * @return This builder for chaining. + */ + public Builder setHostTracemeFilterMask(long value) { + + hostTracemeFilterMask_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + /** + *
    +         * Filter mask for TraceMe events. If the traceme_filter_mask is set, a
    +         * TraceMe event will be recorded if it passes the filter.
    +         * Only lowest 32 bits of the mask are used. The higher 32 bits are reserved
    +         * and won't be applied if set.
    +         * 
    + * + * uint64 host_traceme_filter_mask = 1; + * @return This builder for chaining. + */ + public Builder clearHostTracemeFilterMask() { + bitField0_ = (bitField0_ & ~0x00000001); + hostTracemeFilterMask_ = 0L; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:tensorflow.ProfileOptions.TraceOptions) + } + + // @@protoc_insertion_point(class_scope:tensorflow.ProfileOptions.TraceOptions) + private static final org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions(); + } + + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public TraceOptions parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface AdvancedConfigValueOrBuilder extends + // @@protoc_insertion_point(interface_extends:tensorflow.ProfileOptions.AdvancedConfigValue) + com.google.protobuf.MessageOrBuilder { + + /** + * string string_value = 1; + * @return Whether the stringValue field is set. + */ + boolean hasStringValue(); + /** + * string string_value = 1; + * @return The stringValue. + */ + java.lang.String getStringValue(); + /** + * string string_value = 1; + * @return The bytes for stringValue. + */ + com.google.protobuf.ByteString + getStringValueBytes(); + + /** + * bool bool_value = 2; + * @return Whether the boolValue field is set. + */ + boolean hasBoolValue(); + /** + * bool bool_value = 2; + * @return The boolValue. + */ + boolean getBoolValue(); + + /** + * int64 int64_value = 3; + * @return Whether the int64Value field is set. + */ + boolean hasInt64Value(); + /** + * int64 int64_value = 3; + * @return The int64Value. + */ + long getInt64Value(); + + org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue.ValueCase getValueCase(); + } + /** + *
    +     * AdvancedConfigValue represents the configuration value, it can be one of
    +     * the following types: string, bool, int64, depending upon the config type.
    +     * 
    + * + * Protobuf type {@code tensorflow.ProfileOptions.AdvancedConfigValue} + */ + public static final class AdvancedConfigValue extends + com.google.protobuf.GeneratedMessage implements + // @@protoc_insertion_point(message_implements:tensorflow.ProfileOptions.AdvancedConfigValue) + AdvancedConfigValueOrBuilder { + private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + AdvancedConfigValue.class.getName()); + } + // Use AdvancedConfigValue.newBuilder() to construct. + private AdvancedConfigValue(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + private AdvancedConfigValue() { + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return org.tensorflow.proto.ProfilerOptions.internal_static_tensorflow_ProfileOptions_AdvancedConfigValue_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return org.tensorflow.proto.ProfilerOptions.internal_static_tensorflow_ProfileOptions_AdvancedConfigValue_fieldAccessorTable + .ensureFieldAccessorsInitialized( + org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue.class, org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue.Builder.class); + } + + private int valueCase_ = 0; + @SuppressWarnings("serial") + private java.lang.Object value_; + public enum ValueCase + implements com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + STRING_VALUE(1), + BOOL_VALUE(2), + INT64_VALUE(3), + VALUE_NOT_SET(0); + private final int value; + private ValueCase(int value) { + this.value = value; + } + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static ValueCase valueOf(int value) { + return forNumber(value); + } + + public static ValueCase forNumber(int value) { + switch (value) { + case 1: return STRING_VALUE; + case 2: return BOOL_VALUE; + case 3: return INT64_VALUE; + case 0: return VALUE_NOT_SET; + default: return null; + } + } + public int getNumber() { + return this.value; + } + }; + + public ValueCase + getValueCase() { + return ValueCase.forNumber( + valueCase_); + } + + public static final int STRING_VALUE_FIELD_NUMBER = 1; + /** + * string string_value = 1; + * @return Whether the stringValue field is set. + */ + public boolean hasStringValue() { + return valueCase_ == 1; + } + /** + * string string_value = 1; + * @return The stringValue. + */ + public java.lang.String getStringValue() { + java.lang.Object ref = ""; + if (valueCase_ == 1) { + ref = value_; + } + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + if (valueCase_ == 1) { + value_ = s; + } + return s; + } + } + /** + * string string_value = 1; + * @return The bytes for stringValue. + */ + public com.google.protobuf.ByteString + getStringValueBytes() { + java.lang.Object ref = ""; + if (valueCase_ == 1) { + ref = value_; + } + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + if (valueCase_ == 1) { + value_ = b; + } + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int BOOL_VALUE_FIELD_NUMBER = 2; + /** + * bool bool_value = 2; + * @return Whether the boolValue field is set. + */ + @java.lang.Override + public boolean hasBoolValue() { + return valueCase_ == 2; + } + /** + * bool bool_value = 2; + * @return The boolValue. + */ + @java.lang.Override + public boolean getBoolValue() { + if (valueCase_ == 2) { + return (java.lang.Boolean) value_; + } + return false; + } + + public static final int INT64_VALUE_FIELD_NUMBER = 3; + /** + * int64 int64_value = 3; + * @return Whether the int64Value field is set. + */ + @java.lang.Override + public boolean hasInt64Value() { + return valueCase_ == 3; + } + /** + * int64 int64_value = 3; + * @return The int64Value. + */ + @java.lang.Override + public long getInt64Value() { + if (valueCase_ == 3) { + return (java.lang.Long) value_; + } + return 0L; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (valueCase_ == 1) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, value_); + } + if (valueCase_ == 2) { + output.writeBool( + 2, (boolean)((java.lang.Boolean) value_)); + } + if (valueCase_ == 3) { + output.writeInt64( + 3, (long)((java.lang.Long) value_)); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (valueCase_ == 1) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, value_); + } + if (valueCase_ == 2) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize( + 2, (boolean)((java.lang.Boolean) value_)); + } + if (valueCase_ == 3) { + size += com.google.protobuf.CodedOutputStream + .computeInt64Size( + 3, (long)((java.lang.Long) value_)); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue)) { + return super.equals(obj); + } + org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue other = (org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue) obj; + + if (!getValueCase().equals(other.getValueCase())) return false; + switch (valueCase_) { + case 1: + if (!getStringValue() + .equals(other.getStringValue())) return false; + break; + case 2: + if (getBoolValue() + != other.getBoolValue()) return false; + break; + case 3: + if (getInt64Value() + != other.getInt64Value()) return false; + break; + case 0: + default: + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + switch (valueCase_) { + case 1: + hash = (37 * hash) + STRING_VALUE_FIELD_NUMBER; + hash = (53 * hash) + getStringValue().hashCode(); + break; + case 2: + hash = (37 * hash) + BOOL_VALUE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getBoolValue()); + break; + case 3: + hash = (37 * hash) + INT64_VALUE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getInt64Value()); + break; + case 0: + default: + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input); + } + + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
    +       * AdvancedConfigValue represents the configuration value, it can be one of
    +       * the following types: string, bool, int64, depending upon the config type.
    +       * 
    + * + * Protobuf type {@code tensorflow.ProfileOptions.AdvancedConfigValue} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessage.Builder implements + // @@protoc_insertion_point(builder_implements:tensorflow.ProfileOptions.AdvancedConfigValue) + org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValueOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return org.tensorflow.proto.ProfilerOptions.internal_static_tensorflow_ProfileOptions_AdvancedConfigValue_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return org.tensorflow.proto.ProfilerOptions.internal_static_tensorflow_ProfileOptions_AdvancedConfigValue_fieldAccessorTable + .ensureFieldAccessorsInitialized( + org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue.class, org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue.Builder.class); + } + + // Construct using org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + valueCase_ = 0; + value_ = null; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return org.tensorflow.proto.ProfilerOptions.internal_static_tensorflow_ProfileOptions_AdvancedConfigValue_descriptor; + } + + @java.lang.Override + public org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue getDefaultInstanceForType() { + return org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue.getDefaultInstance(); + } + + @java.lang.Override + public org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue build() { + org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue buildPartial() { + org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue result = new org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue(this); + if (bitField0_ != 0) { buildPartial0(result); } + buildPartialOneofs(result); + onBuilt(); + return result; + } + + private void buildPartial0(org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue result) { + int from_bitField0_ = bitField0_; + } + + private void buildPartialOneofs(org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue result) { + result.valueCase_ = valueCase_; + result.value_ = this.value_; + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue) { + return mergeFrom((org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue other) { + if (other == org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue.getDefaultInstance()) return this; + switch (other.getValueCase()) { + case STRING_VALUE: { + valueCase_ = 1; + value_ = other.value_; + onChanged(); + break; + } + case BOOL_VALUE: { + setBoolValue(other.getBoolValue()); + break; + } + case INT64_VALUE: { + setInt64Value(other.getInt64Value()); + break; + } + case VALUE_NOT_SET: { + break; + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; } - return value; - } - /** - * @param value The numeric wire value of the corresponding enum entry. - * @return The enum associated with the given numeric wire value. - * @deprecated Use {@link #forNumber(int)} instead. - */ - @java.lang.Deprecated - public static DeviceType valueOf(int value) { - return forNumber(value); - } + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + java.lang.String s = input.readStringRequireUtf8(); + valueCase_ = 1; + value_ = s; + break; + } // case 10 + case 16: { + value_ = input.readBool(); + valueCase_ = 2; + break; + } // case 16 + case 24: { + value_ = input.readInt64(); + valueCase_ = 3; + break; + } // case 24 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int valueCase_ = 0; + private java.lang.Object value_; + public ValueCase + getValueCase() { + return ValueCase.forNumber( + valueCase_); + } - /** - * @param value The numeric wire value of the corresponding enum entry. - * @return The enum associated with the given numeric wire value. - */ - public static DeviceType forNumber(int value) { - switch (value) { - case 0: return UNSPECIFIED; - case 1: return CPU; - case 2: return GPU; - case 3: return TPU; - case 4: return PLUGGABLE_DEVICE; - default: return null; + public Builder clearValue() { + valueCase_ = 0; + value_ = null; + onChanged(); + return this; } - } - public static com.google.protobuf.Internal.EnumLiteMap - internalGetValueMap() { - return internalValueMap; - } - private static final com.google.protobuf.Internal.EnumLiteMap< - DeviceType> internalValueMap = - new com.google.protobuf.Internal.EnumLiteMap() { - public DeviceType findValueByNumber(int number) { - return DeviceType.forNumber(number); - } - }; + private int bitField0_; - public final com.google.protobuf.Descriptors.EnumValueDescriptor - getValueDescriptor() { - if (this == UNRECOGNIZED) { - throw new java.lang.IllegalStateException( - "Can't get the descriptor of an unrecognized enum value."); + /** + * string string_value = 1; + * @return Whether the stringValue field is set. + */ + @java.lang.Override + public boolean hasStringValue() { + return valueCase_ == 1; } - return getDescriptor().getValues().get(ordinal()); - } - public final com.google.protobuf.Descriptors.EnumDescriptor - getDescriptorForType() { - return getDescriptor(); + /** + * string string_value = 1; + * @return The stringValue. + */ + @java.lang.Override + public java.lang.String getStringValue() { + java.lang.Object ref = ""; + if (valueCase_ == 1) { + ref = value_; + } + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + if (valueCase_ == 1) { + value_ = s; + } + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string string_value = 1; + * @return The bytes for stringValue. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getStringValueBytes() { + java.lang.Object ref = ""; + if (valueCase_ == 1) { + ref = value_; + } + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + if (valueCase_ == 1) { + value_ = b; + } + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string string_value = 1; + * @param value The stringValue to set. + * @return This builder for chaining. + */ + public Builder setStringValue( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + valueCase_ = 1; + value_ = value; + onChanged(); + return this; + } + /** + * string string_value = 1; + * @return This builder for chaining. + */ + public Builder clearStringValue() { + if (valueCase_ == 1) { + valueCase_ = 0; + value_ = null; + onChanged(); + } + return this; + } + /** + * string string_value = 1; + * @param value The bytes for stringValue to set. + * @return This builder for chaining. + */ + public Builder setStringValueBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + valueCase_ = 1; + value_ = value; + onChanged(); + return this; + } + + /** + * bool bool_value = 2; + * @return Whether the boolValue field is set. + */ + public boolean hasBoolValue() { + return valueCase_ == 2; + } + /** + * bool bool_value = 2; + * @return The boolValue. + */ + public boolean getBoolValue() { + if (valueCase_ == 2) { + return (java.lang.Boolean) value_; + } + return false; + } + /** + * bool bool_value = 2; + * @param value The boolValue to set. + * @return This builder for chaining. + */ + public Builder setBoolValue(boolean value) { + + valueCase_ = 2; + value_ = value; + onChanged(); + return this; + } + /** + * bool bool_value = 2; + * @return This builder for chaining. + */ + public Builder clearBoolValue() { + if (valueCase_ == 2) { + valueCase_ = 0; + value_ = null; + onChanged(); + } + return this; + } + + /** + * int64 int64_value = 3; + * @return Whether the int64Value field is set. + */ + public boolean hasInt64Value() { + return valueCase_ == 3; + } + /** + * int64 int64_value = 3; + * @return The int64Value. + */ + public long getInt64Value() { + if (valueCase_ == 3) { + return (java.lang.Long) value_; + } + return 0L; + } + /** + * int64 int64_value = 3; + * @param value The int64Value to set. + * @return This builder for chaining. + */ + public Builder setInt64Value(long value) { + + valueCase_ = 3; + value_ = value; + onChanged(); + return this; + } + /** + * int64 int64_value = 3; + * @return This builder for chaining. + */ + public Builder clearInt64Value() { + if (valueCase_ == 3) { + valueCase_ = 0; + value_ = null; + onChanged(); + } + return this; + } + + // @@protoc_insertion_point(builder_scope:tensorflow.ProfileOptions.AdvancedConfigValue) } - public static final com.google.protobuf.Descriptors.EnumDescriptor - getDescriptor() { - return org.tensorflow.proto.ProfilerOptions.ProfileOptions.getDescriptor().getEnumTypes().get(0); + + // @@protoc_insertion_point(class_scope:tensorflow.ProfileOptions.AdvancedConfigValue) + private static final org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue(); } - private static final DeviceType[] VALUES = values(); + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue getDefaultInstance() { + return DEFAULT_INSTANCE; + } - public static DeviceType valueOf( - com.google.protobuf.Descriptors.EnumValueDescriptor desc) { - if (desc.getType() != getDescriptor()) { - throw new java.lang.IllegalArgumentException( - "EnumValueDescriptor is not for this type."); - } - if (desc.getIndex() == -1) { - return UNRECOGNIZED; + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public AdvancedConfigValue parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); } - return VALUES[desc.getIndex()]; + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; } - private final int value; + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } - private DeviceType(int value) { - this.value = value; + @java.lang.Override + public org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue getDefaultInstanceForType() { + return DEFAULT_INSTANCE; } - // @@protoc_insertion_point(enum_scope:tensorflow.ProfileOptions.DeviceType) } + private int bitField0_; public static final int VERSION_FIELD_NUMBER = 5; - private int version_; + private int version_ = 0; /** *
          * Some default value of option are not proto3 default value. Use this version
    @@ -364,7 +1824,7 @@ public int getVersion() {
         }
     
         public static final int DEVICE_TYPE_FIELD_NUMBER = 6;
    -    private int deviceType_;
    +    private int deviceType_ = 0;
         /**
          * 
          * Device type to profile/trace: (version >= 1)
    @@ -397,13 +1857,12 @@ public int getVersion() {
          * @return The deviceType.
          */
         @java.lang.Override public org.tensorflow.proto.ProfilerOptions.ProfileOptions.DeviceType getDeviceType() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.ProfilerOptions.ProfileOptions.DeviceType result = org.tensorflow.proto.ProfilerOptions.ProfileOptions.DeviceType.valueOf(deviceType_);
    +      org.tensorflow.proto.ProfilerOptions.ProfileOptions.DeviceType result = org.tensorflow.proto.ProfilerOptions.ProfileOptions.DeviceType.forNumber(deviceType_);
           return result == null ? org.tensorflow.proto.ProfilerOptions.ProfileOptions.DeviceType.UNRECOGNIZED : result;
         }
     
         public static final int INCLUDE_DATASET_OPS_FIELD_NUMBER = 1;
    -    private boolean includeDatasetOps_;
    +    private boolean includeDatasetOps_ = false;
         /**
          * 
          * We don't collect the dataset ops by default for better trace-viewer
    @@ -419,17 +1878,17 @@ public boolean getIncludeDatasetOps() {
         }
     
         public static final int HOST_TRACER_LEVEL_FIELD_NUMBER = 2;
    -    private int hostTracerLevel_;
    +    private int hostTracerLevel_ = 0;
         /**
          * 
          * Levels of host tracing: (version >= 1)
          * - Level 0 is used to disable host traces.
    -     * - Level 1 enables tracing of only user instrumented (or default) TraceMe.
    +     * - Level 1 enables tracing of only user instrumented (or default) TraceMe,
    +     * this is the default.
          * - Level 2 enables tracing of all level 1 TraceMe(s) and instrumented high
    -     *           level program execution details (expensive TF ops, XLA ops, etc).
    -     *           This is the default.
    +     * level program execution details (expensive TF ops, XLA ops, etc).
          * - Level 3 enables tracing of all level 2 TraceMe(s) and more verbose
    -     *           (low-level) program execution details (cheap TF ops, etc).
    +     * (low-level) program execution details (cheap TF ops, etc).
          * 
    * * uint32 host_tracer_level = 2; @@ -441,14 +1900,14 @@ public int getHostTracerLevel() { } public static final int DEVICE_TRACER_LEVEL_FIELD_NUMBER = 3; - private int deviceTracerLevel_; + private int deviceTracerLevel_ = 0; /** *
          * Levels of device tracing: (version >= 1)
          * - Level 0 is used to disable device traces.
          * - Level 1 is used to enable device traces.
          * - More levels might be defined for specific device for controlling the
    -     *   verbosity of the trace.
    +     * verbosity of the trace.
          * 
    * * uint32 device_tracer_level = 3; @@ -460,7 +1919,7 @@ public int getDeviceTracerLevel() { } public static final int PYTHON_TRACER_LEVEL_FIELD_NUMBER = 4; - private int pythonTracerLevel_; + private int pythonTracerLevel_ = 0; /** *
          * Whether enable python function calls tracing. Runtime overhead ensues if
    @@ -476,7 +1935,7 @@ public int getPythonTracerLevel() {
         }
     
         public static final int ENABLE_HLO_PROTO_FIELD_NUMBER = 7;
    -    private boolean enableHloProto_;
    +    private boolean enableHloProto_ = false;
         /**
          * 
          * Whether serialize hlo_proto when XLA is used. (version >= 1)
    @@ -491,7 +1950,7 @@ public boolean getEnableHloProto() {
         }
     
         public static final int START_TIMESTAMP_NS_FIELD_NUMBER = 8;
    -    private long startTimestampNs_;
    +    private long startTimestampNs_ = 0L;
         /**
          * 
          * The local profiler starts profiling at this Unix timestamp in nanoseconds.
    @@ -506,7 +1965,7 @@ public long getStartTimestampNs() {
         }
     
         public static final int DURATION_MS_FIELD_NUMBER = 9;
    -    private long durationMs_;
    +    private long durationMs_ = 0L;
         /**
          * 
          * The local profiler collects `duration_ms` milliseconds of data. If the
    @@ -522,7 +1981,8 @@ public long getDurationMs() {
         }
     
         public static final int REPOSITORY_PATH_FIELD_NUMBER = 10;
    -    private volatile java.lang.Object repositoryPath_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object repositoryPath_ = "";
         /**
          * 
          * Directory to save profile data to. No-op when empty.
    @@ -567,6 +2027,170 @@ public java.lang.String getRepositoryPath() {
           }
         }
     
    +    public static final int TRACE_OPTIONS_FIELD_NUMBER = 11;
    +    private org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions traceOptions_;
    +    /**
    +     * .tensorflow.ProfileOptions.TraceOptions trace_options = 11;
    +     * @return Whether the traceOptions field is set.
    +     */
    +    @java.lang.Override
    +    public boolean hasTraceOptions() {
    +      return ((bitField0_ & 0x00000001) != 0);
    +    }
    +    /**
    +     * .tensorflow.ProfileOptions.TraceOptions trace_options = 11;
    +     * @return The traceOptions.
    +     */
    +    @java.lang.Override
    +    public org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions getTraceOptions() {
    +      return traceOptions_ == null ? org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions.getDefaultInstance() : traceOptions_;
    +    }
    +    /**
    +     * .tensorflow.ProfileOptions.TraceOptions trace_options = 11;
    +     */
    +    @java.lang.Override
    +    public org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptionsOrBuilder getTraceOptionsOrBuilder() {
    +      return traceOptions_ == null ? org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions.getDefaultInstance() : traceOptions_;
    +    }
    +
    +    public static final int ADVANCED_CONFIGURATION_FIELD_NUMBER = 12;
    +    private static final class AdvancedConfigurationDefaultEntryHolder {
    +      static final com.google.protobuf.MapEntry<
    +          java.lang.String, org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue> defaultEntry =
    +              com.google.protobuf.MapEntry
    +              .newDefaultInstance(
    +                  org.tensorflow.proto.ProfilerOptions.internal_static_tensorflow_ProfileOptions_AdvancedConfigurationEntry_descriptor, 
    +                  com.google.protobuf.WireFormat.FieldType.STRING,
    +                  "",
    +                  com.google.protobuf.WireFormat.FieldType.MESSAGE,
    +                  org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue.getDefaultInstance());
    +    }
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.MapField<
    +        java.lang.String, org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue> advancedConfiguration_;
    +    private com.google.protobuf.MapField
    +    internalGetAdvancedConfiguration() {
    +      if (advancedConfiguration_ == null) {
    +        return com.google.protobuf.MapField.emptyMapField(
    +            AdvancedConfigurationDefaultEntryHolder.defaultEntry);
    +      }
    +      return advancedConfiguration_;
    +    }
    +    public int getAdvancedConfigurationCount() {
    +      return internalGetAdvancedConfiguration().getMap().size();
    +    }
    +    /**
    +     * 
    +     * Advanced configuration for the profiler contains a map of config name to
    +     * config value. It gives the flexibility to pass any configuration to the
    +     * profiler. eg:
    +     * advanced_configuration {
    +     * key: "tpu_trace_mode"
    +     * value: {
    +     * int64_value: 2
    +     * }
    +     * }
    +     * 
    + * + * map<string, .tensorflow.ProfileOptions.AdvancedConfigValue> advanced_configuration = 12; + */ + @java.lang.Override + public boolean containsAdvancedConfiguration( + java.lang.String key) { + if (key == null) { throw new NullPointerException("map key"); } + return internalGetAdvancedConfiguration().getMap().containsKey(key); + } + /** + * Use {@link #getAdvancedConfigurationMap()} instead. + */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getAdvancedConfiguration() { + return getAdvancedConfigurationMap(); + } + /** + *
    +     * Advanced configuration for the profiler contains a map of config name to
    +     * config value. It gives the flexibility to pass any configuration to the
    +     * profiler. eg:
    +     * advanced_configuration {
    +     * key: "tpu_trace_mode"
    +     * value: {
    +     * int64_value: 2
    +     * }
    +     * }
    +     * 
    + * + * map<string, .tensorflow.ProfileOptions.AdvancedConfigValue> advanced_configuration = 12; + */ + @java.lang.Override + public java.util.Map getAdvancedConfigurationMap() { + return internalGetAdvancedConfiguration().getMap(); + } + /** + *
    +     * Advanced configuration for the profiler contains a map of config name to
    +     * config value. It gives the flexibility to pass any configuration to the
    +     * profiler. eg:
    +     * advanced_configuration {
    +     * key: "tpu_trace_mode"
    +     * value: {
    +     * int64_value: 2
    +     * }
    +     * }
    +     * 
    + * + * map<string, .tensorflow.ProfileOptions.AdvancedConfigValue> advanced_configuration = 12; + */ + @java.lang.Override + public /* nullable */ +org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue getAdvancedConfigurationOrDefault( + java.lang.String key, + /* nullable */ +org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue defaultValue) { + if (key == null) { throw new NullPointerException("map key"); } + java.util.Map map = + internalGetAdvancedConfiguration().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + /** + *
    +     * Advanced configuration for the profiler contains a map of config name to
    +     * config value. It gives the flexibility to pass any configuration to the
    +     * profiler. eg:
    +     * advanced_configuration {
    +     * key: "tpu_trace_mode"
    +     * value: {
    +     * int64_value: 2
    +     * }
    +     * }
    +     * 
    + * + * map<string, .tensorflow.ProfileOptions.AdvancedConfigValue> advanced_configuration = 12; + */ + @java.lang.Override + public org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue getAdvancedConfigurationOrThrow( + java.lang.String key) { + if (key == null) { throw new NullPointerException("map key"); } + java.util.Map map = + internalGetAdvancedConfiguration().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public static final int RAISE_ERROR_ON_START_FAILURE_FIELD_NUMBER = 13; + private boolean raiseErrorOnStartFailure_ = false; + /** + * bool raise_error_on_start_failure = 13; + * @return The raiseErrorOnStartFailure. + */ + @java.lang.Override + public boolean getRaiseErrorOnStartFailure() { + return raiseErrorOnStartFailure_; + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -608,8 +2232,20 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (durationMs_ != 0L) { output.writeUInt64(9, durationMs_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(repositoryPath_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 10, repositoryPath_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(repositoryPath_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 10, repositoryPath_); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(11, getTraceOptions()); + } + com.google.protobuf.GeneratedMessage + .serializeStringMapTo( + output, + internalGetAdvancedConfiguration(), + AdvancedConfigurationDefaultEntryHolder.defaultEntry, + 12); + if (raiseErrorOnStartFailure_ != false) { + output.writeBool(13, raiseErrorOnStartFailure_); } getUnknownFields().writeTo(output); } @@ -656,8 +2292,26 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeUInt64Size(9, durationMs_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(repositoryPath_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, repositoryPath_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(repositoryPath_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(10, repositoryPath_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(11, getTraceOptions()); + } + for (java.util.Map.Entry entry + : internalGetAdvancedConfiguration().getMap().entrySet()) { + com.google.protobuf.MapEntry + advancedConfiguration__ = AdvancedConfigurationDefaultEntryHolder.defaultEntry.newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(12, advancedConfiguration__); + } + if (raiseErrorOnStartFailure_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(13, raiseErrorOnStartFailure_); } size += getUnknownFields().getSerializedSize(); memoizedSize = size; @@ -693,6 +2347,15 @@ public boolean equals(final java.lang.Object obj) { != other.getDurationMs()) return false; if (!getRepositoryPath() .equals(other.getRepositoryPath())) return false; + if (hasTraceOptions() != other.hasTraceOptions()) return false; + if (hasTraceOptions()) { + if (!getTraceOptions() + .equals(other.getTraceOptions())) return false; + } + if (!internalGetAdvancedConfiguration().equals( + other.internalGetAdvancedConfiguration())) return false; + if (getRaiseErrorOnStartFailure() + != other.getRaiseErrorOnStartFailure()) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -728,6 +2391,17 @@ public int hashCode() { getDurationMs()); hash = (37 * hash) + REPOSITORY_PATH_FIELD_NUMBER; hash = (53 * hash) + getRepositoryPath().hashCode(); + if (hasTraceOptions()) { + hash = (37 * hash) + TRACE_OPTIONS_FIELD_NUMBER; + hash = (53 * hash) + getTraceOptions().hashCode(); + } + if (!internalGetAdvancedConfiguration().getMap().isEmpty()) { + hash = (37 * hash) + ADVANCED_CONFIGURATION_FIELD_NUMBER; + hash = (53 * hash) + internalGetAdvancedConfiguration().hashCode(); + } + hash = (37 * hash) + RAISE_ERROR_ON_START_FAILURE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getRaiseErrorOnStartFailure()); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -767,39 +2441,41 @@ public static org.tensorflow.proto.ProfilerOptions.ProfileOptions parseFrom( } public static org.tensorflow.proto.ProfilerOptions.ProfileOptions parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.ProfilerOptions.ProfileOptions parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.ProfilerOptions.ProfileOptions parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.ProfilerOptions.ProfileOptions parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.ProfilerOptions.ProfileOptions parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -819,19 +2495,19 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
    -     * Next ID: 11
    +     * Next ID: 14
          * 
    * * Protobuf type {@code tensorflow.ProfileOptions} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.ProfileOptions) org.tensorflow.proto.ProfilerOptions.ProfileOptionsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -839,8 +2515,30 @@ public static final class Builder extends return org.tensorflow.proto.ProfilerOptions.internal_static_tensorflow_ProfileOptions_descriptor; } + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 12: + return internalGetAdvancedConfiguration(); + default: + throw new RuntimeException( + "Invalid map field number: " + number); + } + } + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( + int number) { + switch (number) { + case 12: + return internalGetMutableAdvancedConfiguration(); + default: + throw new RuntimeException( + "Invalid map field number: " + number); + } + } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ProfilerOptions.internal_static_tensorflow_ProfileOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -849,37 +2547,41 @@ public static final class Builder extends // Construct using org.tensorflow.proto.ProfilerOptions.ProfileOptions.newBuilder() private Builder() { - + maybeForceBuilderInitialization(); } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); - + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage + .alwaysUseFieldBuilders) { + getTraceOptionsFieldBuilder(); + } } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; version_ = 0; - deviceType_ = 0; - includeDatasetOps_ = false; - hostTracerLevel_ = 0; - deviceTracerLevel_ = 0; - pythonTracerLevel_ = 0; - enableHloProto_ = false; - startTimestampNs_ = 0L; - durationMs_ = 0L; - repositoryPath_ = ""; - + traceOptions_ = null; + if (traceOptionsBuilder_ != null) { + traceOptionsBuilder_.dispose(); + traceOptionsBuilder_ = null; + } + internalGetMutableAdvancedConfiguration().clear(); + raiseErrorOnStartFailure_ = false; return this; } @@ -906,52 +2608,59 @@ public org.tensorflow.proto.ProfilerOptions.ProfileOptions build() { @java.lang.Override public org.tensorflow.proto.ProfilerOptions.ProfileOptions buildPartial() { org.tensorflow.proto.ProfilerOptions.ProfileOptions result = new org.tensorflow.proto.ProfilerOptions.ProfileOptions(this); - result.version_ = version_; - result.deviceType_ = deviceType_; - result.includeDatasetOps_ = includeDatasetOps_; - result.hostTracerLevel_ = hostTracerLevel_; - result.deviceTracerLevel_ = deviceTracerLevel_; - result.pythonTracerLevel_ = pythonTracerLevel_; - result.enableHloProto_ = enableHloProto_; - result.startTimestampNs_ = startTimestampNs_; - result.durationMs_ = durationMs_; - result.repositoryPath_ = repositoryPath_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.ProfilerOptions.ProfileOptions result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.version_ = version_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.deviceType_ = deviceType_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.includeDatasetOps_ = includeDatasetOps_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.hostTracerLevel_ = hostTracerLevel_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.deviceTracerLevel_ = deviceTracerLevel_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.pythonTracerLevel_ = pythonTracerLevel_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.enableHloProto_ = enableHloProto_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.startTimestampNs_ = startTimestampNs_; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.durationMs_ = durationMs_; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.repositoryPath_ = repositoryPath_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000400) != 0)) { + result.traceOptions_ = traceOptionsBuilder_ == null + ? traceOptions_ + : traceOptionsBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000800) != 0)) { + result.advancedConfiguration_ = internalGetAdvancedConfiguration().build(AdvancedConfigurationDefaultEntryHolder.defaultEntry); + } + if (((from_bitField0_ & 0x00001000) != 0)) { + result.raiseErrorOnStartFailure_ = raiseErrorOnStartFailure_; + } + result.bitField0_ |= to_bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.ProfilerOptions.ProfileOptions) { @@ -993,8 +2702,18 @@ public Builder mergeFrom(org.tensorflow.proto.ProfilerOptions.ProfileOptions oth } if (!other.getRepositoryPath().isEmpty()) { repositoryPath_ = other.repositoryPath_; + bitField0_ |= 0x00000200; onChanged(); } + if (other.hasTraceOptions()) { + mergeTraceOptions(other.getTraceOptions()); + } + internalGetMutableAdvancedConfiguration().mergeFrom( + other.internalGetAdvancedConfiguration()); + bitField0_ |= 0x00000800; + if (other.getRaiseErrorOnStartFailure() != false) { + setRaiseErrorOnStartFailure(other.getRaiseErrorOnStartFailure()); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -1023,54 +2742,75 @@ public Builder mergeFrom( break; case 8: { includeDatasetOps_ = input.readBool(); - + bitField0_ |= 0x00000004; break; } // case 8 case 16: { hostTracerLevel_ = input.readUInt32(); - + bitField0_ |= 0x00000008; break; } // case 16 case 24: { deviceTracerLevel_ = input.readUInt32(); - + bitField0_ |= 0x00000010; break; } // case 24 case 32: { pythonTracerLevel_ = input.readUInt32(); - + bitField0_ |= 0x00000020; break; } // case 32 case 40: { version_ = input.readUInt32(); - + bitField0_ |= 0x00000001; break; } // case 40 case 48: { deviceType_ = input.readEnum(); - + bitField0_ |= 0x00000002; break; } // case 48 case 56: { enableHloProto_ = input.readBool(); - + bitField0_ |= 0x00000040; break; } // case 56 case 64: { startTimestampNs_ = input.readUInt64(); - + bitField0_ |= 0x00000080; break; } // case 64 case 72: { durationMs_ = input.readUInt64(); - + bitField0_ |= 0x00000100; break; } // case 72 case 82: { repositoryPath_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000200; break; } // case 82 + case 90: { + input.readMessage( + getTraceOptionsFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000400; + break; + } // case 90 + case 98: { + com.google.protobuf.MapEntry + advancedConfiguration__ = input.readMessage( + AdvancedConfigurationDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); + internalGetMutableAdvancedConfiguration().ensureBuilderMap().put( + advancedConfiguration__.getKey(), advancedConfiguration__.getValue()); + bitField0_ |= 0x00000800; + break; + } // case 98 + case 104: { + raiseErrorOnStartFailure_ = input.readBool(); + bitField0_ |= 0x00001000; + break; + } // case 104 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag @@ -1086,6 +2826,7 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private int version_ ; /** @@ -1114,8 +2855,9 @@ public int getVersion() { * @return This builder for chaining. */ public Builder setVersion(int value) { - + version_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -1130,7 +2872,7 @@ public Builder setVersion(int value) { * @return This builder for chaining. */ public Builder clearVersion() { - + bitField0_ = (bitField0_ & ~0x00000001); version_ = 0; onChanged(); return this; @@ -1170,8 +2912,8 @@ public Builder clearVersion() { * @return This builder for chaining. */ public Builder setDeviceTypeValue(int value) { - deviceType_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -1191,8 +2933,7 @@ public Builder setDeviceTypeValue(int value) { */ @java.lang.Override public org.tensorflow.proto.ProfilerOptions.ProfileOptions.DeviceType getDeviceType() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.ProfilerOptions.ProfileOptions.DeviceType result = org.tensorflow.proto.ProfilerOptions.ProfileOptions.DeviceType.valueOf(deviceType_); + org.tensorflow.proto.ProfilerOptions.ProfileOptions.DeviceType result = org.tensorflow.proto.ProfilerOptions.ProfileOptions.DeviceType.forNumber(deviceType_); return result == null ? org.tensorflow.proto.ProfilerOptions.ProfileOptions.DeviceType.UNRECOGNIZED : result; } /** @@ -1214,7 +2955,7 @@ public Builder setDeviceType(org.tensorflow.proto.ProfilerOptions.ProfileOptions if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00000002; deviceType_ = value.getNumber(); onChanged(); return this; @@ -1234,7 +2975,7 @@ public Builder setDeviceType(org.tensorflow.proto.ProfilerOptions.ProfileOptions * @return This builder for chaining. */ public Builder clearDeviceType() { - + bitField0_ = (bitField0_ & ~0x00000002); deviceType_ = 0; onChanged(); return this; @@ -1265,8 +3006,9 @@ public boolean getIncludeDatasetOps() { * @return This builder for chaining. */ public Builder setIncludeDatasetOps(boolean value) { - + includeDatasetOps_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -1280,7 +3022,7 @@ public Builder setIncludeDatasetOps(boolean value) { * @return This builder for chaining. */ public Builder clearIncludeDatasetOps() { - + bitField0_ = (bitField0_ & ~0x00000004); includeDatasetOps_ = false; onChanged(); return this; @@ -1291,12 +3033,12 @@ public Builder clearIncludeDatasetOps() { *
            * Levels of host tracing: (version >= 1)
            * - Level 0 is used to disable host traces.
    -       * - Level 1 enables tracing of only user instrumented (or default) TraceMe.
    +       * - Level 1 enables tracing of only user instrumented (or default) TraceMe,
    +       * this is the default.
            * - Level 2 enables tracing of all level 1 TraceMe(s) and instrumented high
    -       *           level program execution details (expensive TF ops, XLA ops, etc).
    -       *           This is the default.
    +       * level program execution details (expensive TF ops, XLA ops, etc).
            * - Level 3 enables tracing of all level 2 TraceMe(s) and more verbose
    -       *           (low-level) program execution details (cheap TF ops, etc).
    +       * (low-level) program execution details (cheap TF ops, etc).
            * 
    * * uint32 host_tracer_level = 2; @@ -1310,12 +3052,12 @@ public int getHostTracerLevel() { *
            * Levels of host tracing: (version >= 1)
            * - Level 0 is used to disable host traces.
    -       * - Level 1 enables tracing of only user instrumented (or default) TraceMe.
    +       * - Level 1 enables tracing of only user instrumented (or default) TraceMe,
    +       * this is the default.
            * - Level 2 enables tracing of all level 1 TraceMe(s) and instrumented high
    -       *           level program execution details (expensive TF ops, XLA ops, etc).
    -       *           This is the default.
    +       * level program execution details (expensive TF ops, XLA ops, etc).
            * - Level 3 enables tracing of all level 2 TraceMe(s) and more verbose
    -       *           (low-level) program execution details (cheap TF ops, etc).
    +       * (low-level) program execution details (cheap TF ops, etc).
            * 
    * * uint32 host_tracer_level = 2; @@ -1323,8 +3065,9 @@ public int getHostTracerLevel() { * @return This builder for chaining. */ public Builder setHostTracerLevel(int value) { - + hostTracerLevel_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -1332,19 +3075,19 @@ public Builder setHostTracerLevel(int value) { *
            * Levels of host tracing: (version >= 1)
            * - Level 0 is used to disable host traces.
    -       * - Level 1 enables tracing of only user instrumented (or default) TraceMe.
    +       * - Level 1 enables tracing of only user instrumented (or default) TraceMe,
    +       * this is the default.
            * - Level 2 enables tracing of all level 1 TraceMe(s) and instrumented high
    -       *           level program execution details (expensive TF ops, XLA ops, etc).
    -       *           This is the default.
    +       * level program execution details (expensive TF ops, XLA ops, etc).
            * - Level 3 enables tracing of all level 2 TraceMe(s) and more verbose
    -       *           (low-level) program execution details (cheap TF ops, etc).
    +       * (low-level) program execution details (cheap TF ops, etc).
            * 
    * * uint32 host_tracer_level = 2; * @return This builder for chaining. */ public Builder clearHostTracerLevel() { - + bitField0_ = (bitField0_ & ~0x00000008); hostTracerLevel_ = 0; onChanged(); return this; @@ -1357,7 +3100,7 @@ public Builder clearHostTracerLevel() { * - Level 0 is used to disable device traces. * - Level 1 is used to enable device traces. * - More levels might be defined for specific device for controlling the - * verbosity of the trace. + * verbosity of the trace. *
    * * uint32 device_tracer_level = 3; @@ -1373,7 +3116,7 @@ public int getDeviceTracerLevel() { * - Level 0 is used to disable device traces. * - Level 1 is used to enable device traces. * - More levels might be defined for specific device for controlling the - * verbosity of the trace. + * verbosity of the trace. *
    * * uint32 device_tracer_level = 3; @@ -1381,8 +3124,9 @@ public int getDeviceTracerLevel() { * @return This builder for chaining. */ public Builder setDeviceTracerLevel(int value) { - + deviceTracerLevel_ = value; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -1392,14 +3136,14 @@ public Builder setDeviceTracerLevel(int value) { * - Level 0 is used to disable device traces. * - Level 1 is used to enable device traces. * - More levels might be defined for specific device for controlling the - * verbosity of the trace. + * verbosity of the trace. *
    * * uint32 device_tracer_level = 3; * @return This builder for chaining. */ public Builder clearDeviceTracerLevel() { - + bitField0_ = (bitField0_ & ~0x00000010); deviceTracerLevel_ = 0; onChanged(); return this; @@ -1430,8 +3174,9 @@ public int getPythonTracerLevel() { * @return This builder for chaining. */ public Builder setPythonTracerLevel(int value) { - + pythonTracerLevel_ = value; + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -1445,7 +3190,7 @@ public Builder setPythonTracerLevel(int value) { * @return This builder for chaining. */ public Builder clearPythonTracerLevel() { - + bitField0_ = (bitField0_ & ~0x00000020); pythonTracerLevel_ = 0; onChanged(); return this; @@ -1474,8 +3219,9 @@ public boolean getEnableHloProto() { * @return This builder for chaining. */ public Builder setEnableHloProto(boolean value) { - + enableHloProto_ = value; + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -1488,7 +3234,7 @@ public Builder setEnableHloProto(boolean value) { * @return This builder for chaining. */ public Builder clearEnableHloProto() { - + bitField0_ = (bitField0_ & ~0x00000040); enableHloProto_ = false; onChanged(); return this; @@ -1517,8 +3263,9 @@ public long getStartTimestampNs() { * @return This builder for chaining. */ public Builder setStartTimestampNs(long value) { - + startTimestampNs_ = value; + bitField0_ |= 0x00000080; onChanged(); return this; } @@ -1531,7 +3278,7 @@ public Builder setStartTimestampNs(long value) { * @return This builder for chaining. */ public Builder clearStartTimestampNs() { - + bitField0_ = (bitField0_ & ~0x00000080); startTimestampNs_ = 0L; onChanged(); return this; @@ -1562,8 +3309,9 @@ public long getDurationMs() { * @return This builder for chaining. */ public Builder setDurationMs(long value) { - + durationMs_ = value; + bitField0_ |= 0x00000100; onChanged(); return this; } @@ -1577,7 +3325,7 @@ public Builder setDurationMs(long value) { * @return This builder for chaining. */ public Builder clearDurationMs() { - + bitField0_ = (bitField0_ & ~0x00000100); durationMs_ = 0L; onChanged(); return this; @@ -1636,11 +3384,9 @@ public java.lang.String getRepositoryPath() { */ public Builder setRepositoryPath( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } repositoryPath_ = value; + bitField0_ |= 0x00000200; onChanged(); return this; } @@ -1653,8 +3399,8 @@ public Builder setRepositoryPath( * @return This builder for chaining. */ public Builder clearRepositoryPath() { - repositoryPath_ = getDefaultInstance().getRepositoryPath(); + bitField0_ = (bitField0_ & ~0x00000200); onChanged(); return this; } @@ -1669,27 +3415,417 @@ public Builder clearRepositoryPath() { */ public Builder setRepositoryPathBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); repositoryPath_ = value; + bitField0_ |= 0x00000200; + onChanged(); + return this; + } + + private org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions traceOptions_; + private com.google.protobuf.SingleFieldBuilder< + org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions, org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions.Builder, org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptionsOrBuilder> traceOptionsBuilder_; + /** + * .tensorflow.ProfileOptions.TraceOptions trace_options = 11; + * @return Whether the traceOptions field is set. + */ + public boolean hasTraceOptions() { + return ((bitField0_ & 0x00000400) != 0); + } + /** + * .tensorflow.ProfileOptions.TraceOptions trace_options = 11; + * @return The traceOptions. + */ + public org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions getTraceOptions() { + if (traceOptionsBuilder_ == null) { + return traceOptions_ == null ? org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions.getDefaultInstance() : traceOptions_; + } else { + return traceOptionsBuilder_.getMessage(); + } + } + /** + * .tensorflow.ProfileOptions.TraceOptions trace_options = 11; + */ + public Builder setTraceOptions(org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions value) { + if (traceOptionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + traceOptions_ = value; + } else { + traceOptionsBuilder_.setMessage(value); + } + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + /** + * .tensorflow.ProfileOptions.TraceOptions trace_options = 11; + */ + public Builder setTraceOptions( + org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions.Builder builderForValue) { + if (traceOptionsBuilder_ == null) { + traceOptions_ = builderForValue.build(); + } else { + traceOptionsBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + /** + * .tensorflow.ProfileOptions.TraceOptions trace_options = 11; + */ + public Builder mergeTraceOptions(org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions value) { + if (traceOptionsBuilder_ == null) { + if (((bitField0_ & 0x00000400) != 0) && + traceOptions_ != null && + traceOptions_ != org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions.getDefaultInstance()) { + getTraceOptionsBuilder().mergeFrom(value); + } else { + traceOptions_ = value; + } + } else { + traceOptionsBuilder_.mergeFrom(value); + } + if (traceOptions_ != null) { + bitField0_ |= 0x00000400; + onChanged(); + } + return this; + } + /** + * .tensorflow.ProfileOptions.TraceOptions trace_options = 11; + */ + public Builder clearTraceOptions() { + bitField0_ = (bitField0_ & ~0x00000400); + traceOptions_ = null; + if (traceOptionsBuilder_ != null) { + traceOptionsBuilder_.dispose(); + traceOptionsBuilder_ = null; + } onChanged(); return this; } + /** + * .tensorflow.ProfileOptions.TraceOptions trace_options = 11; + */ + public org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions.Builder getTraceOptionsBuilder() { + bitField0_ |= 0x00000400; + onChanged(); + return getTraceOptionsFieldBuilder().getBuilder(); + } + /** + * .tensorflow.ProfileOptions.TraceOptions trace_options = 11; + */ + public org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptionsOrBuilder getTraceOptionsOrBuilder() { + if (traceOptionsBuilder_ != null) { + return traceOptionsBuilder_.getMessageOrBuilder(); + } else { + return traceOptions_ == null ? + org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions.getDefaultInstance() : traceOptions_; + } + } + /** + * .tensorflow.ProfileOptions.TraceOptions trace_options = 11; + */ + private com.google.protobuf.SingleFieldBuilder< + org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions, org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions.Builder, org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptionsOrBuilder> + getTraceOptionsFieldBuilder() { + if (traceOptionsBuilder_ == null) { + traceOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilder< + org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions, org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptions.Builder, org.tensorflow.proto.ProfilerOptions.ProfileOptions.TraceOptionsOrBuilder>( + getTraceOptions(), + getParentForChildren(), + isClean()); + traceOptions_ = null; + } + return traceOptionsBuilder_; + } + + private static final class AdvancedConfigurationConverter implements com.google.protobuf.MapFieldBuilder.Converter { + @java.lang.Override + public org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue build(org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValueOrBuilder val) { + if (val instanceof org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue) { return (org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue) val; } + return ((org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue.Builder) val).build(); + } + + @java.lang.Override + public com.google.protobuf.MapEntry defaultEntry() { + return AdvancedConfigurationDefaultEntryHolder.defaultEntry; + } + }; + private static final AdvancedConfigurationConverter advancedConfigurationConverter = new AdvancedConfigurationConverter(); + + private com.google.protobuf.MapFieldBuilder< + java.lang.String, org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValueOrBuilder, org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue, org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue.Builder> advancedConfiguration_; + private com.google.protobuf.MapFieldBuilder + internalGetAdvancedConfiguration() { + if (advancedConfiguration_ == null) { + return new com.google.protobuf.MapFieldBuilder<>(advancedConfigurationConverter); + } + return advancedConfiguration_; + } + private com.google.protobuf.MapFieldBuilder + internalGetMutableAdvancedConfiguration() { + if (advancedConfiguration_ == null) { + advancedConfiguration_ = new com.google.protobuf.MapFieldBuilder<>(advancedConfigurationConverter); + } + bitField0_ |= 0x00000800; + onChanged(); + return advancedConfiguration_; + } + public int getAdvancedConfigurationCount() { + return internalGetAdvancedConfiguration().ensureBuilderMap().size(); + } + /** + *
    +       * Advanced configuration for the profiler contains a map of config name to
    +       * config value. It gives the flexibility to pass any configuration to the
    +       * profiler. eg:
    +       * advanced_configuration {
    +       * key: "tpu_trace_mode"
    +       * value: {
    +       * int64_value: 2
    +       * }
    +       * }
    +       * 
    + * + * map<string, .tensorflow.ProfileOptions.AdvancedConfigValue> advanced_configuration = 12; + */ + @java.lang.Override + public boolean containsAdvancedConfiguration( + java.lang.String key) { + if (key == null) { throw new NullPointerException("map key"); } + return internalGetAdvancedConfiguration().ensureBuilderMap().containsKey(key); + } + /** + * Use {@link #getAdvancedConfigurationMap()} instead. + */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getAdvancedConfiguration() { + return getAdvancedConfigurationMap(); + } + /** + *
    +       * Advanced configuration for the profiler contains a map of config name to
    +       * config value. It gives the flexibility to pass any configuration to the
    +       * profiler. eg:
    +       * advanced_configuration {
    +       * key: "tpu_trace_mode"
    +       * value: {
    +       * int64_value: 2
    +       * }
    +       * }
    +       * 
    + * + * map<string, .tensorflow.ProfileOptions.AdvancedConfigValue> advanced_configuration = 12; + */ + @java.lang.Override + public java.util.Map getAdvancedConfigurationMap() { + return internalGetAdvancedConfiguration().getImmutableMap(); + } + /** + *
    +       * Advanced configuration for the profiler contains a map of config name to
    +       * config value. It gives the flexibility to pass any configuration to the
    +       * profiler. eg:
    +       * advanced_configuration {
    +       * key: "tpu_trace_mode"
    +       * value: {
    +       * int64_value: 2
    +       * }
    +       * }
    +       * 
    + * + * map<string, .tensorflow.ProfileOptions.AdvancedConfigValue> advanced_configuration = 12; + */ + @java.lang.Override + public /* nullable */ +org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue getAdvancedConfigurationOrDefault( + java.lang.String key, + /* nullable */ +org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue defaultValue) { + if (key == null) { throw new NullPointerException("map key"); } + java.util.Map map = internalGetMutableAdvancedConfiguration().ensureBuilderMap(); + return map.containsKey(key) ? advancedConfigurationConverter.build(map.get(key)) : defaultValue; + } + /** + *
    +       * Advanced configuration for the profiler contains a map of config name to
    +       * config value. It gives the flexibility to pass any configuration to the
    +       * profiler. eg:
    +       * advanced_configuration {
    +       * key: "tpu_trace_mode"
    +       * value: {
    +       * int64_value: 2
    +       * }
    +       * }
    +       * 
    + * + * map<string, .tensorflow.ProfileOptions.AdvancedConfigValue> advanced_configuration = 12; + */ @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); + public org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue getAdvancedConfigurationOrThrow( + java.lang.String key) { + if (key == null) { throw new NullPointerException("map key"); } + java.util.Map map = internalGetMutableAdvancedConfiguration().ensureBuilderMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return advancedConfigurationConverter.build(map.get(key)); + } + public Builder clearAdvancedConfiguration() { + bitField0_ = (bitField0_ & ~0x00000800); + internalGetMutableAdvancedConfiguration().clear(); + return this; + } + /** + *
    +       * Advanced configuration for the profiler contains a map of config name to
    +       * config value. It gives the flexibility to pass any configuration to the
    +       * profiler. eg:
    +       * advanced_configuration {
    +       * key: "tpu_trace_mode"
    +       * value: {
    +       * int64_value: 2
    +       * }
    +       * }
    +       * 
    + * + * map<string, .tensorflow.ProfileOptions.AdvancedConfigValue> advanced_configuration = 12; + */ + public Builder removeAdvancedConfiguration( + java.lang.String key) { + if (key == null) { throw new NullPointerException("map key"); } + internalGetMutableAdvancedConfiguration().ensureBuilderMap() + .remove(key); + return this; + } + /** + * Use alternate mutation accessors instead. + */ + @java.lang.Deprecated + public java.util.Map + getMutableAdvancedConfiguration() { + bitField0_ |= 0x00000800; + return internalGetMutableAdvancedConfiguration().ensureMessageMap(); + } + /** + *
    +       * Advanced configuration for the profiler contains a map of config name to
    +       * config value. It gives the flexibility to pass any configuration to the
    +       * profiler. eg:
    +       * advanced_configuration {
    +       * key: "tpu_trace_mode"
    +       * value: {
    +       * int64_value: 2
    +       * }
    +       * }
    +       * 
    + * + * map<string, .tensorflow.ProfileOptions.AdvancedConfigValue> advanced_configuration = 12; + */ + public Builder putAdvancedConfiguration( + java.lang.String key, + org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue value) { + if (key == null) { throw new NullPointerException("map key"); } + if (value == null) { throw new NullPointerException("map value"); } + internalGetMutableAdvancedConfiguration().ensureBuilderMap() + .put(key, value); + bitField0_ |= 0x00000800; + return this; + } + /** + *
    +       * Advanced configuration for the profiler contains a map of config name to
    +       * config value. It gives the flexibility to pass any configuration to the
    +       * profiler. eg:
    +       * advanced_configuration {
    +       * key: "tpu_trace_mode"
    +       * value: {
    +       * int64_value: 2
    +       * }
    +       * }
    +       * 
    + * + * map<string, .tensorflow.ProfileOptions.AdvancedConfigValue> advanced_configuration = 12; + */ + public Builder putAllAdvancedConfiguration( + java.util.Map values) { + for (java.util.Map.Entry e : values.entrySet()) { + if (e.getKey() == null || e.getValue() == null) { + throw new NullPointerException(); + } + } + internalGetMutableAdvancedConfiguration().ensureBuilderMap() + .putAll(values); + bitField0_ |= 0x00000800; + return this; + } + /** + *
    +       * Advanced configuration for the profiler contains a map of config name to
    +       * config value. It gives the flexibility to pass any configuration to the
    +       * profiler. eg:
    +       * advanced_configuration {
    +       * key: "tpu_trace_mode"
    +       * value: {
    +       * int64_value: 2
    +       * }
    +       * }
    +       * 
    + * + * map<string, .tensorflow.ProfileOptions.AdvancedConfigValue> advanced_configuration = 12; + */ + public org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue.Builder putAdvancedConfigurationBuilderIfAbsent( + java.lang.String key) { + java.util.Map builderMap = internalGetMutableAdvancedConfiguration().ensureBuilderMap(); + org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValueOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue) { + entry = ((org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.ProfilerOptions.ProfileOptions.AdvancedConfigValue.Builder) entry; } + private boolean raiseErrorOnStartFailure_ ; + /** + * bool raise_error_on_start_failure = 13; + * @return The raiseErrorOnStartFailure. + */ @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + public boolean getRaiseErrorOnStartFailure() { + return raiseErrorOnStartFailure_; } + /** + * bool raise_error_on_start_failure = 13; + * @param value The raiseErrorOnStartFailure to set. + * @return This builder for chaining. + */ + public Builder setRaiseErrorOnStartFailure(boolean value) { + raiseErrorOnStartFailure_ = value; + bitField0_ |= 0x00001000; + onChanged(); + return this; + } + /** + * bool raise_error_on_start_failure = 13; + * @return This builder for chaining. + */ + public Builder clearRaiseErrorOnStartFailure() { + bitField0_ = (bitField0_ & ~0x00001000); + raiseErrorOnStartFailure_ = false; + onChanged(); + return this; + } // @@protoc_insertion_point(builder_scope:tensorflow.ProfileOptions) } @@ -1856,43 +3992,42 @@ public interface RemoteProfilerSessionManagerOptionsOrBuilder extends * Protobuf type {@code tensorflow.RemoteProfilerSessionManagerOptions} */ public static final class RemoteProfilerSessionManagerOptions extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.RemoteProfilerSessionManagerOptions) RemoteProfilerSessionManagerOptionsOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + RemoteProfilerSessionManagerOptions.class.getName()); + } // Use RemoteProfilerSessionManagerOptions.newBuilder() to construct. - private RemoteProfilerSessionManagerOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private RemoteProfilerSessionManagerOptions(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private RemoteProfilerSessionManagerOptions() { - serviceAddresses_ = com.google.protobuf.LazyStringArrayList.EMPTY; - } - - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new RemoteProfilerSessionManagerOptions(); + serviceAddresses_ = + com.google.protobuf.LazyStringArrayList.emptyList(); } - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.ProfilerOptions.internal_static_tensorflow_RemoteProfilerSessionManagerOptions_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ProfilerOptions.internal_static_tensorflow_RemoteProfilerSessionManagerOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptions.class, org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptions.Builder.class); } + private int bitField0_; public static final int PROFILER_OPTIONS_FIELD_NUMBER = 1; private org.tensorflow.proto.ProfilerOptions.ProfileOptions profilerOptions_; /** @@ -1905,7 +4040,7 @@ protected java.lang.Object newInstance( */ @java.lang.Override public boolean hasProfilerOptions() { - return profilerOptions_ != null; + return ((bitField0_ & 0x00000001) != 0); } /** *
    @@ -1928,11 +4063,13 @@ public org.tensorflow.proto.ProfilerOptions.ProfileOptions getProfilerOptions()
          */
         @java.lang.Override
         public org.tensorflow.proto.ProfilerOptions.ProfileOptionsOrBuilder getProfilerOptionsOrBuilder() {
    -      return getProfilerOptions();
    +      return profilerOptions_ == null ? org.tensorflow.proto.ProfilerOptions.ProfileOptions.getDefaultInstance() : profilerOptions_;
         }
     
         public static final int SERVICE_ADDRESSES_FIELD_NUMBER = 2;
    -    private com.google.protobuf.LazyStringList serviceAddresses_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.LazyStringArrayList serviceAddresses_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         /**
          * 
          * List of servers to profile. Supported formats: host:port.
    @@ -1983,7 +4120,7 @@ public java.lang.String getServiceAddresses(int index) {
         }
     
         public static final int SESSION_CREATION_TIMESTAMP_NS_FIELD_NUMBER = 3;
    -    private long sessionCreationTimestampNs_;
    +    private long sessionCreationTimestampNs_ = 0L;
         /**
          * 
          * Unix timestamp of when the session was started.
    @@ -1998,7 +4135,7 @@ public long getSessionCreationTimestampNs() {
         }
     
         public static final int MAX_SESSION_DURATION_MS_FIELD_NUMBER = 4;
    -    private long maxSessionDurationMs_;
    +    private long maxSessionDurationMs_ = 0L;
         /**
          * 
          * Maximum time (in milliseconds) a profiling session manager waits for all
    @@ -2016,7 +4153,7 @@ public long getMaxSessionDurationMs() {
         }
     
         public static final int DELAY_MS_FIELD_NUMBER = 5;
    -    private long delayMs_;
    +    private long delayMs_ = 0L;
         /**
          * 
          * Start of profiling is delayed by this much (in milliseconds).
    @@ -2044,11 +4181,11 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (profilerOptions_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(1, getProfilerOptions());
           }
           for (int i = 0; i < serviceAddresses_.size(); i++) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, serviceAddresses_.getRaw(i));
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, serviceAddresses_.getRaw(i));
           }
           if (sessionCreationTimestampNs_ != 0L) {
             output.writeUInt64(3, sessionCreationTimestampNs_);
    @@ -2068,7 +4205,7 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (profilerOptions_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(1, getProfilerOptions());
           }
    @@ -2187,39 +4324,41 @@ public static org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerO
         }
         public static org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptions parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptions parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptions parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptions parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptions parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptions parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -2239,7 +4378,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -2252,7 +4391,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.RemoteProfilerSessionManagerOptions}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.RemoteProfilerSessionManagerOptions)
             org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptionsOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -2261,7 +4400,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.ProfilerOptions.internal_static_tensorflow_RemoteProfilerSessionManagerOptions_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -2270,31 +4409,34 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptions.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getProfilerOptionsFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    -        if (profilerOptionsBuilder_ == null) {
    -          profilerOptions_ = null;
    -        } else {
    -          profilerOptions_ = null;
    +        bitField0_ = 0;
    +        profilerOptions_ = null;
    +        if (profilerOptionsBuilder_ != null) {
    +          profilerOptionsBuilder_.dispose();
               profilerOptionsBuilder_ = null;
             }
    -        serviceAddresses_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        serviceAddresses_ =
    +            com.google.protobuf.LazyStringArrayList.emptyList();
             sessionCreationTimestampNs_ = 0L;
    -
             maxSessionDurationMs_ = 0L;
    -
             delayMs_ = 0L;
    -
             return this;
           }
     
    @@ -2321,56 +4463,36 @@ public org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptions
           @java.lang.Override
           public org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptions buildPartial() {
             org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptions result = new org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptions(this);
    -        int from_bitField0_ = bitField0_;
    -        if (profilerOptionsBuilder_ == null) {
    -          result.profilerOptions_ = profilerOptions_;
    -        } else {
    -          result.profilerOptions_ = profilerOptionsBuilder_.build();
    -        }
    -        if (((bitField0_ & 0x00000001) != 0)) {
    -          serviceAddresses_ = serviceAddresses_.getUnmodifiableView();
    -          bitField0_ = (bitField0_ & ~0x00000001);
    -        }
    -        result.serviceAddresses_ = serviceAddresses_;
    -        result.sessionCreationTimestampNs_ = sessionCreationTimestampNs_;
    -        result.maxSessionDurationMs_ = maxSessionDurationMs_;
    -        result.delayMs_ = delayMs_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptions result) {
    +        int from_bitField0_ = bitField0_;
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.profilerOptions_ = profilerOptionsBuilder_ == null
    +              ? profilerOptions_
    +              : profilerOptionsBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          serviceAddresses_.makeImmutable();
    +          result.serviceAddresses_ = serviceAddresses_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.sessionCreationTimestampNs_ = sessionCreationTimestampNs_;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.maxSessionDurationMs_ = maxSessionDurationMs_;
    +        }
    +        if (((from_bitField0_ & 0x00000010) != 0)) {
    +          result.delayMs_ = delayMs_;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptions) {
    @@ -2389,7 +4511,7 @@ public Builder mergeFrom(org.tensorflow.proto.ProfilerOptions.RemoteProfilerSess
             if (!other.serviceAddresses_.isEmpty()) {
               if (serviceAddresses_.isEmpty()) {
                 serviceAddresses_ = other.serviceAddresses_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ |= 0x00000002;
               } else {
                 ensureServiceAddressesIsMutable();
                 serviceAddresses_.addAll(other.serviceAddresses_);
    @@ -2435,7 +4557,7 @@ public Builder mergeFrom(
                     input.readMessage(
                         getProfilerOptionsFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
    @@ -2446,17 +4568,17 @@ public Builder mergeFrom(
                   } // case 18
                   case 24: {
                     sessionCreationTimestampNs_ = input.readUInt64();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 24
                   case 32: {
                     maxSessionDurationMs_ = input.readUInt64();
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 32
                   case 40: {
                     delayMs_ = input.readUInt64();
    -
    +                bitField0_ |= 0x00000010;
                     break;
                   } // case 40
                   default: {
    @@ -2477,7 +4599,7 @@ public Builder mergeFrom(
           private int bitField0_;
     
           private org.tensorflow.proto.ProfilerOptions.ProfileOptions profilerOptions_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.ProfilerOptions.ProfileOptions, org.tensorflow.proto.ProfilerOptions.ProfileOptions.Builder, org.tensorflow.proto.ProfilerOptions.ProfileOptionsOrBuilder> profilerOptionsBuilder_;
           /**
            * 
    @@ -2488,7 +4610,7 @@ public Builder mergeFrom(
            * @return Whether the profilerOptions field is set.
            */
           public boolean hasProfilerOptions() {
    -        return profilerOptionsBuilder_ != null || profilerOptions_ != null;
    +        return ((bitField0_ & 0x00000001) != 0);
           }
           /**
            * 
    @@ -2518,11 +4640,11 @@ public Builder setProfilerOptions(org.tensorflow.proto.ProfilerOptions.ProfileOp
                 throw new NullPointerException();
               }
               profilerOptions_ = value;
    -          onChanged();
             } else {
               profilerOptionsBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000001;
    +        onChanged();
             return this;
           }
           /**
    @@ -2536,11 +4658,11 @@ public Builder setProfilerOptions(
               org.tensorflow.proto.ProfilerOptions.ProfileOptions.Builder builderForValue) {
             if (profilerOptionsBuilder_ == null) {
               profilerOptions_ = builderForValue.build();
    -          onChanged();
             } else {
               profilerOptionsBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000001;
    +        onChanged();
             return this;
           }
           /**
    @@ -2552,17 +4674,20 @@ public Builder setProfilerOptions(
            */
           public Builder mergeProfilerOptions(org.tensorflow.proto.ProfilerOptions.ProfileOptions value) {
             if (profilerOptionsBuilder_ == null) {
    -          if (profilerOptions_ != null) {
    -            profilerOptions_ =
    -              org.tensorflow.proto.ProfilerOptions.ProfileOptions.newBuilder(profilerOptions_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000001) != 0) &&
    +            profilerOptions_ != null &&
    +            profilerOptions_ != org.tensorflow.proto.ProfilerOptions.ProfileOptions.getDefaultInstance()) {
    +            getProfilerOptionsBuilder().mergeFrom(value);
               } else {
                 profilerOptions_ = value;
               }
    -          onChanged();
             } else {
               profilerOptionsBuilder_.mergeFrom(value);
             }
    -
    +        if (profilerOptions_ != null) {
    +          bitField0_ |= 0x00000001;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -2573,14 +4698,13 @@ public Builder mergeProfilerOptions(org.tensorflow.proto.ProfilerOptions.Profile
            * .tensorflow.ProfileOptions profiler_options = 1;
            */
           public Builder clearProfilerOptions() {
    -        if (profilerOptionsBuilder_ == null) {
    -          profilerOptions_ = null;
    -          onChanged();
    -        } else {
    -          profilerOptions_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000001);
    +        profilerOptions_ = null;
    +        if (profilerOptionsBuilder_ != null) {
    +          profilerOptionsBuilder_.dispose();
               profilerOptionsBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -2591,7 +4715,7 @@ public Builder clearProfilerOptions() {
            * .tensorflow.ProfileOptions profiler_options = 1;
            */
           public org.tensorflow.proto.ProfilerOptions.ProfileOptions.Builder getProfilerOptionsBuilder() {
    -        
    +        bitField0_ |= 0x00000001;
             onChanged();
             return getProfilerOptionsFieldBuilder().getBuilder();
           }
    @@ -2617,11 +4741,11 @@ public org.tensorflow.proto.ProfilerOptions.ProfileOptionsOrBuilder getProfilerO
            *
            * .tensorflow.ProfileOptions profiler_options = 1;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.ProfilerOptions.ProfileOptions, org.tensorflow.proto.ProfilerOptions.ProfileOptions.Builder, org.tensorflow.proto.ProfilerOptions.ProfileOptionsOrBuilder> 
               getProfilerOptionsFieldBuilder() {
             if (profilerOptionsBuilder_ == null) {
    -          profilerOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          profilerOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.ProfilerOptions.ProfileOptions, org.tensorflow.proto.ProfilerOptions.ProfileOptions.Builder, org.tensorflow.proto.ProfilerOptions.ProfileOptionsOrBuilder>(
                       getProfilerOptions(),
                       getParentForChildren(),
    @@ -2631,12 +4755,13 @@ public org.tensorflow.proto.ProfilerOptions.ProfileOptionsOrBuilder getProfilerO
             return profilerOptionsBuilder_;
           }
     
    -      private com.google.protobuf.LazyStringList serviceAddresses_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +      private com.google.protobuf.LazyStringArrayList serviceAddresses_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           private void ensureServiceAddressesIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    +        if (!serviceAddresses_.isModifiable()) {
               serviceAddresses_ = new com.google.protobuf.LazyStringArrayList(serviceAddresses_);
    -          bitField0_ |= 0x00000001;
    -         }
    +        }
    +        bitField0_ |= 0x00000002;
           }
           /**
            * 
    @@ -2648,7 +4773,8 @@ private void ensureServiceAddressesIsMutable() {
            */
           public com.google.protobuf.ProtocolStringList
               getServiceAddressesList() {
    -        return serviceAddresses_.getUnmodifiableView();
    +        serviceAddresses_.makeImmutable();
    +        return serviceAddresses_;
           }
           /**
            * 
    @@ -2698,11 +4824,10 @@ public java.lang.String getServiceAddresses(int index) {
            */
           public Builder setServiceAddresses(
               int index, java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureServiceAddressesIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureServiceAddressesIsMutable();
             serviceAddresses_.set(index, value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -2717,11 +4842,10 @@ public Builder setServiceAddresses(
            */
           public Builder addServiceAddresses(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureServiceAddressesIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureServiceAddressesIsMutable();
             serviceAddresses_.add(value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -2739,6 +4863,7 @@ public Builder addAllServiceAddresses(
             ensureServiceAddressesIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, serviceAddresses_);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -2751,8 +4876,9 @@ public Builder addAllServiceAddresses(
            * @return This builder for chaining.
            */
           public Builder clearServiceAddresses() {
    -        serviceAddresses_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        serviceAddresses_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
    +        bitField0_ = (bitField0_ & ~0x00000002);;
             onChanged();
             return this;
           }
    @@ -2767,12 +4893,11 @@ public Builder clearServiceAddresses() {
            */
           public Builder addServiceAddressesBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             ensureServiceAddressesIsMutable();
             serviceAddresses_.add(value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -2800,8 +4925,9 @@ public long getSessionCreationTimestampNs() {
            * @return This builder for chaining.
            */
           public Builder setSessionCreationTimestampNs(long value) {
    -        
    +
             sessionCreationTimestampNs_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -2814,7 +4940,7 @@ public Builder setSessionCreationTimestampNs(long value) {
            * @return This builder for chaining.
            */
           public Builder clearSessionCreationTimestampNs() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000004);
             sessionCreationTimestampNs_ = 0L;
             onChanged();
             return this;
    @@ -2849,8 +4975,9 @@ public long getMaxSessionDurationMs() {
            * @return This builder for chaining.
            */
           public Builder setMaxSessionDurationMs(long value) {
    -        
    +
             maxSessionDurationMs_ = value;
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -2866,7 +4993,7 @@ public Builder setMaxSessionDurationMs(long value) {
            * @return This builder for chaining.
            */
           public Builder clearMaxSessionDurationMs() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000008);
             maxSessionDurationMs_ = 0L;
             onChanged();
             return this;
    @@ -2895,8 +5022,9 @@ public long getDelayMs() {
            * @return This builder for chaining.
            */
           public Builder setDelayMs(long value) {
    -        
    +
             delayMs_ = value;
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -2909,23 +5037,11 @@ public Builder setDelayMs(long value) {
            * @return This builder for chaining.
            */
           public Builder clearDelayMs() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000010);
             delayMs_ = 0L;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.RemoteProfilerSessionManagerOptions)
         }
    @@ -2981,12 +5097,27 @@ public org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptions
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_ProfileOptions_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_ProfileOptions_fieldAccessorTable;
    +  private static final com.google.protobuf.Descriptors.Descriptor
    +    internal_static_tensorflow_ProfileOptions_TraceOptions_descriptor;
    +  private static final 
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
    +      internal_static_tensorflow_ProfileOptions_TraceOptions_fieldAccessorTable;
    +  private static final com.google.protobuf.Descriptors.Descriptor
    +    internal_static_tensorflow_ProfileOptions_AdvancedConfigValue_descriptor;
    +  private static final 
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
    +      internal_static_tensorflow_ProfileOptions_AdvancedConfigValue_fieldAccessorTable;
    +  private static final com.google.protobuf.Descriptors.Descriptor
    +    internal_static_tensorflow_ProfileOptions_AdvancedConfigurationEntry_descriptor;
    +  private static final 
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
    +      internal_static_tensorflow_ProfileOptions_AdvancedConfigurationEntry_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_RemoteProfilerSessionManagerOptions_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_RemoteProfilerSessionManagerOptions_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -2998,7 +5129,7 @@ public org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptions
       static {
         java.lang.String[] descriptorData = {
           "\n,tsl/profiler/protobuf/profiler_options" +
    -      ".proto\022\ntensorflow\"\203\003\n\016ProfileOptions\022\017\n" +
    +      ".proto\022\ntensorflow\"\305\006\n\016ProfileOptions\022\017\n" +
           "\007version\030\005 \001(\r\022:\n\013device_type\030\006 \001(\0162%.te" +
           "nsorflow.ProfileOptions.DeviceType\022\033\n\023in" +
           "clude_dataset_ops\030\001 \001(\010\022\031\n\021host_tracer_l" +
    @@ -3006,15 +5137,26 @@ public org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptions
           "\033\n\023python_tracer_level\030\004 \001(\r\022\030\n\020enable_h" +
           "lo_proto\030\007 \001(\010\022\032\n\022start_timestamp_ns\030\010 \001" +
           "(\004\022\023\n\013duration_ms\030\t \001(\004\022\027\n\017repository_pa" +
    -      "th\030\n \001(\t\"N\n\nDeviceType\022\017\n\013UNSPECIFIED\020\000\022" +
    -      "\007\n\003CPU\020\001\022\007\n\003GPU\020\002\022\007\n\003TPU\020\003\022\024\n\020PLUGGABLE_" +
    -      "DEVICE\020\004\"\320\001\n#RemoteProfilerSessionManage" +
    -      "rOptions\0224\n\020profiler_options\030\001 \001(\0132\032.ten" +
    -      "sorflow.ProfileOptions\022\031\n\021service_addres" +
    -      "ses\030\002 \003(\t\022%\n\035session_creation_timestamp_" +
    -      "ns\030\003 \001(\004\022\037\n\027max_session_duration_ms\030\004 \001(" +
    -      "\004\022\020\n\010delay_ms\030\005 \001(\004B\026\n\024org.tensorflow.pr" +
    -      "otob\006proto3"
    +      "th\030\n \001(\t\022>\n\rtrace_options\030\013 \001(\0132\'.tensor" +
    +      "flow.ProfileOptions.TraceOptions\022U\n\026adva" +
    +      "nced_configuration\030\014 \003(\01325.tensorflow.Pr" +
    +      "ofileOptions.AdvancedConfigurationEntry\022" +
    +      "$\n\034raise_error_on_start_failure\030\r \001(\010\0320\n" +
    +      "\014TraceOptions\022 \n\030host_traceme_filter_mas" +
    +      "k\030\001 \001(\004\032c\n\023AdvancedConfigValue\022\026\n\014string" +
    +      "_value\030\001 \001(\tH\000\022\024\n\nbool_value\030\002 \001(\010H\000\022\025\n\013" +
    +      "int64_value\030\003 \001(\003H\000B\007\n\005value\032l\n\032Advanced" +
    +      "ConfigurationEntry\022\013\n\003key\030\001 \001(\t\022=\n\005value" +
    +      "\030\002 \001(\0132..tensorflow.ProfileOptions.Advan" +
    +      "cedConfigValue:\0028\001\"N\n\nDeviceType\022\017\n\013UNSP" +
    +      "ECIFIED\020\000\022\007\n\003CPU\020\001\022\007\n\003GPU\020\002\022\007\n\003TPU\020\003\022\024\n\020" +
    +      "PLUGGABLE_DEVICE\020\004\"\320\001\n#RemoteProfilerSes" +
    +      "sionManagerOptions\0224\n\020profiler_options\030\001" +
    +      " \001(\0132\032.tensorflow.ProfileOptions\022\031\n\021serv" +
    +      "ice_addresses\030\002 \003(\t\022%\n\035session_creation_" +
    +      "timestamp_ns\030\003 \001(\004\022\037\n\027max_session_durati" +
    +      "on_ms\030\004 \001(\004\022\020\n\010delay_ms\030\005 \001(\004B\026\n\024org.ten" +
    +      "sorflow.protob\006proto3"
         };
         descriptor = com.google.protobuf.Descriptors.FileDescriptor
           .internalBuildGeneratedFileFrom(descriptorData,
    @@ -3023,15 +5165,34 @@ public org.tensorflow.proto.ProfilerOptions.RemoteProfilerSessionManagerOptions
         internal_static_tensorflow_ProfileOptions_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_ProfileOptions_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_ProfileOptions_descriptor,
    -        new java.lang.String[] { "Version", "DeviceType", "IncludeDatasetOps", "HostTracerLevel", "DeviceTracerLevel", "PythonTracerLevel", "EnableHloProto", "StartTimestampNs", "DurationMs", "RepositoryPath", });
    +        new java.lang.String[] { "Version", "DeviceType", "IncludeDatasetOps", "HostTracerLevel", "DeviceTracerLevel", "PythonTracerLevel", "EnableHloProto", "StartTimestampNs", "DurationMs", "RepositoryPath", "TraceOptions", "AdvancedConfiguration", "RaiseErrorOnStartFailure", });
    +    internal_static_tensorflow_ProfileOptions_TraceOptions_descriptor =
    +      internal_static_tensorflow_ProfileOptions_descriptor.getNestedTypes().get(0);
    +    internal_static_tensorflow_ProfileOptions_TraceOptions_fieldAccessorTable = new
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
    +        internal_static_tensorflow_ProfileOptions_TraceOptions_descriptor,
    +        new java.lang.String[] { "HostTracemeFilterMask", });
    +    internal_static_tensorflow_ProfileOptions_AdvancedConfigValue_descriptor =
    +      internal_static_tensorflow_ProfileOptions_descriptor.getNestedTypes().get(1);
    +    internal_static_tensorflow_ProfileOptions_AdvancedConfigValue_fieldAccessorTable = new
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
    +        internal_static_tensorflow_ProfileOptions_AdvancedConfigValue_descriptor,
    +        new java.lang.String[] { "StringValue", "BoolValue", "Int64Value", "Value", });
    +    internal_static_tensorflow_ProfileOptions_AdvancedConfigurationEntry_descriptor =
    +      internal_static_tensorflow_ProfileOptions_descriptor.getNestedTypes().get(2);
    +    internal_static_tensorflow_ProfileOptions_AdvancedConfigurationEntry_fieldAccessorTable = new
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
    +        internal_static_tensorflow_ProfileOptions_AdvancedConfigurationEntry_descriptor,
    +        new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_RemoteProfilerSessionManagerOptions_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_RemoteProfilerSessionManagerOptions_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_RemoteProfilerSessionManagerOptions_descriptor,
             new java.lang.String[] { "ProfilerOptions", "ServiceAddresses", "SessionCreationTimestampNs", "MaxSessionDurationMs", "DelayMs", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/QueueRunnerDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/QueueRunnerDef.java
    index 7bb1bfb66a9..550c1c55a0b 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/QueueRunnerDef.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/QueueRunnerDef.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/queue_runner.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,41 +13,39 @@
      * Protobuf type {@code tensorflow.QueueRunnerDef}
      */
     public final class QueueRunnerDef extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.QueueRunnerDef)
         QueueRunnerDefOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      QueueRunnerDef.class.getName());
    +  }
       // Use QueueRunnerDef.newBuilder() to construct.
    -  private QueueRunnerDef(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private QueueRunnerDef(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private QueueRunnerDef() {
         queueName_ = "";
    -    enqueueOpName_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    enqueueOpName_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         closeOpName_ = "";
         cancelOpName_ = "";
    -    queueClosedExceptionTypes_ = java.util.Collections.emptyList();
    -  }
    -
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new QueueRunnerDef();
    +    queueClosedExceptionTypes_ = emptyIntList();
       }
     
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.QueueRunnerProtos.internal_static_tensorflow_QueueRunnerDef_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.QueueRunnerProtos.internal_static_tensorflow_QueueRunnerDef_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -53,7 +53,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int QUEUE_NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object queueName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object queueName_ = "";
       /**
        * 
        * Queue name.
    @@ -99,7 +100,9 @@ public java.lang.String getQueueName() {
       }
     
       public static final int ENQUEUE_OP_NAME_FIELD_NUMBER = 2;
    -  private com.google.protobuf.LazyStringList enqueueOpName_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList enqueueOpName_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * A list of enqueue operations.
    @@ -150,7 +153,8 @@ public java.lang.String getEnqueueOpName(int index) {
       }
     
       public static final int CLOSE_OP_NAME_FIELD_NUMBER = 3;
    -  private volatile java.lang.Object closeOpName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object closeOpName_ = "";
       /**
        * 
        * The operation to run to close the queue.
    @@ -196,7 +200,8 @@ public java.lang.String getCloseOpName() {
       }
     
       public static final int CANCEL_OP_NAME_FIELD_NUMBER = 4;
    -  private volatile java.lang.Object cancelOpName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object cancelOpName_ = "";
       /**
        * 
        * The operation to run to cancel the queue.
    @@ -242,14 +247,14 @@ public java.lang.String getCancelOpName() {
       }
     
       public static final int QUEUE_CLOSED_EXCEPTION_TYPES_FIELD_NUMBER = 5;
    -  private java.util.List queueClosedExceptionTypes_;
    -  private static final com.google.protobuf.Internal.ListAdapter.Converter<
    -      java.lang.Integer, org.tensorflow.proto.error.Code> queueClosedExceptionTypes_converter_ =
    -          new com.google.protobuf.Internal.ListAdapter.Converter<
    -              java.lang.Integer, org.tensorflow.proto.error.Code>() {
    -            public org.tensorflow.proto.error.Code convert(java.lang.Integer from) {
    -              @SuppressWarnings("deprecation")
    -              org.tensorflow.proto.error.Code result = org.tensorflow.proto.error.Code.valueOf(from);
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.IntList queueClosedExceptionTypes_;
    +  private static final com.google.protobuf.Internal.IntListAdapter.IntConverter<
    +      org.tensorflow.proto.error.Code> queueClosedExceptionTypes_converter_ =
    +          new com.google.protobuf.Internal.IntListAdapter.IntConverter<
    +              org.tensorflow.proto.error.Code>() {
    +            public org.tensorflow.proto.error.Code convert(int from) {
    +              org.tensorflow.proto.error.Code result = org.tensorflow.proto.error.Code.forNumber(from);
                   return result == null ? org.tensorflow.proto.error.Code.UNRECOGNIZED : result;
                 }
               };
    @@ -264,8 +269,8 @@ public org.tensorflow.proto.error.Code convert(java.lang.Integer from) {
        */
       @java.lang.Override
       public java.util.List getQueueClosedExceptionTypesList() {
    -    return new com.google.protobuf.Internal.ListAdapter<
    -        java.lang.Integer, org.tensorflow.proto.error.Code>(queueClosedExceptionTypes_, queueClosedExceptionTypes_converter_);
    +    return new com.google.protobuf.Internal.IntListAdapter<
    +        org.tensorflow.proto.error.Code>(queueClosedExceptionTypes_, queueClosedExceptionTypes_converter_);
       }
       /**
        * 
    @@ -292,7 +297,7 @@ public int getQueueClosedExceptionTypesCount() {
        */
       @java.lang.Override
       public org.tensorflow.proto.error.Code getQueueClosedExceptionTypes(int index) {
    -    return queueClosedExceptionTypes_converter_.convert(queueClosedExceptionTypes_.get(index));
    +    return queueClosedExceptionTypes_converter_.convert(queueClosedExceptionTypes_.getInt(index));
       }
       /**
        * 
    @@ -320,7 +325,7 @@ public org.tensorflow.proto.error.Code getQueueClosedExceptionTypes(int index) {
        */
       @java.lang.Override
       public int getQueueClosedExceptionTypesValue(int index) {
    -    return queueClosedExceptionTypes_.get(index);
    +    return queueClosedExceptionTypes_.getInt(index);
       }
       private int queueClosedExceptionTypesMemoizedSerializedSize;
     
    @@ -339,24 +344,24 @@ public final boolean isInitialized() {
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
         getSerializedSize();
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(queueName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, queueName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(queueName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, queueName_);
         }
         for (int i = 0; i < enqueueOpName_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, enqueueOpName_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, enqueueOpName_.getRaw(i));
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(closeOpName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, closeOpName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(closeOpName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, closeOpName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(cancelOpName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 4, cancelOpName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(cancelOpName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 4, cancelOpName_);
         }
         if (getQueueClosedExceptionTypesList().size() > 0) {
           output.writeUInt32NoTag(42);
           output.writeUInt32NoTag(queueClosedExceptionTypesMemoizedSerializedSize);
         }
         for (int i = 0; i < queueClosedExceptionTypes_.size(); i++) {
    -      output.writeEnumNoTag(queueClosedExceptionTypes_.get(i));
    +      output.writeEnumNoTag(queueClosedExceptionTypes_.getInt(i));
         }
         getUnknownFields().writeTo(output);
       }
    @@ -367,8 +372,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(queueName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, queueName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(queueName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, queueName_);
         }
         {
           int dataSize = 0;
    @@ -378,17 +383,17 @@ public int getSerializedSize() {
           size += dataSize;
           size += 1 * getEnqueueOpNameList().size();
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(closeOpName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, closeOpName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(closeOpName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, closeOpName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(cancelOpName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, cancelOpName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(cancelOpName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(4, cancelOpName_);
         }
         {
           int dataSize = 0;
           for (int i = 0; i < queueClosedExceptionTypes_.size(); i++) {
             dataSize += com.google.protobuf.CodedOutputStream
    -          .computeEnumSizeNoTag(queueClosedExceptionTypes_.get(i));
    +          .computeEnumSizeNoTag(queueClosedExceptionTypes_.getInt(i));
           }
           size += dataSize;
           if (!getQueueClosedExceptionTypesList().isEmpty()) {  size += 1;
    @@ -484,39 +489,41 @@ public static org.tensorflow.proto.QueueRunnerDef parseFrom(
       }
       public static org.tensorflow.proto.QueueRunnerDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.QueueRunnerDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.QueueRunnerDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.QueueRunnerDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.QueueRunnerDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.QueueRunnerDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -536,7 +543,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -548,7 +555,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.QueueRunnerDef}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.QueueRunnerDef)
           org.tensorflow.proto.QueueRunnerDefOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -557,7 +564,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.QueueRunnerProtos.internal_static_tensorflow_QueueRunnerDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -570,23 +577,21 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           queueName_ = "";
    -
    -      enqueueOpName_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      enqueueOpName_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           closeOpName_ = "";
    -
           cancelOpName_ = "";
    -
    -      queueClosedExceptionTypes_ = java.util.Collections.emptyList();
    -      bitField0_ = (bitField0_ & ~0x00000002);
    +      queueClosedExceptionTypes_ = emptyIntList();
    +      bitField0_ = (bitField0_ & ~0x00000010);
           return this;
         }
     
    @@ -613,56 +618,37 @@ public org.tensorflow.proto.QueueRunnerDef build() {
         @java.lang.Override
         public org.tensorflow.proto.QueueRunnerDef buildPartial() {
           org.tensorflow.proto.QueueRunnerDef result = new org.tensorflow.proto.QueueRunnerDef(this);
    -      int from_bitField0_ = bitField0_;
    -      result.queueName_ = queueName_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        enqueueOpName_ = enqueueOpName_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.enqueueOpName_ = enqueueOpName_;
    -      result.closeOpName_ = closeOpName_;
    -      result.cancelOpName_ = cancelOpName_;
    -      if (((bitField0_ & 0x00000002) != 0)) {
    -        queueClosedExceptionTypes_ = java.util.Collections.unmodifiableList(queueClosedExceptionTypes_);
    -        bitField0_ = (bitField0_ & ~0x00000002);
    -      }
    -      result.queueClosedExceptionTypes_ = queueClosedExceptionTypes_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.QueueRunnerDef result) {
    +      if (((bitField0_ & 0x00000010) != 0)) {
    +        queueClosedExceptionTypes_.makeImmutable();
    +        bitField0_ = (bitField0_ & ~0x00000010);
    +      }
    +      result.queueClosedExceptionTypes_ = queueClosedExceptionTypes_;
         }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +
    +    private void buildPartial0(org.tensorflow.proto.QueueRunnerDef result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.queueName_ = queueName_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        enqueueOpName_.makeImmutable();
    +        result.enqueueOpName_ = enqueueOpName_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.closeOpName_ = closeOpName_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.cancelOpName_ = cancelOpName_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.QueueRunnerDef) {
    @@ -677,12 +663,13 @@ public Builder mergeFrom(org.tensorflow.proto.QueueRunnerDef other) {
           if (other == org.tensorflow.proto.QueueRunnerDef.getDefaultInstance()) return this;
           if (!other.getQueueName().isEmpty()) {
             queueName_ = other.queueName_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.enqueueOpName_.isEmpty()) {
             if (enqueueOpName_.isEmpty()) {
               enqueueOpName_ = other.enqueueOpName_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ |= 0x00000002;
             } else {
               ensureEnqueueOpNameIsMutable();
               enqueueOpName_.addAll(other.enqueueOpName_);
    @@ -691,16 +678,18 @@ public Builder mergeFrom(org.tensorflow.proto.QueueRunnerDef other) {
           }
           if (!other.getCloseOpName().isEmpty()) {
             closeOpName_ = other.closeOpName_;
    +        bitField0_ |= 0x00000004;
             onChanged();
           }
           if (!other.getCancelOpName().isEmpty()) {
             cancelOpName_ = other.cancelOpName_;
    +        bitField0_ |= 0x00000008;
             onChanged();
           }
           if (!other.queueClosedExceptionTypes_.isEmpty()) {
             if (queueClosedExceptionTypes_.isEmpty()) {
               queueClosedExceptionTypes_ = other.queueClosedExceptionTypes_;
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          bitField0_ = (bitField0_ & ~0x00000010);
             } else {
               ensureQueueClosedExceptionTypesIsMutable();
               queueClosedExceptionTypes_.addAll(other.queueClosedExceptionTypes_);
    @@ -735,7 +724,7 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   queueName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
    @@ -746,18 +735,18 @@ public Builder mergeFrom(
                 } // case 18
                 case 26: {
                   closeOpName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 case 34: {
                   cancelOpName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 34
                 case 40: {
                   int tmpRaw = input.readEnum();
                   ensureQueueClosedExceptionTypesIsMutable();
    -              queueClosedExceptionTypes_.add(tmpRaw);
    +              queueClosedExceptionTypes_.addInt(tmpRaw);
                   break;
                 } // case 40
                 case 42: {
    @@ -766,7 +755,7 @@ public Builder mergeFrom(
                   while(input.getBytesUntilLimit() > 0) {
                     int tmpRaw = input.readEnum();
                     ensureQueueClosedExceptionTypesIsMutable();
    -                queueClosedExceptionTypes_.add(tmpRaw);
    +                queueClosedExceptionTypes_.addInt(tmpRaw);
                   }
                   input.popLimit(oldLimit);
                   break;
    @@ -841,11 +830,9 @@ public java.lang.String getQueueName() {
          */
         public Builder setQueueName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           queueName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -858,8 +845,8 @@ public Builder setQueueName(
          * @return This builder for chaining.
          */
         public Builder clearQueueName() {
    -      
           queueName_ = getDefaultInstance().getQueueName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -874,22 +861,21 @@ public Builder clearQueueName() {
          */
         public Builder setQueueNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           queueName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.LazyStringList enqueueOpName_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList enqueueOpName_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureEnqueueOpNameIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!enqueueOpName_.isModifiable()) {
             enqueueOpName_ = new com.google.protobuf.LazyStringArrayList(enqueueOpName_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      }
    +      bitField0_ |= 0x00000002;
         }
         /**
          * 
    @@ -901,7 +887,8 @@ private void ensureEnqueueOpNameIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getEnqueueOpNameList() {
    -      return enqueueOpName_.getUnmodifiableView();
    +      enqueueOpName_.makeImmutable();
    +      return enqueueOpName_;
         }
         /**
          * 
    @@ -951,11 +938,10 @@ public java.lang.String getEnqueueOpName(int index) {
          */
         public Builder setEnqueueOpName(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureEnqueueOpNameIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureEnqueueOpNameIsMutable();
           enqueueOpName_.set(index, value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -970,11 +956,10 @@ public Builder setEnqueueOpName(
          */
         public Builder addEnqueueOpName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureEnqueueOpNameIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureEnqueueOpNameIsMutable();
           enqueueOpName_.add(value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -992,6 +977,7 @@ public Builder addAllEnqueueOpName(
           ensureEnqueueOpNameIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, enqueueOpName_);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1004,8 +990,9 @@ public Builder addAllEnqueueOpName(
          * @return This builder for chaining.
          */
         public Builder clearEnqueueOpName() {
    -      enqueueOpName_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      enqueueOpName_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000002);;
           onChanged();
           return this;
         }
    @@ -1020,12 +1007,11 @@ public Builder clearEnqueueOpName() {
          */
         public Builder addEnqueueOpNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureEnqueueOpNameIsMutable();
           enqueueOpName_.add(value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1083,11 +1069,9 @@ public java.lang.String getCloseOpName() {
          */
         public Builder setCloseOpName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           closeOpName_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1100,8 +1084,8 @@ public Builder setCloseOpName(
          * @return This builder for chaining.
          */
         public Builder clearCloseOpName() {
    -      
           closeOpName_ = getDefaultInstance().getCloseOpName();
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -1116,12 +1100,10 @@ public Builder clearCloseOpName() {
          */
         public Builder setCloseOpNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           closeOpName_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1179,11 +1161,9 @@ public java.lang.String getCancelOpName() {
          */
         public Builder setCancelOpName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           cancelOpName_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1196,8 +1176,8 @@ public Builder setCancelOpName(
          * @return This builder for chaining.
          */
         public Builder clearCancelOpName() {
    -      
           cancelOpName_ = getDefaultInstance().getCancelOpName();
    +      bitField0_ = (bitField0_ & ~0x00000008);
           onChanged();
           return this;
         }
    @@ -1212,22 +1192,20 @@ public Builder clearCancelOpName() {
          */
         public Builder setCancelOpNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           cancelOpName_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
     
    -    private java.util.List queueClosedExceptionTypes_ =
    -      java.util.Collections.emptyList();
    +    private com.google.protobuf.Internal.IntList queueClosedExceptionTypes_ =
    +      emptyIntList();
         private void ensureQueueClosedExceptionTypesIsMutable() {
    -      if (!((bitField0_ & 0x00000002) != 0)) {
    -        queueClosedExceptionTypes_ = new java.util.ArrayList(queueClosedExceptionTypes_);
    -        bitField0_ |= 0x00000002;
    +      if (!((bitField0_ & 0x00000010) != 0)) {
    +        queueClosedExceptionTypes_ = makeMutableCopy(queueClosedExceptionTypes_);
    +        bitField0_ |= 0x00000010;
           }
         }
         /**
    @@ -1240,8 +1218,8 @@ private void ensureQueueClosedExceptionTypesIsMutable() {
          * @return A list containing the queueClosedExceptionTypes.
          */
         public java.util.List getQueueClosedExceptionTypesList() {
    -      return new com.google.protobuf.Internal.ListAdapter<
    -          java.lang.Integer, org.tensorflow.proto.error.Code>(queueClosedExceptionTypes_, queueClosedExceptionTypes_converter_);
    +      return new com.google.protobuf.Internal.IntListAdapter<
    +          org.tensorflow.proto.error.Code>(queueClosedExceptionTypes_, queueClosedExceptionTypes_converter_);
         }
         /**
          * 
    @@ -1266,7 +1244,7 @@ public int getQueueClosedExceptionTypesCount() {
          * @return The queueClosedExceptionTypes at the given index.
          */
         public org.tensorflow.proto.error.Code getQueueClosedExceptionTypes(int index) {
    -      return queueClosedExceptionTypes_converter_.convert(queueClosedExceptionTypes_.get(index));
    +      return queueClosedExceptionTypes_converter_.convert(queueClosedExceptionTypes_.getInt(index));
         }
         /**
          * 
    @@ -1285,7 +1263,7 @@ public Builder setQueueClosedExceptionTypes(
             throw new NullPointerException();
           }
           ensureQueueClosedExceptionTypesIsMutable();
    -      queueClosedExceptionTypes_.set(index, value.getNumber());
    +      queueClosedExceptionTypes_.setInt(index, value.getNumber());
           onChanged();
           return this;
         }
    @@ -1304,7 +1282,7 @@ public Builder addQueueClosedExceptionTypes(org.tensorflow.proto.error.Code valu
             throw new NullPointerException();
           }
           ensureQueueClosedExceptionTypesIsMutable();
    -      queueClosedExceptionTypes_.add(value.getNumber());
    +      queueClosedExceptionTypes_.addInt(value.getNumber());
           onChanged();
           return this;
         }
    @@ -1322,7 +1300,7 @@ public Builder addAllQueueClosedExceptionTypes(
             java.lang.Iterable values) {
           ensureQueueClosedExceptionTypesIsMutable();
           for (org.tensorflow.proto.error.Code value : values) {
    -        queueClosedExceptionTypes_.add(value.getNumber());
    +        queueClosedExceptionTypes_.addInt(value.getNumber());
           }
           onChanged();
           return this;
    @@ -1337,8 +1315,8 @@ public Builder addAllQueueClosedExceptionTypes(
          * @return This builder for chaining.
          */
         public Builder clearQueueClosedExceptionTypes() {
    -      queueClosedExceptionTypes_ = java.util.Collections.emptyList();
    -      bitField0_ = (bitField0_ & ~0x00000002);
    +      queueClosedExceptionTypes_ = emptyIntList();
    +      bitField0_ = (bitField0_ & ~0x00000010);
           onChanged();
           return this;
         }
    @@ -1366,7 +1344,7 @@ public Builder clearQueueClosedExceptionTypes() {
          * @return The enum numeric value on the wire of queueClosedExceptionTypes at the given index.
          */
         public int getQueueClosedExceptionTypesValue(int index) {
    -      return queueClosedExceptionTypes_.get(index);
    +      return queueClosedExceptionTypes_.getInt(index);
         }
         /**
          * 
    @@ -1382,7 +1360,7 @@ public int getQueueClosedExceptionTypesValue(int index) {
         public Builder setQueueClosedExceptionTypesValue(
             int index, int value) {
           ensureQueueClosedExceptionTypesIsMutable();
    -      queueClosedExceptionTypes_.set(index, value);
    +      queueClosedExceptionTypes_.setInt(index, value);
           onChanged();
           return this;
         }
    @@ -1398,7 +1376,7 @@ public Builder setQueueClosedExceptionTypesValue(
          */
         public Builder addQueueClosedExceptionTypesValue(int value) {
           ensureQueueClosedExceptionTypesIsMutable();
    -      queueClosedExceptionTypes_.add(value);
    +      queueClosedExceptionTypes_.addInt(value);
           onChanged();
           return this;
         }
    @@ -1416,23 +1394,11 @@ public Builder addAllQueueClosedExceptionTypesValue(
             java.lang.Iterable values) {
           ensureQueueClosedExceptionTypesIsMutable();
           for (int value : values) {
    -        queueClosedExceptionTypes_.add(value);
    +        queueClosedExceptionTypes_.addInt(value);
           }
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.QueueRunnerDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/QueueRunnerDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/QueueRunnerDefOrBuilder.java
    index 1afd741d0db..c4f232bf15d 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/QueueRunnerDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/QueueRunnerDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/queue_runner.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/QueueRunnerProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/QueueRunnerProtos.java
    index d1c6c42b5a5..23c75114991 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/QueueRunnerProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/QueueRunnerProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/queue_runner.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class QueueRunnerProtos {
       private QueueRunnerProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      QueueRunnerProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,7 +28,7 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_QueueRunnerDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_QueueRunnerDef_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -48,9 +59,10 @@ public static void registerAllExtensions(
         internal_static_tensorflow_QueueRunnerDef_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_QueueRunnerDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_QueueRunnerDef_descriptor,
             new java.lang.String[] { "QueueName", "EnqueueOpName", "CloseOpName", "CancelOpName", "QueueClosedExceptionTypes", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.error.dummy.ErrorCodes.getDescriptor();
       }
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ReaderBaseProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ReaderBaseProtos.java
    index 8031e3d4f4a..07c85d130a3 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ReaderBaseProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ReaderBaseProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/reader_base.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class ReaderBaseProtos {
       private ReaderBaseProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ReaderBaseProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,7 +28,7 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_ReaderBaseState_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_ReaderBaseState_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -44,9 +55,10 @@ public static void registerAllExtensions(
         internal_static_tensorflow_ReaderBaseState_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_ReaderBaseState_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_ReaderBaseState_descriptor,
             new java.lang.String[] { "WorkStarted", "WorkFinished", "NumRecordsProduced", "CurrentWork", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ReaderBaseState.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ReaderBaseState.java
    index 8e51b2c76a2..4e619b9297c 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ReaderBaseState.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ReaderBaseState.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/reader_base.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -12,37 +14,34 @@
      * Protobuf type {@code tensorflow.ReaderBaseState}
      */
     public final class ReaderBaseState extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.ReaderBaseState)
         ReaderBaseStateOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ReaderBaseState.class.getName());
    +  }
       // Use ReaderBaseState.newBuilder() to construct.
    -  private ReaderBaseState(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private ReaderBaseState(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private ReaderBaseState() {
         currentWork_ = com.google.protobuf.ByteString.EMPTY;
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new ReaderBaseState();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ReaderBaseProtos.internal_static_tensorflow_ReaderBaseState_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ReaderBaseProtos.internal_static_tensorflow_ReaderBaseState_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -50,7 +49,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int WORK_STARTED_FIELD_NUMBER = 1;
    -  private long workStarted_;
    +  private long workStarted_ = 0L;
       /**
        * int64 work_started = 1;
        * @return The workStarted.
    @@ -61,7 +60,7 @@ public long getWorkStarted() {
       }
     
       public static final int WORK_FINISHED_FIELD_NUMBER = 2;
    -  private long workFinished_;
    +  private long workFinished_ = 0L;
       /**
        * int64 work_finished = 2;
        * @return The workFinished.
    @@ -72,7 +71,7 @@ public long getWorkFinished() {
       }
     
       public static final int NUM_RECORDS_PRODUCED_FIELD_NUMBER = 3;
    -  private long numRecordsProduced_;
    +  private long numRecordsProduced_ = 0L;
       /**
        * int64 num_records_produced = 3;
        * @return The numRecordsProduced.
    @@ -83,7 +82,7 @@ public long getNumRecordsProduced() {
       }
     
       public static final int CURRENT_WORK_FIELD_NUMBER = 4;
    -  private com.google.protobuf.ByteString currentWork_;
    +  private com.google.protobuf.ByteString currentWork_ = com.google.protobuf.ByteString.EMPTY;
       /**
        * bytes current_work = 4;
        * @return The currentWork.
    @@ -228,39 +227,41 @@ public static org.tensorflow.proto.ReaderBaseState parseFrom(
       }
       public static org.tensorflow.proto.ReaderBaseState parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ReaderBaseState parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.ReaderBaseState parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.ReaderBaseState parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.ReaderBaseState parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ReaderBaseState parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -280,7 +281,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -293,7 +294,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.ReaderBaseState}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.ReaderBaseState)
           org.tensorflow.proto.ReaderBaseStateOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -302,7 +303,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ReaderBaseProtos.internal_static_tensorflow_ReaderBaseState_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -315,21 +316,18 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           workStarted_ = 0L;
    -
           workFinished_ = 0L;
    -
           numRecordsProduced_ = 0L;
    -
           currentWork_ = com.google.protobuf.ByteString.EMPTY;
    -
           return this;
         }
     
    @@ -356,46 +354,27 @@ public org.tensorflow.proto.ReaderBaseState build() {
         @java.lang.Override
         public org.tensorflow.proto.ReaderBaseState buildPartial() {
           org.tensorflow.proto.ReaderBaseState result = new org.tensorflow.proto.ReaderBaseState(this);
    -      result.workStarted_ = workStarted_;
    -      result.workFinished_ = workFinished_;
    -      result.numRecordsProduced_ = numRecordsProduced_;
    -      result.currentWork_ = currentWork_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.ReaderBaseState result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.workStarted_ = workStarted_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.workFinished_ = workFinished_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.numRecordsProduced_ = numRecordsProduced_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.currentWork_ = currentWork_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.ReaderBaseState) {
    @@ -448,22 +427,22 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   workStarted_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 16: {
                   workFinished_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 case 24: {
                   numRecordsProduced_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 24
                 case 34: {
                   currentWork_ = input.readBytes();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 34
                 default: {
    @@ -481,6 +460,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private long workStarted_ ;
         /**
    @@ -497,8 +477,9 @@ public long getWorkStarted() {
          * @return This builder for chaining.
          */
         public Builder setWorkStarted(long value) {
    -      
    +
           workStarted_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -507,7 +488,7 @@ public Builder setWorkStarted(long value) {
          * @return This builder for chaining.
          */
         public Builder clearWorkStarted() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           workStarted_ = 0L;
           onChanged();
           return this;
    @@ -528,8 +509,9 @@ public long getWorkFinished() {
          * @return This builder for chaining.
          */
         public Builder setWorkFinished(long value) {
    -      
    +
           workFinished_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -538,7 +520,7 @@ public Builder setWorkFinished(long value) {
          * @return This builder for chaining.
          */
         public Builder clearWorkFinished() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           workFinished_ = 0L;
           onChanged();
           return this;
    @@ -559,8 +541,9 @@ public long getNumRecordsProduced() {
          * @return This builder for chaining.
          */
         public Builder setNumRecordsProduced(long value) {
    -      
    +
           numRecordsProduced_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -569,7 +552,7 @@ public Builder setNumRecordsProduced(long value) {
          * @return This builder for chaining.
          */
         public Builder clearNumRecordsProduced() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           numRecordsProduced_ = 0L;
           onChanged();
           return this;
    @@ -590,11 +573,9 @@ public com.google.protobuf.ByteString getCurrentWork() {
          * @return This builder for chaining.
          */
         public Builder setCurrentWork(com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           currentWork_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -603,23 +584,11 @@ public Builder setCurrentWork(com.google.protobuf.ByteString value) {
          * @return This builder for chaining.
          */
         public Builder clearCurrentWork() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           currentWork_ = getDefaultInstance().getCurrentWork();
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.ReaderBaseState)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ReaderBaseStateOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ReaderBaseStateOrBuilder.java
    index 7d5fb6a46a0..e6b3261fb44 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ReaderBaseStateOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ReaderBaseStateOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/reader_base.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RegisteredGradient.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RegisteredGradient.java
    index 7bac26b1cf9..9131e5c26b6 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RegisteredGradient.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RegisteredGradient.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/function.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -14,12 +16,21 @@
      * Protobuf type {@code tensorflow.RegisteredGradient}
      */
     public final class RegisteredGradient extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.RegisteredGradient)
         RegisteredGradientOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      RegisteredGradient.class.getName());
    +  }
       // Use RegisteredGradient.newBuilder() to construct.
    -  private RegisteredGradient(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private RegisteredGradient(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private RegisteredGradient() {
    @@ -27,25 +38,13 @@ private RegisteredGradient() {
         registeredOpType_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new RegisteredGradient();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.FunctionProtos.internal_static_tensorflow_RegisteredGradient_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.FunctionProtos.internal_static_tensorflow_RegisteredGradient_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -53,7 +52,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int GRADIENT_FUNC_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object gradientFunc_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object gradientFunc_ = "";
       /**
        * 
        * The gradient function's name.
    @@ -99,7 +99,8 @@ public java.lang.String getGradientFunc() {
       }
     
       public static final int REGISTERED_OP_TYPE_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object registeredOpType_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object registeredOpType_ = "";
       /**
        * 
        * The gradient function's registered op type.
    @@ -158,11 +159,11 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(gradientFunc_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, gradientFunc_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(gradientFunc_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, gradientFunc_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(registeredOpType_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, registeredOpType_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(registeredOpType_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, registeredOpType_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -173,11 +174,11 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(gradientFunc_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, gradientFunc_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(gradientFunc_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, gradientFunc_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(registeredOpType_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, registeredOpType_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(registeredOpType_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, registeredOpType_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -252,39 +253,41 @@ public static org.tensorflow.proto.RegisteredGradient parseFrom(
       }
       public static org.tensorflow.proto.RegisteredGradient parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.RegisteredGradient parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.RegisteredGradient parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.RegisteredGradient parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.RegisteredGradient parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.RegisteredGradient parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -304,7 +307,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -319,7 +322,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.RegisteredGradient}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.RegisteredGradient)
           org.tensorflow.proto.RegisteredGradientOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -328,7 +331,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.FunctionProtos.internal_static_tensorflow_RegisteredGradient_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -341,17 +344,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           gradientFunc_ = "";
    -
           registeredOpType_ = "";
    -
           return this;
         }
     
    @@ -378,44 +380,21 @@ public org.tensorflow.proto.RegisteredGradient build() {
         @java.lang.Override
         public org.tensorflow.proto.RegisteredGradient buildPartial() {
           org.tensorflow.proto.RegisteredGradient result = new org.tensorflow.proto.RegisteredGradient(this);
    -      result.gradientFunc_ = gradientFunc_;
    -      result.registeredOpType_ = registeredOpType_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.RegisteredGradient result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.gradientFunc_ = gradientFunc_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.registeredOpType_ = registeredOpType_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.RegisteredGradient) {
    @@ -430,10 +409,12 @@ public Builder mergeFrom(org.tensorflow.proto.RegisteredGradient other) {
           if (other == org.tensorflow.proto.RegisteredGradient.getDefaultInstance()) return this;
           if (!other.getGradientFunc().isEmpty()) {
             gradientFunc_ = other.gradientFunc_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getRegisteredOpType().isEmpty()) {
             registeredOpType_ = other.registeredOpType_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -464,12 +445,12 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   gradientFunc_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   registeredOpType_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 default: {
    @@ -487,6 +468,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object gradientFunc_ = "";
         /**
    @@ -541,11 +523,9 @@ public java.lang.String getGradientFunc() {
          */
         public Builder setGradientFunc(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           gradientFunc_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -558,8 +538,8 @@ public Builder setGradientFunc(
          * @return This builder for chaining.
          */
         public Builder clearGradientFunc() {
    -      
           gradientFunc_ = getDefaultInstance().getGradientFunc();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -574,12 +554,10 @@ public Builder clearGradientFunc() {
          */
         public Builder setGradientFuncBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           gradientFunc_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -637,11 +615,9 @@ public java.lang.String getRegisteredOpType() {
          */
         public Builder setRegisteredOpType(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           registeredOpType_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -654,8 +630,8 @@ public Builder setRegisteredOpType(
          * @return This builder for chaining.
          */
         public Builder clearRegisteredOpType() {
    -      
           registeredOpType_ = getDefaultInstance().getRegisteredOpType();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -670,27 +646,13 @@ public Builder clearRegisteredOpType() {
          */
         public Builder setRegisteredOpTypeBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           registeredOpType_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.RegisteredGradient)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RegisteredGradientOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RegisteredGradientOrBuilder.java
    index 92ab6fd58d6..4ea34c7f055 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RegisteredGradientOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RegisteredGradientOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/function.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RequestedExitCode.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RequestedExitCode.java
    index a1d9e4a9e40..f092bc9bf5a 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RequestedExitCode.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RequestedExitCode.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,36 +9,33 @@
      * Protobuf type {@code tensorflow.RequestedExitCode}
      */
     public final class RequestedExitCode extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.RequestedExitCode)
         RequestedExitCodeOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      RequestedExitCode.class.getName());
    +  }
       // Use RequestedExitCode.newBuilder() to construct.
    -  private RequestedExitCode(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private RequestedExitCode(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private RequestedExitCode() {
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new RequestedExitCode();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.EventProtos.internal_static_tensorflow_RequestedExitCode_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.EventProtos.internal_static_tensorflow_RequestedExitCode_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -44,7 +43,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int EXIT_CODE_FIELD_NUMBER = 1;
    -  private int exitCode_;
    +  private int exitCode_ = 0;
       /**
        * int32 exit_code = 1;
        * @return The exitCode.
    @@ -153,39 +152,41 @@ public static org.tensorflow.proto.RequestedExitCode parseFrom(
       }
       public static org.tensorflow.proto.RequestedExitCode parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.RequestedExitCode parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.RequestedExitCode parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.RequestedExitCode parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.RequestedExitCode parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.RequestedExitCode parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -205,7 +206,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -213,7 +214,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.RequestedExitCode}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.RequestedExitCode)
           org.tensorflow.proto.RequestedExitCodeOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -222,7 +223,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.EventProtos.internal_static_tensorflow_RequestedExitCode_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -235,15 +236,15 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           exitCode_ = 0;
    -
           return this;
         }
     
    @@ -270,43 +271,18 @@ public org.tensorflow.proto.RequestedExitCode build() {
         @java.lang.Override
         public org.tensorflow.proto.RequestedExitCode buildPartial() {
           org.tensorflow.proto.RequestedExitCode result = new org.tensorflow.proto.RequestedExitCode(this);
    -      result.exitCode_ = exitCode_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.RequestedExitCode result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.exitCode_ = exitCode_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.RequestedExitCode) {
    @@ -350,7 +326,7 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   exitCode_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 default: {
    @@ -368,6 +344,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private int exitCode_ ;
         /**
    @@ -384,8 +361,9 @@ public int getExitCode() {
          * @return This builder for chaining.
          */
         public Builder setExitCode(int value) {
    -      
    +
           exitCode_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -394,23 +372,11 @@ public Builder setExitCode(int value) {
          * @return This builder for chaining.
          */
         public Builder clearExitCode() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           exitCode_ = 0;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.RequestedExitCode)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RequestedExitCodeOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RequestedExitCodeOrBuilder.java
    index ae696b16d27..787bd99ff65 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RequestedExitCodeOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RequestedExitCodeOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ResourceHandle.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ResourceHandle.java
    index cda40fc6fe0..e9469d731c9 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ResourceHandle.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ResourceHandle.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/resource_handle.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class ResourceHandle {
       private ResourceHandle() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ResourceHandle.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,12 +28,12 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_ResourceHandleProto_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_ResourceHandleProto_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_ResourceHandleProto_DtypeAndShape_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_ResourceHandleProto_DtypeAndShape_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -58,15 +69,16 @@ public static void registerAllExtensions(
         internal_static_tensorflow_ResourceHandleProto_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_ResourceHandleProto_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_ResourceHandleProto_descriptor,
             new java.lang.String[] { "Device", "Container", "Name", "HashCode", "MaybeTypeName", "DtypesAndShapes", });
         internal_static_tensorflow_ResourceHandleProto_DtypeAndShape_descriptor =
           internal_static_tensorflow_ResourceHandleProto_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_ResourceHandleProto_DtypeAndShape_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_ResourceHandleProto_DtypeAndShape_descriptor,
             new java.lang.String[] { "Dtype", "Shape", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.TensorShapeProtos.getDescriptor();
         org.tensorflow.proto.TypesProtos.getDescriptor();
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ResourceHandleProto.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ResourceHandleProto.java
    index 159c9574b47..db1b56da824 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ResourceHandleProto.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ResourceHandleProto.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/resource_handle.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -13,12 +15,21 @@
      * Protobuf type {@code tensorflow.ResourceHandleProto}
      */
     public final class ResourceHandleProto extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.ResourceHandleProto)
         ResourceHandleProtoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ResourceHandleProto.class.getName());
    +  }
       // Use ResourceHandleProto.newBuilder() to construct.
    -  private ResourceHandleProto(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private ResourceHandleProto(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private ResourceHandleProto() {
    @@ -29,25 +40,13 @@ private ResourceHandleProto() {
         dtypesAndShapes_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new ResourceHandleProto();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ResourceHandle.internal_static_tensorflow_ResourceHandleProto_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ResourceHandle.internal_static_tensorflow_ResourceHandleProto_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -59,27 +58,47 @@ public interface DtypeAndShapeOrBuilder extends
           com.google.protobuf.MessageOrBuilder {
     
         /**
    +     * 
    +     * Data type of the tensor.
    +     * 
    + * * .tensorflow.DataType dtype = 1; * @return The enum numeric value on the wire for dtype. */ int getDtypeValue(); /** + *
    +     * Data type of the tensor.
    +     * 
    + * * .tensorflow.DataType dtype = 1; * @return The dtype. */ org.tensorflow.proto.DataType getDtype(); /** + *
    +     * Shape of the tensor.
    +     * 
    + * * .tensorflow.TensorShapeProto shape = 2; * @return Whether the shape field is set. */ boolean hasShape(); /** + *
    +     * Shape of the tensor.
    +     * 
    + * * .tensorflow.TensorShapeProto shape = 2; * @return The shape. */ org.tensorflow.proto.TensorShapeProto getShape(); /** + *
    +     * Shape of the tensor.
    +     * 
    + * * .tensorflow.TensorShapeProto shape = 2; */ org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder(); @@ -92,46 +111,48 @@ public interface DtypeAndShapeOrBuilder extends * Protobuf type {@code tensorflow.ResourceHandleProto.DtypeAndShape} */ public static final class DtypeAndShape extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.ResourceHandleProto.DtypeAndShape) DtypeAndShapeOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + DtypeAndShape.class.getName()); + } // Use DtypeAndShape.newBuilder() to construct. - private DtypeAndShape(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private DtypeAndShape(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private DtypeAndShape() { dtype_ = 0; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new DtypeAndShape(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.ResourceHandle.internal_static_tensorflow_ResourceHandleProto_DtypeAndShape_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ResourceHandle.internal_static_tensorflow_ResourceHandleProto_DtypeAndShape_fieldAccessorTable .ensureFieldAccessorsInitialized( org.tensorflow.proto.ResourceHandleProto.DtypeAndShape.class, org.tensorflow.proto.ResourceHandleProto.DtypeAndShape.Builder.class); } + private int bitField0_; public static final int DTYPE_FIELD_NUMBER = 1; - private int dtype_; + private int dtype_ = 0; /** + *
    +     * Data type of the tensor.
    +     * 
    + * * .tensorflow.DataType dtype = 1; * @return The enum numeric value on the wire for dtype. */ @@ -139,26 +160,37 @@ protected java.lang.Object newInstance( return dtype_; } /** + *
    +     * Data type of the tensor.
    +     * 
    + * * .tensorflow.DataType dtype = 1; * @return The dtype. */ @java.lang.Override public org.tensorflow.proto.DataType getDtype() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_); + org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_); return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result; } public static final int SHAPE_FIELD_NUMBER = 2; private org.tensorflow.proto.TensorShapeProto shape_; /** + *
    +     * Shape of the tensor.
    +     * 
    + * * .tensorflow.TensorShapeProto shape = 2; * @return Whether the shape field is set. */ @java.lang.Override public boolean hasShape() { - return shape_ != null; + return ((bitField0_ & 0x00000001) != 0); } /** + *
    +     * Shape of the tensor.
    +     * 
    + * * .tensorflow.TensorShapeProto shape = 2; * @return The shape. */ @@ -167,11 +199,15 @@ public org.tensorflow.proto.TensorShapeProto getShape() { return shape_ == null ? org.tensorflow.proto.TensorShapeProto.getDefaultInstance() : shape_; } /** + *
    +     * Shape of the tensor.
    +     * 
    + * * .tensorflow.TensorShapeProto shape = 2; */ @java.lang.Override public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() { - return getShape(); + return shape_ == null ? org.tensorflow.proto.TensorShapeProto.getDefaultInstance() : shape_; } private byte memoizedIsInitialized = -1; @@ -191,7 +227,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (dtype_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) { output.writeEnum(1, dtype_); } - if (shape_ != null) { + if (((bitField0_ & 0x00000001) != 0)) { output.writeMessage(2, getShape()); } getUnknownFields().writeTo(output); @@ -207,7 +243,7 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeEnumSize(1, dtype_); } - if (shape_ != null) { + if (((bitField0_ & 0x00000001) != 0)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(2, getShape()); } @@ -288,39 +324,41 @@ public static org.tensorflow.proto.ResourceHandleProto.DtypeAndShape parseFrom( } public static org.tensorflow.proto.ResourceHandleProto.DtypeAndShape parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.ResourceHandleProto.DtypeAndShape parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.ResourceHandleProto.DtypeAndShape parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.ResourceHandleProto.DtypeAndShape parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.ResourceHandleProto.DtypeAndShape parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.ResourceHandleProto.DtypeAndShape parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -340,7 +378,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -352,7 +390,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.ResourceHandleProto.DtypeAndShape} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.ResourceHandleProto.DtypeAndShape) org.tensorflow.proto.ResourceHandleProto.DtypeAndShapeOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -361,7 +399,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ResourceHandle.internal_static_tensorflow_ResourceHandleProto_DtypeAndShape_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -370,23 +408,28 @@ public static final class Builder extends // Construct using org.tensorflow.proto.ResourceHandleProto.DtypeAndShape.newBuilder() private Builder() { - + maybeForceBuilderInitialization(); } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); - + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage + .alwaysUseFieldBuilders) { + getShapeFieldBuilder(); + } } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; dtype_ = 0; - - if (shapeBuilder_ == null) { - shape_ = null; - } else { - shape_ = null; + shape_ = null; + if (shapeBuilder_ != null) { + shapeBuilder_.dispose(); shapeBuilder_ = null; } return this; @@ -415,48 +458,26 @@ public org.tensorflow.proto.ResourceHandleProto.DtypeAndShape build() { @java.lang.Override public org.tensorflow.proto.ResourceHandleProto.DtypeAndShape buildPartial() { org.tensorflow.proto.ResourceHandleProto.DtypeAndShape result = new org.tensorflow.proto.ResourceHandleProto.DtypeAndShape(this); - result.dtype_ = dtype_; - if (shapeBuilder_ == null) { - result.shape_ = shape_; - } else { - result.shape_ = shapeBuilder_.build(); - } + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.ResourceHandleProto.DtypeAndShape result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.dtype_ = dtype_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.shape_ = shapeBuilder_ == null + ? shape_ + : shapeBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.ResourceHandleProto.DtypeAndShape) { @@ -503,14 +524,14 @@ public Builder mergeFrom( break; case 8: { dtype_ = input.readEnum(); - + bitField0_ |= 0x00000001; break; } // case 8 case 18: { input.readMessage( getShapeFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000002; break; } // case 18 default: { @@ -528,9 +549,14 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private int dtype_ = 0; /** + *
    +       * Data type of the tensor.
    +       * 
    + * * .tensorflow.DataType dtype = 1; * @return The enum numeric value on the wire for dtype. */ @@ -538,27 +564,38 @@ public Builder mergeFrom( return dtype_; } /** + *
    +       * Data type of the tensor.
    +       * 
    + * * .tensorflow.DataType dtype = 1; * @param value The enum numeric value on the wire for dtype to set. * @return This builder for chaining. */ public Builder setDtypeValue(int value) { - dtype_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } /** + *
    +       * Data type of the tensor.
    +       * 
    + * * .tensorflow.DataType dtype = 1; * @return The dtype. */ @java.lang.Override public org.tensorflow.proto.DataType getDtype() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_); + org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_); return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result; } /** + *
    +       * Data type of the tensor.
    +       * 
    + * * .tensorflow.DataType dtype = 1; * @param value The dtype to set. * @return This builder for chaining. @@ -567,33 +604,45 @@ public Builder setDtype(org.tensorflow.proto.DataType value) { if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00000001; dtype_ = value.getNumber(); onChanged(); return this; } /** + *
    +       * Data type of the tensor.
    +       * 
    + * * .tensorflow.DataType dtype = 1; * @return This builder for chaining. */ public Builder clearDtype() { - + bitField0_ = (bitField0_ & ~0x00000001); dtype_ = 0; onChanged(); return this; } private org.tensorflow.proto.TensorShapeProto shape_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> shapeBuilder_; /** + *
    +       * Shape of the tensor.
    +       * 
    + * * .tensorflow.TensorShapeProto shape = 2; * @return Whether the shape field is set. */ public boolean hasShape() { - return shapeBuilder_ != null || shape_ != null; + return ((bitField0_ & 0x00000002) != 0); } /** + *
    +       * Shape of the tensor.
    +       * 
    + * * .tensorflow.TensorShapeProto shape = 2; * @return The shape. */ @@ -605,6 +654,10 @@ public org.tensorflow.proto.TensorShapeProto getShape() { } } /** + *
    +       * Shape of the tensor.
    +       * 
    + * * .tensorflow.TensorShapeProto shape = 2; */ public Builder setShape(org.tensorflow.proto.TensorShapeProto value) { @@ -613,68 +666,90 @@ public Builder setShape(org.tensorflow.proto.TensorShapeProto value) { throw new NullPointerException(); } shape_ = value; - onChanged(); } else { shapeBuilder_.setMessage(value); } - + bitField0_ |= 0x00000002; + onChanged(); return this; } /** + *
    +       * Shape of the tensor.
    +       * 
    + * * .tensorflow.TensorShapeProto shape = 2; */ public Builder setShape( org.tensorflow.proto.TensorShapeProto.Builder builderForValue) { if (shapeBuilder_ == null) { shape_ = builderForValue.build(); - onChanged(); } else { shapeBuilder_.setMessage(builderForValue.build()); } - + bitField0_ |= 0x00000002; + onChanged(); return this; } /** + *
    +       * Shape of the tensor.
    +       * 
    + * * .tensorflow.TensorShapeProto shape = 2; */ public Builder mergeShape(org.tensorflow.proto.TensorShapeProto value) { if (shapeBuilder_ == null) { - if (shape_ != null) { - shape_ = - org.tensorflow.proto.TensorShapeProto.newBuilder(shape_).mergeFrom(value).buildPartial(); + if (((bitField0_ & 0x00000002) != 0) && + shape_ != null && + shape_ != org.tensorflow.proto.TensorShapeProto.getDefaultInstance()) { + getShapeBuilder().mergeFrom(value); } else { shape_ = value; } - onChanged(); } else { shapeBuilder_.mergeFrom(value); } - + if (shape_ != null) { + bitField0_ |= 0x00000002; + onChanged(); + } return this; } /** + *
    +       * Shape of the tensor.
    +       * 
    + * * .tensorflow.TensorShapeProto shape = 2; */ public Builder clearShape() { - if (shapeBuilder_ == null) { - shape_ = null; - onChanged(); - } else { - shape_ = null; + bitField0_ = (bitField0_ & ~0x00000002); + shape_ = null; + if (shapeBuilder_ != null) { + shapeBuilder_.dispose(); shapeBuilder_ = null; } - + onChanged(); return this; } /** + *
    +       * Shape of the tensor.
    +       * 
    + * * .tensorflow.TensorShapeProto shape = 2; */ public org.tensorflow.proto.TensorShapeProto.Builder getShapeBuilder() { - + bitField0_ |= 0x00000002; onChanged(); return getShapeFieldBuilder().getBuilder(); } /** + *
    +       * Shape of the tensor.
    +       * 
    + * * .tensorflow.TensorShapeProto shape = 2; */ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() { @@ -686,13 +761,17 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() { } } /** + *
    +       * Shape of the tensor.
    +       * 
    + * * .tensorflow.TensorShapeProto shape = 2; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> getShapeFieldBuilder() { if (shapeBuilder_ == null) { - shapeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + shapeBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>( getShape(), getParentForChildren(), @@ -701,18 +780,6 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() { } return shapeBuilder_; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.ResourceHandleProto.DtypeAndShape) } @@ -766,7 +833,8 @@ public org.tensorflow.proto.ResourceHandleProto.DtypeAndShape getDefaultInstance } public static final int DEVICE_FIELD_NUMBER = 1; - private volatile java.lang.Object device_; + @SuppressWarnings("serial") + private volatile java.lang.Object device_ = ""; /** *
        * Unique name for the device containing the resource.
    @@ -812,7 +880,8 @@ public java.lang.String getDevice() {
       }
     
       public static final int CONTAINER_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object container_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object container_ = "";
       /**
        * 
        * Container in which this resource is placed.
    @@ -858,7 +927,8 @@ public java.lang.String getContainer() {
       }
     
       public static final int NAME_FIELD_NUMBER = 3;
    -  private volatile java.lang.Object name_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object name_ = "";
       /**
        * 
        * Unique name of this resource.
    @@ -904,7 +974,7 @@ public java.lang.String getName() {
       }
     
       public static final int HASH_CODE_FIELD_NUMBER = 4;
    -  private long hashCode_;
    +  private long hashCode_ = 0L;
       /**
        * 
        * Hash code for the type of the resource. Is only valid in the same device
    @@ -920,7 +990,8 @@ public long getHashCode() {
       }
     
       public static final int MAYBE_TYPE_NAME_FIELD_NUMBER = 5;
    -  private volatile java.lang.Object maybeTypeName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object maybeTypeName_ = "";
       /**
        * 
        * For debug-only, the name of the type pointed to by this handle, if
    @@ -968,6 +1039,7 @@ public java.lang.String getMaybeTypeName() {
       }
     
       public static final int DTYPES_AND_SHAPES_FIELD_NUMBER = 6;
    +  @SuppressWarnings("serial")
       private java.util.List dtypesAndShapes_;
       /**
        * 
    @@ -1041,20 +1113,20 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(device_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, device_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(device_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, device_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(container_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, container_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(container_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, container_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, name_);
         }
         if (hashCode_ != 0L) {
           output.writeUInt64(4, hashCode_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(maybeTypeName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 5, maybeTypeName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(maybeTypeName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 5, maybeTypeName_);
         }
         for (int i = 0; i < dtypesAndShapes_.size(); i++) {
           output.writeMessage(6, dtypesAndShapes_.get(i));
    @@ -1068,21 +1140,21 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(device_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, device_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(device_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, device_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(container_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, container_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(container_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, container_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, name_);
         }
         if (hashCode_ != 0L) {
           size += com.google.protobuf.CodedOutputStream
             .computeUInt64Size(4, hashCode_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(maybeTypeName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, maybeTypeName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(maybeTypeName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(5, maybeTypeName_);
         }
         for (int i = 0; i < dtypesAndShapes_.size(); i++) {
           size += com.google.protobuf.CodedOutputStream
    @@ -1180,39 +1252,41 @@ public static org.tensorflow.proto.ResourceHandleProto parseFrom(
       }
       public static org.tensorflow.proto.ResourceHandleProto parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ResourceHandleProto parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.ResourceHandleProto parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.ResourceHandleProto parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.ResourceHandleProto parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ResourceHandleProto parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -1232,7 +1306,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -1246,7 +1320,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.ResourceHandleProto}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.ResourceHandleProto)
           org.tensorflow.proto.ResourceHandleProtoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1255,7 +1329,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ResourceHandle.internal_static_tensorflow_ResourceHandleProto_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -1268,30 +1342,26 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           device_ = "";
    -
           container_ = "";
    -
           name_ = "";
    -
           hashCode_ = 0L;
    -
           maybeTypeName_ = "";
    -
           if (dtypesAndShapesBuilder_ == null) {
             dtypesAndShapes_ = java.util.Collections.emptyList();
           } else {
             dtypesAndShapes_ = null;
             dtypesAndShapesBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000020);
           return this;
         }
     
    @@ -1318,57 +1388,43 @@ public org.tensorflow.proto.ResourceHandleProto build() {
         @java.lang.Override
         public org.tensorflow.proto.ResourceHandleProto buildPartial() {
           org.tensorflow.proto.ResourceHandleProto result = new org.tensorflow.proto.ResourceHandleProto(this);
    -      int from_bitField0_ = bitField0_;
    -      result.device_ = device_;
    -      result.container_ = container_;
    -      result.name_ = name_;
    -      result.hashCode_ = hashCode_;
    -      result.maybeTypeName_ = maybeTypeName_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.ResourceHandleProto result) {
           if (dtypesAndShapesBuilder_ == null) {
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((bitField0_ & 0x00000020) != 0)) {
               dtypesAndShapes_ = java.util.Collections.unmodifiableList(dtypesAndShapes_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000020);
             }
             result.dtypesAndShapes_ = dtypesAndShapes_;
           } else {
             result.dtypesAndShapes_ = dtypesAndShapesBuilder_.build();
           }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.ResourceHandleProto result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.device_ = device_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.container_ = container_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.name_ = name_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.hashCode_ = hashCode_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.maybeTypeName_ = maybeTypeName_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.ResourceHandleProto) {
    @@ -1383,14 +1439,17 @@ public Builder mergeFrom(org.tensorflow.proto.ResourceHandleProto other) {
           if (other == org.tensorflow.proto.ResourceHandleProto.getDefaultInstance()) return this;
           if (!other.getDevice().isEmpty()) {
             device_ = other.device_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getContainer().isEmpty()) {
             container_ = other.container_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (!other.getName().isEmpty()) {
             name_ = other.name_;
    +        bitField0_ |= 0x00000004;
             onChanged();
           }
           if (other.getHashCode() != 0L) {
    @@ -1398,13 +1457,14 @@ public Builder mergeFrom(org.tensorflow.proto.ResourceHandleProto other) {
           }
           if (!other.getMaybeTypeName().isEmpty()) {
             maybeTypeName_ = other.maybeTypeName_;
    +        bitField0_ |= 0x00000010;
             onChanged();
           }
           if (dtypesAndShapesBuilder_ == null) {
             if (!other.dtypesAndShapes_.isEmpty()) {
               if (dtypesAndShapes_.isEmpty()) {
                 dtypesAndShapes_ = other.dtypesAndShapes_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000020);
               } else {
                 ensureDtypesAndShapesIsMutable();
                 dtypesAndShapes_.addAll(other.dtypesAndShapes_);
    @@ -1417,9 +1477,9 @@ public Builder mergeFrom(org.tensorflow.proto.ResourceHandleProto other) {
                 dtypesAndShapesBuilder_.dispose();
                 dtypesAndShapesBuilder_ = null;
                 dtypesAndShapes_ = other.dtypesAndShapes_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000020);
                 dtypesAndShapesBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getDtypesAndShapesFieldBuilder() : null;
               } else {
                 dtypesAndShapesBuilder_.addAllMessages(other.dtypesAndShapes_);
    @@ -1454,27 +1514,27 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   device_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   container_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
                   name_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 case 32: {
                   hashCode_ = input.readUInt64();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 32
                 case 42: {
                   maybeTypeName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 42
                 case 50: {
    @@ -1560,11 +1620,9 @@ public java.lang.String getDevice() {
          */
         public Builder setDevice(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           device_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1577,8 +1635,8 @@ public Builder setDevice(
          * @return This builder for chaining.
          */
         public Builder clearDevice() {
    -      
           device_ = getDefaultInstance().getDevice();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -1593,12 +1651,10 @@ public Builder clearDevice() {
          */
         public Builder setDeviceBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           device_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1656,11 +1712,9 @@ public java.lang.String getContainer() {
          */
         public Builder setContainer(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           container_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1673,8 +1727,8 @@ public Builder setContainer(
          * @return This builder for chaining.
          */
         public Builder clearContainer() {
    -      
           container_ = getDefaultInstance().getContainer();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -1689,12 +1743,10 @@ public Builder clearContainer() {
          */
         public Builder setContainerBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           container_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1752,11 +1804,9 @@ public java.lang.String getName() {
          */
         public Builder setName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           name_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1769,8 +1819,8 @@ public Builder setName(
          * @return This builder for chaining.
          */
         public Builder clearName() {
    -      
           name_ = getDefaultInstance().getName();
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -1785,12 +1835,10 @@ public Builder clearName() {
          */
         public Builder setNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           name_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1820,8 +1868,9 @@ public long getHashCode() {
          * @return This builder for chaining.
          */
         public Builder setHashCode(long value) {
    -      
    +
           hashCode_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1835,7 +1884,7 @@ public Builder setHashCode(long value) {
          * @return This builder for chaining.
          */
         public Builder clearHashCode() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           hashCode_ = 0L;
           onChanged();
           return this;
    @@ -1897,11 +1946,9 @@ public java.lang.String getMaybeTypeName() {
          */
         public Builder setMaybeTypeName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           maybeTypeName_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1915,8 +1962,8 @@ public Builder setMaybeTypeName(
          * @return This builder for chaining.
          */
         public Builder clearMaybeTypeName() {
    -      
           maybeTypeName_ = getDefaultInstance().getMaybeTypeName();
    +      bitField0_ = (bitField0_ & ~0x00000010);
           onChanged();
           return this;
         }
    @@ -1932,12 +1979,10 @@ public Builder clearMaybeTypeName() {
          */
         public Builder setMaybeTypeNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           maybeTypeName_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1945,13 +1990,13 @@ public Builder setMaybeTypeNameBytes(
         private java.util.List dtypesAndShapes_ =
           java.util.Collections.emptyList();
         private void ensureDtypesAndShapesIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!((bitField0_ & 0x00000020) != 0)) {
             dtypesAndShapes_ = new java.util.ArrayList(dtypesAndShapes_);
    -        bitField0_ |= 0x00000001;
    +        bitField0_ |= 0x00000020;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ResourceHandleProto.DtypeAndShape, org.tensorflow.proto.ResourceHandleProto.DtypeAndShape.Builder, org.tensorflow.proto.ResourceHandleProto.DtypeAndShapeOrBuilder> dtypesAndShapesBuilder_;
     
         /**
    @@ -2141,7 +2186,7 @@ public Builder addAllDtypesAndShapes(
         public Builder clearDtypesAndShapes() {
           if (dtypesAndShapesBuilder_ == null) {
             dtypesAndShapes_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000020);
             onChanged();
           } else {
             dtypesAndShapesBuilder_.clear();
    @@ -2239,32 +2284,20 @@ public org.tensorflow.proto.ResourceHandleProto.DtypeAndShape.Builder addDtypesA
              getDtypesAndShapesBuilderList() {
           return getDtypesAndShapesFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ResourceHandleProto.DtypeAndShape, org.tensorflow.proto.ResourceHandleProto.DtypeAndShape.Builder, org.tensorflow.proto.ResourceHandleProto.DtypeAndShapeOrBuilder> 
             getDtypesAndShapesFieldBuilder() {
           if (dtypesAndShapesBuilder_ == null) {
    -        dtypesAndShapesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        dtypesAndShapesBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.ResourceHandleProto.DtypeAndShape, org.tensorflow.proto.ResourceHandleProto.DtypeAndShape.Builder, org.tensorflow.proto.ResourceHandleProto.DtypeAndShapeOrBuilder>(
                     dtypesAndShapes_,
    -                ((bitField0_ & 0x00000001) != 0),
    +                ((bitField0_ & 0x00000020) != 0),
                     getParentForChildren(),
                     isClean());
             dtypesAndShapes_ = null;
           }
           return dtypesAndShapesBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.ResourceHandleProto)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ResourceHandleProtoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ResourceHandleProtoOrBuilder.java
    index 0dca457a0fe..3add868cb14 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ResourceHandleProtoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ResourceHandleProtoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/resource_handle.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RewriterConfig.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RewriterConfig.java
    index ae97c9cc75f..f5a2645ffb1 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RewriterConfig.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RewriterConfig.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/rewriter_config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -12,12 +14,21 @@
      * Protobuf type {@code tensorflow.RewriterConfig}
      */
     public final class RewriterConfig extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.RewriterConfig)
         RewriterConfigOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      RewriterConfig.class.getName());
    +  }
       // Use RewriterConfig.newBuilder() to construct.
    -  private RewriterConfig(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private RewriterConfig(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private RewriterConfig() {
    @@ -44,29 +55,18 @@ private RewriterConfig() {
         metaOptimizerIterations_ = 0;
         memoryOptimization_ = 0;
         memoryOptimizerTargetNodeNameScope_ = "";
    -    optimizers_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    optimizers_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         customOptimizers_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new RewriterConfig();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.RewriterConfigProtos.internal_static_tensorflow_RewriterConfig_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.RewriterConfigProtos.internal_static_tensorflow_RewriterConfig_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -122,6 +122,15 @@ public enum Toggle
         UNRECOGNIZED(-1),
         ;
     
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        Toggle.class.getName());
    +    }
         /**
          * DEFAULT = 0;
          */
    @@ -275,6 +284,15 @@ public enum CpuLayout
         UNRECOGNIZED(-1),
         ;
     
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        CpuLayout.class.getName());
    +    }
         /**
          * NO_CONVERSION_ON_CPU = 0;
          */
    @@ -397,6 +415,15 @@ public enum NumIterationsType
         UNRECOGNIZED(-1),
         ;
     
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        NumIterationsType.class.getName());
    +    }
         /**
          * DEFAULT_NUM_ITERS = 0;
          */
    @@ -561,6 +588,15 @@ public enum MemOptType
         UNRECOGNIZED(-1),
         ;
     
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        MemOptType.class.getName());
    +    }
         /**
          * 
          * The default setting (SCHEDULING and SWAPPING HEURISTICS only)
    @@ -748,7 +784,6 @@ boolean containsParameterMap(
         /**
          * map<string, .tensorflow.AttrValue> parameter_map = 2;
          */
    -
         /* nullable */
     org.tensorflow.proto.AttrValue getParameterMapOrDefault(
             java.lang.String key,
    @@ -757,7 +792,6 @@ org.tensorflow.proto.AttrValue getParameterMapOrDefault(
         /**
          * map<string, .tensorflow.AttrValue> parameter_map = 2;
          */
    -
         org.tensorflow.proto.AttrValue getParameterMapOrThrow(
             java.lang.String key);
       }
    @@ -769,30 +803,27 @@ org.tensorflow.proto.AttrValue getParameterMapOrThrow(
        * Protobuf type {@code tensorflow.RewriterConfig.CustomGraphOptimizer}
        */
       public static final class CustomGraphOptimizer extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.RewriterConfig.CustomGraphOptimizer)
           CustomGraphOptimizerOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        CustomGraphOptimizer.class.getName());
    +    }
         // Use CustomGraphOptimizer.newBuilder() to construct.
    -    private CustomGraphOptimizer(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private CustomGraphOptimizer(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private CustomGraphOptimizer() {
           name_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new CustomGraphOptimizer();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.RewriterConfigProtos.internal_static_tensorflow_RewriterConfig_CustomGraphOptimizer_descriptor;
    @@ -800,7 +831,7 @@ protected java.lang.Object newInstance(
     
         @SuppressWarnings({"rawtypes"})
         @java.lang.Override
    -    protected com.google.protobuf.MapField internalGetMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
             int number) {
           switch (number) {
             case 2:
    @@ -811,7 +842,7 @@ protected com.google.protobuf.MapField internalGetMapField(
           }
         }
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.RewriterConfigProtos.internal_static_tensorflow_RewriterConfig_CustomGraphOptimizer_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -819,7 +850,8 @@ protected com.google.protobuf.MapField internalGetMapField(
         }
     
         public static final int NAME_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object name_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object name_ = "";
         /**
          * string name = 1;
          * @return The name.
    @@ -868,6 +900,7 @@ private static final class ParameterMapDefaultEntryHolder {
                       com.google.protobuf.WireFormat.FieldType.MESSAGE,
                       org.tensorflow.proto.AttrValue.getDefaultInstance());
         }
    +    @SuppressWarnings("serial")
         private com.google.protobuf.MapField<
             java.lang.String, org.tensorflow.proto.AttrValue> parameterMap_;
         private com.google.protobuf.MapField
    @@ -878,14 +911,12 @@ private static final class ParameterMapDefaultEntryHolder {
           }
           return parameterMap_;
         }
    -
         public int getParameterMapCount() {
           return internalGetParameterMap().getMap().size();
         }
         /**
          * map<string, .tensorflow.AttrValue> parameter_map = 2;
          */
    -
         @java.lang.Override
         public boolean containsParameterMap(
             java.lang.String key) {
    @@ -904,7 +935,6 @@ public java.util.Map getParame
          * map<string, .tensorflow.AttrValue> parameter_map = 2;
          */
         @java.lang.Override
    -
         public java.util.Map getParameterMapMap() {
           return internalGetParameterMap().getMap();
         }
    @@ -912,10 +942,11 @@ public java.util.Map getParame
          * map<string, .tensorflow.AttrValue> parameter_map = 2;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.AttrValue getParameterMapOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.AttrValue getParameterMapOrDefault(
             java.lang.String key,
    -        org.tensorflow.proto.AttrValue defaultValue) {
    +        /* nullable */
    +org.tensorflow.proto.AttrValue defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
           java.util.Map map =
               internalGetParameterMap().getMap();
    @@ -925,7 +956,6 @@ public org.tensorflow.proto.AttrValue getParameterMapOrDefault(
          * map<string, .tensorflow.AttrValue> parameter_map = 2;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.AttrValue getParameterMapOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -951,10 +981,10 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
           }
    -      com.google.protobuf.GeneratedMessageV3
    +      com.google.protobuf.GeneratedMessage
             .serializeStringMapTo(
               output,
               internalGetParameterMap(),
    @@ -969,8 +999,8 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
           }
           for (java.util.Map.Entry entry
                : internalGetParameterMap().getMap().entrySet()) {
    @@ -1057,39 +1087,41 @@ public static org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer parseFrom
         }
         public static org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -1109,7 +1141,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -1121,7 +1153,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.RewriterConfig.CustomGraphOptimizer}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.RewriterConfig.CustomGraphOptimizer)
             org.tensorflow.proto.RewriterConfig.CustomGraphOptimizerOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1130,7 +1162,7 @@ public static final class Builder extends
           }
     
           @SuppressWarnings({"rawtypes"})
    -      protected com.google.protobuf.MapField internalGetMapField(
    +      protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
               int number) {
             switch (number) {
               case 2:
    @@ -1141,7 +1173,7 @@ protected com.google.protobuf.MapField internalGetMapField(
             }
           }
           @SuppressWarnings({"rawtypes"})
    -      protected com.google.protobuf.MapField internalGetMutableMapField(
    +      protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(
               int number) {
             switch (number) {
               case 2:
    @@ -1152,7 +1184,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
             }
           }
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.RewriterConfigProtos.internal_static_tensorflow_RewriterConfig_CustomGraphOptimizer_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -1165,15 +1197,15 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             name_ = "";
    -
             internalGetMutableParameterMap().clear();
             return this;
           }
    @@ -1201,46 +1233,21 @@ public org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer build() {
           @java.lang.Override
           public org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer buildPartial() {
             org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer result = new org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer(this);
    -        int from_bitField0_ = bitField0_;
    -        result.name_ = name_;
    -        result.parameterMap_ = internalGetParameterMap();
    -        result.parameterMap_.makeImmutable();
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.name_ = name_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.parameterMap_ = internalGetParameterMap().build(ParameterMapDefaultEntryHolder.defaultEntry);
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer) {
    @@ -1255,10 +1262,12 @@ public Builder mergeFrom(org.tensorflow.proto.RewriterConfig.CustomGraphOptimize
             if (other == org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer.getDefaultInstance()) return this;
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             internalGetMutableParameterMap().mergeFrom(
                 other.internalGetParameterMap());
    +        bitField0_ |= 0x00000002;
             this.mergeUnknownFields(other.getUnknownFields());
             onChanged();
             return this;
    @@ -1287,15 +1296,16 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     com.google.protobuf.MapEntry
                     parameterMap__ = input.readMessage(
                         ParameterMapDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
    -                internalGetMutableParameterMap().getMutableMap().put(
    +                internalGetMutableParameterMap().ensureBuilderMap().put(
                         parameterMap__.getKey(), parameterMap__.getValue());
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   default: {
    @@ -1356,11 +1366,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -1369,8 +1377,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -1381,51 +1389,57 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
     
    -      private com.google.protobuf.MapField<
    -          java.lang.String, org.tensorflow.proto.AttrValue> parameterMap_;
    -      private com.google.protobuf.MapField
    -      internalGetParameterMap() {
    +      private static final class ParameterMapConverter implements com.google.protobuf.MapFieldBuilder.Converter {
    +        @java.lang.Override
    +        public org.tensorflow.proto.AttrValue build(org.tensorflow.proto.AttrValueOrBuilder val) {
    +          if (val instanceof org.tensorflow.proto.AttrValue) { return (org.tensorflow.proto.AttrValue) val; }
    +          return ((org.tensorflow.proto.AttrValue.Builder) val).build();
    +        }
    +
    +        @java.lang.Override
    +        public com.google.protobuf.MapEntry defaultEntry() {
    +          return ParameterMapDefaultEntryHolder.defaultEntry;
    +        }
    +      };
    +      private static final ParameterMapConverter parameterMapConverter = new ParameterMapConverter();
    +
    +      private com.google.protobuf.MapFieldBuilder<
    +          java.lang.String, org.tensorflow.proto.AttrValueOrBuilder, org.tensorflow.proto.AttrValue, org.tensorflow.proto.AttrValue.Builder> parameterMap_;
    +      private com.google.protobuf.MapFieldBuilder
    +          internalGetParameterMap() {
             if (parameterMap_ == null) {
    -          return com.google.protobuf.MapField.emptyMapField(
    -              ParameterMapDefaultEntryHolder.defaultEntry);
    +          return new com.google.protobuf.MapFieldBuilder<>(parameterMapConverter);
             }
             return parameterMap_;
           }
    -      private com.google.protobuf.MapField
    -      internalGetMutableParameterMap() {
    -        onChanged();;
    +      private com.google.protobuf.MapFieldBuilder
    +          internalGetMutableParameterMap() {
             if (parameterMap_ == null) {
    -          parameterMap_ = com.google.protobuf.MapField.newMapField(
    -              ParameterMapDefaultEntryHolder.defaultEntry);
    -        }
    -        if (!parameterMap_.isMutable()) {
    -          parameterMap_ = parameterMap_.copy();
    +          parameterMap_ = new com.google.protobuf.MapFieldBuilder<>(parameterMapConverter);
             }
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return parameterMap_;
           }
    -
           public int getParameterMapCount() {
    -        return internalGetParameterMap().getMap().size();
    +        return internalGetParameterMap().ensureBuilderMap().size();
           }
           /**
            * map<string, .tensorflow.AttrValue> parameter_map = 2;
            */
    -
           @java.lang.Override
           public boolean containsParameterMap(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        return internalGetParameterMap().getMap().containsKey(key);
    +        return internalGetParameterMap().ensureBuilderMap().containsKey(key);
           }
           /**
            * Use {@link #getParameterMapMap()} instead.
    @@ -1439,52 +1453,47 @@ public java.util.Map getParame
            * map<string, .tensorflow.AttrValue> parameter_map = 2;
            */
           @java.lang.Override
    -
           public java.util.Map getParameterMapMap() {
    -        return internalGetParameterMap().getMap();
    +        return internalGetParameterMap().getImmutableMap();
           }
           /**
            * map<string, .tensorflow.AttrValue> parameter_map = 2;
            */
           @java.lang.Override
    -
    -      public org.tensorflow.proto.AttrValue getParameterMapOrDefault(
    +      public /* nullable */
    +org.tensorflow.proto.AttrValue getParameterMapOrDefault(
               java.lang.String key,
    -          org.tensorflow.proto.AttrValue defaultValue) {
    +          /* nullable */
    +org.tensorflow.proto.AttrValue defaultValue) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        java.util.Map map =
    -            internalGetParameterMap().getMap();
    -        return map.containsKey(key) ? map.get(key) : defaultValue;
    +        java.util.Map map = internalGetMutableParameterMap().ensureBuilderMap();
    +        return map.containsKey(key) ? parameterMapConverter.build(map.get(key)) : defaultValue;
           }
           /**
            * map<string, .tensorflow.AttrValue> parameter_map = 2;
            */
           @java.lang.Override
    -
           public org.tensorflow.proto.AttrValue getParameterMapOrThrow(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        java.util.Map map =
    -            internalGetParameterMap().getMap();
    +        java.util.Map map = internalGetMutableParameterMap().ensureBuilderMap();
             if (!map.containsKey(key)) {
               throw new java.lang.IllegalArgumentException();
             }
    -        return map.get(key);
    +        return parameterMapConverter.build(map.get(key));
           }
    -
           public Builder clearParameterMap() {
    -        internalGetMutableParameterMap().getMutableMap()
    -            .clear();
    +        bitField0_ = (bitField0_ & ~0x00000002);
    +        internalGetMutableParameterMap().clear();
             return this;
           }
           /**
            * map<string, .tensorflow.AttrValue> parameter_map = 2;
            */
    -
           public Builder removeParameterMap(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        internalGetMutableParameterMap().getMutableMap()
    +        internalGetMutableParameterMap().ensureBuilderMap()
                 .remove(key);
             return this;
           }
    @@ -1493,8 +1502,9 @@ public Builder removeParameterMap(
            */
           @java.lang.Deprecated
           public java.util.Map
    -      getMutableParameterMap() {
    -        return internalGetMutableParameterMap().getMutableMap();
    +          getMutableParameterMap() {
    +        bitField0_ |= 0x00000002;
    +        return internalGetMutableParameterMap().ensureMessageMap();
           }
           /**
            * map<string, .tensorflow.AttrValue> parameter_map = 2;
    @@ -1503,37 +1513,45 @@ public Builder putParameterMap(
               java.lang.String key,
               org.tensorflow.proto.AttrValue value) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    -        internalGetMutableParameterMap().getMutableMap()
    +        if (value == null) { throw new NullPointerException("map value"); }
    +        internalGetMutableParameterMap().ensureBuilderMap()
                 .put(key, value);
    +        bitField0_ |= 0x00000002;
             return this;
           }
           /**
            * map<string, .tensorflow.AttrValue> parameter_map = 2;
            */
    -
           public Builder putAllParameterMap(
               java.util.Map values) {
    -        internalGetMutableParameterMap().getMutableMap()
    +        for (java.util.Map.Entry e : values.entrySet()) {
    +          if (e.getKey() == null || e.getValue() == null) {
    +            throw new NullPointerException();
    +          }
    +        }
    +        internalGetMutableParameterMap().ensureBuilderMap()
                 .putAll(values);
    +        bitField0_ |= 0x00000002;
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    +      /**
    +       * map<string, .tensorflow.AttrValue> parameter_map = 2;
    +       */
    +      public org.tensorflow.proto.AttrValue.Builder putParameterMapBuilderIfAbsent(
    +          java.lang.String key) {
    +        java.util.Map builderMap = internalGetMutableParameterMap().ensureBuilderMap();
    +        org.tensorflow.proto.AttrValueOrBuilder entry = builderMap.get(key);
    +        if (entry == null) {
    +          entry = org.tensorflow.proto.AttrValue.newBuilder();
    +          builderMap.put(key, entry);
    +        }
    +        if (entry instanceof org.tensorflow.proto.AttrValue) {
    +          entry = ((org.tensorflow.proto.AttrValue) entry).toBuilder();
    +          builderMap.put(key, entry);
    +        }
    +        return (org.tensorflow.proto.AttrValue.Builder) entry;
           }
     
    -
           // @@protoc_insertion_point(builder_scope:tensorflow.RewriterConfig.CustomGraphOptimizer)
         }
     
    @@ -1585,8 +1603,9 @@ public org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer getDefaultInstan
     
       }
     
    +  private int bitField0_;
       public static final int CPU_LAYOUT_CONVERSION_FIELD_NUMBER = 50;
    -  private int cpuLayoutConversion_;
    +  private int cpuLayoutConversion_ = 0;
       /**
        * 
        * CPU Conversion settings between NHCW and NCHW.
    @@ -1607,13 +1626,12 @@ public org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer getDefaultInstan
        * @return The cpuLayoutConversion.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.CpuLayout getCpuLayoutConversion() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.CpuLayout result = org.tensorflow.proto.RewriterConfig.CpuLayout.valueOf(cpuLayoutConversion_);
    +    org.tensorflow.proto.RewriterConfig.CpuLayout result = org.tensorflow.proto.RewriterConfig.CpuLayout.forNumber(cpuLayoutConversion_);
         return result == null ? org.tensorflow.proto.RewriterConfig.CpuLayout.UNRECOGNIZED : result;
       }
     
       public static final int LAYOUT_OPTIMIZER_FIELD_NUMBER = 1;
    -  private int layoutOptimizer_;
    +  private int layoutOptimizer_ = 0;
       /**
        * 
        * Optimize tensor layouts (default is ON)
    @@ -1636,13 +1654,12 @@ public org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer getDefaultInstan
        * @return The layoutOptimizer.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getLayoutOptimizer() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(layoutOptimizer_);
    +    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(layoutOptimizer_);
         return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
       }
     
       public static final int CONSTANT_FOLDING_FIELD_NUMBER = 3;
    -  private int constantFolding_;
    +  private int constantFolding_ = 0;
       /**
        * 
        * Fold constants (default is ON)
    @@ -1667,13 +1684,12 @@ public org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer getDefaultInstan
        * @return The constantFolding.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getConstantFolding() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(constantFolding_);
    +    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(constantFolding_);
         return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
       }
     
       public static final int SHAPE_OPTIMIZATION_FIELD_NUMBER = 13;
    -  private int shapeOptimization_;
    +  private int shapeOptimization_ = 0;
       /**
        * 
        * Shape optimizations (default is ON)
    @@ -1696,13 +1712,12 @@ public org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer getDefaultInstan
        * @return The shapeOptimization.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getShapeOptimization() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(shapeOptimization_);
    +    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(shapeOptimization_);
         return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
       }
     
       public static final int REMAPPING_FIELD_NUMBER = 14;
    -  private int remapping_;
    +  private int remapping_ = 0;
       /**
        * 
        * Remapping (default is ON)
    @@ -1725,13 +1740,12 @@ public org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer getDefaultInstan
        * @return The remapping.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getRemapping() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(remapping_);
    +    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(remapping_);
         return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
       }
     
       public static final int COMMON_SUBGRAPH_ELIMINATION_FIELD_NUMBER = 24;
    -  private int commonSubgraphElimination_;
    +  private int commonSubgraphElimination_ = 0;
       /**
        * 
        * Common subgraph elimination (default is ON)
    @@ -1754,13 +1768,12 @@ public org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer getDefaultInstan
        * @return The commonSubgraphElimination.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getCommonSubgraphElimination() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(commonSubgraphElimination_);
    +    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(commonSubgraphElimination_);
         return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
       }
     
       public static final int ARITHMETIC_OPTIMIZATION_FIELD_NUMBER = 7;
    -  private int arithmeticOptimization_;
    +  private int arithmeticOptimization_ = 0;
       /**
        * 
        * Arithmetic optimizations (default is ON)
    @@ -1783,13 +1796,12 @@ public org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer getDefaultInstan
        * @return The arithmeticOptimization.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getArithmeticOptimization() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(arithmeticOptimization_);
    +    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(arithmeticOptimization_);
         return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
       }
     
       public static final int DEPENDENCY_OPTIMIZATION_FIELD_NUMBER = 8;
    -  private int dependencyOptimization_;
    +  private int dependencyOptimization_ = 0;
       /**
        * 
        * Control dependency optimizations (default is ON).
    @@ -1812,13 +1824,12 @@ public org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer getDefaultInstan
        * @return The dependencyOptimization.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getDependencyOptimization() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(dependencyOptimization_);
    +    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(dependencyOptimization_);
         return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
       }
     
       public static final int LOOP_OPTIMIZATION_FIELD_NUMBER = 9;
    -  private int loopOptimization_;
    +  private int loopOptimization_ = 0;
       /**
        * 
        * Loop optimizations (default is ON).
    @@ -1839,13 +1850,12 @@ public org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer getDefaultInstan
        * @return The loopOptimization.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getLoopOptimization() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(loopOptimization_);
    +    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(loopOptimization_);
         return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
       }
     
       public static final int FUNCTION_OPTIMIZATION_FIELD_NUMBER = 10;
    -  private int functionOptimization_;
    +  private int functionOptimization_ = 0;
       /**
        * 
        * Function optimizations (default is ON).
    @@ -1866,13 +1876,12 @@ public org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer getDefaultInstan
        * @return The functionOptimization.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getFunctionOptimization() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(functionOptimization_);
    +    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(functionOptimization_);
         return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
       }
     
       public static final int DEBUG_STRIPPER_FIELD_NUMBER = 11;
    -  private int debugStripper_;
    +  private int debugStripper_ = 0;
       /**
        * 
        * Strips debug-related nodes from the graph (off by default).
    @@ -1893,13 +1902,12 @@ public org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer getDefaultInstan
        * @return The debugStripper.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getDebugStripper() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(debugStripper_);
    +    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(debugStripper_);
         return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
       }
     
       public static final int DISABLE_MODEL_PRUNING_FIELD_NUMBER = 2;
    -  private boolean disableModelPruning_;
    +  private boolean disableModelPruning_ = false;
       /**
        * 
        * If true, don't remove unnecessary ops from the graph
    @@ -1914,7 +1922,7 @@ public boolean getDisableModelPruning() {
       }
     
       public static final int SCOPED_ALLOCATOR_OPTIMIZATION_FIELD_NUMBER = 15;
    -  private int scopedAllocatorOptimization_;
    +  private int scopedAllocatorOptimization_ = 0;
       /**
        * 
        * Try to allocate some independent Op outputs contiguously in order to
    @@ -1937,13 +1945,12 @@ public boolean getDisableModelPruning() {
        * @return The scopedAllocatorOptimization.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getScopedAllocatorOptimization() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(scopedAllocatorOptimization_);
    +    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(scopedAllocatorOptimization_);
         return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
       }
     
       public static final int PIN_TO_HOST_OPTIMIZATION_FIELD_NUMBER = 18;
    -  private int pinToHostOptimization_;
    +  private int pinToHostOptimization_ = 0;
       /**
        * 
        * Force small ops onto the CPU (default is OFF).
    @@ -1964,13 +1971,12 @@ public boolean getDisableModelPruning() {
        * @return The pinToHostOptimization.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getPinToHostOptimization() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(pinToHostOptimization_);
    +    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(pinToHostOptimization_);
         return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
       }
     
       public static final int IMPLEMENTATION_SELECTOR_FIELD_NUMBER = 22;
    -  private int implementationSelector_;
    +  private int implementationSelector_ = 0;
       /**
        * 
        * Enable the swap of kernel implementations based on the device placement
    @@ -1993,17 +1999,16 @@ public boolean getDisableModelPruning() {
        * @return The implementationSelector.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getImplementationSelector() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(implementationSelector_);
    +    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(implementationSelector_);
         return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
       }
     
       public static final int AUTO_MIXED_PRECISION_FIELD_NUMBER = 23;
    -  private int autoMixedPrecision_;
    +  private int autoMixedPrecision_ = 0;
       /**
        * 
    -   * Optimize data types for CUDA (default is OFF).
    -   * This will try to use float16 on GPU which is faster.
    +   * Optimize data types for CUDA/oneDNN (default is OFF).
    +   * This will try to use float16 on GPU/CPU which is faster.
        * Note that this can change the numerical stability of the graph and may
        * require the use of loss scaling to maintain model convergence.
        * 
    @@ -2016,8 +2021,8 @@ public boolean getDisableModelPruning() { } /** *
    -   * Optimize data types for CUDA (default is OFF).
    -   * This will try to use float16 on GPU which is faster.
    +   * Optimize data types for CUDA/oneDNN (default is OFF).
    +   * This will try to use float16 on GPU/CPU which is faster.
        * Note that this can change the numerical stability of the graph and may
        * require the use of loss scaling to maintain model convergence.
        * 
    @@ -2026,13 +2031,12 @@ public boolean getDisableModelPruning() { * @return The autoMixedPrecision. */ @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getAutoMixedPrecision() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(autoMixedPrecision_); + org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(autoMixedPrecision_); return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result; } public static final int AUTO_MIXED_PRECISION_MKL_FIELD_NUMBER = 25; - private int autoMixedPrecisionMkl_; + private int autoMixedPrecisionMkl_ = 0; /** *
        * Optimize data types for oneDNN (default is OFF).
    @@ -2061,13 +2065,12 @@ public boolean getDisableModelPruning() {
        * @return The autoMixedPrecisionMkl.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getAutoMixedPrecisionMkl() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(autoMixedPrecisionMkl_);
    +    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(autoMixedPrecisionMkl_);
         return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
       }
     
       public static final int AUTO_MIXED_PRECISION_ONEDNN_BFLOAT16_FIELD_NUMBER = 31;
    -  private int autoMixedPrecisionOnednnBfloat16_;
    +  private int autoMixedPrecisionOnednnBfloat16_ = 0;
       /**
        * 
        * Optimize data types for oneDNN (default is OFF).
    @@ -2094,13 +2097,12 @@ public boolean getDisableModelPruning() {
        * @return The autoMixedPrecisionOnednnBfloat16.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getAutoMixedPrecisionOnednnBfloat16() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(autoMixedPrecisionOnednnBfloat16_);
    +    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(autoMixedPrecisionOnednnBfloat16_);
         return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
       }
     
       public static final int AUTO_MIXED_PRECISION_CPU_FIELD_NUMBER = 29;
    -  private int autoMixedPrecisionCpu_;
    +  private int autoMixedPrecisionCpu_ = 0;
       /**
        * 
        * Emulate a model using data type float16 on CPU (default is OFF).
    @@ -2129,13 +2131,12 @@ public boolean getDisableModelPruning() {
        * @return The autoMixedPrecisionCpu.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getAutoMixedPrecisionCpu() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(autoMixedPrecisionCpu_);
    +    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(autoMixedPrecisionCpu_);
         return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
       }
     
       public static final int DISABLE_META_OPTIMIZER_FIELD_NUMBER = 19;
    -  private boolean disableMetaOptimizer_;
    +  private boolean disableMetaOptimizer_ = false;
       /**
        * 
        * Disable the entire meta optimizer (off by default).
    @@ -2150,7 +2151,7 @@ public boolean getDisableMetaOptimizer() {
       }
     
       public static final int DISABLE_TFG_OPTIMIZER_FIELD_NUMBER = 32;
    -  private boolean disableTfgOptimizer_;
    +  private boolean disableTfgOptimizer_ = false;
       /**
        * 
        * Disable the TFG optimizer (off by default).
    @@ -2165,7 +2166,7 @@ public boolean getDisableTfgOptimizer() {
       }
     
       public static final int USE_PLUGIN_OPTIMIZERS_FIELD_NUMBER = 28;
    -  private int usePluginOptimizers_;
    +  private int usePluginOptimizers_ = 0;
       /**
        * 
        * Optimizers registered by plugin (default is ON)
    @@ -2186,13 +2187,12 @@ public boolean getDisableTfgOptimizer() {
        * @return The usePluginOptimizers.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getUsePluginOptimizers() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(usePluginOptimizers_);
    +    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(usePluginOptimizers_);
         return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
       }
     
       public static final int EXPERIMENTAL_CONDITIONAL_CODE_MOTION_FIELD_NUMBER = 30;
    -  private int experimentalConditionalCodeMotion_;
    +  private int experimentalConditionalCodeMotion_ = 0;
       /**
        * 
        * Conditional code motion (default is ON).
    @@ -2213,13 +2213,12 @@ public boolean getDisableTfgOptimizer() {
        * @return The experimentalConditionalCodeMotion.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getExperimentalConditionalCodeMotion() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(experimentalConditionalCodeMotion_);
    +    org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(experimentalConditionalCodeMotion_);
         return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
       }
     
       public static final int META_OPTIMIZER_ITERATIONS_FIELD_NUMBER = 12;
    -  private int metaOptimizerIterations_;
    +  private int metaOptimizerIterations_ = 0;
       /**
        * 
        * Controls how many times we run the optimizers in meta optimizer (default
    @@ -2242,13 +2241,12 @@ public boolean getDisableTfgOptimizer() {
        * @return The metaOptimizerIterations.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.NumIterationsType getMetaOptimizerIterations() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.NumIterationsType result = org.tensorflow.proto.RewriterConfig.NumIterationsType.valueOf(metaOptimizerIterations_);
    +    org.tensorflow.proto.RewriterConfig.NumIterationsType result = org.tensorflow.proto.RewriterConfig.NumIterationsType.forNumber(metaOptimizerIterations_);
         return result == null ? org.tensorflow.proto.RewriterConfig.NumIterationsType.UNRECOGNIZED : result;
       }
     
       public static final int MIN_GRAPH_NODES_FIELD_NUMBER = 17;
    -  private int minGraphNodes_;
    +  private int minGraphNodes_ = 0;
       /**
        * 
        * The minimum number of nodes in a graph to optimizer. For smaller graphs,
    @@ -2266,7 +2264,7 @@ public int getMinGraphNodes() {
       }
     
       public static final int EXPERIMENTAL_DISABLE_COMPRESSED_TENSOR_OPTIMIZATION_FIELD_NUMBER = 26;
    -  private boolean experimentalDisableCompressedTensorOptimization_;
    +  private boolean experimentalDisableCompressedTensorOptimization_ = false;
       /**
        * 
        * Disable optimizations that assume compressed tensors. Note that this flag
    @@ -2282,7 +2280,7 @@ public boolean getExperimentalDisableCompressedTensorOptimization() {
       }
     
       public static final int EXPERIMENTAL_DISABLE_FOLDING_QUANTIZATION_EMULATION_FIELD_NUMBER = 27;
    -  private boolean experimentalDisableFoldingQuantizationEmulation_;
    +  private boolean experimentalDisableFoldingQuantizationEmulation_ = false;
       /**
        * 
        * Disable folding quantization emulation ops such as FakeQuantWithMinMax* and
    @@ -2302,7 +2300,7 @@ public boolean getExperimentalDisableFoldingQuantizationEmulation() {
       }
     
       public static final int MEMORY_OPTIMIZATION_FIELD_NUMBER = 4;
    -  private int memoryOptimization_;
    +  private int memoryOptimization_ = 0;
       /**
        * 
        * Configures memory optimization passes through the meta-optimizer. Has no
    @@ -2327,13 +2325,13 @@ public boolean getExperimentalDisableFoldingQuantizationEmulation() {
        * @return The memoryOptimization.
        */
       @java.lang.Override public org.tensorflow.proto.RewriterConfig.MemOptType getMemoryOptimization() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RewriterConfig.MemOptType result = org.tensorflow.proto.RewriterConfig.MemOptType.valueOf(memoryOptimization_);
    +    org.tensorflow.proto.RewriterConfig.MemOptType result = org.tensorflow.proto.RewriterConfig.MemOptType.forNumber(memoryOptimization_);
         return result == null ? org.tensorflow.proto.RewriterConfig.MemOptType.UNRECOGNIZED : result;
       }
     
       public static final int MEMORY_OPTIMIZER_TARGET_NODE_NAME_SCOPE_FIELD_NUMBER = 6;
    -  private volatile java.lang.Object memoryOptimizerTargetNodeNameScope_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object memoryOptimizerTargetNodeNameScope_ = "";
       /**
        * 
        * A node name scope for node names which are valid outputs of recomputations.
    @@ -2393,7 +2391,7 @@ public java.lang.String getMemoryOptimizerTargetNodeNameScope() {
       }
     
       public static final int META_OPTIMIZER_TIMEOUT_MS_FIELD_NUMBER = 20;
    -  private long metaOptimizerTimeoutMs_;
    +  private long metaOptimizerTimeoutMs_ = 0L;
       /**
        * 
        * Maximum number of milliseconds to spend optimizing a single graph before
    @@ -2422,7 +2420,7 @@ public long getMetaOptimizerTimeoutMs() {
        */
       @java.lang.Override
       public boolean hasAutoParallel() {
    -    return autoParallel_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -2447,11 +2445,11 @@ public org.tensorflow.proto.AutoParallelOptions getAutoParallel() {
        */
       @java.lang.Override
       public org.tensorflow.proto.AutoParallelOptionsOrBuilder getAutoParallelOrBuilder() {
    -    return getAutoParallel();
    +    return autoParallel_ == null ? org.tensorflow.proto.AutoParallelOptions.getDefaultInstance() : autoParallel_;
       }
     
       public static final int FAIL_ON_OPTIMIZER_ERRORS_FIELD_NUMBER = 21;
    -  private boolean failOnOptimizerErrors_;
    +  private boolean failOnOptimizerErrors_ = false;
       /**
        * 
        * If true, any optimization pass failing will cause the MetaOptimizer to
    @@ -2475,7 +2473,7 @@ public boolean getFailOnOptimizerErrors() {
        */
       @java.lang.Override
       public boolean hasScopedAllocatorOpts() {
    -    return scopedAllocatorOpts_ != null;
    +    return ((bitField0_ & 0x00000002) != 0);
       }
       /**
        * .tensorflow.ScopedAllocatorOptions scoped_allocator_opts = 16;
    @@ -2490,21 +2488,25 @@ public org.tensorflow.proto.ScopedAllocatorOptions getScopedAllocatorOpts() {
        */
       @java.lang.Override
       public org.tensorflow.proto.ScopedAllocatorOptionsOrBuilder getScopedAllocatorOptsOrBuilder() {
    -    return getScopedAllocatorOpts();
    +    return scopedAllocatorOpts_ == null ? org.tensorflow.proto.ScopedAllocatorOptions.getDefaultInstance() : scopedAllocatorOpts_;
       }
     
       public static final int OPTIMIZERS_FIELD_NUMBER = 100;
    -  private com.google.protobuf.LazyStringList optimizers_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList optimizers_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * If non-empty, will use this as an alternative way to specify a list of
        * optimizations to turn on and the order of the optimizations (replacing the
        * meta-optimizer).
    +   *
        * Of the RewriterConfig options, only the AutoParallel configuration options
        * (the auto_parallel field) apply to manually requested optimization passes
        * ("autoparallel"). Memory optimization passes ("memory") invoked here are
        * not configurable (in contrast to memory optimization passes through the
        * meta-optimizer) and act only on manual op annotations.
    +   *
        * Custom optimizers (see custom_optimizers) that are not part of this
        * schedule will be run after - in the order that they were specified.
        * 
    @@ -2521,11 +2523,13 @@ public org.tensorflow.proto.ScopedAllocatorOptionsOrBuilder getScopedAllocatorOp * If non-empty, will use this as an alternative way to specify a list of * optimizations to turn on and the order of the optimizations (replacing the * meta-optimizer). + * * Of the RewriterConfig options, only the AutoParallel configuration options * (the auto_parallel field) apply to manually requested optimization passes * ("autoparallel"). Memory optimization passes ("memory") invoked here are * not configurable (in contrast to memory optimization passes through the * meta-optimizer) and act only on manual op annotations. + * * Custom optimizers (see custom_optimizers) that are not part of this * schedule will be run after - in the order that they were specified. *
    @@ -2541,11 +2545,13 @@ public int getOptimizersCount() { * If non-empty, will use this as an alternative way to specify a list of * optimizations to turn on and the order of the optimizations (replacing the * meta-optimizer). + * * Of the RewriterConfig options, only the AutoParallel configuration options * (the auto_parallel field) apply to manually requested optimization passes * ("autoparallel"). Memory optimization passes ("memory") invoked here are * not configurable (in contrast to memory optimization passes through the * meta-optimizer) and act only on manual op annotations. + * * Custom optimizers (see custom_optimizers) that are not part of this * schedule will be run after - in the order that they were specified. *
    @@ -2562,11 +2568,13 @@ public java.lang.String getOptimizers(int index) { * If non-empty, will use this as an alternative way to specify a list of * optimizations to turn on and the order of the optimizations (replacing the * meta-optimizer). + * * Of the RewriterConfig options, only the AutoParallel configuration options * (the auto_parallel field) apply to manually requested optimization passes * ("autoparallel"). Memory optimization passes ("memory") invoked here are * not configurable (in contrast to memory optimization passes through the * meta-optimizer) and act only on manual op annotations. + * * Custom optimizers (see custom_optimizers) that are not part of this * schedule will be run after - in the order that they were specified. *
    @@ -2581,6 +2589,7 @@ public java.lang.String getOptimizers(int index) { } public static final int CUSTOM_OPTIMIZERS_FIELD_NUMBER = 200; + @SuppressWarnings("serial") private java.util.List customOptimizers_; /** *
    @@ -2652,7 +2661,7 @@ public org.tensorflow.proto.RewriterConfig.CustomGraphOptimizerOrBuilder getCust
        */
       @java.lang.Override
       public boolean hasInterOptimizerVerifierConfig() {
    -    return interOptimizerVerifierConfig_ != null;
    +    return ((bitField0_ & 0x00000004) != 0);
       }
       /**
        * 
    @@ -2675,7 +2684,7 @@ public org.tensorflow.proto.VerifierConfig getInterOptimizerVerifierConfig() {
        */
       @java.lang.Override
       public org.tensorflow.proto.VerifierConfigOrBuilder getInterOptimizerVerifierConfigOrBuilder() {
    -    return getInterOptimizerVerifierConfig();
    +    return interOptimizerVerifierConfig_ == null ? org.tensorflow.proto.VerifierConfig.getDefaultInstance() : interOptimizerVerifierConfig_;
       }
     
       public static final int POST_OPTIMIZATION_VERIFIER_CONFIG_FIELD_NUMBER = 301;
    @@ -2691,7 +2700,7 @@ public org.tensorflow.proto.VerifierConfigOrBuilder getInterOptimizerVerifierCon
        */
       @java.lang.Override
       public boolean hasPostOptimizationVerifierConfig() {
    -    return postOptimizationVerifierConfig_ != null;
    +    return ((bitField0_ & 0x00000008) != 0);
       }
       /**
        * 
    @@ -2716,7 +2725,7 @@ public org.tensorflow.proto.VerifierConfig getPostOptimizationVerifierConfig() {
        */
       @java.lang.Override
       public org.tensorflow.proto.VerifierConfigOrBuilder getPostOptimizationVerifierConfigOrBuilder() {
    -    return getPostOptimizationVerifierConfig();
    +    return postOptimizationVerifierConfig_ == null ? org.tensorflow.proto.VerifierConfig.getDefaultInstance() : postOptimizationVerifierConfig_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -2745,11 +2754,11 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (memoryOptimization_ != org.tensorflow.proto.RewriterConfig.MemOptType.DEFAULT_MEM_OPT.getNumber()) {
           output.writeEnum(4, memoryOptimization_);
         }
    -    if (autoParallel_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(5, getAutoParallel());
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(memoryOptimizerTargetNodeNameScope_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 6, memoryOptimizerTargetNodeNameScope_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(memoryOptimizerTargetNodeNameScope_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 6, memoryOptimizerTargetNodeNameScope_);
         }
         if (arithmeticOptimization_ != org.tensorflow.proto.RewriterConfig.Toggle.DEFAULT.getNumber()) {
           output.writeEnum(7, arithmeticOptimization_);
    @@ -2778,7 +2787,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (scopedAllocatorOptimization_ != org.tensorflow.proto.RewriterConfig.Toggle.DEFAULT.getNumber()) {
           output.writeEnum(15, scopedAllocatorOptimization_);
         }
    -    if (scopedAllocatorOpts_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           output.writeMessage(16, getScopedAllocatorOpts());
         }
         if (minGraphNodes_ != 0) {
    @@ -2833,15 +2842,15 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           output.writeEnum(50, cpuLayoutConversion_);
         }
         for (int i = 0; i < optimizers_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 100, optimizers_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 100, optimizers_.getRaw(i));
         }
         for (int i = 0; i < customOptimizers_.size(); i++) {
           output.writeMessage(200, customOptimizers_.get(i));
         }
    -    if (interOptimizerVerifierConfig_ != null) {
    +    if (((bitField0_ & 0x00000004) != 0)) {
           output.writeMessage(300, getInterOptimizerVerifierConfig());
         }
    -    if (postOptimizationVerifierConfig_ != null) {
    +    if (((bitField0_ & 0x00000008) != 0)) {
           output.writeMessage(301, getPostOptimizationVerifierConfig());
         }
         getUnknownFields().writeTo(output);
    @@ -2869,12 +2878,12 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeEnumSize(4, memoryOptimization_);
         }
    -    if (autoParallel_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(5, getAutoParallel());
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(memoryOptimizerTargetNodeNameScope_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, memoryOptimizerTargetNodeNameScope_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(memoryOptimizerTargetNodeNameScope_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(6, memoryOptimizerTargetNodeNameScope_);
         }
         if (arithmeticOptimization_ != org.tensorflow.proto.RewriterConfig.Toggle.DEFAULT.getNumber()) {
           size += com.google.protobuf.CodedOutputStream
    @@ -2912,7 +2921,7 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeEnumSize(15, scopedAllocatorOptimization_);
         }
    -    if (scopedAllocatorOpts_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(16, getScopedAllocatorOpts());
         }
    @@ -2996,11 +3005,11 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(200, customOptimizers_.get(i));
         }
    -    if (interOptimizerVerifierConfig_ != null) {
    +    if (((bitField0_ & 0x00000004) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(300, getInterOptimizerVerifierConfig());
         }
    -    if (postOptimizationVerifierConfig_ != null) {
    +    if (((bitField0_ & 0x00000008) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(301, getPostOptimizationVerifierConfig());
         }
    @@ -3226,39 +3235,41 @@ public static org.tensorflow.proto.RewriterConfig parseFrom(
       }
       public static org.tensorflow.proto.RewriterConfig parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.RewriterConfig parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.RewriterConfig parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.RewriterConfig parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.RewriterConfig parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.RewriterConfig parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -3278,7 +3289,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -3291,7 +3302,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.RewriterConfig}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.RewriterConfig)
           org.tensorflow.proto.RewriterConfigOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -3300,7 +3311,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.RewriterConfigProtos.internal_static_tensorflow_RewriterConfig_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -3309,110 +3320,87 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.RewriterConfig.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getAutoParallelFieldBuilder();
    +        getScopedAllocatorOptsFieldBuilder();
    +        getCustomOptimizersFieldBuilder();
    +        getInterOptimizerVerifierConfigFieldBuilder();
    +        getPostOptimizationVerifierConfigFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
    +      bitField1_ = 0;
           cpuLayoutConversion_ = 0;
    -
           layoutOptimizer_ = 0;
    -
           constantFolding_ = 0;
    -
           shapeOptimization_ = 0;
    -
           remapping_ = 0;
    -
           commonSubgraphElimination_ = 0;
    -
           arithmeticOptimization_ = 0;
    -
           dependencyOptimization_ = 0;
    -
           loopOptimization_ = 0;
    -
           functionOptimization_ = 0;
    -
           debugStripper_ = 0;
    -
           disableModelPruning_ = false;
    -
           scopedAllocatorOptimization_ = 0;
    -
           pinToHostOptimization_ = 0;
    -
           implementationSelector_ = 0;
    -
           autoMixedPrecision_ = 0;
    -
           autoMixedPrecisionMkl_ = 0;
    -
           autoMixedPrecisionOnednnBfloat16_ = 0;
    -
           autoMixedPrecisionCpu_ = 0;
    -
           disableMetaOptimizer_ = false;
    -
           disableTfgOptimizer_ = false;
    -
           usePluginOptimizers_ = 0;
    -
           experimentalConditionalCodeMotion_ = 0;
    -
           metaOptimizerIterations_ = 0;
    -
           minGraphNodes_ = 0;
    -
           experimentalDisableCompressedTensorOptimization_ = false;
    -
           experimentalDisableFoldingQuantizationEmulation_ = false;
    -
           memoryOptimization_ = 0;
    -
           memoryOptimizerTargetNodeNameScope_ = "";
    -
           metaOptimizerTimeoutMs_ = 0L;
    -
    -      if (autoParallelBuilder_ == null) {
    -        autoParallel_ = null;
    -      } else {
    -        autoParallel_ = null;
    +      autoParallel_ = null;
    +      if (autoParallelBuilder_ != null) {
    +        autoParallelBuilder_.dispose();
             autoParallelBuilder_ = null;
           }
           failOnOptimizerErrors_ = false;
    -
    -      if (scopedAllocatorOptsBuilder_ == null) {
    -        scopedAllocatorOpts_ = null;
    -      } else {
    -        scopedAllocatorOpts_ = null;
    +      scopedAllocatorOpts_ = null;
    +      if (scopedAllocatorOptsBuilder_ != null) {
    +        scopedAllocatorOptsBuilder_.dispose();
             scopedAllocatorOptsBuilder_ = null;
           }
    -      optimizers_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      optimizers_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           if (customOptimizersBuilder_ == null) {
             customOptimizers_ = java.util.Collections.emptyList();
           } else {
             customOptimizers_ = null;
             customOptimizersBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000002);
    -      if (interOptimizerVerifierConfigBuilder_ == null) {
    -        interOptimizerVerifierConfig_ = null;
    -      } else {
    -        interOptimizerVerifierConfig_ = null;
    +      bitField1_ = (bitField1_ & ~0x00000004);
    +      interOptimizerVerifierConfig_ = null;
    +      if (interOptimizerVerifierConfigBuilder_ != null) {
    +        interOptimizerVerifierConfigBuilder_.dispose();
             interOptimizerVerifierConfigBuilder_ = null;
           }
    -      if (postOptimizationVerifierConfigBuilder_ == null) {
    -        postOptimizationVerifierConfig_ = null;
    -      } else {
    -        postOptimizationVerifierConfig_ = null;
    +      postOptimizationVerifierConfig_ = null;
    +      if (postOptimizationVerifierConfigBuilder_ != null) {
    +        postOptimizationVerifierConfigBuilder_.dispose();
             postOptimizationVerifierConfigBuilder_ = null;
           }
           return this;
    @@ -3441,108 +3429,158 @@ public org.tensorflow.proto.RewriterConfig build() {
         @java.lang.Override
         public org.tensorflow.proto.RewriterConfig buildPartial() {
           org.tensorflow.proto.RewriterConfig result = new org.tensorflow.proto.RewriterConfig(this);
    -      int from_bitField0_ = bitField0_;
    -      result.cpuLayoutConversion_ = cpuLayoutConversion_;
    -      result.layoutOptimizer_ = layoutOptimizer_;
    -      result.constantFolding_ = constantFolding_;
    -      result.shapeOptimization_ = shapeOptimization_;
    -      result.remapping_ = remapping_;
    -      result.commonSubgraphElimination_ = commonSubgraphElimination_;
    -      result.arithmeticOptimization_ = arithmeticOptimization_;
    -      result.dependencyOptimization_ = dependencyOptimization_;
    -      result.loopOptimization_ = loopOptimization_;
    -      result.functionOptimization_ = functionOptimization_;
    -      result.debugStripper_ = debugStripper_;
    -      result.disableModelPruning_ = disableModelPruning_;
    -      result.scopedAllocatorOptimization_ = scopedAllocatorOptimization_;
    -      result.pinToHostOptimization_ = pinToHostOptimization_;
    -      result.implementationSelector_ = implementationSelector_;
    -      result.autoMixedPrecision_ = autoMixedPrecision_;
    -      result.autoMixedPrecisionMkl_ = autoMixedPrecisionMkl_;
    -      result.autoMixedPrecisionOnednnBfloat16_ = autoMixedPrecisionOnednnBfloat16_;
    -      result.autoMixedPrecisionCpu_ = autoMixedPrecisionCpu_;
    -      result.disableMetaOptimizer_ = disableMetaOptimizer_;
    -      result.disableTfgOptimizer_ = disableTfgOptimizer_;
    -      result.usePluginOptimizers_ = usePluginOptimizers_;
    -      result.experimentalConditionalCodeMotion_ = experimentalConditionalCodeMotion_;
    -      result.metaOptimizerIterations_ = metaOptimizerIterations_;
    -      result.minGraphNodes_ = minGraphNodes_;
    -      result.experimentalDisableCompressedTensorOptimization_ = experimentalDisableCompressedTensorOptimization_;
    -      result.experimentalDisableFoldingQuantizationEmulation_ = experimentalDisableFoldingQuantizationEmulation_;
    -      result.memoryOptimization_ = memoryOptimization_;
    -      result.memoryOptimizerTargetNodeNameScope_ = memoryOptimizerTargetNodeNameScope_;
    -      result.metaOptimizerTimeoutMs_ = metaOptimizerTimeoutMs_;
    -      if (autoParallelBuilder_ == null) {
    -        result.autoParallel_ = autoParallel_;
    -      } else {
    -        result.autoParallel_ = autoParallelBuilder_.build();
    -      }
    -      result.failOnOptimizerErrors_ = failOnOptimizerErrors_;
    -      if (scopedAllocatorOptsBuilder_ == null) {
    -        result.scopedAllocatorOpts_ = scopedAllocatorOpts_;
    -      } else {
    -        result.scopedAllocatorOpts_ = scopedAllocatorOptsBuilder_.build();
    -      }
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        optimizers_ = optimizers_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.optimizers_ = optimizers_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      if (bitField1_ != 0) { buildPartial1(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.RewriterConfig result) {
           if (customOptimizersBuilder_ == null) {
    -        if (((bitField0_ & 0x00000002) != 0)) {
    +        if (((bitField1_ & 0x00000004) != 0)) {
               customOptimizers_ = java.util.Collections.unmodifiableList(customOptimizers_);
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          bitField1_ = (bitField1_ & ~0x00000004);
             }
             result.customOptimizers_ = customOptimizers_;
           } else {
             result.customOptimizers_ = customOptimizersBuilder_.build();
           }
    -      if (interOptimizerVerifierConfigBuilder_ == null) {
    -        result.interOptimizerVerifierConfig_ = interOptimizerVerifierConfig_;
    -      } else {
    -        result.interOptimizerVerifierConfig_ = interOptimizerVerifierConfigBuilder_.build();
    +    }
    +
    +    private void buildPartial0(org.tensorflow.proto.RewriterConfig result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.cpuLayoutConversion_ = cpuLayoutConversion_;
           }
    -      if (postOptimizationVerifierConfigBuilder_ == null) {
    -        result.postOptimizationVerifierConfig_ = postOptimizationVerifierConfig_;
    -      } else {
    -        result.postOptimizationVerifierConfig_ = postOptimizationVerifierConfigBuilder_.build();
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.layoutOptimizer_ = layoutOptimizer_;
           }
    -      onBuilt();
    -      return result;
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.constantFolding_ = constantFolding_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.shapeOptimization_ = shapeOptimization_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.remapping_ = remapping_;
    +      }
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.commonSubgraphElimination_ = commonSubgraphElimination_;
    +      }
    +      if (((from_bitField0_ & 0x00000040) != 0)) {
    +        result.arithmeticOptimization_ = arithmeticOptimization_;
    +      }
    +      if (((from_bitField0_ & 0x00000080) != 0)) {
    +        result.dependencyOptimization_ = dependencyOptimization_;
    +      }
    +      if (((from_bitField0_ & 0x00000100) != 0)) {
    +        result.loopOptimization_ = loopOptimization_;
    +      }
    +      if (((from_bitField0_ & 0x00000200) != 0)) {
    +        result.functionOptimization_ = functionOptimization_;
    +      }
    +      if (((from_bitField0_ & 0x00000400) != 0)) {
    +        result.debugStripper_ = debugStripper_;
    +      }
    +      if (((from_bitField0_ & 0x00000800) != 0)) {
    +        result.disableModelPruning_ = disableModelPruning_;
    +      }
    +      if (((from_bitField0_ & 0x00001000) != 0)) {
    +        result.scopedAllocatorOptimization_ = scopedAllocatorOptimization_;
    +      }
    +      if (((from_bitField0_ & 0x00002000) != 0)) {
    +        result.pinToHostOptimization_ = pinToHostOptimization_;
    +      }
    +      if (((from_bitField0_ & 0x00004000) != 0)) {
    +        result.implementationSelector_ = implementationSelector_;
    +      }
    +      if (((from_bitField0_ & 0x00008000) != 0)) {
    +        result.autoMixedPrecision_ = autoMixedPrecision_;
    +      }
    +      if (((from_bitField0_ & 0x00010000) != 0)) {
    +        result.autoMixedPrecisionMkl_ = autoMixedPrecisionMkl_;
    +      }
    +      if (((from_bitField0_ & 0x00020000) != 0)) {
    +        result.autoMixedPrecisionOnednnBfloat16_ = autoMixedPrecisionOnednnBfloat16_;
    +      }
    +      if (((from_bitField0_ & 0x00040000) != 0)) {
    +        result.autoMixedPrecisionCpu_ = autoMixedPrecisionCpu_;
    +      }
    +      if (((from_bitField0_ & 0x00080000) != 0)) {
    +        result.disableMetaOptimizer_ = disableMetaOptimizer_;
    +      }
    +      if (((from_bitField0_ & 0x00100000) != 0)) {
    +        result.disableTfgOptimizer_ = disableTfgOptimizer_;
    +      }
    +      if (((from_bitField0_ & 0x00200000) != 0)) {
    +        result.usePluginOptimizers_ = usePluginOptimizers_;
    +      }
    +      if (((from_bitField0_ & 0x00400000) != 0)) {
    +        result.experimentalConditionalCodeMotion_ = experimentalConditionalCodeMotion_;
    +      }
    +      if (((from_bitField0_ & 0x00800000) != 0)) {
    +        result.metaOptimizerIterations_ = metaOptimizerIterations_;
    +      }
    +      if (((from_bitField0_ & 0x01000000) != 0)) {
    +        result.minGraphNodes_ = minGraphNodes_;
    +      }
    +      if (((from_bitField0_ & 0x02000000) != 0)) {
    +        result.experimentalDisableCompressedTensorOptimization_ = experimentalDisableCompressedTensorOptimization_;
    +      }
    +      if (((from_bitField0_ & 0x04000000) != 0)) {
    +        result.experimentalDisableFoldingQuantizationEmulation_ = experimentalDisableFoldingQuantizationEmulation_;
    +      }
    +      if (((from_bitField0_ & 0x08000000) != 0)) {
    +        result.memoryOptimization_ = memoryOptimization_;
    +      }
    +      if (((from_bitField0_ & 0x10000000) != 0)) {
    +        result.memoryOptimizerTargetNodeNameScope_ = memoryOptimizerTargetNodeNameScope_;
    +      }
    +      if (((from_bitField0_ & 0x20000000) != 0)) {
    +        result.metaOptimizerTimeoutMs_ = metaOptimizerTimeoutMs_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x40000000) != 0)) {
    +        result.autoParallel_ = autoParallelBuilder_ == null
    +            ? autoParallel_
    +            : autoParallelBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x80000000) != 0)) {
    +        result.failOnOptimizerErrors_ = failOnOptimizerErrors_;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial1(org.tensorflow.proto.RewriterConfig result) {
    +      int from_bitField1_ = bitField1_;
    +      int to_bitField0_ = 0;
    +      if (((from_bitField1_ & 0x00000001) != 0)) {
    +        result.scopedAllocatorOpts_ = scopedAllocatorOptsBuilder_ == null
    +            ? scopedAllocatorOpts_
    +            : scopedAllocatorOptsBuilder_.build();
    +        to_bitField0_ |= 0x00000002;
    +      }
    +      if (((from_bitField1_ & 0x00000002) != 0)) {
    +        optimizers_.makeImmutable();
    +        result.optimizers_ = optimizers_;
    +      }
    +      if (((from_bitField1_ & 0x00000008) != 0)) {
    +        result.interOptimizerVerifierConfig_ = interOptimizerVerifierConfigBuilder_ == null
    +            ? interOptimizerVerifierConfig_
    +            : interOptimizerVerifierConfigBuilder_.build();
    +        to_bitField0_ |= 0x00000004;
    +      }
    +      if (((from_bitField1_ & 0x00000010) != 0)) {
    +        result.postOptimizationVerifierConfig_ = postOptimizationVerifierConfigBuilder_ == null
    +            ? postOptimizationVerifierConfig_
    +            : postOptimizationVerifierConfigBuilder_.build();
    +        to_bitField0_ |= 0x00000008;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.RewriterConfig) {
    @@ -3641,6 +3679,7 @@ public Builder mergeFrom(org.tensorflow.proto.RewriterConfig other) {
           }
           if (!other.getMemoryOptimizerTargetNodeNameScope().isEmpty()) {
             memoryOptimizerTargetNodeNameScope_ = other.memoryOptimizerTargetNodeNameScope_;
    +        bitField0_ |= 0x10000000;
             onChanged();
           }
           if (other.getMetaOptimizerTimeoutMs() != 0L) {
    @@ -3658,7 +3697,7 @@ public Builder mergeFrom(org.tensorflow.proto.RewriterConfig other) {
           if (!other.optimizers_.isEmpty()) {
             if (optimizers_.isEmpty()) {
               optimizers_ = other.optimizers_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField1_ |= 0x00000002;
             } else {
               ensureOptimizersIsMutable();
               optimizers_.addAll(other.optimizers_);
    @@ -3669,7 +3708,7 @@ public Builder mergeFrom(org.tensorflow.proto.RewriterConfig other) {
             if (!other.customOptimizers_.isEmpty()) {
               if (customOptimizers_.isEmpty()) {
                 customOptimizers_ = other.customOptimizers_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            bitField1_ = (bitField1_ & ~0x00000004);
               } else {
                 ensureCustomOptimizersIsMutable();
                 customOptimizers_.addAll(other.customOptimizers_);
    @@ -3682,9 +3721,9 @@ public Builder mergeFrom(org.tensorflow.proto.RewriterConfig other) {
                 customOptimizersBuilder_.dispose();
                 customOptimizersBuilder_ = null;
                 customOptimizers_ = other.customOptimizers_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            bitField1_ = (bitField1_ & ~0x00000004);
                 customOptimizersBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getCustomOptimizersFieldBuilder() : null;
               } else {
                 customOptimizersBuilder_.addAllMessages(other.customOptimizers_);
    @@ -3725,171 +3764,171 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   layoutOptimizer_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 8
                 case 16: {
                   disableModelPruning_ = input.readBool();
    -
    +              bitField0_ |= 0x00000800;
                   break;
                 } // case 16
                 case 24: {
                   constantFolding_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 24
                 case 32: {
                   memoryOptimization_ = input.readEnum();
    -
    +              bitField0_ |= 0x08000000;
                   break;
                 } // case 32
                 case 42: {
                   input.readMessage(
                       getAutoParallelFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x40000000;
                   break;
                 } // case 42
                 case 50: {
                   memoryOptimizerTargetNodeNameScope_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x10000000;
                   break;
                 } // case 50
                 case 56: {
                   arithmeticOptimization_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000040;
                   break;
                 } // case 56
                 case 64: {
                   dependencyOptimization_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000080;
                   break;
                 } // case 64
                 case 72: {
                   loopOptimization_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000100;
                   break;
                 } // case 72
                 case 80: {
                   functionOptimization_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000200;
                   break;
                 } // case 80
                 case 88: {
                   debugStripper_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000400;
                   break;
                 } // case 88
                 case 96: {
                   metaOptimizerIterations_ = input.readEnum();
    -
    +              bitField0_ |= 0x00800000;
                   break;
                 } // case 96
                 case 104: {
                   shapeOptimization_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 104
                 case 112: {
                   remapping_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 112
                 case 120: {
                   scopedAllocatorOptimization_ = input.readEnum();
    -
    +              bitField0_ |= 0x00001000;
                   break;
                 } // case 120
                 case 130: {
                   input.readMessage(
                       getScopedAllocatorOptsFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField1_ |= 0x00000001;
                   break;
                 } // case 130
                 case 136: {
                   minGraphNodes_ = input.readInt32();
    -
    +              bitField0_ |= 0x01000000;
                   break;
                 } // case 136
                 case 144: {
                   pinToHostOptimization_ = input.readEnum();
    -
    +              bitField0_ |= 0x00002000;
                   break;
                 } // case 144
                 case 152: {
                   disableMetaOptimizer_ = input.readBool();
    -
    +              bitField0_ |= 0x00080000;
                   break;
                 } // case 152
                 case 160: {
                   metaOptimizerTimeoutMs_ = input.readInt64();
    -
    +              bitField0_ |= 0x20000000;
                   break;
                 } // case 160
                 case 168: {
                   failOnOptimizerErrors_ = input.readBool();
    -
    +              bitField0_ |= 0x80000000;
                   break;
                 } // case 168
                 case 176: {
                   implementationSelector_ = input.readEnum();
    -
    +              bitField0_ |= 0x00004000;
                   break;
                 } // case 176
                 case 184: {
                   autoMixedPrecision_ = input.readEnum();
    -
    +              bitField0_ |= 0x00008000;
                   break;
                 } // case 184
                 case 192: {
                   commonSubgraphElimination_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 192
                 case 200: {
                   autoMixedPrecisionMkl_ = input.readEnum();
    -
    +              bitField0_ |= 0x00010000;
                   break;
                 } // case 200
                 case 208: {
                   experimentalDisableCompressedTensorOptimization_ = input.readBool();
    -
    +              bitField0_ |= 0x02000000;
                   break;
                 } // case 208
                 case 216: {
                   experimentalDisableFoldingQuantizationEmulation_ = input.readBool();
    -
    +              bitField0_ |= 0x04000000;
                   break;
                 } // case 216
                 case 224: {
                   usePluginOptimizers_ = input.readEnum();
    -
    +              bitField0_ |= 0x00200000;
                   break;
                 } // case 224
                 case 232: {
                   autoMixedPrecisionCpu_ = input.readEnum();
    -
    +              bitField0_ |= 0x00040000;
                   break;
                 } // case 232
                 case 240: {
                   experimentalConditionalCodeMotion_ = input.readEnum();
    -
    +              bitField0_ |= 0x00400000;
                   break;
                 } // case 240
                 case 248: {
                   autoMixedPrecisionOnednnBfloat16_ = input.readEnum();
    -
    +              bitField0_ |= 0x00020000;
                   break;
                 } // case 248
                 case 256: {
                   disableTfgOptimizer_ = input.readBool();
    -
    +              bitField0_ |= 0x00100000;
                   break;
                 } // case 256
                 case 400: {
                   cpuLayoutConversion_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 400
                 case 802: {
    @@ -3915,14 +3954,14 @@ public Builder mergeFrom(
                   input.readMessage(
                       getInterOptimizerVerifierConfigFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField1_ |= 0x00000008;
                   break;
                 } // case 2402
                 case 2410: {
                   input.readMessage(
                       getPostOptimizationVerifierConfigFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField1_ |= 0x00000010;
                   break;
                 } // case 2410
                 default: {
    @@ -3941,6 +3980,7 @@ public Builder mergeFrom(
           return this;
         }
         private int bitField0_;
    +    private int bitField1_;
     
         private int cpuLayoutConversion_ = 0;
         /**
    @@ -3964,8 +4004,8 @@ public Builder mergeFrom(
          * @return This builder for chaining.
          */
         public Builder setCpuLayoutConversionValue(int value) {
    -      
           cpuLayoutConversion_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -3979,8 +4019,7 @@ public Builder setCpuLayoutConversionValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.RewriterConfig.CpuLayout getCpuLayoutConversion() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.RewriterConfig.CpuLayout result = org.tensorflow.proto.RewriterConfig.CpuLayout.valueOf(cpuLayoutConversion_);
    +      org.tensorflow.proto.RewriterConfig.CpuLayout result = org.tensorflow.proto.RewriterConfig.CpuLayout.forNumber(cpuLayoutConversion_);
           return result == null ? org.tensorflow.proto.RewriterConfig.CpuLayout.UNRECOGNIZED : result;
         }
         /**
    @@ -3996,7 +4035,7 @@ public Builder setCpuLayoutConversion(org.tensorflow.proto.RewriterConfig.CpuLay
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000001;
           cpuLayoutConversion_ = value.getNumber();
           onChanged();
           return this;
    @@ -4010,7 +4049,7 @@ public Builder setCpuLayoutConversion(org.tensorflow.proto.RewriterConfig.CpuLay
          * @return This builder for chaining.
          */
         public Builder clearCpuLayoutConversion() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           cpuLayoutConversion_ = 0;
           onChanged();
           return this;
    @@ -4040,8 +4079,8 @@ public Builder clearCpuLayoutConversion() {
          * @return This builder for chaining.
          */
         public Builder setLayoutOptimizerValue(int value) {
    -      
           layoutOptimizer_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -4056,8 +4095,7 @@ public Builder setLayoutOptimizerValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.RewriterConfig.Toggle getLayoutOptimizer() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(layoutOptimizer_);
    +      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(layoutOptimizer_);
           return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
         }
         /**
    @@ -4074,7 +4112,7 @@ public Builder setLayoutOptimizer(org.tensorflow.proto.RewriterConfig.Toggle val
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000002;
           layoutOptimizer_ = value.getNumber();
           onChanged();
           return this;
    @@ -4089,7 +4127,7 @@ public Builder setLayoutOptimizer(org.tensorflow.proto.RewriterConfig.Toggle val
          * @return This builder for chaining.
          */
         public Builder clearLayoutOptimizer() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           layoutOptimizer_ = 0;
           onChanged();
           return this;
    @@ -4121,8 +4159,8 @@ public Builder clearLayoutOptimizer() {
          * @return This builder for chaining.
          */
         public Builder setConstantFoldingValue(int value) {
    -      
           constantFolding_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -4138,8 +4176,7 @@ public Builder setConstantFoldingValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.RewriterConfig.Toggle getConstantFolding() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(constantFolding_);
    +      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(constantFolding_);
           return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
         }
         /**
    @@ -4157,7 +4194,7 @@ public Builder setConstantFolding(org.tensorflow.proto.RewriterConfig.Toggle val
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000004;
           constantFolding_ = value.getNumber();
           onChanged();
           return this;
    @@ -4173,7 +4210,7 @@ public Builder setConstantFolding(org.tensorflow.proto.RewriterConfig.Toggle val
          * @return This builder for chaining.
          */
         public Builder clearConstantFolding() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           constantFolding_ = 0;
           onChanged();
           return this;
    @@ -4203,8 +4240,8 @@ public Builder clearConstantFolding() {
          * @return This builder for chaining.
          */
         public Builder setShapeOptimizationValue(int value) {
    -      
           shapeOptimization_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -4219,8 +4256,7 @@ public Builder setShapeOptimizationValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.RewriterConfig.Toggle getShapeOptimization() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(shapeOptimization_);
    +      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(shapeOptimization_);
           return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
         }
         /**
    @@ -4237,7 +4273,7 @@ public Builder setShapeOptimization(org.tensorflow.proto.RewriterConfig.Toggle v
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000008;
           shapeOptimization_ = value.getNumber();
           onChanged();
           return this;
    @@ -4252,7 +4288,7 @@ public Builder setShapeOptimization(org.tensorflow.proto.RewriterConfig.Toggle v
          * @return This builder for chaining.
          */
         public Builder clearShapeOptimization() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           shapeOptimization_ = 0;
           onChanged();
           return this;
    @@ -4282,8 +4318,8 @@ public Builder clearShapeOptimization() {
          * @return This builder for chaining.
          */
         public Builder setRemappingValue(int value) {
    -      
           remapping_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -4298,8 +4334,7 @@ public Builder setRemappingValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.RewriterConfig.Toggle getRemapping() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(remapping_);
    +      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(remapping_);
           return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
         }
         /**
    @@ -4316,7 +4351,7 @@ public Builder setRemapping(org.tensorflow.proto.RewriterConfig.Toggle value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000010;
           remapping_ = value.getNumber();
           onChanged();
           return this;
    @@ -4331,7 +4366,7 @@ public Builder setRemapping(org.tensorflow.proto.RewriterConfig.Toggle value) {
          * @return This builder for chaining.
          */
         public Builder clearRemapping() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000010);
           remapping_ = 0;
           onChanged();
           return this;
    @@ -4361,8 +4396,8 @@ public Builder clearRemapping() {
          * @return This builder for chaining.
          */
         public Builder setCommonSubgraphEliminationValue(int value) {
    -      
           commonSubgraphElimination_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -4377,8 +4412,7 @@ public Builder setCommonSubgraphEliminationValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.RewriterConfig.Toggle getCommonSubgraphElimination() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(commonSubgraphElimination_);
    +      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(commonSubgraphElimination_);
           return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
         }
         /**
    @@ -4395,7 +4429,7 @@ public Builder setCommonSubgraphElimination(org.tensorflow.proto.RewriterConfig.
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000020;
           commonSubgraphElimination_ = value.getNumber();
           onChanged();
           return this;
    @@ -4410,7 +4444,7 @@ public Builder setCommonSubgraphElimination(org.tensorflow.proto.RewriterConfig.
          * @return This builder for chaining.
          */
         public Builder clearCommonSubgraphElimination() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000020);
           commonSubgraphElimination_ = 0;
           onChanged();
           return this;
    @@ -4440,8 +4474,8 @@ public Builder clearCommonSubgraphElimination() {
          * @return This builder for chaining.
          */
         public Builder setArithmeticOptimizationValue(int value) {
    -      
           arithmeticOptimization_ = value;
    +      bitField0_ |= 0x00000040;
           onChanged();
           return this;
         }
    @@ -4456,8 +4490,7 @@ public Builder setArithmeticOptimizationValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.RewriterConfig.Toggle getArithmeticOptimization() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(arithmeticOptimization_);
    +      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(arithmeticOptimization_);
           return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
         }
         /**
    @@ -4474,7 +4507,7 @@ public Builder setArithmeticOptimization(org.tensorflow.proto.RewriterConfig.Tog
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000040;
           arithmeticOptimization_ = value.getNumber();
           onChanged();
           return this;
    @@ -4489,7 +4522,7 @@ public Builder setArithmeticOptimization(org.tensorflow.proto.RewriterConfig.Tog
          * @return This builder for chaining.
          */
         public Builder clearArithmeticOptimization() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000040);
           arithmeticOptimization_ = 0;
           onChanged();
           return this;
    @@ -4519,8 +4552,8 @@ public Builder clearArithmeticOptimization() {
          * @return This builder for chaining.
          */
         public Builder setDependencyOptimizationValue(int value) {
    -      
           dependencyOptimization_ = value;
    +      bitField0_ |= 0x00000080;
           onChanged();
           return this;
         }
    @@ -4535,8 +4568,7 @@ public Builder setDependencyOptimizationValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.RewriterConfig.Toggle getDependencyOptimization() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(dependencyOptimization_);
    +      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(dependencyOptimization_);
           return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
         }
         /**
    @@ -4553,7 +4585,7 @@ public Builder setDependencyOptimization(org.tensorflow.proto.RewriterConfig.Tog
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000080;
           dependencyOptimization_ = value.getNumber();
           onChanged();
           return this;
    @@ -4568,7 +4600,7 @@ public Builder setDependencyOptimization(org.tensorflow.proto.RewriterConfig.Tog
          * @return This builder for chaining.
          */
         public Builder clearDependencyOptimization() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000080);
           dependencyOptimization_ = 0;
           onChanged();
           return this;
    @@ -4596,8 +4628,8 @@ public Builder clearDependencyOptimization() {
          * @return This builder for chaining.
          */
         public Builder setLoopOptimizationValue(int value) {
    -      
           loopOptimization_ = value;
    +      bitField0_ |= 0x00000100;
           onChanged();
           return this;
         }
    @@ -4611,8 +4643,7 @@ public Builder setLoopOptimizationValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.RewriterConfig.Toggle getLoopOptimization() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(loopOptimization_);
    +      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(loopOptimization_);
           return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
         }
         /**
    @@ -4628,7 +4659,7 @@ public Builder setLoopOptimization(org.tensorflow.proto.RewriterConfig.Toggle va
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000100;
           loopOptimization_ = value.getNumber();
           onChanged();
           return this;
    @@ -4642,7 +4673,7 @@ public Builder setLoopOptimization(org.tensorflow.proto.RewriterConfig.Toggle va
          * @return This builder for chaining.
          */
         public Builder clearLoopOptimization() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000100);
           loopOptimization_ = 0;
           onChanged();
           return this;
    @@ -4670,8 +4701,8 @@ public Builder clearLoopOptimization() {
          * @return This builder for chaining.
          */
         public Builder setFunctionOptimizationValue(int value) {
    -      
           functionOptimization_ = value;
    +      bitField0_ |= 0x00000200;
           onChanged();
           return this;
         }
    @@ -4685,8 +4716,7 @@ public Builder setFunctionOptimizationValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.RewriterConfig.Toggle getFunctionOptimization() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(functionOptimization_);
    +      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(functionOptimization_);
           return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
         }
         /**
    @@ -4702,7 +4732,7 @@ public Builder setFunctionOptimization(org.tensorflow.proto.RewriterConfig.Toggl
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000200;
           functionOptimization_ = value.getNumber();
           onChanged();
           return this;
    @@ -4716,7 +4746,7 @@ public Builder setFunctionOptimization(org.tensorflow.proto.RewriterConfig.Toggl
          * @return This builder for chaining.
          */
         public Builder clearFunctionOptimization() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000200);
           functionOptimization_ = 0;
           onChanged();
           return this;
    @@ -4744,8 +4774,8 @@ public Builder clearFunctionOptimization() {
          * @return This builder for chaining.
          */
         public Builder setDebugStripperValue(int value) {
    -      
           debugStripper_ = value;
    +      bitField0_ |= 0x00000400;
           onChanged();
           return this;
         }
    @@ -4759,8 +4789,7 @@ public Builder setDebugStripperValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.RewriterConfig.Toggle getDebugStripper() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(debugStripper_);
    +      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(debugStripper_);
           return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
         }
         /**
    @@ -4776,7 +4805,7 @@ public Builder setDebugStripper(org.tensorflow.proto.RewriterConfig.Toggle value
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000400;
           debugStripper_ = value.getNumber();
           onChanged();
           return this;
    @@ -4790,7 +4819,7 @@ public Builder setDebugStripper(org.tensorflow.proto.RewriterConfig.Toggle value
          * @return This builder for chaining.
          */
         public Builder clearDebugStripper() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000400);
           debugStripper_ = 0;
           onChanged();
           return this;
    @@ -4819,8 +4848,9 @@ public boolean getDisableModelPruning() {
          * @return This builder for chaining.
          */
         public Builder setDisableModelPruning(boolean value) {
    -      
    +
           disableModelPruning_ = value;
    +      bitField0_ |= 0x00000800;
           onChanged();
           return this;
         }
    @@ -4833,7 +4863,7 @@ public Builder setDisableModelPruning(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearDisableModelPruning() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000800);
           disableModelPruning_ = false;
           onChanged();
           return this;
    @@ -4863,8 +4893,8 @@ public Builder clearDisableModelPruning() {
          * @return This builder for chaining.
          */
         public Builder setScopedAllocatorOptimizationValue(int value) {
    -      
           scopedAllocatorOptimization_ = value;
    +      bitField0_ |= 0x00001000;
           onChanged();
           return this;
         }
    @@ -4879,8 +4909,7 @@ public Builder setScopedAllocatorOptimizationValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.RewriterConfig.Toggle getScopedAllocatorOptimization() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(scopedAllocatorOptimization_);
    +      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(scopedAllocatorOptimization_);
           return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
         }
         /**
    @@ -4897,7 +4926,7 @@ public Builder setScopedAllocatorOptimization(org.tensorflow.proto.RewriterConfi
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00001000;
           scopedAllocatorOptimization_ = value.getNumber();
           onChanged();
           return this;
    @@ -4912,7 +4941,7 @@ public Builder setScopedAllocatorOptimization(org.tensorflow.proto.RewriterConfi
          * @return This builder for chaining.
          */
         public Builder clearScopedAllocatorOptimization() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00001000);
           scopedAllocatorOptimization_ = 0;
           onChanged();
           return this;
    @@ -4940,8 +4969,8 @@ public Builder clearScopedAllocatorOptimization() {
          * @return This builder for chaining.
          */
         public Builder setPinToHostOptimizationValue(int value) {
    -      
           pinToHostOptimization_ = value;
    +      bitField0_ |= 0x00002000;
           onChanged();
           return this;
         }
    @@ -4955,8 +4984,7 @@ public Builder setPinToHostOptimizationValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.RewriterConfig.Toggle getPinToHostOptimization() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(pinToHostOptimization_);
    +      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(pinToHostOptimization_);
           return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
         }
         /**
    @@ -4972,7 +5000,7 @@ public Builder setPinToHostOptimization(org.tensorflow.proto.RewriterConfig.Togg
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00002000;
           pinToHostOptimization_ = value.getNumber();
           onChanged();
           return this;
    @@ -4986,7 +5014,7 @@ public Builder setPinToHostOptimization(org.tensorflow.proto.RewriterConfig.Togg
          * @return This builder for chaining.
          */
         public Builder clearPinToHostOptimization() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00002000);
           pinToHostOptimization_ = 0;
           onChanged();
           return this;
    @@ -5016,8 +5044,8 @@ public Builder clearPinToHostOptimization() {
          * @return This builder for chaining.
          */
         public Builder setImplementationSelectorValue(int value) {
    -      
           implementationSelector_ = value;
    +      bitField0_ |= 0x00004000;
           onChanged();
           return this;
         }
    @@ -5032,8 +5060,7 @@ public Builder setImplementationSelectorValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.RewriterConfig.Toggle getImplementationSelector() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(implementationSelector_);
    +      org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(implementationSelector_);
           return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result;
         }
         /**
    @@ -5050,7 +5077,7 @@ public Builder setImplementationSelector(org.tensorflow.proto.RewriterConfig.Tog
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00004000;
           implementationSelector_ = value.getNumber();
           onChanged();
           return this;
    @@ -5065,7 +5092,7 @@ public Builder setImplementationSelector(org.tensorflow.proto.RewriterConfig.Tog
          * @return This builder for chaining.
          */
         public Builder clearImplementationSelector() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00004000);
           implementationSelector_ = 0;
           onChanged();
           return this;
    @@ -5074,8 +5101,8 @@ public Builder clearImplementationSelector() {
         private int autoMixedPrecision_ = 0;
         /**
          * 
    -     * Optimize data types for CUDA (default is OFF).
    -     * This will try to use float16 on GPU which is faster.
    +     * Optimize data types for CUDA/oneDNN (default is OFF).
    +     * This will try to use float16 on GPU/CPU which is faster.
          * Note that this can change the numerical stability of the graph and may
          * require the use of loss scaling to maintain model convergence.
          * 
    @@ -5088,8 +5115,8 @@ public Builder clearImplementationSelector() { } /** *
    -     * Optimize data types for CUDA (default is OFF).
    -     * This will try to use float16 on GPU which is faster.
    +     * Optimize data types for CUDA/oneDNN (default is OFF).
    +     * This will try to use float16 on GPU/CPU which is faster.
          * Note that this can change the numerical stability of the graph and may
          * require the use of loss scaling to maintain model convergence.
          * 
    @@ -5099,15 +5126,15 @@ public Builder clearImplementationSelector() { * @return This builder for chaining. */ public Builder setAutoMixedPrecisionValue(int value) { - autoMixedPrecision_ = value; + bitField0_ |= 0x00008000; onChanged(); return this; } /** *
    -     * Optimize data types for CUDA (default is OFF).
    -     * This will try to use float16 on GPU which is faster.
    +     * Optimize data types for CUDA/oneDNN (default is OFF).
    +     * This will try to use float16 on GPU/CPU which is faster.
          * Note that this can change the numerical stability of the graph and may
          * require the use of loss scaling to maintain model convergence.
          * 
    @@ -5117,14 +5144,13 @@ public Builder setAutoMixedPrecisionValue(int value) { */ @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getAutoMixedPrecision() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(autoMixedPrecision_); + org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(autoMixedPrecision_); return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result; } /** *
    -     * Optimize data types for CUDA (default is OFF).
    -     * This will try to use float16 on GPU which is faster.
    +     * Optimize data types for CUDA/oneDNN (default is OFF).
    +     * This will try to use float16 on GPU/CPU which is faster.
          * Note that this can change the numerical stability of the graph and may
          * require the use of loss scaling to maintain model convergence.
          * 
    @@ -5137,15 +5163,15 @@ public Builder setAutoMixedPrecision(org.tensorflow.proto.RewriterConfig.Toggle if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00008000; autoMixedPrecision_ = value.getNumber(); onChanged(); return this; } /** *
    -     * Optimize data types for CUDA (default is OFF).
    -     * This will try to use float16 on GPU which is faster.
    +     * Optimize data types for CUDA/oneDNN (default is OFF).
    +     * This will try to use float16 on GPU/CPU which is faster.
          * Note that this can change the numerical stability of the graph and may
          * require the use of loss scaling to maintain model convergence.
          * 
    @@ -5154,7 +5180,7 @@ public Builder setAutoMixedPrecision(org.tensorflow.proto.RewriterConfig.Toggle * @return This builder for chaining. */ public Builder clearAutoMixedPrecision() { - + bitField0_ = (bitField0_ & ~0x00008000); autoMixedPrecision_ = 0; onChanged(); return this; @@ -5190,8 +5216,8 @@ public Builder clearAutoMixedPrecision() { * @return This builder for chaining. */ public Builder setAutoMixedPrecisionMklValue(int value) { - autoMixedPrecisionMkl_ = value; + bitField0_ |= 0x00010000; onChanged(); return this; } @@ -5209,8 +5235,7 @@ public Builder setAutoMixedPrecisionMklValue(int value) { */ @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getAutoMixedPrecisionMkl() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(autoMixedPrecisionMkl_); + org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(autoMixedPrecisionMkl_); return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result; } /** @@ -5230,7 +5255,7 @@ public Builder setAutoMixedPrecisionMkl(org.tensorflow.proto.RewriterConfig.Togg if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00010000; autoMixedPrecisionMkl_ = value.getNumber(); onChanged(); return this; @@ -5248,7 +5273,7 @@ public Builder setAutoMixedPrecisionMkl(org.tensorflow.proto.RewriterConfig.Togg * @return This builder for chaining. */ public Builder clearAutoMixedPrecisionMkl() { - + bitField0_ = (bitField0_ & ~0x00010000); autoMixedPrecisionMkl_ = 0; onChanged(); return this; @@ -5282,8 +5307,8 @@ public Builder clearAutoMixedPrecisionMkl() { * @return This builder for chaining. */ public Builder setAutoMixedPrecisionOnednnBfloat16Value(int value) { - autoMixedPrecisionOnednnBfloat16_ = value; + bitField0_ |= 0x00020000; onChanged(); return this; } @@ -5300,8 +5325,7 @@ public Builder setAutoMixedPrecisionOnednnBfloat16Value(int value) { */ @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getAutoMixedPrecisionOnednnBfloat16() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(autoMixedPrecisionOnednnBfloat16_); + org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(autoMixedPrecisionOnednnBfloat16_); return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result; } /** @@ -5320,7 +5344,7 @@ public Builder setAutoMixedPrecisionOnednnBfloat16(org.tensorflow.proto.Rewriter if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00020000; autoMixedPrecisionOnednnBfloat16_ = value.getNumber(); onChanged(); return this; @@ -5337,7 +5361,7 @@ public Builder setAutoMixedPrecisionOnednnBfloat16(org.tensorflow.proto.Rewriter * @return This builder for chaining. */ public Builder clearAutoMixedPrecisionOnednnBfloat16() { - + bitField0_ = (bitField0_ & ~0x00020000); autoMixedPrecisionOnednnBfloat16_ = 0; onChanged(); return this; @@ -5373,8 +5397,8 @@ public Builder clearAutoMixedPrecisionOnednnBfloat16() { * @return This builder for chaining. */ public Builder setAutoMixedPrecisionCpuValue(int value) { - autoMixedPrecisionCpu_ = value; + bitField0_ |= 0x00040000; onChanged(); return this; } @@ -5392,8 +5416,7 @@ public Builder setAutoMixedPrecisionCpuValue(int value) { */ @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getAutoMixedPrecisionCpu() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(autoMixedPrecisionCpu_); + org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(autoMixedPrecisionCpu_); return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result; } /** @@ -5413,7 +5436,7 @@ public Builder setAutoMixedPrecisionCpu(org.tensorflow.proto.RewriterConfig.Togg if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00040000; autoMixedPrecisionCpu_ = value.getNumber(); onChanged(); return this; @@ -5431,7 +5454,7 @@ public Builder setAutoMixedPrecisionCpu(org.tensorflow.proto.RewriterConfig.Togg * @return This builder for chaining. */ public Builder clearAutoMixedPrecisionCpu() { - + bitField0_ = (bitField0_ & ~0x00040000); autoMixedPrecisionCpu_ = 0; onChanged(); return this; @@ -5460,8 +5483,9 @@ public boolean getDisableMetaOptimizer() { * @return This builder for chaining. */ public Builder setDisableMetaOptimizer(boolean value) { - + disableMetaOptimizer_ = value; + bitField0_ |= 0x00080000; onChanged(); return this; } @@ -5474,7 +5498,7 @@ public Builder setDisableMetaOptimizer(boolean value) { * @return This builder for chaining. */ public Builder clearDisableMetaOptimizer() { - + bitField0_ = (bitField0_ & ~0x00080000); disableMetaOptimizer_ = false; onChanged(); return this; @@ -5503,8 +5527,9 @@ public boolean getDisableTfgOptimizer() { * @return This builder for chaining. */ public Builder setDisableTfgOptimizer(boolean value) { - + disableTfgOptimizer_ = value; + bitField0_ |= 0x00100000; onChanged(); return this; } @@ -5517,7 +5542,7 @@ public Builder setDisableTfgOptimizer(boolean value) { * @return This builder for chaining. */ public Builder clearDisableTfgOptimizer() { - + bitField0_ = (bitField0_ & ~0x00100000); disableTfgOptimizer_ = false; onChanged(); return this; @@ -5545,8 +5570,8 @@ public Builder clearDisableTfgOptimizer() { * @return This builder for chaining. */ public Builder setUsePluginOptimizersValue(int value) { - usePluginOptimizers_ = value; + bitField0_ |= 0x00200000; onChanged(); return this; } @@ -5560,8 +5585,7 @@ public Builder setUsePluginOptimizersValue(int value) { */ @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getUsePluginOptimizers() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(usePluginOptimizers_); + org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(usePluginOptimizers_); return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result; } /** @@ -5577,7 +5601,7 @@ public Builder setUsePluginOptimizers(org.tensorflow.proto.RewriterConfig.Toggle if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00200000; usePluginOptimizers_ = value.getNumber(); onChanged(); return this; @@ -5591,7 +5615,7 @@ public Builder setUsePluginOptimizers(org.tensorflow.proto.RewriterConfig.Toggle * @return This builder for chaining. */ public Builder clearUsePluginOptimizers() { - + bitField0_ = (bitField0_ & ~0x00200000); usePluginOptimizers_ = 0; onChanged(); return this; @@ -5619,8 +5643,8 @@ public Builder clearUsePluginOptimizers() { * @return This builder for chaining. */ public Builder setExperimentalConditionalCodeMotionValue(int value) { - experimentalConditionalCodeMotion_ = value; + bitField0_ |= 0x00400000; onChanged(); return this; } @@ -5634,8 +5658,7 @@ public Builder setExperimentalConditionalCodeMotionValue(int value) { */ @java.lang.Override public org.tensorflow.proto.RewriterConfig.Toggle getExperimentalConditionalCodeMotion() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.valueOf(experimentalConditionalCodeMotion_); + org.tensorflow.proto.RewriterConfig.Toggle result = org.tensorflow.proto.RewriterConfig.Toggle.forNumber(experimentalConditionalCodeMotion_); return result == null ? org.tensorflow.proto.RewriterConfig.Toggle.UNRECOGNIZED : result; } /** @@ -5651,7 +5674,7 @@ public Builder setExperimentalConditionalCodeMotion(org.tensorflow.proto.Rewrite if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00400000; experimentalConditionalCodeMotion_ = value.getNumber(); onChanged(); return this; @@ -5665,7 +5688,7 @@ public Builder setExperimentalConditionalCodeMotion(org.tensorflow.proto.Rewrite * @return This builder for chaining. */ public Builder clearExperimentalConditionalCodeMotion() { - + bitField0_ = (bitField0_ & ~0x00400000); experimentalConditionalCodeMotion_ = 0; onChanged(); return this; @@ -5695,8 +5718,8 @@ public Builder clearExperimentalConditionalCodeMotion() { * @return This builder for chaining. */ public Builder setMetaOptimizerIterationsValue(int value) { - metaOptimizerIterations_ = value; + bitField0_ |= 0x00800000; onChanged(); return this; } @@ -5711,8 +5734,7 @@ public Builder setMetaOptimizerIterationsValue(int value) { */ @java.lang.Override public org.tensorflow.proto.RewriterConfig.NumIterationsType getMetaOptimizerIterations() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.RewriterConfig.NumIterationsType result = org.tensorflow.proto.RewriterConfig.NumIterationsType.valueOf(metaOptimizerIterations_); + org.tensorflow.proto.RewriterConfig.NumIterationsType result = org.tensorflow.proto.RewriterConfig.NumIterationsType.forNumber(metaOptimizerIterations_); return result == null ? org.tensorflow.proto.RewriterConfig.NumIterationsType.UNRECOGNIZED : result; } /** @@ -5729,7 +5751,7 @@ public Builder setMetaOptimizerIterations(org.tensorflow.proto.RewriterConfig.Nu if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00800000; metaOptimizerIterations_ = value.getNumber(); onChanged(); return this; @@ -5744,7 +5766,7 @@ public Builder setMetaOptimizerIterations(org.tensorflow.proto.RewriterConfig.Nu * @return This builder for chaining. */ public Builder clearMetaOptimizerIterations() { - + bitField0_ = (bitField0_ & ~0x00800000); metaOptimizerIterations_ = 0; onChanged(); return this; @@ -5779,8 +5801,9 @@ public int getMinGraphNodes() { * @return This builder for chaining. */ public Builder setMinGraphNodes(int value) { - + minGraphNodes_ = value; + bitField0_ |= 0x01000000; onChanged(); return this; } @@ -5796,7 +5819,7 @@ public Builder setMinGraphNodes(int value) { * @return This builder for chaining. */ public Builder clearMinGraphNodes() { - + bitField0_ = (bitField0_ & ~0x01000000); minGraphNodes_ = 0; onChanged(); return this; @@ -5827,8 +5850,9 @@ public boolean getExperimentalDisableCompressedTensorOptimization() { * @return This builder for chaining. */ public Builder setExperimentalDisableCompressedTensorOptimization(boolean value) { - + experimentalDisableCompressedTensorOptimization_ = value; + bitField0_ |= 0x02000000; onChanged(); return this; } @@ -5842,7 +5866,7 @@ public Builder setExperimentalDisableCompressedTensorOptimization(boolean value) * @return This builder for chaining. */ public Builder clearExperimentalDisableCompressedTensorOptimization() { - + bitField0_ = (bitField0_ & ~0x02000000); experimentalDisableCompressedTensorOptimization_ = false; onChanged(); return this; @@ -5881,8 +5905,9 @@ public boolean getExperimentalDisableFoldingQuantizationEmulation() { * @return This builder for chaining. */ public Builder setExperimentalDisableFoldingQuantizationEmulation(boolean value) { - + experimentalDisableFoldingQuantizationEmulation_ = value; + bitField0_ |= 0x04000000; onChanged(); return this; } @@ -5900,7 +5925,7 @@ public Builder setExperimentalDisableFoldingQuantizationEmulation(boolean value) * @return This builder for chaining. */ public Builder clearExperimentalDisableFoldingQuantizationEmulation() { - + bitField0_ = (bitField0_ & ~0x04000000); experimentalDisableFoldingQuantizationEmulation_ = false; onChanged(); return this; @@ -5932,8 +5957,8 @@ public Builder clearExperimentalDisableFoldingQuantizationEmulation() { * @return This builder for chaining. */ public Builder setMemoryOptimizationValue(int value) { - memoryOptimization_ = value; + bitField0_ |= 0x08000000; onChanged(); return this; } @@ -5949,8 +5974,7 @@ public Builder setMemoryOptimizationValue(int value) { */ @java.lang.Override public org.tensorflow.proto.RewriterConfig.MemOptType getMemoryOptimization() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.RewriterConfig.MemOptType result = org.tensorflow.proto.RewriterConfig.MemOptType.valueOf(memoryOptimization_); + org.tensorflow.proto.RewriterConfig.MemOptType result = org.tensorflow.proto.RewriterConfig.MemOptType.forNumber(memoryOptimization_); return result == null ? org.tensorflow.proto.RewriterConfig.MemOptType.UNRECOGNIZED : result; } /** @@ -5968,7 +5992,7 @@ public Builder setMemoryOptimization(org.tensorflow.proto.RewriterConfig.MemOptT if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x08000000; memoryOptimization_ = value.getNumber(); onChanged(); return this; @@ -5984,7 +6008,7 @@ public Builder setMemoryOptimization(org.tensorflow.proto.RewriterConfig.MemOptT * @return This builder for chaining. */ public Builder clearMemoryOptimization() { - + bitField0_ = (bitField0_ & ~0x08000000); memoryOptimization_ = 0; onChanged(); return this; @@ -6064,11 +6088,9 @@ public java.lang.String getMemoryOptimizerTargetNodeNameScope() { */ public Builder setMemoryOptimizerTargetNodeNameScope( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } memoryOptimizerTargetNodeNameScope_ = value; + bitField0_ |= 0x10000000; onChanged(); return this; } @@ -6088,8 +6110,8 @@ public Builder setMemoryOptimizerTargetNodeNameScope( * @return This builder for chaining. */ public Builder clearMemoryOptimizerTargetNodeNameScope() { - memoryOptimizerTargetNodeNameScope_ = getDefaultInstance().getMemoryOptimizerTargetNodeNameScope(); + bitField0_ = (bitField0_ & ~0x10000000); onChanged(); return this; } @@ -6111,12 +6133,10 @@ public Builder clearMemoryOptimizerTargetNodeNameScope() { */ public Builder setMemoryOptimizerTargetNodeNameScopeBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); memoryOptimizerTargetNodeNameScope_ = value; + bitField0_ |= 0x10000000; onChanged(); return this; } @@ -6148,8 +6168,9 @@ public long getMetaOptimizerTimeoutMs() { * @return This builder for chaining. */ public Builder setMetaOptimizerTimeoutMs(long value) { - + metaOptimizerTimeoutMs_ = value; + bitField0_ |= 0x20000000; onChanged(); return this; } @@ -6164,14 +6185,14 @@ public Builder setMetaOptimizerTimeoutMs(long value) { * @return This builder for chaining. */ public Builder clearMetaOptimizerTimeoutMs() { - + bitField0_ = (bitField0_ & ~0x20000000); metaOptimizerTimeoutMs_ = 0L; onChanged(); return this; } private org.tensorflow.proto.AutoParallelOptions autoParallel_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.AutoParallelOptions, org.tensorflow.proto.AutoParallelOptions.Builder, org.tensorflow.proto.AutoParallelOptionsOrBuilder> autoParallelBuilder_; /** *
    @@ -6183,7 +6204,7 @@ public Builder clearMetaOptimizerTimeoutMs() {
          * @return Whether the autoParallel field is set.
          */
         public boolean hasAutoParallel() {
    -      return autoParallelBuilder_ != null || autoParallel_ != null;
    +      return ((bitField0_ & 0x40000000) != 0);
         }
         /**
          * 
    @@ -6215,11 +6236,11 @@ public Builder setAutoParallel(org.tensorflow.proto.AutoParallelOptions value) {
               throw new NullPointerException();
             }
             autoParallel_ = value;
    -        onChanged();
           } else {
             autoParallelBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x40000000;
    +      onChanged();
           return this;
         }
         /**
    @@ -6234,11 +6255,11 @@ public Builder setAutoParallel(
             org.tensorflow.proto.AutoParallelOptions.Builder builderForValue) {
           if (autoParallelBuilder_ == null) {
             autoParallel_ = builderForValue.build();
    -        onChanged();
           } else {
             autoParallelBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x40000000;
    +      onChanged();
           return this;
         }
         /**
    @@ -6251,17 +6272,20 @@ public Builder setAutoParallel(
          */
         public Builder mergeAutoParallel(org.tensorflow.proto.AutoParallelOptions value) {
           if (autoParallelBuilder_ == null) {
    -        if (autoParallel_ != null) {
    -          autoParallel_ =
    -            org.tensorflow.proto.AutoParallelOptions.newBuilder(autoParallel_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x40000000) != 0) &&
    +          autoParallel_ != null &&
    +          autoParallel_ != org.tensorflow.proto.AutoParallelOptions.getDefaultInstance()) {
    +          getAutoParallelBuilder().mergeFrom(value);
             } else {
               autoParallel_ = value;
             }
    -        onChanged();
           } else {
             autoParallelBuilder_.mergeFrom(value);
           }
    -
    +      if (autoParallel_ != null) {
    +        bitField0_ |= 0x40000000;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -6273,14 +6297,13 @@ public Builder mergeAutoParallel(org.tensorflow.proto.AutoParallelOptions value)
          * .tensorflow.AutoParallelOptions auto_parallel = 5;
          */
         public Builder clearAutoParallel() {
    -      if (autoParallelBuilder_ == null) {
    -        autoParallel_ = null;
    -        onChanged();
    -      } else {
    -        autoParallel_ = null;
    +      bitField0_ = (bitField0_ & ~0x40000000);
    +      autoParallel_ = null;
    +      if (autoParallelBuilder_ != null) {
    +        autoParallelBuilder_.dispose();
             autoParallelBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -6292,7 +6315,7 @@ public Builder clearAutoParallel() {
          * .tensorflow.AutoParallelOptions auto_parallel = 5;
          */
         public org.tensorflow.proto.AutoParallelOptions.Builder getAutoParallelBuilder() {
    -      
    +      bitField0_ |= 0x40000000;
           onChanged();
           return getAutoParallelFieldBuilder().getBuilder();
         }
    @@ -6320,11 +6343,11 @@ public org.tensorflow.proto.AutoParallelOptionsOrBuilder getAutoParallelOrBuilde
          *
          * .tensorflow.AutoParallelOptions auto_parallel = 5;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.AutoParallelOptions, org.tensorflow.proto.AutoParallelOptions.Builder, org.tensorflow.proto.AutoParallelOptionsOrBuilder> 
             getAutoParallelFieldBuilder() {
           if (autoParallelBuilder_ == null) {
    -        autoParallelBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        autoParallelBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.AutoParallelOptions, org.tensorflow.proto.AutoParallelOptions.Builder, org.tensorflow.proto.AutoParallelOptionsOrBuilder>(
                     getAutoParallel(),
                     getParentForChildren(),
    @@ -6361,8 +6384,9 @@ public boolean getFailOnOptimizerErrors() {
          * @return This builder for chaining.
          */
         public Builder setFailOnOptimizerErrors(boolean value) {
    -      
    +
           failOnOptimizerErrors_ = value;
    +      bitField0_ |= 0x80000000;
           onChanged();
           return this;
         }
    @@ -6377,21 +6401,21 @@ public Builder setFailOnOptimizerErrors(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearFailOnOptimizerErrors() {
    -      
    +      bitField0_ = (bitField0_ & ~0x80000000);
           failOnOptimizerErrors_ = false;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.ScopedAllocatorOptions scopedAllocatorOpts_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.ScopedAllocatorOptions, org.tensorflow.proto.ScopedAllocatorOptions.Builder, org.tensorflow.proto.ScopedAllocatorOptionsOrBuilder> scopedAllocatorOptsBuilder_;
         /**
          * .tensorflow.ScopedAllocatorOptions scoped_allocator_opts = 16;
          * @return Whether the scopedAllocatorOpts field is set.
          */
         public boolean hasScopedAllocatorOpts() {
    -      return scopedAllocatorOptsBuilder_ != null || scopedAllocatorOpts_ != null;
    +      return ((bitField1_ & 0x00000001) != 0);
         }
         /**
          * .tensorflow.ScopedAllocatorOptions scoped_allocator_opts = 16;
    @@ -6413,11 +6437,11 @@ public Builder setScopedAllocatorOpts(org.tensorflow.proto.ScopedAllocatorOption
               throw new NullPointerException();
             }
             scopedAllocatorOpts_ = value;
    -        onChanged();
           } else {
             scopedAllocatorOptsBuilder_.setMessage(value);
           }
    -
    +      bitField1_ |= 0x00000001;
    +      onChanged();
           return this;
         }
         /**
    @@ -6427,11 +6451,11 @@ public Builder setScopedAllocatorOpts(
             org.tensorflow.proto.ScopedAllocatorOptions.Builder builderForValue) {
           if (scopedAllocatorOptsBuilder_ == null) {
             scopedAllocatorOpts_ = builderForValue.build();
    -        onChanged();
           } else {
             scopedAllocatorOptsBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField1_ |= 0x00000001;
    +      onChanged();
           return this;
         }
         /**
    @@ -6439,38 +6463,40 @@ public Builder setScopedAllocatorOpts(
          */
         public Builder mergeScopedAllocatorOpts(org.tensorflow.proto.ScopedAllocatorOptions value) {
           if (scopedAllocatorOptsBuilder_ == null) {
    -        if (scopedAllocatorOpts_ != null) {
    -          scopedAllocatorOpts_ =
    -            org.tensorflow.proto.ScopedAllocatorOptions.newBuilder(scopedAllocatorOpts_).mergeFrom(value).buildPartial();
    +        if (((bitField1_ & 0x00000001) != 0) &&
    +          scopedAllocatorOpts_ != null &&
    +          scopedAllocatorOpts_ != org.tensorflow.proto.ScopedAllocatorOptions.getDefaultInstance()) {
    +          getScopedAllocatorOptsBuilder().mergeFrom(value);
             } else {
               scopedAllocatorOpts_ = value;
             }
    -        onChanged();
           } else {
             scopedAllocatorOptsBuilder_.mergeFrom(value);
           }
    -
    +      if (scopedAllocatorOpts_ != null) {
    +        bitField1_ |= 0x00000001;
    +        onChanged();
    +      }
           return this;
         }
         /**
          * .tensorflow.ScopedAllocatorOptions scoped_allocator_opts = 16;
          */
         public Builder clearScopedAllocatorOpts() {
    -      if (scopedAllocatorOptsBuilder_ == null) {
    -        scopedAllocatorOpts_ = null;
    -        onChanged();
    -      } else {
    -        scopedAllocatorOpts_ = null;
    +      bitField1_ = (bitField1_ & ~0x00000001);
    +      scopedAllocatorOpts_ = null;
    +      if (scopedAllocatorOptsBuilder_ != null) {
    +        scopedAllocatorOptsBuilder_.dispose();
             scopedAllocatorOptsBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
          * .tensorflow.ScopedAllocatorOptions scoped_allocator_opts = 16;
          */
         public org.tensorflow.proto.ScopedAllocatorOptions.Builder getScopedAllocatorOptsBuilder() {
    -      
    +      bitField1_ |= 0x00000001;
           onChanged();
           return getScopedAllocatorOptsFieldBuilder().getBuilder();
         }
    @@ -6488,11 +6514,11 @@ public org.tensorflow.proto.ScopedAllocatorOptionsOrBuilder getScopedAllocatorOp
         /**
          * .tensorflow.ScopedAllocatorOptions scoped_allocator_opts = 16;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.ScopedAllocatorOptions, org.tensorflow.proto.ScopedAllocatorOptions.Builder, org.tensorflow.proto.ScopedAllocatorOptionsOrBuilder> 
             getScopedAllocatorOptsFieldBuilder() {
           if (scopedAllocatorOptsBuilder_ == null) {
    -        scopedAllocatorOptsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        scopedAllocatorOptsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.ScopedAllocatorOptions, org.tensorflow.proto.ScopedAllocatorOptions.Builder, org.tensorflow.proto.ScopedAllocatorOptionsOrBuilder>(
                     getScopedAllocatorOpts(),
                     getParentForChildren(),
    @@ -6502,23 +6528,26 @@ public org.tensorflow.proto.ScopedAllocatorOptionsOrBuilder getScopedAllocatorOp
           return scopedAllocatorOptsBuilder_;
         }
     
    -    private com.google.protobuf.LazyStringList optimizers_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList optimizers_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureOptimizersIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!optimizers_.isModifiable()) {
             optimizers_ = new com.google.protobuf.LazyStringArrayList(optimizers_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      }
    +      bitField1_ |= 0x00000002;
         }
         /**
          * 
          * If non-empty, will use this as an alternative way to specify a list of
          * optimizations to turn on and the order of the optimizations (replacing the
          * meta-optimizer).
    +     *
          * Of the RewriterConfig options, only the AutoParallel configuration options
          * (the auto_parallel field) apply to manually requested optimization passes
          * ("autoparallel"). Memory optimization passes ("memory") invoked here are
          * not configurable (in contrast to memory optimization passes through the
          * meta-optimizer) and act only on manual op annotations.
    +     *
          * Custom optimizers (see custom_optimizers) that are not part of this
          * schedule will be run after - in the order that they were specified.
          * 
    @@ -6528,18 +6557,21 @@ private void ensureOptimizersIsMutable() { */ public com.google.protobuf.ProtocolStringList getOptimizersList() { - return optimizers_.getUnmodifiableView(); + optimizers_.makeImmutable(); + return optimizers_; } /** *
          * If non-empty, will use this as an alternative way to specify a list of
          * optimizations to turn on and the order of the optimizations (replacing the
          * meta-optimizer).
    +     *
          * Of the RewriterConfig options, only the AutoParallel configuration options
          * (the auto_parallel field) apply to manually requested optimization passes
          * ("autoparallel"). Memory optimization passes ("memory") invoked here are
          * not configurable (in contrast to memory optimization passes through the
          * meta-optimizer) and act only on manual op annotations.
    +     *
          * Custom optimizers (see custom_optimizers) that are not part of this
          * schedule will be run after - in the order that they were specified.
          * 
    @@ -6555,11 +6587,13 @@ public int getOptimizersCount() { * If non-empty, will use this as an alternative way to specify a list of * optimizations to turn on and the order of the optimizations (replacing the * meta-optimizer). + * * Of the RewriterConfig options, only the AutoParallel configuration options * (the auto_parallel field) apply to manually requested optimization passes * ("autoparallel"). Memory optimization passes ("memory") invoked here are * not configurable (in contrast to memory optimization passes through the * meta-optimizer) and act only on manual op annotations. + * * Custom optimizers (see custom_optimizers) that are not part of this * schedule will be run after - in the order that they were specified. *
    @@ -6576,11 +6610,13 @@ public java.lang.String getOptimizers(int index) { * If non-empty, will use this as an alternative way to specify a list of * optimizations to turn on and the order of the optimizations (replacing the * meta-optimizer). + * * Of the RewriterConfig options, only the AutoParallel configuration options * (the auto_parallel field) apply to manually requested optimization passes * ("autoparallel"). Memory optimization passes ("memory") invoked here are * not configurable (in contrast to memory optimization passes through the * meta-optimizer) and act only on manual op annotations. + * * Custom optimizers (see custom_optimizers) that are not part of this * schedule will be run after - in the order that they were specified. *
    @@ -6598,11 +6634,13 @@ public java.lang.String getOptimizers(int index) { * If non-empty, will use this as an alternative way to specify a list of * optimizations to turn on and the order of the optimizations (replacing the * meta-optimizer). + * * Of the RewriterConfig options, only the AutoParallel configuration options * (the auto_parallel field) apply to manually requested optimization passes * ("autoparallel"). Memory optimization passes ("memory") invoked here are * not configurable (in contrast to memory optimization passes through the * meta-optimizer) and act only on manual op annotations. + * * Custom optimizers (see custom_optimizers) that are not part of this * schedule will be run after - in the order that they were specified. *
    @@ -6614,11 +6652,10 @@ public java.lang.String getOptimizers(int index) { */ public Builder setOptimizers( int index, java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureOptimizersIsMutable(); + if (value == null) { throw new NullPointerException(); } + ensureOptimizersIsMutable(); optimizers_.set(index, value); + bitField1_ |= 0x00000002; onChanged(); return this; } @@ -6627,11 +6664,13 @@ public Builder setOptimizers( * If non-empty, will use this as an alternative way to specify a list of * optimizations to turn on and the order of the optimizations (replacing the * meta-optimizer). + * * Of the RewriterConfig options, only the AutoParallel configuration options * (the auto_parallel field) apply to manually requested optimization passes * ("autoparallel"). Memory optimization passes ("memory") invoked here are * not configurable (in contrast to memory optimization passes through the * meta-optimizer) and act only on manual op annotations. + * * Custom optimizers (see custom_optimizers) that are not part of this * schedule will be run after - in the order that they were specified. *
    @@ -6642,11 +6681,10 @@ public Builder setOptimizers( */ public Builder addOptimizers( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureOptimizersIsMutable(); + if (value == null) { throw new NullPointerException(); } + ensureOptimizersIsMutable(); optimizers_.add(value); + bitField1_ |= 0x00000002; onChanged(); return this; } @@ -6655,11 +6693,13 @@ public Builder addOptimizers( * If non-empty, will use this as an alternative way to specify a list of * optimizations to turn on and the order of the optimizations (replacing the * meta-optimizer). + * * Of the RewriterConfig options, only the AutoParallel configuration options * (the auto_parallel field) apply to manually requested optimization passes * ("autoparallel"). Memory optimization passes ("memory") invoked here are * not configurable (in contrast to memory optimization passes through the * meta-optimizer) and act only on manual op annotations. + * * Custom optimizers (see custom_optimizers) that are not part of this * schedule will be run after - in the order that they were specified. *
    @@ -6673,6 +6713,7 @@ public Builder addAllOptimizers( ensureOptimizersIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, optimizers_); + bitField1_ |= 0x00000002; onChanged(); return this; } @@ -6681,11 +6722,13 @@ public Builder addAllOptimizers( * If non-empty, will use this as an alternative way to specify a list of * optimizations to turn on and the order of the optimizations (replacing the * meta-optimizer). + * * Of the RewriterConfig options, only the AutoParallel configuration options * (the auto_parallel field) apply to manually requested optimization passes * ("autoparallel"). Memory optimization passes ("memory") invoked here are * not configurable (in contrast to memory optimization passes through the * meta-optimizer) and act only on manual op annotations. + * * Custom optimizers (see custom_optimizers) that are not part of this * schedule will be run after - in the order that they were specified. *
    @@ -6694,8 +6737,9 @@ public Builder addAllOptimizers( * @return This builder for chaining. */ public Builder clearOptimizers() { - optimizers_ = com.google.protobuf.LazyStringArrayList.EMPTY; - bitField0_ = (bitField0_ & ~0x00000001); + optimizers_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + bitField1_ = (bitField1_ & ~0x00000002);; onChanged(); return this; } @@ -6704,11 +6748,13 @@ public Builder clearOptimizers() { * If non-empty, will use this as an alternative way to specify a list of * optimizations to turn on and the order of the optimizations (replacing the * meta-optimizer). + * * Of the RewriterConfig options, only the AutoParallel configuration options * (the auto_parallel field) apply to manually requested optimization passes * ("autoparallel"). Memory optimization passes ("memory") invoked here are * not configurable (in contrast to memory optimization passes through the * meta-optimizer) and act only on manual op annotations. + * * Custom optimizers (see custom_optimizers) that are not part of this * schedule will be run after - in the order that they were specified. *
    @@ -6719,12 +6765,11 @@ public Builder clearOptimizers() { */ public Builder addOptimizersBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); ensureOptimizersIsMutable(); optimizers_.add(value); + bitField1_ |= 0x00000002; onChanged(); return this; } @@ -6732,13 +6777,13 @@ public Builder addOptimizersBytes( private java.util.List customOptimizers_ = java.util.Collections.emptyList(); private void ensureCustomOptimizersIsMutable() { - if (!((bitField0_ & 0x00000002) != 0)) { + if (!((bitField1_ & 0x00000004) != 0)) { customOptimizers_ = new java.util.ArrayList(customOptimizers_); - bitField0_ |= 0x00000002; + bitField1_ |= 0x00000004; } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer, org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer.Builder, org.tensorflow.proto.RewriterConfig.CustomGraphOptimizerOrBuilder> customOptimizersBuilder_; /** @@ -6928,7 +6973,7 @@ public Builder addAllCustomOptimizers( public Builder clearCustomOptimizers() { if (customOptimizersBuilder_ == null) { customOptimizers_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000002); + bitField1_ = (bitField1_ & ~0x00000004); onChanged(); } else { customOptimizersBuilder_.clear(); @@ -7026,14 +7071,14 @@ public org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer.Builder addCusto getCustomOptimizersBuilderList() { return getCustomOptimizersFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer, org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer.Builder, org.tensorflow.proto.RewriterConfig.CustomGraphOptimizerOrBuilder> getCustomOptimizersFieldBuilder() { if (customOptimizersBuilder_ == null) { - customOptimizersBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + customOptimizersBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer, org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer.Builder, org.tensorflow.proto.RewriterConfig.CustomGraphOptimizerOrBuilder>( customOptimizers_, - ((bitField0_ & 0x00000002) != 0), + ((bitField1_ & 0x00000004) != 0), getParentForChildren(), isClean()); customOptimizers_ = null; @@ -7042,7 +7087,7 @@ public org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer.Builder addCusto } private org.tensorflow.proto.VerifierConfig interOptimizerVerifierConfig_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.VerifierConfig, org.tensorflow.proto.VerifierConfig.Builder, org.tensorflow.proto.VerifierConfigOrBuilder> interOptimizerVerifierConfigBuilder_; /** *
    @@ -7053,7 +7098,7 @@ public org.tensorflow.proto.RewriterConfig.CustomGraphOptimizer.Builder addCusto
          * @return Whether the interOptimizerVerifierConfig field is set.
          */
         public boolean hasInterOptimizerVerifierConfig() {
    -      return interOptimizerVerifierConfigBuilder_ != null || interOptimizerVerifierConfig_ != null;
    +      return ((bitField1_ & 0x00000008) != 0);
         }
         /**
          * 
    @@ -7083,11 +7128,11 @@ public Builder setInterOptimizerVerifierConfig(org.tensorflow.proto.VerifierConf
               throw new NullPointerException();
             }
             interOptimizerVerifierConfig_ = value;
    -        onChanged();
           } else {
             interOptimizerVerifierConfigBuilder_.setMessage(value);
           }
    -
    +      bitField1_ |= 0x00000008;
    +      onChanged();
           return this;
         }
         /**
    @@ -7101,11 +7146,11 @@ public Builder setInterOptimizerVerifierConfig(
             org.tensorflow.proto.VerifierConfig.Builder builderForValue) {
           if (interOptimizerVerifierConfigBuilder_ == null) {
             interOptimizerVerifierConfig_ = builderForValue.build();
    -        onChanged();
           } else {
             interOptimizerVerifierConfigBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField1_ |= 0x00000008;
    +      onChanged();
           return this;
         }
         /**
    @@ -7117,17 +7162,20 @@ public Builder setInterOptimizerVerifierConfig(
          */
         public Builder mergeInterOptimizerVerifierConfig(org.tensorflow.proto.VerifierConfig value) {
           if (interOptimizerVerifierConfigBuilder_ == null) {
    -        if (interOptimizerVerifierConfig_ != null) {
    -          interOptimizerVerifierConfig_ =
    -            org.tensorflow.proto.VerifierConfig.newBuilder(interOptimizerVerifierConfig_).mergeFrom(value).buildPartial();
    +        if (((bitField1_ & 0x00000008) != 0) &&
    +          interOptimizerVerifierConfig_ != null &&
    +          interOptimizerVerifierConfig_ != org.tensorflow.proto.VerifierConfig.getDefaultInstance()) {
    +          getInterOptimizerVerifierConfigBuilder().mergeFrom(value);
             } else {
               interOptimizerVerifierConfig_ = value;
             }
    -        onChanged();
           } else {
             interOptimizerVerifierConfigBuilder_.mergeFrom(value);
           }
    -
    +      if (interOptimizerVerifierConfig_ != null) {
    +        bitField1_ |= 0x00000008;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -7138,14 +7186,13 @@ public Builder mergeInterOptimizerVerifierConfig(org.tensorflow.proto.VerifierCo
          * .tensorflow.VerifierConfig inter_optimizer_verifier_config = 300;
          */
         public Builder clearInterOptimizerVerifierConfig() {
    -      if (interOptimizerVerifierConfigBuilder_ == null) {
    -        interOptimizerVerifierConfig_ = null;
    -        onChanged();
    -      } else {
    -        interOptimizerVerifierConfig_ = null;
    +      bitField1_ = (bitField1_ & ~0x00000008);
    +      interOptimizerVerifierConfig_ = null;
    +      if (interOptimizerVerifierConfigBuilder_ != null) {
    +        interOptimizerVerifierConfigBuilder_.dispose();
             interOptimizerVerifierConfigBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -7156,7 +7203,7 @@ public Builder clearInterOptimizerVerifierConfig() {
          * .tensorflow.VerifierConfig inter_optimizer_verifier_config = 300;
          */
         public org.tensorflow.proto.VerifierConfig.Builder getInterOptimizerVerifierConfigBuilder() {
    -      
    +      bitField1_ |= 0x00000008;
           onChanged();
           return getInterOptimizerVerifierConfigFieldBuilder().getBuilder();
         }
    @@ -7182,11 +7229,11 @@ public org.tensorflow.proto.VerifierConfigOrBuilder getInterOptimizerVerifierCon
          *
          * .tensorflow.VerifierConfig inter_optimizer_verifier_config = 300;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.VerifierConfig, org.tensorflow.proto.VerifierConfig.Builder, org.tensorflow.proto.VerifierConfigOrBuilder> 
             getInterOptimizerVerifierConfigFieldBuilder() {
           if (interOptimizerVerifierConfigBuilder_ == null) {
    -        interOptimizerVerifierConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        interOptimizerVerifierConfigBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.VerifierConfig, org.tensorflow.proto.VerifierConfig.Builder, org.tensorflow.proto.VerifierConfigOrBuilder>(
                     getInterOptimizerVerifierConfig(),
                     getParentForChildren(),
    @@ -7197,7 +7244,7 @@ public org.tensorflow.proto.VerifierConfigOrBuilder getInterOptimizerVerifierCon
         }
     
         private org.tensorflow.proto.VerifierConfig postOptimizationVerifierConfig_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.VerifierConfig, org.tensorflow.proto.VerifierConfig.Builder, org.tensorflow.proto.VerifierConfigOrBuilder> postOptimizationVerifierConfigBuilder_;
         /**
          * 
    @@ -7209,7 +7256,7 @@ public org.tensorflow.proto.VerifierConfigOrBuilder getInterOptimizerVerifierCon
          * @return Whether the postOptimizationVerifierConfig field is set.
          */
         public boolean hasPostOptimizationVerifierConfig() {
    -      return postOptimizationVerifierConfigBuilder_ != null || postOptimizationVerifierConfig_ != null;
    +      return ((bitField1_ & 0x00000010) != 0);
         }
         /**
          * 
    @@ -7241,11 +7288,11 @@ public Builder setPostOptimizationVerifierConfig(org.tensorflow.proto.VerifierCo
               throw new NullPointerException();
             }
             postOptimizationVerifierConfig_ = value;
    -        onChanged();
           } else {
             postOptimizationVerifierConfigBuilder_.setMessage(value);
           }
    -
    +      bitField1_ |= 0x00000010;
    +      onChanged();
           return this;
         }
         /**
    @@ -7260,11 +7307,11 @@ public Builder setPostOptimizationVerifierConfig(
             org.tensorflow.proto.VerifierConfig.Builder builderForValue) {
           if (postOptimizationVerifierConfigBuilder_ == null) {
             postOptimizationVerifierConfig_ = builderForValue.build();
    -        onChanged();
           } else {
             postOptimizationVerifierConfigBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField1_ |= 0x00000010;
    +      onChanged();
           return this;
         }
         /**
    @@ -7277,17 +7324,20 @@ public Builder setPostOptimizationVerifierConfig(
          */
         public Builder mergePostOptimizationVerifierConfig(org.tensorflow.proto.VerifierConfig value) {
           if (postOptimizationVerifierConfigBuilder_ == null) {
    -        if (postOptimizationVerifierConfig_ != null) {
    -          postOptimizationVerifierConfig_ =
    -            org.tensorflow.proto.VerifierConfig.newBuilder(postOptimizationVerifierConfig_).mergeFrom(value).buildPartial();
    +        if (((bitField1_ & 0x00000010) != 0) &&
    +          postOptimizationVerifierConfig_ != null &&
    +          postOptimizationVerifierConfig_ != org.tensorflow.proto.VerifierConfig.getDefaultInstance()) {
    +          getPostOptimizationVerifierConfigBuilder().mergeFrom(value);
             } else {
               postOptimizationVerifierConfig_ = value;
             }
    -        onChanged();
           } else {
             postOptimizationVerifierConfigBuilder_.mergeFrom(value);
           }
    -
    +      if (postOptimizationVerifierConfig_ != null) {
    +        bitField1_ |= 0x00000010;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -7299,14 +7349,13 @@ public Builder mergePostOptimizationVerifierConfig(org.tensorflow.proto.Verifier
          * .tensorflow.VerifierConfig post_optimization_verifier_config = 301;
          */
         public Builder clearPostOptimizationVerifierConfig() {
    -      if (postOptimizationVerifierConfigBuilder_ == null) {
    -        postOptimizationVerifierConfig_ = null;
    -        onChanged();
    -      } else {
    -        postOptimizationVerifierConfig_ = null;
    +      bitField1_ = (bitField1_ & ~0x00000010);
    +      postOptimizationVerifierConfig_ = null;
    +      if (postOptimizationVerifierConfigBuilder_ != null) {
    +        postOptimizationVerifierConfigBuilder_.dispose();
             postOptimizationVerifierConfigBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -7318,7 +7367,7 @@ public Builder clearPostOptimizationVerifierConfig() {
          * .tensorflow.VerifierConfig post_optimization_verifier_config = 301;
          */
         public org.tensorflow.proto.VerifierConfig.Builder getPostOptimizationVerifierConfigBuilder() {
    -      
    +      bitField1_ |= 0x00000010;
           onChanged();
           return getPostOptimizationVerifierConfigFieldBuilder().getBuilder();
         }
    @@ -7346,11 +7395,11 @@ public org.tensorflow.proto.VerifierConfigOrBuilder getPostOptimizationVerifierC
          *
          * .tensorflow.VerifierConfig post_optimization_verifier_config = 301;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.VerifierConfig, org.tensorflow.proto.VerifierConfig.Builder, org.tensorflow.proto.VerifierConfigOrBuilder> 
             getPostOptimizationVerifierConfigFieldBuilder() {
           if (postOptimizationVerifierConfigBuilder_ == null) {
    -        postOptimizationVerifierConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        postOptimizationVerifierConfigBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.VerifierConfig, org.tensorflow.proto.VerifierConfig.Builder, org.tensorflow.proto.VerifierConfigOrBuilder>(
                     getPostOptimizationVerifierConfig(),
                     getParentForChildren(),
    @@ -7359,18 +7408,6 @@ public org.tensorflow.proto.VerifierConfigOrBuilder getPostOptimizationVerifierC
           }
           return postOptimizationVerifierConfigBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.RewriterConfig)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RewriterConfigOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RewriterConfigOrBuilder.java
    index 9ad4b3cf401..b7e13584dda 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RewriterConfigOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RewriterConfigOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/rewriter_config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -305,8 +307,8 @@ public interface RewriterConfigOrBuilder extends
     
       /**
        * 
    -   * Optimize data types for CUDA (default is OFF).
    -   * This will try to use float16 on GPU which is faster.
    +   * Optimize data types for CUDA/oneDNN (default is OFF).
    +   * This will try to use float16 on GPU/CPU which is faster.
        * Note that this can change the numerical stability of the graph and may
        * require the use of loss scaling to maintain model convergence.
        * 
    @@ -317,8 +319,8 @@ public interface RewriterConfigOrBuilder extends int getAutoMixedPrecisionValue(); /** *
    -   * Optimize data types for CUDA (default is OFF).
    -   * This will try to use float16 on GPU which is faster.
    +   * Optimize data types for CUDA/oneDNN (default is OFF).
    +   * This will try to use float16 on GPU/CPU which is faster.
        * Note that this can change the numerical stability of the graph and may
        * require the use of loss scaling to maintain model convergence.
        * 
    @@ -656,11 +658,13 @@ public interface RewriterConfigOrBuilder extends * If non-empty, will use this as an alternative way to specify a list of * optimizations to turn on and the order of the optimizations (replacing the * meta-optimizer). + * * Of the RewriterConfig options, only the AutoParallel configuration options * (the auto_parallel field) apply to manually requested optimization passes * ("autoparallel"). Memory optimization passes ("memory") invoked here are * not configurable (in contrast to memory optimization passes through the * meta-optimizer) and act only on manual op annotations. + * * Custom optimizers (see custom_optimizers) that are not part of this * schedule will be run after - in the order that they were specified. *
    @@ -675,11 +679,13 @@ public interface RewriterConfigOrBuilder extends * If non-empty, will use this as an alternative way to specify a list of * optimizations to turn on and the order of the optimizations (replacing the * meta-optimizer). + * * Of the RewriterConfig options, only the AutoParallel configuration options * (the auto_parallel field) apply to manually requested optimization passes * ("autoparallel"). Memory optimization passes ("memory") invoked here are * not configurable (in contrast to memory optimization passes through the * meta-optimizer) and act only on manual op annotations. + * * Custom optimizers (see custom_optimizers) that are not part of this * schedule will be run after - in the order that they were specified. *
    @@ -693,11 +699,13 @@ public interface RewriterConfigOrBuilder extends * If non-empty, will use this as an alternative way to specify a list of * optimizations to turn on and the order of the optimizations (replacing the * meta-optimizer). + * * Of the RewriterConfig options, only the AutoParallel configuration options * (the auto_parallel field) apply to manually requested optimization passes * ("autoparallel"). Memory optimization passes ("memory") invoked here are * not configurable (in contrast to memory optimization passes through the * meta-optimizer) and act only on manual op annotations. + * * Custom optimizers (see custom_optimizers) that are not part of this * schedule will be run after - in the order that they were specified. *
    @@ -712,11 +720,13 @@ public interface RewriterConfigOrBuilder extends * If non-empty, will use this as an alternative way to specify a list of * optimizations to turn on and the order of the optimizations (replacing the * meta-optimizer). + * * Of the RewriterConfig options, only the AutoParallel configuration options * (the auto_parallel field) apply to manually requested optimization passes * ("autoparallel"). Memory optimization passes ("memory") invoked here are * not configurable (in contrast to memory optimization passes through the * meta-optimizer) and act only on manual op annotations. + * * Custom optimizers (see custom_optimizers) that are not part of this * schedule will be run after - in the order that they were specified. *
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RewriterConfigProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RewriterConfigProtos.java index 30840c488e0..d445dbfc551 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RewriterConfigProtos.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RewriterConfigProtos.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/rewriter_config.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; public final class RewriterConfigProtos { private RewriterConfigProtos() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + RewriterConfigProtos.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -17,27 +28,27 @@ public static void registerAllExtensions( static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_AutoParallelOptions_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_AutoParallelOptions_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_ScopedAllocatorOptions_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_ScopedAllocatorOptions_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_RewriterConfig_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_RewriterConfig_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_RewriterConfig_CustomGraphOptimizer_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_RewriterConfig_CustomGraphOptimizer_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_RewriterConfig_CustomGraphOptimizer_ParameterMapEntry_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_RewriterConfig_CustomGraphOptimizer_ParameterMapEntry_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor @@ -140,33 +151,34 @@ public static void registerAllExtensions( internal_static_tensorflow_AutoParallelOptions_descriptor = getDescriptor().getMessageTypes().get(0); internal_static_tensorflow_AutoParallelOptions_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_AutoParallelOptions_descriptor, new java.lang.String[] { "Enable", "NumReplicas", }); internal_static_tensorflow_ScopedAllocatorOptions_descriptor = getDescriptor().getMessageTypes().get(1); internal_static_tensorflow_ScopedAllocatorOptions_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_ScopedAllocatorOptions_descriptor, new java.lang.String[] { "EnableOp", }); internal_static_tensorflow_RewriterConfig_descriptor = getDescriptor().getMessageTypes().get(2); internal_static_tensorflow_RewriterConfig_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_RewriterConfig_descriptor, new java.lang.String[] { "CpuLayoutConversion", "LayoutOptimizer", "ConstantFolding", "ShapeOptimization", "Remapping", "CommonSubgraphElimination", "ArithmeticOptimization", "DependencyOptimization", "LoopOptimization", "FunctionOptimization", "DebugStripper", "DisableModelPruning", "ScopedAllocatorOptimization", "PinToHostOptimization", "ImplementationSelector", "AutoMixedPrecision", "AutoMixedPrecisionMkl", "AutoMixedPrecisionOnednnBfloat16", "AutoMixedPrecisionCpu", "DisableMetaOptimizer", "DisableTfgOptimizer", "UsePluginOptimizers", "ExperimentalConditionalCodeMotion", "MetaOptimizerIterations", "MinGraphNodes", "ExperimentalDisableCompressedTensorOptimization", "ExperimentalDisableFoldingQuantizationEmulation", "MemoryOptimization", "MemoryOptimizerTargetNodeNameScope", "MetaOptimizerTimeoutMs", "AutoParallel", "FailOnOptimizerErrors", "ScopedAllocatorOpts", "Optimizers", "CustomOptimizers", "InterOptimizerVerifierConfig", "PostOptimizationVerifierConfig", }); internal_static_tensorflow_RewriterConfig_CustomGraphOptimizer_descriptor = internal_static_tensorflow_RewriterConfig_descriptor.getNestedTypes().get(0); internal_static_tensorflow_RewriterConfig_CustomGraphOptimizer_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_RewriterConfig_CustomGraphOptimizer_descriptor, new java.lang.String[] { "Name", "ParameterMap", }); internal_static_tensorflow_RewriterConfig_CustomGraphOptimizer_ParameterMapEntry_descriptor = internal_static_tensorflow_RewriterConfig_CustomGraphOptimizer_descriptor.getNestedTypes().get(0); internal_static_tensorflow_RewriterConfig_CustomGraphOptimizer_ParameterMapEntry_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_RewriterConfig_CustomGraphOptimizer_ParameterMapEntry_descriptor, new java.lang.String[] { "Key", "Value", }); + descriptor.resolveAllFeaturesImmutable(); org.tensorflow.proto.AttrValueProtos.getDescriptor(); org.tensorflow.proto.VerifierConfigProtos.getDescriptor(); } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RpcOptions.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RpcOptions.java index dc7c3d8cf50..9dec7784f93 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RpcOptions.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RpcOptions.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! -// source: tsl/protobuf/rpc_options.proto +// NO CHECKED-IN PROTOBUF GENCODE +// source: xla/tsl/protobuf/rpc_options.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; public final class RpcOptions { private RpcOptions() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + RpcOptions.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -21,6 +32,7 @@ public interface RPCOptionsOrBuilder extends /** *
          * If true, always use RPC to contact the session target.
    +     *
          * If false (the default option), TensorFlow may use an optimized
          * transport for client-master communication that avoids the RPC
          * stack. This option is primarily for used testing the RPC stack.
    @@ -110,37 +122,34 @@ public interface RPCOptionsOrBuilder extends
        * Protobuf type {@code tensorflow.RPCOptions}
        */
       public static final class RPCOptions extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.RPCOptions)
           RPCOptionsOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        RPCOptions.class.getName());
    +    }
         // Use RPCOptions.newBuilder() to construct.
    -    private RPCOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private RPCOptions(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private RPCOptions() {
           compressionAlgorithm_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new RPCOptions();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.RpcOptions.internal_static_tensorflow_RPCOptions_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.RpcOptions.internal_static_tensorflow_RPCOptions_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -148,10 +157,11 @@ protected java.lang.Object newInstance(
         }
     
         public static final int USE_RPC_FOR_INPROCESS_MASTER_FIELD_NUMBER = 1;
    -    private boolean useRpcForInprocessMaster_;
    +    private boolean useRpcForInprocessMaster_ = false;
         /**
          * 
          * If true, always use RPC to contact the session target.
    +     *
          * If false (the default option), TensorFlow may use an optimized
          * transport for client-master communication that avoids the RPC
          * stack. This option is primarily for used testing the RPC stack.
    @@ -166,7 +176,8 @@ public boolean getUseRpcForInprocessMaster() {
         }
     
         public static final int COMPRESSION_ALGORITHM_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object compressionAlgorithm_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object compressionAlgorithm_ = "";
         /**
          * 
          * The compression algorithm to be used. One of "deflate", "gzip".
    @@ -212,7 +223,7 @@ public java.lang.String getCompressionAlgorithm() {
         }
     
         public static final int COMPRESSION_LEVEL_FIELD_NUMBER = 3;
    -    private int compressionLevel_;
    +    private int compressionLevel_ = 0;
         /**
          * 
          * If compression_algorithm is set, the compression level to be used.
    @@ -228,7 +239,7 @@ public int getCompressionLevel() {
         }
     
         public static final int CACHE_RPC_RESPONSE_FIELD_NUMBER = 4;
    -    private boolean cacheRpcResponse_;
    +    private boolean cacheRpcResponse_ = false;
         /**
          * 
          * Setting cache_rpc_response to true will enable sender side caching of
    @@ -248,7 +259,7 @@ public boolean getCacheRpcResponse() {
         }
     
         public static final int DISABLE_SESSION_CONNECTION_SHARING_FIELD_NUMBER = 5;
    -    private boolean disableSessionConnectionSharing_;
    +    private boolean disableSessionConnectionSharing_ = false;
         /**
          * 
          * Disables TCP connection sharing when opening a new RPC channel.
    @@ -263,7 +274,7 @@ public boolean getDisableSessionConnectionSharing() {
         }
     
         public static final int NUM_CHANNELS_PER_TARGET_FIELD_NUMBER = 6;
    -    private int numChannelsPerTarget_;
    +    private int numChannelsPerTarget_ = 0;
         /**
          * 
          * Setting num_channels_per_target > 0 allows uses of multiple channels to
    @@ -299,8 +310,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (useRpcForInprocessMaster_ != false) {
             output.writeBool(1, useRpcForInprocessMaster_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(compressionAlgorithm_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, compressionAlgorithm_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(compressionAlgorithm_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, compressionAlgorithm_);
           }
           if (compressionLevel_ != 0) {
             output.writeInt32(3, compressionLevel_);
    @@ -327,8 +338,8 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeBoolSize(1, useRpcForInprocessMaster_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(compressionAlgorithm_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, compressionAlgorithm_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(compressionAlgorithm_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, compressionAlgorithm_);
           }
           if (compressionLevel_ != 0) {
             size += com.google.protobuf.CodedOutputStream
    @@ -438,39 +449,41 @@ public static org.tensorflow.proto.RpcOptions.RPCOptions parseFrom(
         }
         public static org.tensorflow.proto.RpcOptions.RPCOptions parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.RpcOptions.RPCOptions parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.RpcOptions.RPCOptions parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.RpcOptions.RPCOptions parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.RpcOptions.RPCOptions parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.RpcOptions.RPCOptions parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -490,7 +503,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -502,7 +515,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.RPCOptions}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.RPCOptions)
             org.tensorflow.proto.RpcOptions.RPCOptionsOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -511,7 +524,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.RpcOptions.internal_static_tensorflow_RPCOptions_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -524,25 +537,20 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             useRpcForInprocessMaster_ = false;
    -
             compressionAlgorithm_ = "";
    -
             compressionLevel_ = 0;
    -
             cacheRpcResponse_ = false;
    -
             disableSessionConnectionSharing_ = false;
    -
             numChannelsPerTarget_ = 0;
    -
             return this;
           }
     
    @@ -569,48 +577,33 @@ public org.tensorflow.proto.RpcOptions.RPCOptions build() {
           @java.lang.Override
           public org.tensorflow.proto.RpcOptions.RPCOptions buildPartial() {
             org.tensorflow.proto.RpcOptions.RPCOptions result = new org.tensorflow.proto.RpcOptions.RPCOptions(this);
    -        result.useRpcForInprocessMaster_ = useRpcForInprocessMaster_;
    -        result.compressionAlgorithm_ = compressionAlgorithm_;
    -        result.compressionLevel_ = compressionLevel_;
    -        result.cacheRpcResponse_ = cacheRpcResponse_;
    -        result.disableSessionConnectionSharing_ = disableSessionConnectionSharing_;
    -        result.numChannelsPerTarget_ = numChannelsPerTarget_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.RpcOptions.RPCOptions result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.useRpcForInprocessMaster_ = useRpcForInprocessMaster_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.compressionAlgorithm_ = compressionAlgorithm_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.compressionLevel_ = compressionLevel_;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.cacheRpcResponse_ = cacheRpcResponse_;
    +        }
    +        if (((from_bitField0_ & 0x00000010) != 0)) {
    +          result.disableSessionConnectionSharing_ = disableSessionConnectionSharing_;
    +        }
    +        if (((from_bitField0_ & 0x00000020) != 0)) {
    +          result.numChannelsPerTarget_ = numChannelsPerTarget_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.RpcOptions.RPCOptions) {
    @@ -628,6 +621,7 @@ public Builder mergeFrom(org.tensorflow.proto.RpcOptions.RPCOptions other) {
             }
             if (!other.getCompressionAlgorithm().isEmpty()) {
               compressionAlgorithm_ = other.compressionAlgorithm_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             if (other.getCompressionLevel() != 0) {
    @@ -670,32 +664,32 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     useRpcForInprocessMaster_ = input.readBool();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   case 18: {
                     compressionAlgorithm_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 24: {
                     compressionLevel_ = input.readInt32();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 24
                   case 32: {
                     cacheRpcResponse_ = input.readBool();
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 32
                   case 40: {
                     disableSessionConnectionSharing_ = input.readBool();
    -
    +                bitField0_ |= 0x00000010;
                     break;
                   } // case 40
                   case 48: {
                     numChannelsPerTarget_ = input.readInt32();
    -
    +                bitField0_ |= 0x00000020;
                     break;
                   } // case 48
                   default: {
    @@ -713,11 +707,13 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private boolean useRpcForInprocessMaster_ ;
           /**
            * 
            * If true, always use RPC to contact the session target.
    +       *
            * If false (the default option), TensorFlow may use an optimized
            * transport for client-master communication that avoids the RPC
            * stack. This option is primarily for used testing the RPC stack.
    @@ -733,6 +729,7 @@ public boolean getUseRpcForInprocessMaster() {
           /**
            * 
            * If true, always use RPC to contact the session target.
    +       *
            * If false (the default option), TensorFlow may use an optimized
            * transport for client-master communication that avoids the RPC
            * stack. This option is primarily for used testing the RPC stack.
    @@ -743,14 +740,16 @@ public boolean getUseRpcForInprocessMaster() {
            * @return This builder for chaining.
            */
           public Builder setUseRpcForInprocessMaster(boolean value) {
    -        
    +
             useRpcForInprocessMaster_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
           /**
            * 
            * If true, always use RPC to contact the session target.
    +       *
            * If false (the default option), TensorFlow may use an optimized
            * transport for client-master communication that avoids the RPC
            * stack. This option is primarily for used testing the RPC stack.
    @@ -760,7 +759,7 @@ public Builder setUseRpcForInprocessMaster(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearUseRpcForInprocessMaster() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             useRpcForInprocessMaster_ = false;
             onChanged();
             return this;
    @@ -819,11 +818,9 @@ public java.lang.String getCompressionAlgorithm() {
            */
           public Builder setCompressionAlgorithm(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             compressionAlgorithm_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -836,8 +833,8 @@ public Builder setCompressionAlgorithm(
            * @return This builder for chaining.
            */
           public Builder clearCompressionAlgorithm() {
    -        
             compressionAlgorithm_ = getDefaultInstance().getCompressionAlgorithm();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -852,12 +849,10 @@ public Builder clearCompressionAlgorithm() {
            */
           public Builder setCompressionAlgorithmBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             compressionAlgorithm_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -887,8 +882,9 @@ public int getCompressionLevel() {
            * @return This builder for chaining.
            */
           public Builder setCompressionLevel(int value) {
    -        
    +
             compressionLevel_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -902,7 +898,7 @@ public Builder setCompressionLevel(int value) {
            * @return This builder for chaining.
            */
           public Builder clearCompressionLevel() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000004);
             compressionLevel_ = 0;
             onChanged();
             return this;
    @@ -941,8 +937,9 @@ public boolean getCacheRpcResponse() {
            * @return This builder for chaining.
            */
           public Builder setCacheRpcResponse(boolean value) {
    -        
    +
             cacheRpcResponse_ = value;
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -960,7 +957,7 @@ public Builder setCacheRpcResponse(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearCacheRpcResponse() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000008);
             cacheRpcResponse_ = false;
             onChanged();
             return this;
    @@ -989,8 +986,9 @@ public boolean getDisableSessionConnectionSharing() {
            * @return This builder for chaining.
            */
           public Builder setDisableSessionConnectionSharing(boolean value) {
    -        
    +
             disableSessionConnectionSharing_ = value;
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -1003,7 +1001,7 @@ public Builder setDisableSessionConnectionSharing(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearDisableSessionConnectionSharing() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000010);
             disableSessionConnectionSharing_ = false;
             onChanged();
             return this;
    @@ -1042,8 +1040,9 @@ public int getNumChannelsPerTarget() {
            * @return This builder for chaining.
            */
           public Builder setNumChannelsPerTarget(int value) {
    -        
    +
             numChannelsPerTarget_ = value;
    +        bitField0_ |= 0x00000020;
             onChanged();
             return this;
           }
    @@ -1061,23 +1060,11 @@ public Builder setNumChannelsPerTarget(int value) {
            * @return This builder for chaining.
            */
           public Builder clearNumChannelsPerTarget() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000020);
             numChannelsPerTarget_ = 0;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.RPCOptions)
         }
    @@ -1133,7 +1120,7 @@ public org.tensorflow.proto.RpcOptions.RPCOptions getDefaultInstanceForType() {
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_RPCOptions_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_RPCOptions_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -1144,15 +1131,15 @@ public org.tensorflow.proto.RpcOptions.RPCOptions getDefaultInstanceForType() {
           descriptor;
       static {
         java.lang.String[] descriptorData = {
    -      "\n\036tsl/protobuf/rpc_options.proto\022\ntensor" +
    -      "flow\"\325\001\n\nRPCOptions\022$\n\034use_rpc_for_inpro" +
    -      "cess_master\030\001 \001(\010\022\035\n\025compression_algorit" +
    -      "hm\030\002 \001(\t\022\031\n\021compression_level\030\003 \001(\005\022\032\n\022c" +
    -      "ache_rpc_response\030\004 \001(\010\022*\n\"disable_sessi" +
    -      "on_connection_sharing\030\005 \001(\010\022\037\n\027num_chann" +
    -      "els_per_target\030\006 \001(\005BV\n\024org.tensorflow.p" +
    -      "rotoZ>github.com/google/tsl/tsl/go/proto" +
    -      "buf/for_core_protos_go_protob\006proto3"
    +      "\n\"xla/tsl/protobuf/rpc_options.proto\022\nte" +
    +      "nsorflow\"\325\001\n\nRPCOptions\022$\n\034use_rpc_for_i" +
    +      "nprocess_master\030\001 \001(\010\022\035\n\025compression_alg" +
    +      "orithm\030\002 \001(\t\022\031\n\021compression_level\030\003 \001(\005\022" +
    +      "\032\n\022cache_rpc_response\030\004 \001(\010\022*\n\"disable_s" +
    +      "ession_connection_sharing\030\005 \001(\010\022\037\n\027num_c" +
    +      "hannels_per_target\030\006 \001(\005BV\n\024org.tensorfl" +
    +      "ow.protoZ>github.com/google/tsl/tsl/go/p" +
    +      "rotobuf/for_core_protos_go_protob\006proto3"
         };
         descriptor = com.google.protobuf.Descriptors.FileDescriptor
           .internalBuildGeneratedFileFrom(descriptorData,
    @@ -1161,9 +1148,10 @@ public org.tensorflow.proto.RpcOptions.RPCOptions getDefaultInstanceForType() {
         internal_static_tensorflow_RPCOptions_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_RPCOptions_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_RPCOptions_descriptor,
             new java.lang.String[] { "UseRpcForInprocessMaster", "CompressionAlgorithm", "CompressionLevel", "CacheRpcResponse", "DisableSessionConnectionSharing", "NumChannelsPerTarget", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunConfiguration.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunConfiguration.java
    index 2a17bdafaf1..801a0e56dd3 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunConfiguration.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunConfiguration.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,30 +13,28 @@
      * Protobuf type {@code tensorflow.RunConfiguration}
      */
     public final class RunConfiguration extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.RunConfiguration)
         RunConfigurationOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      RunConfiguration.class.getName());
    +  }
       // Use RunConfiguration.newBuilder() to construct.
    -  private RunConfiguration(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private RunConfiguration(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private RunConfiguration() {
    -    argument_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    argument_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new RunConfiguration();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_RunConfiguration_descriptor;
    @@ -42,7 +42,7 @@ protected java.lang.Object newInstance(
     
       @SuppressWarnings({"rawtypes"})
       @java.lang.Override
    -  protected com.google.protobuf.MapField internalGetMapField(
    +  protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
           int number) {
         switch (number) {
           case 2:
    @@ -53,7 +53,7 @@ protected com.google.protobuf.MapField internalGetMapField(
         }
       }
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_RunConfiguration_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -61,7 +61,9 @@ protected com.google.protobuf.MapField internalGetMapField(
       }
     
       public static final int ARGUMENT_FIELD_NUMBER = 1;
    -  private com.google.protobuf.LazyStringList argument_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList argument_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * repeated string argument = 1;
        * @return A list containing the argument.
    @@ -107,6 +109,7 @@ private static final class EnvVarsDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.STRING,
                     "");
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.String, java.lang.String> envVars_;
       private com.google.protobuf.MapField
    @@ -117,7 +120,6 @@ private static final class EnvVarsDefaultEntryHolder {
         }
         return envVars_;
       }
    -
       public int getEnvVarsCount() {
         return internalGetEnvVars().getMap().size();
       }
    @@ -128,7 +130,6 @@ public int getEnvVarsCount() {
        *
        * map<string, string> env_vars = 2;
        */
    -
       @java.lang.Override
       public boolean containsEnvVars(
           java.lang.String key) {
    @@ -151,7 +152,6 @@ public java.util.Map getEnvVars() {
        * map<string, string> env_vars = 2;
        */
       @java.lang.Override
    -
       public java.util.Map getEnvVarsMap() {
         return internalGetEnvVars().getMap();
       }
    @@ -163,10 +163,11 @@ public java.util.Map getEnvVarsMap() {
        * map<string, string> env_vars = 2;
        */
       @java.lang.Override
    -
    -  public java.lang.String getEnvVarsOrDefault(
    +  public /* nullable */
    +java.lang.String getEnvVarsOrDefault(
           java.lang.String key,
    -      java.lang.String defaultValue) {
    +      /* nullable */
    +java.lang.String defaultValue) {
         if (key == null) { throw new NullPointerException("map key"); }
         java.util.Map map =
             internalGetEnvVars().getMap();
    @@ -180,7 +181,6 @@ public java.lang.String getEnvVarsOrDefault(
        * map<string, string> env_vars = 2;
        */
       @java.lang.Override
    -
       public java.lang.String getEnvVarsOrThrow(
           java.lang.String key) {
         if (key == null) { throw new NullPointerException("map key"); }
    @@ -207,9 +207,9 @@ public final boolean isInitialized() {
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
         for (int i = 0; i < argument_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, argument_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, argument_.getRaw(i));
         }
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeStringMapTo(
             output,
             internalGetEnvVars(),
    @@ -319,39 +319,41 @@ public static org.tensorflow.proto.RunConfiguration parseFrom(
       }
       public static org.tensorflow.proto.RunConfiguration parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.RunConfiguration parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.RunConfiguration parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.RunConfiguration parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.RunConfiguration parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.RunConfiguration parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -371,7 +373,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -383,7 +385,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.RunConfiguration}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.RunConfiguration)
           org.tensorflow.proto.RunConfigurationOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -392,7 +394,7 @@ public static final class Builder extends
         }
     
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
             int number) {
           switch (number) {
             case 2:
    @@ -403,7 +405,7 @@ protected com.google.protobuf.MapField internalGetMapField(
           }
         }
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMutableMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(
             int number) {
           switch (number) {
             case 2:
    @@ -414,7 +416,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
           }
         }
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_RunConfiguration_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -427,15 +429,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    -      argument_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = 0;
    +      argument_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           internalGetMutableEnvVars().clear();
           return this;
         }
    @@ -463,50 +466,23 @@ public org.tensorflow.proto.RunConfiguration build() {
         @java.lang.Override
         public org.tensorflow.proto.RunConfiguration buildPartial() {
           org.tensorflow.proto.RunConfiguration result = new org.tensorflow.proto.RunConfiguration(this);
    -      int from_bitField0_ = bitField0_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        argument_ = argument_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.argument_ = argument_;
    -      result.envVars_ = internalGetEnvVars();
    -      result.envVars_.makeImmutable();
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.RunConfiguration result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        argument_.makeImmutable();
    +        result.argument_ = argument_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.envVars_ = internalGetEnvVars();
    +        result.envVars_.makeImmutable();
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.RunConfiguration) {
    @@ -522,7 +498,7 @@ public Builder mergeFrom(org.tensorflow.proto.RunConfiguration other) {
           if (!other.argument_.isEmpty()) {
             if (argument_.isEmpty()) {
               argument_ = other.argument_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ |= 0x00000001;
             } else {
               ensureArgumentIsMutable();
               argument_.addAll(other.argument_);
    @@ -531,6 +507,7 @@ public Builder mergeFrom(org.tensorflow.proto.RunConfiguration other) {
           }
           internalGetMutableEnvVars().mergeFrom(
               other.internalGetEnvVars());
    +      bitField0_ |= 0x00000002;
           this.mergeUnknownFields(other.getUnknownFields());
           onChanged();
           return this;
    @@ -569,6 +546,7 @@ public Builder mergeFrom(
                       EnvVarsDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                   internalGetMutableEnvVars().getMutableMap().put(
                       envVars__.getKey(), envVars__.getValue());
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 default: {
    @@ -588,12 +566,13 @@ public Builder mergeFrom(
         }
         private int bitField0_;
     
    -    private com.google.protobuf.LazyStringList argument_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList argument_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureArgumentIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!argument_.isModifiable()) {
             argument_ = new com.google.protobuf.LazyStringArrayList(argument_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      }
    +      bitField0_ |= 0x00000001;
         }
         /**
          * repeated string argument = 1;
    @@ -601,7 +580,8 @@ private void ensureArgumentIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getArgumentList() {
    -      return argument_.getUnmodifiableView();
    +      argument_.makeImmutable();
    +      return argument_;
         }
         /**
          * repeated string argument = 1;
    @@ -635,11 +615,10 @@ public java.lang.String getArgument(int index) {
          */
         public Builder setArgument(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureArgumentIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureArgumentIsMutable();
           argument_.set(index, value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -650,11 +629,10 @@ public Builder setArgument(
          */
         public Builder addArgument(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureArgumentIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureArgumentIsMutable();
           argument_.add(value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -668,6 +646,7 @@ public Builder addAllArgument(
           ensureArgumentIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, argument_);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -676,8 +655,9 @@ public Builder addAllArgument(
          * @return This builder for chaining.
          */
         public Builder clearArgument() {
    -      argument_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      argument_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000001);;
           onChanged();
           return this;
         }
    @@ -688,12 +668,11 @@ public Builder clearArgument() {
          */
         public Builder addArgumentBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureArgumentIsMutable();
           argument_.add(value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -701,7 +680,7 @@ public Builder addArgumentBytes(
         private com.google.protobuf.MapField<
             java.lang.String, java.lang.String> envVars_;
         private com.google.protobuf.MapField
    -    internalGetEnvVars() {
    +        internalGetEnvVars() {
           if (envVars_ == null) {
             return com.google.protobuf.MapField.emptyMapField(
                 EnvVarsDefaultEntryHolder.defaultEntry);
    @@ -709,8 +688,7 @@ public Builder addArgumentBytes(
           return envVars_;
         }
         private com.google.protobuf.MapField
    -    internalGetMutableEnvVars() {
    -      onChanged();;
    +        internalGetMutableEnvVars() {
           if (envVars_ == null) {
             envVars_ = com.google.protobuf.MapField.newMapField(
                 EnvVarsDefaultEntryHolder.defaultEntry);
    @@ -718,9 +696,10 @@ public Builder addArgumentBytes(
           if (!envVars_.isMutable()) {
             envVars_ = envVars_.copy();
           }
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return envVars_;
         }
    -
         public int getEnvVarsCount() {
           return internalGetEnvVars().getMap().size();
         }
    @@ -731,7 +710,6 @@ public int getEnvVarsCount() {
          *
          * map<string, string> env_vars = 2;
          */
    -
         @java.lang.Override
         public boolean containsEnvVars(
             java.lang.String key) {
    @@ -754,7 +732,6 @@ public java.util.Map getEnvVars() {
          * map<string, string> env_vars = 2;
          */
         @java.lang.Override
    -
         public java.util.Map getEnvVarsMap() {
           return internalGetEnvVars().getMap();
         }
    @@ -766,10 +743,11 @@ public java.util.Map getEnvVarsMap() {
          * map<string, string> env_vars = 2;
          */
         @java.lang.Override
    -
    -    public java.lang.String getEnvVarsOrDefault(
    +    public /* nullable */
    +java.lang.String getEnvVarsOrDefault(
             java.lang.String key,
    -        java.lang.String defaultValue) {
    +        /* nullable */
    +java.lang.String defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
           java.util.Map map =
               internalGetEnvVars().getMap();
    @@ -783,7 +761,6 @@ public java.lang.String getEnvVarsOrDefault(
          * map<string, string> env_vars = 2;
          */
         @java.lang.Override
    -
         public java.lang.String getEnvVarsOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -794,8 +771,8 @@ public java.lang.String getEnvVarsOrThrow(
           }
           return map.get(key);
         }
    -
         public Builder clearEnvVars() {
    +      bitField0_ = (bitField0_ & ~0x00000002);
           internalGetMutableEnvVars().getMutableMap()
               .clear();
           return this;
    @@ -807,7 +784,6 @@ public Builder clearEnvVars() {
          *
          * map<string, string> env_vars = 2;
          */
    -
         public Builder removeEnvVars(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -820,7 +796,8 @@ public Builder removeEnvVars(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableEnvVars() {
    +        getMutableEnvVars() {
    +      bitField0_ |= 0x00000002;
           return internalGetMutableEnvVars().getMutableMap();
         }
         /**
    @@ -834,12 +811,10 @@ public Builder putEnvVars(
             java.lang.String key,
             java.lang.String value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    +      if (value == null) { throw new NullPointerException("map value"); }
           internalGetMutableEnvVars().getMutableMap()
               .put(key, value);
    +      bitField0_ |= 0x00000002;
           return this;
         }
         /**
    @@ -849,25 +824,13 @@ public Builder putEnvVars(
          *
          * map<string, string> env_vars = 2;
          */
    -
         public Builder putAllEnvVars(
             java.util.Map values) {
           internalGetMutableEnvVars().getMutableMap()
               .putAll(values);
    +      bitField0_ |= 0x00000002;
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.RunConfiguration)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunConfigurationOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunConfigurationOrBuilder.java
    index a3b3ca982e8..1183f95dccd 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunConfigurationOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunConfigurationOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -71,7 +73,6 @@ boolean containsEnvVars(
        *
        * map<string, string> env_vars = 2;
        */
    -
       /* nullable */
     java.lang.String getEnvVarsOrDefault(
           java.lang.String key,
    @@ -84,7 +85,6 @@ java.lang.String getEnvVarsOrDefault(
        *
        * map<string, string> env_vars = 2;
        */
    -
       java.lang.String getEnvVarsOrThrow(
           java.lang.String key);
     }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunMetadata.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunMetadata.java
    index 84fb9890a80..6fca6234f49 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunMetadata.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunMetadata.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,12 +13,21 @@
      * Protobuf type {@code tensorflow.RunMetadata}
      */
     public final class RunMetadata extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.RunMetadata)
         RunMetadataOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      RunMetadata.class.getName());
    +  }
       // Use RunMetadata.newBuilder() to construct.
    -  private RunMetadata(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private RunMetadata(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private RunMetadata() {
    @@ -24,25 +35,13 @@ private RunMetadata() {
         functionGraphs_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new RunMetadata();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_RunMetadata_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_RunMetadata_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -131,44 +130,43 @@ org.tensorflow.proto.GraphDefOrBuilder getPartitionGraphsOrBuilder(
        * Protobuf type {@code tensorflow.RunMetadata.FunctionGraphs}
        */
       public static final class FunctionGraphs extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.RunMetadata.FunctionGraphs)
           FunctionGraphsOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        FunctionGraphs.class.getName());
    +    }
         // Use FunctionGraphs.newBuilder() to construct.
    -    private FunctionGraphs(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private FunctionGraphs(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private FunctionGraphs() {
           partitionGraphs_ = java.util.Collections.emptyList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new FunctionGraphs();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_RunMetadata_FunctionGraphs_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_RunMetadata_FunctionGraphs_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
                   org.tensorflow.proto.RunMetadata.FunctionGraphs.class, org.tensorflow.proto.RunMetadata.FunctionGraphs.Builder.class);
         }
     
    +    private int bitField0_;
         public static final int PARTITION_GRAPHS_FIELD_NUMBER = 1;
    +    @SuppressWarnings("serial")
         private java.util.List partitionGraphs_;
         /**
          * 
    @@ -236,7 +234,7 @@ public org.tensorflow.proto.GraphDefOrBuilder getPartitionGraphsOrBuilder(
          */
         @java.lang.Override
         public boolean hasPreOptimizationGraph() {
    -      return preOptimizationGraph_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * .tensorflow.GraphDef pre_optimization_graph = 2;
    @@ -251,7 +249,7 @@ public org.tensorflow.proto.GraphDef getPreOptimizationGraph() {
          */
         @java.lang.Override
         public org.tensorflow.proto.GraphDefOrBuilder getPreOptimizationGraphOrBuilder() {
    -      return getPreOptimizationGraph();
    +      return preOptimizationGraph_ == null ? org.tensorflow.proto.GraphDef.getDefaultInstance() : preOptimizationGraph_;
         }
     
         public static final int POST_OPTIMIZATION_GRAPH_FIELD_NUMBER = 3;
    @@ -262,7 +260,7 @@ public org.tensorflow.proto.GraphDefOrBuilder getPreOptimizationGraphOrBuilder()
          */
         @java.lang.Override
         public boolean hasPostOptimizationGraph() {
    -      return postOptimizationGraph_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * .tensorflow.GraphDef post_optimization_graph = 3;
    @@ -277,7 +275,7 @@ public org.tensorflow.proto.GraphDef getPostOptimizationGraph() {
          */
         @java.lang.Override
         public org.tensorflow.proto.GraphDefOrBuilder getPostOptimizationGraphOrBuilder() {
    -      return getPostOptimizationGraph();
    +      return postOptimizationGraph_ == null ? org.tensorflow.proto.GraphDef.getDefaultInstance() : postOptimizationGraph_;
         }
     
         private byte memoizedIsInitialized = -1;
    @@ -297,10 +295,10 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           for (int i = 0; i < partitionGraphs_.size(); i++) {
             output.writeMessage(1, partitionGraphs_.get(i));
           }
    -      if (preOptimizationGraph_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(2, getPreOptimizationGraph());
           }
    -      if (postOptimizationGraph_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             output.writeMessage(3, getPostOptimizationGraph());
           }
           getUnknownFields().writeTo(output);
    @@ -316,11 +314,11 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(1, partitionGraphs_.get(i));
           }
    -      if (preOptimizationGraph_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(2, getPreOptimizationGraph());
           }
    -      if (postOptimizationGraph_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(3, getPostOptimizationGraph());
           }
    @@ -413,39 +411,41 @@ public static org.tensorflow.proto.RunMetadata.FunctionGraphs parseFrom(
         }
         public static org.tensorflow.proto.RunMetadata.FunctionGraphs parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.RunMetadata.FunctionGraphs parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.RunMetadata.FunctionGraphs parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.RunMetadata.FunctionGraphs parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.RunMetadata.FunctionGraphs parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.RunMetadata.FunctionGraphs parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -465,7 +465,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -473,7 +473,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.RunMetadata.FunctionGraphs}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.RunMetadata.FunctionGraphs)
             org.tensorflow.proto.RunMetadata.FunctionGraphsOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -482,7 +482,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_RunMetadata_FunctionGraphs_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -491,17 +491,26 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.RunMetadata.FunctionGraphs.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getPartitionGraphsFieldBuilder();
    +          getPreOptimizationGraphFieldBuilder();
    +          getPostOptimizationGraphFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             if (partitionGraphsBuilder_ == null) {
               partitionGraphs_ = java.util.Collections.emptyList();
             } else {
    @@ -509,16 +518,14 @@ public Builder clear() {
               partitionGraphsBuilder_.clear();
             }
             bitField0_ = (bitField0_ & ~0x00000001);
    -        if (preOptimizationGraphBuilder_ == null) {
    -          preOptimizationGraph_ = null;
    -        } else {
    -          preOptimizationGraph_ = null;
    +        preOptimizationGraph_ = null;
    +        if (preOptimizationGraphBuilder_ != null) {
    +          preOptimizationGraphBuilder_.dispose();
               preOptimizationGraphBuilder_ = null;
             }
    -        if (postOptimizationGraphBuilder_ == null) {
    -          postOptimizationGraph_ = null;
    -        } else {
    -          postOptimizationGraph_ = null;
    +        postOptimizationGraph_ = null;
    +        if (postOptimizationGraphBuilder_ != null) {
    +          postOptimizationGraphBuilder_.dispose();
               postOptimizationGraphBuilder_ = null;
             }
             return this;
    @@ -547,7 +554,13 @@ public org.tensorflow.proto.RunMetadata.FunctionGraphs build() {
           @java.lang.Override
           public org.tensorflow.proto.RunMetadata.FunctionGraphs buildPartial() {
             org.tensorflow.proto.RunMetadata.FunctionGraphs result = new org.tensorflow.proto.RunMetadata.FunctionGraphs(this);
    -        int from_bitField0_ = bitField0_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.RunMetadata.FunctionGraphs result) {
             if (partitionGraphsBuilder_ == null) {
               if (((bitField0_ & 0x00000001) != 0)) {
                 partitionGraphs_ = java.util.Collections.unmodifiableList(partitionGraphs_);
    @@ -557,52 +570,26 @@ public org.tensorflow.proto.RunMetadata.FunctionGraphs buildPartial() {
             } else {
               result.partitionGraphs_ = partitionGraphsBuilder_.build();
             }
    -        if (preOptimizationGraphBuilder_ == null) {
    -          result.preOptimizationGraph_ = preOptimizationGraph_;
    -        } else {
    -          result.preOptimizationGraph_ = preOptimizationGraphBuilder_.build();
    +      }
    +
    +      private void buildPartial0(org.tensorflow.proto.RunMetadata.FunctionGraphs result) {
    +        int from_bitField0_ = bitField0_;
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.preOptimizationGraph_ = preOptimizationGraphBuilder_ == null
    +              ? preOptimizationGraph_
    +              : preOptimizationGraphBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
             }
    -        if (postOptimizationGraphBuilder_ == null) {
    -          result.postOptimizationGraph_ = postOptimizationGraph_;
    -        } else {
    -          result.postOptimizationGraph_ = postOptimizationGraphBuilder_.build();
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.postOptimizationGraph_ = postOptimizationGraphBuilder_ == null
    +              ? postOptimizationGraph_
    +              : postOptimizationGraphBuilder_.build();
    +          to_bitField0_ |= 0x00000002;
             }
    -        onBuilt();
    -        return result;
    +        result.bitField0_ |= to_bitField0_;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    -      }
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.RunMetadata.FunctionGraphs) {
    @@ -634,7 +621,7 @@ public Builder mergeFrom(org.tensorflow.proto.RunMetadata.FunctionGraphs other)
                   partitionGraphs_ = other.partitionGraphs_;
                   bitField0_ = (bitField0_ & ~0x00000001);
                   partitionGraphsBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getPartitionGraphsFieldBuilder() : null;
                 } else {
                   partitionGraphsBuilder_.addAllMessages(other.partitionGraphs_);
    @@ -690,14 +677,14 @@ public Builder mergeFrom(
                     input.readMessage(
                         getPreOptimizationGraphFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 26: {
                     input.readMessage(
                         getPostOptimizationGraphFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 26
                   default: {
    @@ -726,7 +713,7 @@ private void ensurePartitionGraphsIsMutable() {
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.GraphDef, org.tensorflow.proto.GraphDef.Builder, org.tensorflow.proto.GraphDefOrBuilder> partitionGraphsBuilder_;
     
           /**
    @@ -1014,11 +1001,11 @@ public org.tensorflow.proto.GraphDef.Builder addPartitionGraphsBuilder(
                getPartitionGraphsBuilderList() {
             return getPartitionGraphsFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.GraphDef, org.tensorflow.proto.GraphDef.Builder, org.tensorflow.proto.GraphDefOrBuilder> 
               getPartitionGraphsFieldBuilder() {
             if (partitionGraphsBuilder_ == null) {
    -          partitionGraphsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          partitionGraphsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.GraphDef, org.tensorflow.proto.GraphDef.Builder, org.tensorflow.proto.GraphDefOrBuilder>(
                       partitionGraphs_,
                       ((bitField0_ & 0x00000001) != 0),
    @@ -1030,14 +1017,14 @@ public org.tensorflow.proto.GraphDef.Builder addPartitionGraphsBuilder(
           }
     
           private org.tensorflow.proto.GraphDef preOptimizationGraph_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.GraphDef, org.tensorflow.proto.GraphDef.Builder, org.tensorflow.proto.GraphDefOrBuilder> preOptimizationGraphBuilder_;
           /**
            * .tensorflow.GraphDef pre_optimization_graph = 2;
            * @return Whether the preOptimizationGraph field is set.
            */
           public boolean hasPreOptimizationGraph() {
    -        return preOptimizationGraphBuilder_ != null || preOptimizationGraph_ != null;
    +        return ((bitField0_ & 0x00000002) != 0);
           }
           /**
            * .tensorflow.GraphDef pre_optimization_graph = 2;
    @@ -1059,11 +1046,11 @@ public Builder setPreOptimizationGraph(org.tensorflow.proto.GraphDef value) {
                 throw new NullPointerException();
               }
               preOptimizationGraph_ = value;
    -          onChanged();
             } else {
               preOptimizationGraphBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -1073,11 +1060,11 @@ public Builder setPreOptimizationGraph(
               org.tensorflow.proto.GraphDef.Builder builderForValue) {
             if (preOptimizationGraphBuilder_ == null) {
               preOptimizationGraph_ = builderForValue.build();
    -          onChanged();
             } else {
               preOptimizationGraphBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -1085,38 +1072,40 @@ public Builder setPreOptimizationGraph(
            */
           public Builder mergePreOptimizationGraph(org.tensorflow.proto.GraphDef value) {
             if (preOptimizationGraphBuilder_ == null) {
    -          if (preOptimizationGraph_ != null) {
    -            preOptimizationGraph_ =
    -              org.tensorflow.proto.GraphDef.newBuilder(preOptimizationGraph_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000002) != 0) &&
    +            preOptimizationGraph_ != null &&
    +            preOptimizationGraph_ != org.tensorflow.proto.GraphDef.getDefaultInstance()) {
    +            getPreOptimizationGraphBuilder().mergeFrom(value);
               } else {
                 preOptimizationGraph_ = value;
               }
    -          onChanged();
             } else {
               preOptimizationGraphBuilder_.mergeFrom(value);
             }
    -
    +        if (preOptimizationGraph_ != null) {
    +          bitField0_ |= 0x00000002;
    +          onChanged();
    +        }
             return this;
           }
           /**
            * .tensorflow.GraphDef pre_optimization_graph = 2;
            */
           public Builder clearPreOptimizationGraph() {
    -        if (preOptimizationGraphBuilder_ == null) {
    -          preOptimizationGraph_ = null;
    -          onChanged();
    -        } else {
    -          preOptimizationGraph_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000002);
    +        preOptimizationGraph_ = null;
    +        if (preOptimizationGraphBuilder_ != null) {
    +          preOptimizationGraphBuilder_.dispose();
               preOptimizationGraphBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
            * .tensorflow.GraphDef pre_optimization_graph = 2;
            */
           public org.tensorflow.proto.GraphDef.Builder getPreOptimizationGraphBuilder() {
    -        
    +        bitField0_ |= 0x00000002;
             onChanged();
             return getPreOptimizationGraphFieldBuilder().getBuilder();
           }
    @@ -1134,11 +1123,11 @@ public org.tensorflow.proto.GraphDefOrBuilder getPreOptimizationGraphOrBuilder()
           /**
            * .tensorflow.GraphDef pre_optimization_graph = 2;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.GraphDef, org.tensorflow.proto.GraphDef.Builder, org.tensorflow.proto.GraphDefOrBuilder> 
               getPreOptimizationGraphFieldBuilder() {
             if (preOptimizationGraphBuilder_ == null) {
    -          preOptimizationGraphBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          preOptimizationGraphBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.GraphDef, org.tensorflow.proto.GraphDef.Builder, org.tensorflow.proto.GraphDefOrBuilder>(
                       getPreOptimizationGraph(),
                       getParentForChildren(),
    @@ -1149,14 +1138,14 @@ public org.tensorflow.proto.GraphDefOrBuilder getPreOptimizationGraphOrBuilder()
           }
     
           private org.tensorflow.proto.GraphDef postOptimizationGraph_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.GraphDef, org.tensorflow.proto.GraphDef.Builder, org.tensorflow.proto.GraphDefOrBuilder> postOptimizationGraphBuilder_;
           /**
            * .tensorflow.GraphDef post_optimization_graph = 3;
            * @return Whether the postOptimizationGraph field is set.
            */
           public boolean hasPostOptimizationGraph() {
    -        return postOptimizationGraphBuilder_ != null || postOptimizationGraph_ != null;
    +        return ((bitField0_ & 0x00000004) != 0);
           }
           /**
            * .tensorflow.GraphDef post_optimization_graph = 3;
    @@ -1178,11 +1167,11 @@ public Builder setPostOptimizationGraph(org.tensorflow.proto.GraphDef value) {
                 throw new NullPointerException();
               }
               postOptimizationGraph_ = value;
    -          onChanged();
             } else {
               postOptimizationGraphBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000004;
    +        onChanged();
             return this;
           }
           /**
    @@ -1192,11 +1181,11 @@ public Builder setPostOptimizationGraph(
               org.tensorflow.proto.GraphDef.Builder builderForValue) {
             if (postOptimizationGraphBuilder_ == null) {
               postOptimizationGraph_ = builderForValue.build();
    -          onChanged();
             } else {
               postOptimizationGraphBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000004;
    +        onChanged();
             return this;
           }
           /**
    @@ -1204,38 +1193,40 @@ public Builder setPostOptimizationGraph(
            */
           public Builder mergePostOptimizationGraph(org.tensorflow.proto.GraphDef value) {
             if (postOptimizationGraphBuilder_ == null) {
    -          if (postOptimizationGraph_ != null) {
    -            postOptimizationGraph_ =
    -              org.tensorflow.proto.GraphDef.newBuilder(postOptimizationGraph_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000004) != 0) &&
    +            postOptimizationGraph_ != null &&
    +            postOptimizationGraph_ != org.tensorflow.proto.GraphDef.getDefaultInstance()) {
    +            getPostOptimizationGraphBuilder().mergeFrom(value);
               } else {
                 postOptimizationGraph_ = value;
               }
    -          onChanged();
             } else {
               postOptimizationGraphBuilder_.mergeFrom(value);
             }
    -
    +        if (postOptimizationGraph_ != null) {
    +          bitField0_ |= 0x00000004;
    +          onChanged();
    +        }
             return this;
           }
           /**
            * .tensorflow.GraphDef post_optimization_graph = 3;
            */
           public Builder clearPostOptimizationGraph() {
    -        if (postOptimizationGraphBuilder_ == null) {
    -          postOptimizationGraph_ = null;
    -          onChanged();
    -        } else {
    -          postOptimizationGraph_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000004);
    +        postOptimizationGraph_ = null;
    +        if (postOptimizationGraphBuilder_ != null) {
    +          postOptimizationGraphBuilder_.dispose();
               postOptimizationGraphBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
            * .tensorflow.GraphDef post_optimization_graph = 3;
            */
           public org.tensorflow.proto.GraphDef.Builder getPostOptimizationGraphBuilder() {
    -        
    +        bitField0_ |= 0x00000004;
             onChanged();
             return getPostOptimizationGraphFieldBuilder().getBuilder();
           }
    @@ -1253,11 +1244,11 @@ public org.tensorflow.proto.GraphDefOrBuilder getPostOptimizationGraphOrBuilder(
           /**
            * .tensorflow.GraphDef post_optimization_graph = 3;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.GraphDef, org.tensorflow.proto.GraphDef.Builder, org.tensorflow.proto.GraphDefOrBuilder> 
               getPostOptimizationGraphFieldBuilder() {
             if (postOptimizationGraphBuilder_ == null) {
    -          postOptimizationGraphBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          postOptimizationGraphBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.GraphDef, org.tensorflow.proto.GraphDef.Builder, org.tensorflow.proto.GraphDefOrBuilder>(
                       getPostOptimizationGraph(),
                       getParentForChildren(),
    @@ -1266,18 +1257,6 @@ public org.tensorflow.proto.GraphDefOrBuilder getPostOptimizationGraphOrBuilder(
             }
             return postOptimizationGraphBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.RunMetadata.FunctionGraphs)
         }
    @@ -1330,6 +1309,7 @@ public org.tensorflow.proto.RunMetadata.FunctionGraphs getDefaultInstanceForType
     
       }
     
    +  private int bitField0_;
       public static final int STEP_STATS_FIELD_NUMBER = 1;
       private org.tensorflow.proto.StepStats stepStats_;
       /**
    @@ -1344,7 +1324,7 @@ public org.tensorflow.proto.RunMetadata.FunctionGraphs getDefaultInstanceForType
        */
       @java.lang.Override
       public boolean hasStepStats() {
    -    return stepStats_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -1371,7 +1351,7 @@ public org.tensorflow.proto.StepStats getStepStats() {
        */
       @java.lang.Override
       public org.tensorflow.proto.StepStatsOrBuilder getStepStatsOrBuilder() {
    -    return getStepStats();
    +    return stepStats_ == null ? org.tensorflow.proto.StepStats.getDefaultInstance() : stepStats_;
       }
     
       public static final int COST_GRAPH_FIELD_NUMBER = 2;
    @@ -1386,7 +1366,7 @@ public org.tensorflow.proto.StepStatsOrBuilder getStepStatsOrBuilder() {
        */
       @java.lang.Override
       public boolean hasCostGraph() {
    -    return costGraph_ != null;
    +    return ((bitField0_ & 0x00000002) != 0);
       }
       /**
        * 
    @@ -1409,10 +1389,11 @@ public org.tensorflow.proto.CostGraphDef getCostGraph() {
        */
       @java.lang.Override
       public org.tensorflow.proto.CostGraphDefOrBuilder getCostGraphOrBuilder() {
    -    return getCostGraph();
    +    return costGraph_ == null ? org.tensorflow.proto.CostGraphDef.getDefaultInstance() : costGraph_;
       }
     
       public static final int PARTITION_GRAPHS_FIELD_NUMBER = 3;
    +  @SuppressWarnings("serial")
       private java.util.List partitionGraphs_;
       /**
        * 
    @@ -1473,6 +1454,7 @@ public org.tensorflow.proto.GraphDefOrBuilder getPartitionGraphsOrBuilder(
       }
     
       public static final int FUNCTION_GRAPHS_FIELD_NUMBER = 4;
    +  @SuppressWarnings("serial")
       private java.util.List functionGraphs_;
       /**
        * 
    @@ -1589,7 +1571,7 @@ public org.tensorflow.proto.RunMetadata.FunctionGraphsOrBuilder getFunctionGraph
        */
       @java.lang.Override
       public boolean hasSessionMetadata() {
    -    return sessionMetadata_ != null;
    +    return ((bitField0_ & 0x00000004) != 0);
       }
       /**
        * 
    @@ -1612,7 +1594,7 @@ public org.tensorflow.proto.SessionMetadata getSessionMetadata() {
        */
       @java.lang.Override
       public org.tensorflow.proto.SessionMetadataOrBuilder getSessionMetadataOrBuilder() {
    -    return getSessionMetadata();
    +    return sessionMetadata_ == null ? org.tensorflow.proto.SessionMetadata.getDefaultInstance() : sessionMetadata_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -1629,10 +1611,10 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (stepStats_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(1, getStepStats());
         }
    -    if (costGraph_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           output.writeMessage(2, getCostGraph());
         }
         for (int i = 0; i < partitionGraphs_.size(); i++) {
    @@ -1641,7 +1623,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         for (int i = 0; i < functionGraphs_.size(); i++) {
           output.writeMessage(4, functionGraphs_.get(i));
         }
    -    if (sessionMetadata_ != null) {
    +    if (((bitField0_ & 0x00000004) != 0)) {
           output.writeMessage(5, getSessionMetadata());
         }
         getUnknownFields().writeTo(output);
    @@ -1653,11 +1635,11 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (stepStats_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(1, getStepStats());
         }
    -    if (costGraph_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(2, getCostGraph());
         }
    @@ -1669,7 +1651,7 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(4, functionGraphs_.get(i));
         }
    -    if (sessionMetadata_ != null) {
    +    if (((bitField0_ & 0x00000004) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(5, getSessionMetadata());
         }
    @@ -1777,39 +1759,41 @@ public static org.tensorflow.proto.RunMetadata parseFrom(
       }
       public static org.tensorflow.proto.RunMetadata parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.RunMetadata parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.RunMetadata parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.RunMetadata parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.RunMetadata parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.RunMetadata parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -1829,7 +1813,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -1841,7 +1825,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.RunMetadata}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.RunMetadata)
           org.tensorflow.proto.RunMetadataOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1850,7 +1834,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_RunMetadata_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -1859,27 +1843,36 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.RunMetadata.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getStepStatsFieldBuilder();
    +        getCostGraphFieldBuilder();
    +        getPartitionGraphsFieldBuilder();
    +        getFunctionGraphsFieldBuilder();
    +        getSessionMetadataFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    -      if (stepStatsBuilder_ == null) {
    -        stepStats_ = null;
    -      } else {
    -        stepStats_ = null;
    +      bitField0_ = 0;
    +      stepStats_ = null;
    +      if (stepStatsBuilder_ != null) {
    +        stepStatsBuilder_.dispose();
             stepStatsBuilder_ = null;
           }
    -      if (costGraphBuilder_ == null) {
    -        costGraph_ = null;
    -      } else {
    -        costGraph_ = null;
    +      costGraph_ = null;
    +      if (costGraphBuilder_ != null) {
    +        costGraphBuilder_.dispose();
             costGraphBuilder_ = null;
           }
           if (partitionGraphsBuilder_ == null) {
    @@ -1888,18 +1881,17 @@ public Builder clear() {
             partitionGraphs_ = null;
             partitionGraphsBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000004);
           if (functionGraphsBuilder_ == null) {
             functionGraphs_ = java.util.Collections.emptyList();
           } else {
             functionGraphs_ = null;
             functionGraphsBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000002);
    -      if (sessionMetadataBuilder_ == null) {
    -        sessionMetadata_ = null;
    -      } else {
    -        sessionMetadata_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000008);
    +      sessionMetadata_ = null;
    +      if (sessionMetadataBuilder_ != null) {
    +        sessionMetadataBuilder_.dispose();
             sessionMetadataBuilder_ = null;
           }
           return this;
    @@ -1928,76 +1920,57 @@ public org.tensorflow.proto.RunMetadata build() {
         @java.lang.Override
         public org.tensorflow.proto.RunMetadata buildPartial() {
           org.tensorflow.proto.RunMetadata result = new org.tensorflow.proto.RunMetadata(this);
    -      int from_bitField0_ = bitField0_;
    -      if (stepStatsBuilder_ == null) {
    -        result.stepStats_ = stepStats_;
    -      } else {
    -        result.stepStats_ = stepStatsBuilder_.build();
    -      }
    -      if (costGraphBuilder_ == null) {
    -        result.costGraph_ = costGraph_;
    -      } else {
    -        result.costGraph_ = costGraphBuilder_.build();
    -      }
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.RunMetadata result) {
           if (partitionGraphsBuilder_ == null) {
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((bitField0_ & 0x00000004) != 0)) {
               partitionGraphs_ = java.util.Collections.unmodifiableList(partitionGraphs_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000004);
             }
             result.partitionGraphs_ = partitionGraphs_;
           } else {
             result.partitionGraphs_ = partitionGraphsBuilder_.build();
           }
           if (functionGraphsBuilder_ == null) {
    -        if (((bitField0_ & 0x00000002) != 0)) {
    +        if (((bitField0_ & 0x00000008) != 0)) {
               functionGraphs_ = java.util.Collections.unmodifiableList(functionGraphs_);
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          bitField0_ = (bitField0_ & ~0x00000008);
             }
             result.functionGraphs_ = functionGraphs_;
           } else {
             result.functionGraphs_ = functionGraphsBuilder_.build();
           }
    -      if (sessionMetadataBuilder_ == null) {
    -        result.sessionMetadata_ = sessionMetadata_;
    -      } else {
    -        result.sessionMetadata_ = sessionMetadataBuilder_.build();
    -      }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.RunMetadata result) {
    +      int from_bitField0_ = bitField0_;
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.stepStats_ = stepStatsBuilder_ == null
    +            ? stepStats_
    +            : stepStatsBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.costGraph_ = costGraphBuilder_ == null
    +            ? costGraph_
    +            : costGraphBuilder_.build();
    +        to_bitField0_ |= 0x00000002;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.sessionMetadata_ = sessionMetadataBuilder_ == null
    +            ? sessionMetadata_
    +            : sessionMetadataBuilder_.build();
    +        to_bitField0_ |= 0x00000004;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.RunMetadata) {
    @@ -2020,7 +1993,7 @@ public Builder mergeFrom(org.tensorflow.proto.RunMetadata other) {
             if (!other.partitionGraphs_.isEmpty()) {
               if (partitionGraphs_.isEmpty()) {
                 partitionGraphs_ = other.partitionGraphs_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000004);
               } else {
                 ensurePartitionGraphsIsMutable();
                 partitionGraphs_.addAll(other.partitionGraphs_);
    @@ -2033,9 +2006,9 @@ public Builder mergeFrom(org.tensorflow.proto.RunMetadata other) {
                 partitionGraphsBuilder_.dispose();
                 partitionGraphsBuilder_ = null;
                 partitionGraphs_ = other.partitionGraphs_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000004);
                 partitionGraphsBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getPartitionGraphsFieldBuilder() : null;
               } else {
                 partitionGraphsBuilder_.addAllMessages(other.partitionGraphs_);
    @@ -2046,7 +2019,7 @@ public Builder mergeFrom(org.tensorflow.proto.RunMetadata other) {
             if (!other.functionGraphs_.isEmpty()) {
               if (functionGraphs_.isEmpty()) {
                 functionGraphs_ = other.functionGraphs_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            bitField0_ = (bitField0_ & ~0x00000008);
               } else {
                 ensureFunctionGraphsIsMutable();
                 functionGraphs_.addAll(other.functionGraphs_);
    @@ -2059,9 +2032,9 @@ public Builder mergeFrom(org.tensorflow.proto.RunMetadata other) {
                 functionGraphsBuilder_.dispose();
                 functionGraphsBuilder_ = null;
                 functionGraphs_ = other.functionGraphs_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            bitField0_ = (bitField0_ & ~0x00000008);
                 functionGraphsBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getFunctionGraphsFieldBuilder() : null;
               } else {
                 functionGraphsBuilder_.addAllMessages(other.functionGraphs_);
    @@ -2101,14 +2074,14 @@ public Builder mergeFrom(
                   input.readMessage(
                       getStepStatsFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   input.readMessage(
                       getCostGraphFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
    @@ -2141,7 +2114,7 @@ public Builder mergeFrom(
                   input.readMessage(
                       getSessionMetadataFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 42
                 default: {
    @@ -2162,7 +2135,7 @@ public Builder mergeFrom(
         private int bitField0_;
     
         private org.tensorflow.proto.StepStats stepStats_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.StepStats, org.tensorflow.proto.StepStats.Builder, org.tensorflow.proto.StepStatsOrBuilder> stepStatsBuilder_;
         /**
          * 
    @@ -2175,7 +2148,7 @@ public Builder mergeFrom(
          * @return Whether the stepStats field is set.
          */
         public boolean hasStepStats() {
    -      return stepStatsBuilder_ != null || stepStats_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -2209,11 +2182,11 @@ public Builder setStepStats(org.tensorflow.proto.StepStats value) {
               throw new NullPointerException();
             }
             stepStats_ = value;
    -        onChanged();
           } else {
             stepStatsBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000001;
    +      onChanged();
           return this;
         }
         /**
    @@ -2229,11 +2202,11 @@ public Builder setStepStats(
             org.tensorflow.proto.StepStats.Builder builderForValue) {
           if (stepStatsBuilder_ == null) {
             stepStats_ = builderForValue.build();
    -        onChanged();
           } else {
             stepStatsBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000001;
    +      onChanged();
           return this;
         }
         /**
    @@ -2247,17 +2220,20 @@ public Builder setStepStats(
          */
         public Builder mergeStepStats(org.tensorflow.proto.StepStats value) {
           if (stepStatsBuilder_ == null) {
    -        if (stepStats_ != null) {
    -          stepStats_ =
    -            org.tensorflow.proto.StepStats.newBuilder(stepStats_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000001) != 0) &&
    +          stepStats_ != null &&
    +          stepStats_ != org.tensorflow.proto.StepStats.getDefaultInstance()) {
    +          getStepStatsBuilder().mergeFrom(value);
             } else {
               stepStats_ = value;
             }
    -        onChanged();
           } else {
             stepStatsBuilder_.mergeFrom(value);
           }
    -
    +      if (stepStats_ != null) {
    +        bitField0_ |= 0x00000001;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -2270,14 +2246,13 @@ public Builder mergeStepStats(org.tensorflow.proto.StepStats value) {
          * .tensorflow.StepStats step_stats = 1;
          */
         public Builder clearStepStats() {
    -      if (stepStatsBuilder_ == null) {
    -        stepStats_ = null;
    -        onChanged();
    -      } else {
    -        stepStats_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000001);
    +      stepStats_ = null;
    +      if (stepStatsBuilder_ != null) {
    +        stepStatsBuilder_.dispose();
             stepStatsBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -2290,7 +2265,7 @@ public Builder clearStepStats() {
          * .tensorflow.StepStats step_stats = 1;
          */
         public org.tensorflow.proto.StepStats.Builder getStepStatsBuilder() {
    -      
    +      bitField0_ |= 0x00000001;
           onChanged();
           return getStepStatsFieldBuilder().getBuilder();
         }
    @@ -2320,11 +2295,11 @@ public org.tensorflow.proto.StepStatsOrBuilder getStepStatsOrBuilder() {
          *
          * .tensorflow.StepStats step_stats = 1;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.StepStats, org.tensorflow.proto.StepStats.Builder, org.tensorflow.proto.StepStatsOrBuilder> 
             getStepStatsFieldBuilder() {
           if (stepStatsBuilder_ == null) {
    -        stepStatsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        stepStatsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.StepStats, org.tensorflow.proto.StepStats.Builder, org.tensorflow.proto.StepStatsOrBuilder>(
                     getStepStats(),
                     getParentForChildren(),
    @@ -2335,7 +2310,7 @@ public org.tensorflow.proto.StepStatsOrBuilder getStepStatsOrBuilder() {
         }
     
         private org.tensorflow.proto.CostGraphDef costGraph_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.CostGraphDef, org.tensorflow.proto.CostGraphDef.Builder, org.tensorflow.proto.CostGraphDefOrBuilder> costGraphBuilder_;
         /**
          * 
    @@ -2346,7 +2321,7 @@ public org.tensorflow.proto.StepStatsOrBuilder getStepStatsOrBuilder() {
          * @return Whether the costGraph field is set.
          */
         public boolean hasCostGraph() {
    -      return costGraphBuilder_ != null || costGraph_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -2376,11 +2351,11 @@ public Builder setCostGraph(org.tensorflow.proto.CostGraphDef value) {
               throw new NullPointerException();
             }
             costGraph_ = value;
    -        onChanged();
           } else {
             costGraphBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -2394,11 +2369,11 @@ public Builder setCostGraph(
             org.tensorflow.proto.CostGraphDef.Builder builderForValue) {
           if (costGraphBuilder_ == null) {
             costGraph_ = builderForValue.build();
    -        onChanged();
           } else {
             costGraphBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -2410,17 +2385,20 @@ public Builder setCostGraph(
          */
         public Builder mergeCostGraph(org.tensorflow.proto.CostGraphDef value) {
           if (costGraphBuilder_ == null) {
    -        if (costGraph_ != null) {
    -          costGraph_ =
    -            org.tensorflow.proto.CostGraphDef.newBuilder(costGraph_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000002) != 0) &&
    +          costGraph_ != null &&
    +          costGraph_ != org.tensorflow.proto.CostGraphDef.getDefaultInstance()) {
    +          getCostGraphBuilder().mergeFrom(value);
             } else {
               costGraph_ = value;
             }
    -        onChanged();
           } else {
             costGraphBuilder_.mergeFrom(value);
           }
    -
    +      if (costGraph_ != null) {
    +        bitField0_ |= 0x00000002;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -2431,14 +2409,13 @@ public Builder mergeCostGraph(org.tensorflow.proto.CostGraphDef value) {
          * .tensorflow.CostGraphDef cost_graph = 2;
          */
         public Builder clearCostGraph() {
    -      if (costGraphBuilder_ == null) {
    -        costGraph_ = null;
    -        onChanged();
    -      } else {
    -        costGraph_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      costGraph_ = null;
    +      if (costGraphBuilder_ != null) {
    +        costGraphBuilder_.dispose();
             costGraphBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -2449,7 +2426,7 @@ public Builder clearCostGraph() {
          * .tensorflow.CostGraphDef cost_graph = 2;
          */
         public org.tensorflow.proto.CostGraphDef.Builder getCostGraphBuilder() {
    -      
    +      bitField0_ |= 0x00000002;
           onChanged();
           return getCostGraphFieldBuilder().getBuilder();
         }
    @@ -2475,11 +2452,11 @@ public org.tensorflow.proto.CostGraphDefOrBuilder getCostGraphOrBuilder() {
          *
          * .tensorflow.CostGraphDef cost_graph = 2;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.CostGraphDef, org.tensorflow.proto.CostGraphDef.Builder, org.tensorflow.proto.CostGraphDefOrBuilder> 
             getCostGraphFieldBuilder() {
           if (costGraphBuilder_ == null) {
    -        costGraphBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        costGraphBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.CostGraphDef, org.tensorflow.proto.CostGraphDef.Builder, org.tensorflow.proto.CostGraphDefOrBuilder>(
                     getCostGraph(),
                     getParentForChildren(),
    @@ -2492,13 +2469,13 @@ public org.tensorflow.proto.CostGraphDefOrBuilder getCostGraphOrBuilder() {
         private java.util.List partitionGraphs_ =
           java.util.Collections.emptyList();
         private void ensurePartitionGraphsIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!((bitField0_ & 0x00000004) != 0)) {
             partitionGraphs_ = new java.util.ArrayList(partitionGraphs_);
    -        bitField0_ |= 0x00000001;
    +        bitField0_ |= 0x00000004;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.GraphDef, org.tensorflow.proto.GraphDef.Builder, org.tensorflow.proto.GraphDefOrBuilder> partitionGraphsBuilder_;
     
         /**
    @@ -2688,7 +2665,7 @@ public Builder addAllPartitionGraphs(
         public Builder clearPartitionGraphs() {
           if (partitionGraphsBuilder_ == null) {
             partitionGraphs_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000004);
             onChanged();
           } else {
             partitionGraphsBuilder_.clear();
    @@ -2786,14 +2763,14 @@ public org.tensorflow.proto.GraphDef.Builder addPartitionGraphsBuilder(
              getPartitionGraphsBuilderList() {
           return getPartitionGraphsFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.GraphDef, org.tensorflow.proto.GraphDef.Builder, org.tensorflow.proto.GraphDefOrBuilder> 
             getPartitionGraphsFieldBuilder() {
           if (partitionGraphsBuilder_ == null) {
    -        partitionGraphsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        partitionGraphsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.GraphDef, org.tensorflow.proto.GraphDef.Builder, org.tensorflow.proto.GraphDefOrBuilder>(
                     partitionGraphs_,
    -                ((bitField0_ & 0x00000001) != 0),
    +                ((bitField0_ & 0x00000004) != 0),
                     getParentForChildren(),
                     isClean());
             partitionGraphs_ = null;
    @@ -2804,13 +2781,13 @@ public org.tensorflow.proto.GraphDef.Builder addPartitionGraphsBuilder(
         private java.util.List functionGraphs_ =
           java.util.Collections.emptyList();
         private void ensureFunctionGraphsIsMutable() {
    -      if (!((bitField0_ & 0x00000002) != 0)) {
    +      if (!((bitField0_ & 0x00000008) != 0)) {
             functionGraphs_ = new java.util.ArrayList(functionGraphs_);
    -        bitField0_ |= 0x00000002;
    +        bitField0_ |= 0x00000008;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.RunMetadata.FunctionGraphs, org.tensorflow.proto.RunMetadata.FunctionGraphs.Builder, org.tensorflow.proto.RunMetadata.FunctionGraphsOrBuilder> functionGraphsBuilder_;
     
         /**
    @@ -3099,7 +3076,7 @@ public Builder addAllFunctionGraphs(
         public Builder clearFunctionGraphs() {
           if (functionGraphsBuilder_ == null) {
             functionGraphs_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        bitField0_ = (bitField0_ & ~0x00000008);
             onChanged();
           } else {
             functionGraphsBuilder_.clear();
    @@ -3260,14 +3237,14 @@ public org.tensorflow.proto.RunMetadata.FunctionGraphs.Builder addFunctionGraphs
              getFunctionGraphsBuilderList() {
           return getFunctionGraphsFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.RunMetadata.FunctionGraphs, org.tensorflow.proto.RunMetadata.FunctionGraphs.Builder, org.tensorflow.proto.RunMetadata.FunctionGraphsOrBuilder> 
             getFunctionGraphsFieldBuilder() {
           if (functionGraphsBuilder_ == null) {
    -        functionGraphsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        functionGraphsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.RunMetadata.FunctionGraphs, org.tensorflow.proto.RunMetadata.FunctionGraphs.Builder, org.tensorflow.proto.RunMetadata.FunctionGraphsOrBuilder>(
                     functionGraphs_,
    -                ((bitField0_ & 0x00000002) != 0),
    +                ((bitField0_ & 0x00000008) != 0),
                     getParentForChildren(),
                     isClean());
             functionGraphs_ = null;
    @@ -3276,7 +3253,7 @@ public org.tensorflow.proto.RunMetadata.FunctionGraphs.Builder addFunctionGraphs
         }
     
         private org.tensorflow.proto.SessionMetadata sessionMetadata_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.SessionMetadata, org.tensorflow.proto.SessionMetadata.Builder, org.tensorflow.proto.SessionMetadataOrBuilder> sessionMetadataBuilder_;
         /**
          * 
    @@ -3287,7 +3264,7 @@ public org.tensorflow.proto.RunMetadata.FunctionGraphs.Builder addFunctionGraphs
          * @return Whether the sessionMetadata field is set.
          */
         public boolean hasSessionMetadata() {
    -      return sessionMetadataBuilder_ != null || sessionMetadata_ != null;
    +      return ((bitField0_ & 0x00000010) != 0);
         }
         /**
          * 
    @@ -3317,11 +3294,11 @@ public Builder setSessionMetadata(org.tensorflow.proto.SessionMetadata value) {
               throw new NullPointerException();
             }
             sessionMetadata_ = value;
    -        onChanged();
           } else {
             sessionMetadataBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000010;
    +      onChanged();
           return this;
         }
         /**
    @@ -3335,11 +3312,11 @@ public Builder setSessionMetadata(
             org.tensorflow.proto.SessionMetadata.Builder builderForValue) {
           if (sessionMetadataBuilder_ == null) {
             sessionMetadata_ = builderForValue.build();
    -        onChanged();
           } else {
             sessionMetadataBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000010;
    +      onChanged();
           return this;
         }
         /**
    @@ -3351,17 +3328,20 @@ public Builder setSessionMetadata(
          */
         public Builder mergeSessionMetadata(org.tensorflow.proto.SessionMetadata value) {
           if (sessionMetadataBuilder_ == null) {
    -        if (sessionMetadata_ != null) {
    -          sessionMetadata_ =
    -            org.tensorflow.proto.SessionMetadata.newBuilder(sessionMetadata_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000010) != 0) &&
    +          sessionMetadata_ != null &&
    +          sessionMetadata_ != org.tensorflow.proto.SessionMetadata.getDefaultInstance()) {
    +          getSessionMetadataBuilder().mergeFrom(value);
             } else {
               sessionMetadata_ = value;
             }
    -        onChanged();
           } else {
             sessionMetadataBuilder_.mergeFrom(value);
           }
    -
    +      if (sessionMetadata_ != null) {
    +        bitField0_ |= 0x00000010;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -3372,14 +3352,13 @@ public Builder mergeSessionMetadata(org.tensorflow.proto.SessionMetadata value)
          * .tensorflow.SessionMetadata session_metadata = 5;
          */
         public Builder clearSessionMetadata() {
    -      if (sessionMetadataBuilder_ == null) {
    -        sessionMetadata_ = null;
    -        onChanged();
    -      } else {
    -        sessionMetadata_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000010);
    +      sessionMetadata_ = null;
    +      if (sessionMetadataBuilder_ != null) {
    +        sessionMetadataBuilder_.dispose();
             sessionMetadataBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -3390,7 +3369,7 @@ public Builder clearSessionMetadata() {
          * .tensorflow.SessionMetadata session_metadata = 5;
          */
         public org.tensorflow.proto.SessionMetadata.Builder getSessionMetadataBuilder() {
    -      
    +      bitField0_ |= 0x00000010;
           onChanged();
           return getSessionMetadataFieldBuilder().getBuilder();
         }
    @@ -3416,11 +3395,11 @@ public org.tensorflow.proto.SessionMetadataOrBuilder getSessionMetadataOrBuilder
          *
          * .tensorflow.SessionMetadata session_metadata = 5;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.SessionMetadata, org.tensorflow.proto.SessionMetadata.Builder, org.tensorflow.proto.SessionMetadataOrBuilder> 
             getSessionMetadataFieldBuilder() {
           if (sessionMetadataBuilder_ == null) {
    -        sessionMetadataBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        sessionMetadataBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.SessionMetadata, org.tensorflow.proto.SessionMetadata.Builder, org.tensorflow.proto.SessionMetadataOrBuilder>(
                     getSessionMetadata(),
                     getParentForChildren(),
    @@ -3429,18 +3408,6 @@ public org.tensorflow.proto.SessionMetadataOrBuilder getSessionMetadataOrBuilder
           }
           return sessionMetadataBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.RunMetadata)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunMetadataOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunMetadataOrBuilder.java
    index 58cc295b4c6..4c7e97243da 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunMetadataOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunMetadataOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunOptions.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunOptions.java
    index cf364bfe75f..f7bbbdee26c 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunOptions.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunOptions.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,37 +13,34 @@
      * Protobuf type {@code tensorflow.RunOptions}
      */
     public final class RunOptions extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.RunOptions)
         RunOptionsOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      RunOptions.class.getName());
    +  }
       // Use RunOptions.newBuilder() to construct.
    -  private RunOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private RunOptions(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private RunOptions() {
         traceLevel_ = 0;
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new RunOptions();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_RunOptions_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_RunOptions_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -77,6 +76,15 @@ public enum TraceLevel
         UNRECOGNIZED(-1),
         ;
     
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        TraceLevel.class.getName());
    +    }
         /**
          * NO_TRACE = 0;
          */
    @@ -234,36 +242,33 @@ public interface ExperimentalOrBuilder extends
        * Protobuf type {@code tensorflow.RunOptions.Experimental}
        */
       public static final class Experimental extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.RunOptions.Experimental)
           ExperimentalOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        Experimental.class.getName());
    +    }
         // Use Experimental.newBuilder() to construct.
    -    private Experimental(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private Experimental(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private Experimental() {
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new Experimental();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_RunOptions_Experimental_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_RunOptions_Experimental_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -293,36 +298,33 @@ public interface RunHandlerPoolOptionsOrBuilder extends
          * Protobuf type {@code tensorflow.RunOptions.Experimental.RunHandlerPoolOptions}
          */
         public static final class RunHandlerPoolOptions extends
    -        com.google.protobuf.GeneratedMessageV3 implements
    +        com.google.protobuf.GeneratedMessage implements
             // @@protoc_insertion_point(message_implements:tensorflow.RunOptions.Experimental.RunHandlerPoolOptions)
             RunHandlerPoolOptionsOrBuilder {
         private static final long serialVersionUID = 0L;
    +      static {
    +        com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +          com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +          /* major= */ 4,
    +          /* minor= */ 28,
    +          /* patch= */ 3,
    +          /* suffix= */ "",
    +          RunHandlerPoolOptions.class.getName());
    +      }
           // Use RunHandlerPoolOptions.newBuilder() to construct.
    -      private RunHandlerPoolOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +      private RunHandlerPoolOptions(com.google.protobuf.GeneratedMessage.Builder builder) {
             super(builder);
           }
           private RunHandlerPoolOptions() {
           }
     
    -      @java.lang.Override
    -      @SuppressWarnings({"unused"})
    -      protected java.lang.Object newInstance(
    -          UnusedPrivateParameter unused) {
    -        return new RunHandlerPoolOptions();
    -      }
    -
    -      @java.lang.Override
    -      public final com.google.protobuf.UnknownFieldSet
    -      getUnknownFields() {
    -        return this.unknownFields;
    -      }
           public static final com.google.protobuf.Descriptors.Descriptor
               getDescriptor() {
             return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_RunOptions_Experimental_RunHandlerPoolOptions_descriptor;
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_RunOptions_Experimental_RunHandlerPoolOptions_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -330,7 +332,7 @@ protected java.lang.Object newInstance(
           }
     
           public static final int PRIORITY_FIELD_NUMBER = 1;
    -      private long priority_;
    +      private long priority_ = 0L;
           /**
            * 
            * Priority of the request. The run handler thread pool will schedule ops
    @@ -445,39 +447,41 @@ public static org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions
           }
           public static org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions parseFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions parseFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
    +
           public static org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions parseDelimitedFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input);
           }
    +
           public static org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions parseDelimitedFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
           }
           public static org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions parseFrom(
               com.google.protobuf.CodedInputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions parseFrom(
               com.google.protobuf.CodedInputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
     
    @@ -497,7 +501,7 @@ public Builder toBuilder() {
     
           @java.lang.Override
           protected Builder newBuilderForType(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             Builder builder = new Builder(parent);
             return builder;
           }
    @@ -509,7 +513,7 @@ protected Builder newBuilderForType(
            * Protobuf type {@code tensorflow.RunOptions.Experimental.RunHandlerPoolOptions}
            */
           public static final class Builder extends
    -          com.google.protobuf.GeneratedMessageV3.Builder implements
    +          com.google.protobuf.GeneratedMessage.Builder implements
               // @@protoc_insertion_point(builder_implements:tensorflow.RunOptions.Experimental.RunHandlerPoolOptions)
               org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptionsOrBuilder {
             public static final com.google.protobuf.Descriptors.Descriptor
    @@ -518,7 +522,7 @@ public static final class Builder extends
             }
     
             @java.lang.Override
    -        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
                 internalGetFieldAccessorTable() {
               return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_RunOptions_Experimental_RunHandlerPoolOptions_fieldAccessorTable
                   .ensureFieldAccessorsInitialized(
    @@ -531,15 +535,15 @@ private Builder() {
             }
     
             private Builder(
    -            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
               super(parent);
     
             }
             @java.lang.Override
             public Builder clear() {
               super.clear();
    +          bitField0_ = 0;
               priority_ = 0L;
    -
               return this;
             }
     
    @@ -566,43 +570,18 @@ public org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions build(
             @java.lang.Override
             public org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions buildPartial() {
               org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions result = new org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions(this);
    -          result.priority_ = priority_;
    +          if (bitField0_ != 0) { buildPartial0(result); }
               onBuilt();
               return result;
             }
     
    -        @java.lang.Override
    -        public Builder clone() {
    -          return super.clone();
    -        }
    -        @java.lang.Override
    -        public Builder setField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.setField(field, value);
    -        }
    -        @java.lang.Override
    -        public Builder clearField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field) {
    -          return super.clearField(field);
    -        }
    -        @java.lang.Override
    -        public Builder clearOneof(
    -            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -          return super.clearOneof(oneof);
    -        }
    -        @java.lang.Override
    -        public Builder setRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            int index, java.lang.Object value) {
    -          return super.setRepeatedField(field, index, value);
    -        }
    -        @java.lang.Override
    -        public Builder addRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.addRepeatedField(field, value);
    +        private void buildPartial0(org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions result) {
    +          int from_bitField0_ = bitField0_;
    +          if (((from_bitField0_ & 0x00000001) != 0)) {
    +            result.priority_ = priority_;
    +          }
             }
    +
             @java.lang.Override
             public Builder mergeFrom(com.google.protobuf.Message other) {
               if (other instanceof org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions) {
    @@ -646,7 +625,7 @@ public Builder mergeFrom(
                       break;
                     case 8: {
                       priority_ = input.readInt64();
    -
    +                  bitField0_ |= 0x00000001;
                       break;
                     } // case 8
                     default: {
    @@ -664,6 +643,7 @@ public Builder mergeFrom(
               } // finally
               return this;
             }
    +        private int bitField0_;
     
             private long priority_ ;
             /**
    @@ -690,8 +670,9 @@ public long getPriority() {
              * @return This builder for chaining.
              */
             public Builder setPriority(long value) {
    -          
    +
               priority_ = value;
    +          bitField0_ |= 0x00000001;
               onChanged();
               return this;
             }
    @@ -705,23 +686,11 @@ public Builder setPriority(long value) {
              * @return This builder for chaining.
              */
             public Builder clearPriority() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000001);
               priority_ = 0L;
               onChanged();
               return this;
             }
    -        @java.lang.Override
    -        public final Builder setUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.setUnknownFields(unknownFields);
    -        }
    -
    -        @java.lang.Override
    -        public final Builder mergeUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.mergeUnknownFields(unknownFields);
    -        }
    -
     
             // @@protoc_insertion_point(builder_scope:tensorflow.RunOptions.Experimental.RunHandlerPoolOptions)
           }
    @@ -774,8 +743,9 @@ public org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions getDef
     
         }
     
    +    private int bitField0_;
         public static final int COLLECTIVE_GRAPH_KEY_FIELD_NUMBER = 1;
    -    private long collectiveGraphKey_;
    +    private long collectiveGraphKey_ = 0L;
         /**
          * 
          * If non-zero, declares that this graph is going to use collective
    @@ -793,7 +763,7 @@ public long getCollectiveGraphKey() {
         }
     
         public static final int USE_RUN_HANDLER_POOL_FIELD_NUMBER = 2;
    -    private boolean useRunHandlerPool_;
    +    private boolean useRunHandlerPool_ = false;
         /**
          * 
          * If true, then operations (using the inter-op pool) across all
    @@ -818,7 +788,7 @@ public boolean getUseRunHandlerPool() {
          */
         @java.lang.Override
         public boolean hasRunHandlerPoolOptions() {
    -      return runHandlerPoolOptions_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * .tensorflow.RunOptions.Experimental.RunHandlerPoolOptions run_handler_pool_options = 3;
    @@ -833,7 +803,7 @@ public org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions getRun
          */
         @java.lang.Override
         public org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptionsOrBuilder getRunHandlerPoolOptionsOrBuilder() {
    -      return getRunHandlerPoolOptions();
    +      return runHandlerPoolOptions_ == null ? org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions.getDefaultInstance() : runHandlerPoolOptions_;
         }
     
         private byte memoizedIsInitialized = -1;
    @@ -856,7 +826,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (useRunHandlerPool_ != false) {
             output.writeBool(2, useRunHandlerPool_);
           }
    -      if (runHandlerPoolOptions_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(3, getRunHandlerPoolOptions());
           }
           getUnknownFields().writeTo(output);
    @@ -876,7 +846,7 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeBoolSize(2, useRunHandlerPool_);
           }
    -      if (runHandlerPoolOptions_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(3, getRunHandlerPoolOptions());
           }
    @@ -964,39 +934,41 @@ public static org.tensorflow.proto.RunOptions.Experimental parseFrom(
         }
         public static org.tensorflow.proto.RunOptions.Experimental parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.RunOptions.Experimental parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.RunOptions.Experimental parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.RunOptions.Experimental parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.RunOptions.Experimental parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.RunOptions.Experimental parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -1016,7 +988,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -1030,7 +1002,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.RunOptions.Experimental}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.RunOptions.Experimental)
             org.tensorflow.proto.RunOptions.ExperimentalOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1039,7 +1011,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_RunOptions_Experimental_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -1048,25 +1020,29 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.RunOptions.Experimental.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getRunHandlerPoolOptionsFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             collectiveGraphKey_ = 0L;
    -
             useRunHandlerPool_ = false;
    -
    -        if (runHandlerPoolOptionsBuilder_ == null) {
    -          runHandlerPoolOptions_ = null;
    -        } else {
    -          runHandlerPoolOptions_ = null;
    +        runHandlerPoolOptions_ = null;
    +        if (runHandlerPoolOptionsBuilder_ != null) {
    +          runHandlerPoolOptionsBuilder_.dispose();
               runHandlerPoolOptionsBuilder_ = null;
             }
             return this;
    @@ -1095,49 +1071,29 @@ public org.tensorflow.proto.RunOptions.Experimental build() {
           @java.lang.Override
           public org.tensorflow.proto.RunOptions.Experimental buildPartial() {
             org.tensorflow.proto.RunOptions.Experimental result = new org.tensorflow.proto.RunOptions.Experimental(this);
    -        result.collectiveGraphKey_ = collectiveGraphKey_;
    -        result.useRunHandlerPool_ = useRunHandlerPool_;
    -        if (runHandlerPoolOptionsBuilder_ == null) {
    -          result.runHandlerPoolOptions_ = runHandlerPoolOptions_;
    -        } else {
    -          result.runHandlerPoolOptions_ = runHandlerPoolOptionsBuilder_.build();
    -        }
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.RunOptions.Experimental result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.collectiveGraphKey_ = collectiveGraphKey_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.useRunHandlerPool_ = useRunHandlerPool_;
    +        }
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.runHandlerPoolOptions_ = runHandlerPoolOptionsBuilder_ == null
    +              ? runHandlerPoolOptions_
    +              : runHandlerPoolOptionsBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.RunOptions.Experimental) {
    @@ -1187,19 +1143,19 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     collectiveGraphKey_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   case 16: {
                     useRunHandlerPool_ = input.readBool();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 16
                   case 26: {
                     input.readMessage(
                         getRunHandlerPoolOptionsFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 26
                   default: {
    @@ -1217,6 +1173,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private long collectiveGraphKey_ ;
           /**
    @@ -1247,8 +1204,9 @@ public long getCollectiveGraphKey() {
            * @return This builder for chaining.
            */
           public Builder setCollectiveGraphKey(long value) {
    -        
    +
             collectiveGraphKey_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -1264,7 +1222,7 @@ public Builder setCollectiveGraphKey(long value) {
            * @return This builder for chaining.
            */
           public Builder clearCollectiveGraphKey() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             collectiveGraphKey_ = 0L;
             onChanged();
             return this;
    @@ -1299,8 +1257,9 @@ public boolean getUseRunHandlerPool() {
            * @return This builder for chaining.
            */
           public Builder setUseRunHandlerPool(boolean value) {
    -        
    +
             useRunHandlerPool_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1316,21 +1275,21 @@ public Builder setUseRunHandlerPool(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearUseRunHandlerPool() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000002);
             useRunHandlerPool_ = false;
             onChanged();
             return this;
           }
     
           private org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions runHandlerPoolOptions_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions, org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions.Builder, org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptionsOrBuilder> runHandlerPoolOptionsBuilder_;
           /**
            * .tensorflow.RunOptions.Experimental.RunHandlerPoolOptions run_handler_pool_options = 3;
            * @return Whether the runHandlerPoolOptions field is set.
            */
           public boolean hasRunHandlerPoolOptions() {
    -        return runHandlerPoolOptionsBuilder_ != null || runHandlerPoolOptions_ != null;
    +        return ((bitField0_ & 0x00000004) != 0);
           }
           /**
            * .tensorflow.RunOptions.Experimental.RunHandlerPoolOptions run_handler_pool_options = 3;
    @@ -1352,11 +1311,11 @@ public Builder setRunHandlerPoolOptions(org.tensorflow.proto.RunOptions.Experime
                 throw new NullPointerException();
               }
               runHandlerPoolOptions_ = value;
    -          onChanged();
             } else {
               runHandlerPoolOptionsBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000004;
    +        onChanged();
             return this;
           }
           /**
    @@ -1366,11 +1325,11 @@ public Builder setRunHandlerPoolOptions(
               org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions.Builder builderForValue) {
             if (runHandlerPoolOptionsBuilder_ == null) {
               runHandlerPoolOptions_ = builderForValue.build();
    -          onChanged();
             } else {
               runHandlerPoolOptionsBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000004;
    +        onChanged();
             return this;
           }
           /**
    @@ -1378,38 +1337,40 @@ public Builder setRunHandlerPoolOptions(
            */
           public Builder mergeRunHandlerPoolOptions(org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions value) {
             if (runHandlerPoolOptionsBuilder_ == null) {
    -          if (runHandlerPoolOptions_ != null) {
    -            runHandlerPoolOptions_ =
    -              org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions.newBuilder(runHandlerPoolOptions_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000004) != 0) &&
    +            runHandlerPoolOptions_ != null &&
    +            runHandlerPoolOptions_ != org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions.getDefaultInstance()) {
    +            getRunHandlerPoolOptionsBuilder().mergeFrom(value);
               } else {
                 runHandlerPoolOptions_ = value;
               }
    -          onChanged();
             } else {
               runHandlerPoolOptionsBuilder_.mergeFrom(value);
             }
    -
    +        if (runHandlerPoolOptions_ != null) {
    +          bitField0_ |= 0x00000004;
    +          onChanged();
    +        }
             return this;
           }
           /**
            * .tensorflow.RunOptions.Experimental.RunHandlerPoolOptions run_handler_pool_options = 3;
            */
           public Builder clearRunHandlerPoolOptions() {
    -        if (runHandlerPoolOptionsBuilder_ == null) {
    -          runHandlerPoolOptions_ = null;
    -          onChanged();
    -        } else {
    -          runHandlerPoolOptions_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000004);
    +        runHandlerPoolOptions_ = null;
    +        if (runHandlerPoolOptionsBuilder_ != null) {
    +          runHandlerPoolOptionsBuilder_.dispose();
               runHandlerPoolOptionsBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
            * .tensorflow.RunOptions.Experimental.RunHandlerPoolOptions run_handler_pool_options = 3;
            */
           public org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions.Builder getRunHandlerPoolOptionsBuilder() {
    -        
    +        bitField0_ |= 0x00000004;
             onChanged();
             return getRunHandlerPoolOptionsFieldBuilder().getBuilder();
           }
    @@ -1427,11 +1388,11 @@ public org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptionsOrBuild
           /**
            * .tensorflow.RunOptions.Experimental.RunHandlerPoolOptions run_handler_pool_options = 3;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions, org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions.Builder, org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptionsOrBuilder> 
               getRunHandlerPoolOptionsFieldBuilder() {
             if (runHandlerPoolOptionsBuilder_ == null) {
    -          runHandlerPoolOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          runHandlerPoolOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions, org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptions.Builder, org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptionsOrBuilder>(
                       getRunHandlerPoolOptions(),
                       getParentForChildren(),
    @@ -1440,18 +1401,6 @@ public org.tensorflow.proto.RunOptions.Experimental.RunHandlerPoolOptionsOrBuild
             }
             return runHandlerPoolOptionsBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.RunOptions.Experimental)
         }
    @@ -1504,8 +1453,9 @@ public org.tensorflow.proto.RunOptions.Experimental getDefaultInstanceForType()
     
       }
     
    +  private int bitField0_;
       public static final int TRACE_LEVEL_FIELD_NUMBER = 1;
    -  private int traceLevel_;
    +  private int traceLevel_ = 0;
       /**
        * .tensorflow.RunOptions.TraceLevel trace_level = 1;
        * @return The enum numeric value on the wire for traceLevel.
    @@ -1518,13 +1468,12 @@ public org.tensorflow.proto.RunOptions.Experimental getDefaultInstanceForType()
        * @return The traceLevel.
        */
       @java.lang.Override public org.tensorflow.proto.RunOptions.TraceLevel getTraceLevel() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.RunOptions.TraceLevel result = org.tensorflow.proto.RunOptions.TraceLevel.valueOf(traceLevel_);
    +    org.tensorflow.proto.RunOptions.TraceLevel result = org.tensorflow.proto.RunOptions.TraceLevel.forNumber(traceLevel_);
         return result == null ? org.tensorflow.proto.RunOptions.TraceLevel.UNRECOGNIZED : result;
       }
     
       public static final int TIMEOUT_IN_MS_FIELD_NUMBER = 2;
    -  private long timeoutInMs_;
    +  private long timeoutInMs_ = 0L;
       /**
        * 
        * Time to wait for operation to complete in milliseconds.
    @@ -1539,7 +1488,7 @@ public long getTimeoutInMs() {
       }
     
       public static final int INTER_OP_THREAD_POOL_FIELD_NUMBER = 3;
    -  private int interOpThreadPool_;
    +  private int interOpThreadPool_ = 0;
       /**
        * 
        * The thread pool to use, if session_inter_op_thread_pool is configured.
    @@ -1559,7 +1508,7 @@ public int getInterOpThreadPool() {
       }
     
       public static final int OUTPUT_PARTITION_GRAPHS_FIELD_NUMBER = 5;
    -  private boolean outputPartitionGraphs_;
    +  private boolean outputPartitionGraphs_ = false;
       /**
        * 
        * Whether the partition graph(s) executed by the executor(s) should be
    @@ -1586,7 +1535,7 @@ public boolean getOutputPartitionGraphs() {
        */
       @java.lang.Override
       public boolean hasDebugOptions() {
    -    return debugOptions_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -1609,16 +1558,17 @@ public org.tensorflow.proto.DebugOptions getDebugOptions() {
        */
       @java.lang.Override
       public org.tensorflow.proto.DebugOptionsOrBuilder getDebugOptionsOrBuilder() {
    -    return getDebugOptions();
    +    return debugOptions_ == null ? org.tensorflow.proto.DebugOptions.getDefaultInstance() : debugOptions_;
       }
     
       public static final int REPORT_TENSOR_ALLOCATIONS_UPON_OOM_FIELD_NUMBER = 7;
    -  private boolean reportTensorAllocationsUponOom_;
    +  private boolean reportTensorAllocationsUponOom_ = false;
       /**
        * 
        * When enabled, causes tensor allocation information to be included in
        * the error message when the Run() call fails because the allocator ran
        * out of memory (OOM).
    +   *
        * Enabling this option can slow down the Run() call.
        * 
    * @@ -1638,7 +1588,7 @@ public boolean getReportTensorAllocationsUponOom() { */ @java.lang.Override public boolean hasExperimental() { - return experimental_ != null; + return ((bitField0_ & 0x00000002) != 0); } /** * .tensorflow.RunOptions.Experimental experimental = 8; @@ -1653,7 +1603,7 @@ public org.tensorflow.proto.RunOptions.Experimental getExperimental() { */ @java.lang.Override public org.tensorflow.proto.RunOptions.ExperimentalOrBuilder getExperimentalOrBuilder() { - return getExperimental(); + return experimental_ == null ? org.tensorflow.proto.RunOptions.Experimental.getDefaultInstance() : experimental_; } private byte memoizedIsInitialized = -1; @@ -1682,13 +1632,13 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (outputPartitionGraphs_ != false) { output.writeBool(5, outputPartitionGraphs_); } - if (debugOptions_ != null) { + if (((bitField0_ & 0x00000001) != 0)) { output.writeMessage(6, getDebugOptions()); } if (reportTensorAllocationsUponOom_ != false) { output.writeBool(7, reportTensorAllocationsUponOom_); } - if (experimental_ != null) { + if (((bitField0_ & 0x00000002) != 0)) { output.writeMessage(8, getExperimental()); } getUnknownFields().writeTo(output); @@ -1716,7 +1666,7 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeBoolSize(5, outputPartitionGraphs_); } - if (debugOptions_ != null) { + if (((bitField0_ & 0x00000001) != 0)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(6, getDebugOptions()); } @@ -1724,7 +1674,7 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeBoolSize(7, reportTensorAllocationsUponOom_); } - if (experimental_ != null) { + if (((bitField0_ & 0x00000002) != 0)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(8, getExperimental()); } @@ -1833,39 +1783,41 @@ public static org.tensorflow.proto.RunOptions parseFrom( } public static org.tensorflow.proto.RunOptions parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.RunOptions parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.RunOptions parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.RunOptions parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.RunOptions parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.RunOptions parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -1885,7 +1837,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -1897,7 +1849,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.RunOptions} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.RunOptions) org.tensorflow.proto.RunOptionsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -1906,7 +1858,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_RunOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -1915,37 +1867,38 @@ public static final class Builder extends // Construct using org.tensorflow.proto.RunOptions.newBuilder() private Builder() { - + maybeForceBuilderInitialization(); } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); - + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage + .alwaysUseFieldBuilders) { + getDebugOptionsFieldBuilder(); + getExperimentalFieldBuilder(); + } } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; traceLevel_ = 0; - timeoutInMs_ = 0L; - interOpThreadPool_ = 0; - outputPartitionGraphs_ = false; - - if (debugOptionsBuilder_ == null) { - debugOptions_ = null; - } else { - debugOptions_ = null; + debugOptions_ = null; + if (debugOptionsBuilder_ != null) { + debugOptionsBuilder_.dispose(); debugOptionsBuilder_ = null; } reportTensorAllocationsUponOom_ = false; - - if (experimentalBuilder_ == null) { - experimental_ = null; - } else { - experimental_ = null; + experimental_ = null; + if (experimentalBuilder_ != null) { + experimentalBuilder_.dispose(); experimentalBuilder_ = null; } return this; @@ -1974,57 +1927,44 @@ public org.tensorflow.proto.RunOptions build() { @java.lang.Override public org.tensorflow.proto.RunOptions buildPartial() { org.tensorflow.proto.RunOptions result = new org.tensorflow.proto.RunOptions(this); - result.traceLevel_ = traceLevel_; - result.timeoutInMs_ = timeoutInMs_; - result.interOpThreadPool_ = interOpThreadPool_; - result.outputPartitionGraphs_ = outputPartitionGraphs_; - if (debugOptionsBuilder_ == null) { - result.debugOptions_ = debugOptions_; - } else { - result.debugOptions_ = debugOptionsBuilder_.build(); - } - result.reportTensorAllocationsUponOom_ = reportTensorAllocationsUponOom_; - if (experimentalBuilder_ == null) { - result.experimental_ = experimental_; - } else { - result.experimental_ = experimentalBuilder_.build(); - } + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.RunOptions result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.traceLevel_ = traceLevel_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.timeoutInMs_ = timeoutInMs_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.interOpThreadPool_ = interOpThreadPool_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.outputPartitionGraphs_ = outputPartitionGraphs_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000010) != 0)) { + result.debugOptions_ = debugOptionsBuilder_ == null + ? debugOptions_ + : debugOptionsBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.reportTensorAllocationsUponOom_ = reportTensorAllocationsUponOom_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.experimental_ = experimentalBuilder_ == null + ? experimental_ + : experimentalBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + result.bitField0_ |= to_bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.RunOptions) { @@ -2086,41 +2026,41 @@ public Builder mergeFrom( break; case 8: { traceLevel_ = input.readEnum(); - + bitField0_ |= 0x00000001; break; } // case 8 case 16: { timeoutInMs_ = input.readInt64(); - + bitField0_ |= 0x00000002; break; } // case 16 case 24: { interOpThreadPool_ = input.readInt32(); - + bitField0_ |= 0x00000004; break; } // case 24 case 40: { outputPartitionGraphs_ = input.readBool(); - + bitField0_ |= 0x00000008; break; } // case 40 case 50: { input.readMessage( getDebugOptionsFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000010; break; } // case 50 case 56: { reportTensorAllocationsUponOom_ = input.readBool(); - + bitField0_ |= 0x00000020; break; } // case 56 case 66: { input.readMessage( getExperimentalFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000040; break; } // case 66 default: { @@ -2138,6 +2078,7 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private int traceLevel_ = 0; /** @@ -2153,8 +2094,8 @@ public Builder mergeFrom( * @return This builder for chaining. */ public Builder setTraceLevelValue(int value) { - traceLevel_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -2164,8 +2105,7 @@ public Builder setTraceLevelValue(int value) { */ @java.lang.Override public org.tensorflow.proto.RunOptions.TraceLevel getTraceLevel() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.RunOptions.TraceLevel result = org.tensorflow.proto.RunOptions.TraceLevel.valueOf(traceLevel_); + org.tensorflow.proto.RunOptions.TraceLevel result = org.tensorflow.proto.RunOptions.TraceLevel.forNumber(traceLevel_); return result == null ? org.tensorflow.proto.RunOptions.TraceLevel.UNRECOGNIZED : result; } /** @@ -2177,7 +2117,7 @@ public Builder setTraceLevel(org.tensorflow.proto.RunOptions.TraceLevel value) { if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00000001; traceLevel_ = value.getNumber(); onChanged(); return this; @@ -2187,7 +2127,7 @@ public Builder setTraceLevel(org.tensorflow.proto.RunOptions.TraceLevel value) { * @return This builder for chaining. */ public Builder clearTraceLevel() { - + bitField0_ = (bitField0_ & ~0x00000001); traceLevel_ = 0; onChanged(); return this; @@ -2216,8 +2156,9 @@ public long getTimeoutInMs() { * @return This builder for chaining. */ public Builder setTimeoutInMs(long value) { - + timeoutInMs_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -2230,7 +2171,7 @@ public Builder setTimeoutInMs(long value) { * @return This builder for chaining. */ public Builder clearTimeoutInMs() { - + bitField0_ = (bitField0_ & ~0x00000002); timeoutInMs_ = 0L; onChanged(); return this; @@ -2269,8 +2210,9 @@ public int getInterOpThreadPool() { * @return This builder for chaining. */ public Builder setInterOpThreadPool(int value) { - + interOpThreadPool_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -2288,7 +2230,7 @@ public Builder setInterOpThreadPool(int value) { * @return This builder for chaining. */ public Builder clearInterOpThreadPool() { - + bitField0_ = (bitField0_ & ~0x00000004); interOpThreadPool_ = 0; onChanged(); return this; @@ -2319,8 +2261,9 @@ public boolean getOutputPartitionGraphs() { * @return This builder for chaining. */ public Builder setOutputPartitionGraphs(boolean value) { - + outputPartitionGraphs_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -2334,14 +2277,14 @@ public Builder setOutputPartitionGraphs(boolean value) { * @return This builder for chaining. */ public Builder clearOutputPartitionGraphs() { - + bitField0_ = (bitField0_ & ~0x00000008); outputPartitionGraphs_ = false; onChanged(); return this; } private org.tensorflow.proto.DebugOptions debugOptions_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.DebugOptions, org.tensorflow.proto.DebugOptions.Builder, org.tensorflow.proto.DebugOptionsOrBuilder> debugOptionsBuilder_; /** *
    @@ -2352,7 +2295,7 @@ public Builder clearOutputPartitionGraphs() {
          * @return Whether the debugOptions field is set.
          */
         public boolean hasDebugOptions() {
    -      return debugOptionsBuilder_ != null || debugOptions_ != null;
    +      return ((bitField0_ & 0x00000010) != 0);
         }
         /**
          * 
    @@ -2382,11 +2325,11 @@ public Builder setDebugOptions(org.tensorflow.proto.DebugOptions value) {
               throw new NullPointerException();
             }
             debugOptions_ = value;
    -        onChanged();
           } else {
             debugOptionsBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000010;
    +      onChanged();
           return this;
         }
         /**
    @@ -2400,11 +2343,11 @@ public Builder setDebugOptions(
             org.tensorflow.proto.DebugOptions.Builder builderForValue) {
           if (debugOptionsBuilder_ == null) {
             debugOptions_ = builderForValue.build();
    -        onChanged();
           } else {
             debugOptionsBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000010;
    +      onChanged();
           return this;
         }
         /**
    @@ -2416,17 +2359,20 @@ public Builder setDebugOptions(
          */
         public Builder mergeDebugOptions(org.tensorflow.proto.DebugOptions value) {
           if (debugOptionsBuilder_ == null) {
    -        if (debugOptions_ != null) {
    -          debugOptions_ =
    -            org.tensorflow.proto.DebugOptions.newBuilder(debugOptions_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000010) != 0) &&
    +          debugOptions_ != null &&
    +          debugOptions_ != org.tensorflow.proto.DebugOptions.getDefaultInstance()) {
    +          getDebugOptionsBuilder().mergeFrom(value);
             } else {
               debugOptions_ = value;
             }
    -        onChanged();
           } else {
             debugOptionsBuilder_.mergeFrom(value);
           }
    -
    +      if (debugOptions_ != null) {
    +        bitField0_ |= 0x00000010;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -2437,14 +2383,13 @@ public Builder mergeDebugOptions(org.tensorflow.proto.DebugOptions value) {
          * .tensorflow.DebugOptions debug_options = 6;
          */
         public Builder clearDebugOptions() {
    -      if (debugOptionsBuilder_ == null) {
    -        debugOptions_ = null;
    -        onChanged();
    -      } else {
    -        debugOptions_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000010);
    +      debugOptions_ = null;
    +      if (debugOptionsBuilder_ != null) {
    +        debugOptionsBuilder_.dispose();
             debugOptionsBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -2455,7 +2400,7 @@ public Builder clearDebugOptions() {
          * .tensorflow.DebugOptions debug_options = 6;
          */
         public org.tensorflow.proto.DebugOptions.Builder getDebugOptionsBuilder() {
    -      
    +      bitField0_ |= 0x00000010;
           onChanged();
           return getDebugOptionsFieldBuilder().getBuilder();
         }
    @@ -2481,11 +2426,11 @@ public org.tensorflow.proto.DebugOptionsOrBuilder getDebugOptionsOrBuilder() {
          *
          * .tensorflow.DebugOptions debug_options = 6;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.DebugOptions, org.tensorflow.proto.DebugOptions.Builder, org.tensorflow.proto.DebugOptionsOrBuilder> 
             getDebugOptionsFieldBuilder() {
           if (debugOptionsBuilder_ == null) {
    -        debugOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        debugOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.DebugOptions, org.tensorflow.proto.DebugOptions.Builder, org.tensorflow.proto.DebugOptionsOrBuilder>(
                     getDebugOptions(),
                     getParentForChildren(),
    @@ -2501,6 +2446,7 @@ public org.tensorflow.proto.DebugOptionsOrBuilder getDebugOptionsOrBuilder() {
          * When enabled, causes tensor allocation information to be included in
          * the error message when the Run() call fails because the allocator ran
          * out of memory (OOM).
    +     *
          * Enabling this option can slow down the Run() call.
          * 
    * @@ -2516,6 +2462,7 @@ public boolean getReportTensorAllocationsUponOom() { * When enabled, causes tensor allocation information to be included in * the error message when the Run() call fails because the allocator ran * out of memory (OOM). + * * Enabling this option can slow down the Run() call. *
    * @@ -2524,8 +2471,9 @@ public boolean getReportTensorAllocationsUponOom() { * @return This builder for chaining. */ public Builder setReportTensorAllocationsUponOom(boolean value) { - + reportTensorAllocationsUponOom_ = value; + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -2534,6 +2482,7 @@ public Builder setReportTensorAllocationsUponOom(boolean value) { * When enabled, causes tensor allocation information to be included in * the error message when the Run() call fails because the allocator ran * out of memory (OOM). + * * Enabling this option can slow down the Run() call. *
    * @@ -2541,21 +2490,21 @@ public Builder setReportTensorAllocationsUponOom(boolean value) { * @return This builder for chaining. */ public Builder clearReportTensorAllocationsUponOom() { - + bitField0_ = (bitField0_ & ~0x00000020); reportTensorAllocationsUponOom_ = false; onChanged(); return this; } private org.tensorflow.proto.RunOptions.Experimental experimental_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.RunOptions.Experimental, org.tensorflow.proto.RunOptions.Experimental.Builder, org.tensorflow.proto.RunOptions.ExperimentalOrBuilder> experimentalBuilder_; /** * .tensorflow.RunOptions.Experimental experimental = 8; * @return Whether the experimental field is set. */ public boolean hasExperimental() { - return experimentalBuilder_ != null || experimental_ != null; + return ((bitField0_ & 0x00000040) != 0); } /** * .tensorflow.RunOptions.Experimental experimental = 8; @@ -2577,11 +2526,11 @@ public Builder setExperimental(org.tensorflow.proto.RunOptions.Experimental valu throw new NullPointerException(); } experimental_ = value; - onChanged(); } else { experimentalBuilder_.setMessage(value); } - + bitField0_ |= 0x00000040; + onChanged(); return this; } /** @@ -2591,11 +2540,11 @@ public Builder setExperimental( org.tensorflow.proto.RunOptions.Experimental.Builder builderForValue) { if (experimentalBuilder_ == null) { experimental_ = builderForValue.build(); - onChanged(); } else { experimentalBuilder_.setMessage(builderForValue.build()); } - + bitField0_ |= 0x00000040; + onChanged(); return this; } /** @@ -2603,38 +2552,40 @@ public Builder setExperimental( */ public Builder mergeExperimental(org.tensorflow.proto.RunOptions.Experimental value) { if (experimentalBuilder_ == null) { - if (experimental_ != null) { - experimental_ = - org.tensorflow.proto.RunOptions.Experimental.newBuilder(experimental_).mergeFrom(value).buildPartial(); + if (((bitField0_ & 0x00000040) != 0) && + experimental_ != null && + experimental_ != org.tensorflow.proto.RunOptions.Experimental.getDefaultInstance()) { + getExperimentalBuilder().mergeFrom(value); } else { experimental_ = value; } - onChanged(); } else { experimentalBuilder_.mergeFrom(value); } - + if (experimental_ != null) { + bitField0_ |= 0x00000040; + onChanged(); + } return this; } /** * .tensorflow.RunOptions.Experimental experimental = 8; */ public Builder clearExperimental() { - if (experimentalBuilder_ == null) { - experimental_ = null; - onChanged(); - } else { - experimental_ = null; + bitField0_ = (bitField0_ & ~0x00000040); + experimental_ = null; + if (experimentalBuilder_ != null) { + experimentalBuilder_.dispose(); experimentalBuilder_ = null; } - + onChanged(); return this; } /** * .tensorflow.RunOptions.Experimental experimental = 8; */ public org.tensorflow.proto.RunOptions.Experimental.Builder getExperimentalBuilder() { - + bitField0_ |= 0x00000040; onChanged(); return getExperimentalFieldBuilder().getBuilder(); } @@ -2652,11 +2603,11 @@ public org.tensorflow.proto.RunOptions.ExperimentalOrBuilder getExperimentalOrBu /** * .tensorflow.RunOptions.Experimental experimental = 8; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.RunOptions.Experimental, org.tensorflow.proto.RunOptions.Experimental.Builder, org.tensorflow.proto.RunOptions.ExperimentalOrBuilder> getExperimentalFieldBuilder() { if (experimentalBuilder_ == null) { - experimentalBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + experimentalBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.RunOptions.Experimental, org.tensorflow.proto.RunOptions.Experimental.Builder, org.tensorflow.proto.RunOptions.ExperimentalOrBuilder>( getExperimental(), getParentForChildren(), @@ -2665,18 +2616,6 @@ public org.tensorflow.proto.RunOptions.ExperimentalOrBuilder getExperimentalOrBu } return experimentalBuilder_; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.RunOptions) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunOptionsOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunOptionsOrBuilder.java index f134e6197a6..7127867def4 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunOptionsOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/RunOptionsOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/config.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -86,6 +88,7 @@ public interface RunOptionsOrBuilder extends * When enabled, causes tensor allocation information to be included in * the error message when the Run() call fails because the allocator ran * out of memory (OOM). + * * Enabling this option can slow down the Run() call. *
    * diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaveSliceInfoDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaveSliceInfoDef.java index 5290dd772a9..94488b4eaab 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaveSliceInfoDef.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaveSliceInfoDef.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/variable.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,12 +9,21 @@ * Protobuf type {@code tensorflow.SaveSliceInfoDef} */ public final class SaveSliceInfoDef extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.SaveSliceInfoDef) SaveSliceInfoDefOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + SaveSliceInfoDef.class.getName()); + } // Use SaveSliceInfoDef.newBuilder() to construct. - private SaveSliceInfoDef(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private SaveSliceInfoDef(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private SaveSliceInfoDef() { @@ -22,25 +33,13 @@ private SaveSliceInfoDef() { varShape_ = emptyLongList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new SaveSliceInfoDef(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.VariableProtos.internal_static_tensorflow_SaveSliceInfoDef_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.VariableProtos.internal_static_tensorflow_SaveSliceInfoDef_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -48,7 +47,8 @@ protected java.lang.Object newInstance( } public static final int FULL_NAME_FIELD_NUMBER = 1; - private volatile java.lang.Object fullName_; + @SuppressWarnings("serial") + private volatile java.lang.Object fullName_ = ""; /** *
        * Name of the full variable of which this is a slice.
    @@ -94,7 +94,9 @@ public java.lang.String getFullName() {
       }
     
       public static final int FULL_SHAPE_FIELD_NUMBER = 2;
    -  private com.google.protobuf.Internal.LongList fullShape_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.LongList fullShape_ =
    +      emptyLongList();
       /**
        * 
        * Shape of the full variable.
    @@ -134,7 +136,9 @@ public long getFullShape(int index) {
       private int fullShapeMemoizedSerializedSize = -1;
     
       public static final int VAR_OFFSET_FIELD_NUMBER = 3;
    -  private com.google.protobuf.Internal.LongList varOffset_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.LongList varOffset_ =
    +      emptyLongList();
       /**
        * 
        * Offset of this variable into the full variable.
    @@ -174,7 +178,9 @@ public long getVarOffset(int index) {
       private int varOffsetMemoizedSerializedSize = -1;
     
       public static final int VAR_SHAPE_FIELD_NUMBER = 4;
    -  private com.google.protobuf.Internal.LongList varShape_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.LongList varShape_ =
    +      emptyLongList();
       /**
        * 
        * Shape of this variable.
    @@ -228,8 +234,8 @@ public final boolean isInitialized() {
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
         getSerializedSize();
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(fullName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, fullName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(fullName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, fullName_);
         }
         if (getFullShapeList().size() > 0) {
           output.writeUInt32NoTag(18);
    @@ -261,8 +267,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(fullName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, fullName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(fullName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, fullName_);
         }
         {
           int dataSize = 0;
    @@ -393,39 +399,41 @@ public static org.tensorflow.proto.SaveSliceInfoDef parseFrom(
       }
       public static org.tensorflow.proto.SaveSliceInfoDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SaveSliceInfoDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.SaveSliceInfoDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.SaveSliceInfoDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.SaveSliceInfoDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SaveSliceInfoDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -445,7 +453,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -453,7 +461,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.SaveSliceInfoDef}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.SaveSliceInfoDef)
           org.tensorflow.proto.SaveSliceInfoDefOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -462,7 +470,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.VariableProtos.internal_static_tensorflow_SaveSliceInfoDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -475,21 +483,18 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           fullName_ = "";
    -
           fullShape_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000001);
           varOffset_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000002);
           varShape_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000004);
           return this;
         }
     
    @@ -516,59 +521,30 @@ public org.tensorflow.proto.SaveSliceInfoDef build() {
         @java.lang.Override
         public org.tensorflow.proto.SaveSliceInfoDef buildPartial() {
           org.tensorflow.proto.SaveSliceInfoDef result = new org.tensorflow.proto.SaveSliceInfoDef(this);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartial0(org.tensorflow.proto.SaveSliceInfoDef result) {
           int from_bitField0_ = bitField0_;
    -      result.fullName_ = fullName_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.fullName_ = fullName_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
             fullShape_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        result.fullShape_ = fullShape_;
           }
    -      result.fullShape_ = fullShape_;
    -      if (((bitField0_ & 0x00000002) != 0)) {
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
             varOffset_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        result.varOffset_ = varOffset_;
           }
    -      result.varOffset_ = varOffset_;
    -      if (((bitField0_ & 0x00000004) != 0)) {
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
             varShape_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000004);
    +        result.varShape_ = varShape_;
           }
    -      result.varShape_ = varShape_;
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    -    }
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.SaveSliceInfoDef) {
    @@ -583,12 +559,14 @@ public Builder mergeFrom(org.tensorflow.proto.SaveSliceInfoDef other) {
           if (other == org.tensorflow.proto.SaveSliceInfoDef.getDefaultInstance()) return this;
           if (!other.getFullName().isEmpty()) {
             fullName_ = other.fullName_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.fullShape_.isEmpty()) {
             if (fullShape_.isEmpty()) {
               fullShape_ = other.fullShape_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          fullShape_.makeImmutable();
    +          bitField0_ |= 0x00000002;
             } else {
               ensureFullShapeIsMutable();
               fullShape_.addAll(other.fullShape_);
    @@ -598,7 +576,8 @@ public Builder mergeFrom(org.tensorflow.proto.SaveSliceInfoDef other) {
           if (!other.varOffset_.isEmpty()) {
             if (varOffset_.isEmpty()) {
               varOffset_ = other.varOffset_;
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          varOffset_.makeImmutable();
    +          bitField0_ |= 0x00000004;
             } else {
               ensureVarOffsetIsMutable();
               varOffset_.addAll(other.varOffset_);
    @@ -608,7 +587,8 @@ public Builder mergeFrom(org.tensorflow.proto.SaveSliceInfoDef other) {
           if (!other.varShape_.isEmpty()) {
             if (varShape_.isEmpty()) {
               varShape_ = other.varShape_;
    -          bitField0_ = (bitField0_ & ~0x00000004);
    +          varShape_.makeImmutable();
    +          bitField0_ |= 0x00000008;
             } else {
               ensureVarShapeIsMutable();
               varShape_.addAll(other.varShape_);
    @@ -643,7 +623,7 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   fullName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 16: {
    @@ -764,11 +744,9 @@ public java.lang.String getFullName() {
          */
         public Builder setFullName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           fullName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -781,8 +759,8 @@ public Builder setFullName(
          * @return This builder for chaining.
          */
         public Builder clearFullName() {
    -      
           fullName_ = getDefaultInstance().getFullName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -797,22 +775,20 @@ public Builder clearFullName() {
          */
         public Builder setFullNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           fullName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
     
         private com.google.protobuf.Internal.LongList fullShape_ = emptyLongList();
         private void ensureFullShapeIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    -        fullShape_ = mutableCopy(fullShape_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      if (!fullShape_.isModifiable()) {
    +        fullShape_ = makeMutableCopy(fullShape_);
    +      }
    +      bitField0_ |= 0x00000002;
         }
         /**
          * 
    @@ -824,8 +800,8 @@ private void ensureFullShapeIsMutable() {
          */
         public java.util.List
             getFullShapeList() {
    -      return ((bitField0_ & 0x00000001) != 0) ?
    -               java.util.Collections.unmodifiableList(fullShape_) : fullShape_;
    +      fullShape_.makeImmutable();
    +      return fullShape_;
         }
         /**
          * 
    @@ -862,8 +838,10 @@ public long getFullShape(int index) {
          */
         public Builder setFullShape(
             int index, long value) {
    +
           ensureFullShapeIsMutable();
           fullShape_.setLong(index, value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -877,8 +855,10 @@ public Builder setFullShape(
          * @return This builder for chaining.
          */
         public Builder addFullShape(long value) {
    +
           ensureFullShapeIsMutable();
           fullShape_.addLong(value);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -896,6 +876,7 @@ public Builder addAllFullShape(
           ensureFullShapeIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, fullShape_);
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -909,17 +890,17 @@ public Builder addAllFullShape(
          */
         public Builder clearFullShape() {
           fullShape_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
     
         private com.google.protobuf.Internal.LongList varOffset_ = emptyLongList();
         private void ensureVarOffsetIsMutable() {
    -      if (!((bitField0_ & 0x00000002) != 0)) {
    -        varOffset_ = mutableCopy(varOffset_);
    -        bitField0_ |= 0x00000002;
    -       }
    +      if (!varOffset_.isModifiable()) {
    +        varOffset_ = makeMutableCopy(varOffset_);
    +      }
    +      bitField0_ |= 0x00000004;
         }
         /**
          * 
    @@ -931,8 +912,8 @@ private void ensureVarOffsetIsMutable() {
          */
         public java.util.List
             getVarOffsetList() {
    -      return ((bitField0_ & 0x00000002) != 0) ?
    -               java.util.Collections.unmodifiableList(varOffset_) : varOffset_;
    +      varOffset_.makeImmutable();
    +      return varOffset_;
         }
         /**
          * 
    @@ -969,8 +950,10 @@ public long getVarOffset(int index) {
          */
         public Builder setVarOffset(
             int index, long value) {
    +
           ensureVarOffsetIsMutable();
           varOffset_.setLong(index, value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -984,8 +967,10 @@ public Builder setVarOffset(
          * @return This builder for chaining.
          */
         public Builder addVarOffset(long value) {
    +
           ensureVarOffsetIsMutable();
           varOffset_.addLong(value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1003,6 +988,7 @@ public Builder addAllVarOffset(
           ensureVarOffsetIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, varOffset_);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1016,17 +1002,17 @@ public Builder addAllVarOffset(
          */
         public Builder clearVarOffset() {
           varOffset_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000002);
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
     
         private com.google.protobuf.Internal.LongList varShape_ = emptyLongList();
         private void ensureVarShapeIsMutable() {
    -      if (!((bitField0_ & 0x00000004) != 0)) {
    -        varShape_ = mutableCopy(varShape_);
    -        bitField0_ |= 0x00000004;
    -       }
    +      if (!varShape_.isModifiable()) {
    +        varShape_ = makeMutableCopy(varShape_);
    +      }
    +      bitField0_ |= 0x00000008;
         }
         /**
          * 
    @@ -1038,8 +1024,8 @@ private void ensureVarShapeIsMutable() {
          */
         public java.util.List
             getVarShapeList() {
    -      return ((bitField0_ & 0x00000004) != 0) ?
    -               java.util.Collections.unmodifiableList(varShape_) : varShape_;
    +      varShape_.makeImmutable();
    +      return varShape_;
         }
         /**
          * 
    @@ -1076,8 +1062,10 @@ public long getVarShape(int index) {
          */
         public Builder setVarShape(
             int index, long value) {
    +
           ensureVarShapeIsMutable();
           varShape_.setLong(index, value);
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1091,8 +1079,10 @@ public Builder setVarShape(
          * @return This builder for chaining.
          */
         public Builder addVarShape(long value) {
    +
           ensureVarShapeIsMutable();
           varShape_.addLong(value);
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1110,6 +1100,7 @@ public Builder addAllVarShape(
           ensureVarShapeIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, varShape_);
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1123,22 +1114,10 @@ public Builder addAllVarShape(
          */
         public Builder clearVarShape() {
           varShape_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000004);
    +      bitField0_ = (bitField0_ & ~0x00000008);
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.SaveSliceInfoDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaveSliceInfoDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaveSliceInfoDefOrBuilder.java
    index 9ae06d9794f..b4cb42c9a44 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaveSliceInfoDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaveSliceInfoDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/variable.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedModel.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedModel.java
    index f10d6473dd8..ff3c386eb60 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedModel.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedModel.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/saved_model.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -12,37 +14,34 @@
      * Protobuf type {@code tensorflow.SavedModel}
      */
     public final class SavedModel extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.SavedModel)
         SavedModelOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      SavedModel.class.getName());
    +  }
       // Use SavedModel.newBuilder() to construct.
    -  private SavedModel(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private SavedModel(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private SavedModel() {
         metaGraphs_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new SavedModel();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.SavedModelProtos.internal_static_tensorflow_SavedModel_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.SavedModelProtos.internal_static_tensorflow_SavedModel_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -50,7 +49,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int SAVED_MODEL_SCHEMA_VERSION_FIELD_NUMBER = 1;
    -  private long savedModelSchemaVersion_;
    +  private long savedModelSchemaVersion_ = 0L;
       /**
        * 
        * The schema version of the SavedModel instance. Used for versioning when
    @@ -67,6 +66,7 @@ public long getSavedModelSchemaVersion() {
       }
     
       public static final int META_GRAPHS_FIELD_NUMBER = 2;
    +  @SuppressWarnings("serial")
       private java.util.List metaGraphs_;
       /**
        * 
    @@ -239,39 +239,41 @@ public static org.tensorflow.proto.SavedModel parseFrom(
       }
       public static org.tensorflow.proto.SavedModel parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SavedModel parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.SavedModel parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.SavedModel parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.SavedModel parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SavedModel parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -291,7 +293,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -304,7 +306,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.SavedModel}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.SavedModel)
           org.tensorflow.proto.SavedModelOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -313,7 +315,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.SavedModelProtos.internal_static_tensorflow_SavedModel_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -326,22 +328,22 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           savedModelSchemaVersion_ = 0L;
    -
           if (metaGraphsBuilder_ == null) {
             metaGraphs_ = java.util.Collections.emptyList();
           } else {
             metaGraphs_ = null;
             metaGraphsBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000002);
           return this;
         }
     
    @@ -368,53 +370,31 @@ public org.tensorflow.proto.SavedModel build() {
         @java.lang.Override
         public org.tensorflow.proto.SavedModel buildPartial() {
           org.tensorflow.proto.SavedModel result = new org.tensorflow.proto.SavedModel(this);
    -      int from_bitField0_ = bitField0_;
    -      result.savedModelSchemaVersion_ = savedModelSchemaVersion_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.SavedModel result) {
           if (metaGraphsBuilder_ == null) {
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((bitField0_ & 0x00000002) != 0)) {
               metaGraphs_ = java.util.Collections.unmodifiableList(metaGraphs_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000002);
             }
             result.metaGraphs_ = metaGraphs_;
           } else {
             result.metaGraphs_ = metaGraphsBuilder_.build();
           }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.SavedModel result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.savedModelSchemaVersion_ = savedModelSchemaVersion_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.SavedModel) {
    @@ -434,7 +414,7 @@ public Builder mergeFrom(org.tensorflow.proto.SavedModel other) {
             if (!other.metaGraphs_.isEmpty()) {
               if (metaGraphs_.isEmpty()) {
                 metaGraphs_ = other.metaGraphs_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000002);
               } else {
                 ensureMetaGraphsIsMutable();
                 metaGraphs_.addAll(other.metaGraphs_);
    @@ -447,9 +427,9 @@ public Builder mergeFrom(org.tensorflow.proto.SavedModel other) {
                 metaGraphsBuilder_.dispose();
                 metaGraphsBuilder_ = null;
                 metaGraphs_ = other.metaGraphs_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000002);
                 metaGraphsBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getMetaGraphsFieldBuilder() : null;
               } else {
                 metaGraphsBuilder_.addAllMessages(other.metaGraphs_);
    @@ -484,7 +464,7 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   savedModelSchemaVersion_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 18: {
    @@ -544,8 +524,9 @@ public long getSavedModelSchemaVersion() {
          * @return This builder for chaining.
          */
         public Builder setSavedModelSchemaVersion(long value) {
    -      
    +
           savedModelSchemaVersion_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -560,7 +541,7 @@ public Builder setSavedModelSchemaVersion(long value) {
          * @return This builder for chaining.
          */
         public Builder clearSavedModelSchemaVersion() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           savedModelSchemaVersion_ = 0L;
           onChanged();
           return this;
    @@ -569,13 +550,13 @@ public Builder clearSavedModelSchemaVersion() {
         private java.util.List metaGraphs_ =
           java.util.Collections.emptyList();
         private void ensureMetaGraphsIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!((bitField0_ & 0x00000002) != 0)) {
             metaGraphs_ = new java.util.ArrayList(metaGraphs_);
    -        bitField0_ |= 0x00000001;
    +        bitField0_ |= 0x00000002;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.MetaGraphDef, org.tensorflow.proto.MetaGraphDef.Builder, org.tensorflow.proto.MetaGraphDefOrBuilder> metaGraphsBuilder_;
     
         /**
    @@ -765,7 +746,7 @@ public Builder addAllMetaGraphs(
         public Builder clearMetaGraphs() {
           if (metaGraphsBuilder_ == null) {
             metaGraphs_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
           } else {
             metaGraphsBuilder_.clear();
    @@ -863,32 +844,20 @@ public org.tensorflow.proto.MetaGraphDef.Builder addMetaGraphsBuilder(
              getMetaGraphsBuilderList() {
           return getMetaGraphsFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.MetaGraphDef, org.tensorflow.proto.MetaGraphDef.Builder, org.tensorflow.proto.MetaGraphDefOrBuilder> 
             getMetaGraphsFieldBuilder() {
           if (metaGraphsBuilder_ == null) {
    -        metaGraphsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        metaGraphsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.MetaGraphDef, org.tensorflow.proto.MetaGraphDef.Builder, org.tensorflow.proto.MetaGraphDefOrBuilder>(
                     metaGraphs_,
    -                ((bitField0_ & 0x00000001) != 0),
    +                ((bitField0_ & 0x00000002) != 0),
                     getParentForChildren(),
                     isClean());
             metaGraphs_ = null;
           }
           return metaGraphsBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.SavedModel)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedModelOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedModelOrBuilder.java
    index d2168822f0a..eb43e5ed042 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedModelOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedModelOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/saved_model.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedModelProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedModelProtos.java
    index 1ae80350568..8ccc28afce4 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedModelProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedModelProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/saved_model.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class SavedModelProtos {
       private SavedModelProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      SavedModelProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,7 +28,7 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SavedModel_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SavedModel_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -46,9 +57,10 @@ public static void registerAllExtensions(
         internal_static_tensorflow_SavedModel_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_SavedModel_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SavedModel_descriptor,
             new java.lang.String[] { "SavedModelSchemaVersion", "MetaGraphs", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.MetaGraphProtos.getDescriptor();
       }
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedObjectGraphOuterClass.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedObjectGraphOuterClass.java
    index 987f5a198db..b0a72357785 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedObjectGraphOuterClass.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedObjectGraphOuterClass.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/saved_object_graph.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class SavedObjectGraphOuterClass {
       private SavedObjectGraphOuterClass() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      SavedObjectGraphOuterClass.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -21,6 +32,7 @@ public interface SavedObjectGraphOrBuilder extends
         /**
          * 
          * Flattened list of objects in the object graph.
    +     *
          * The position of the object in this list indicates its id.
          * Nodes[0] is considered the root node.
          * 
    @@ -32,6 +44,7 @@ public interface SavedObjectGraphOrBuilder extends /** *
          * Flattened list of objects in the object graph.
    +     *
          * The position of the object in this list indicates its id.
          * Nodes[0] is considered the root node.
          * 
    @@ -42,6 +55,7 @@ public interface SavedObjectGraphOrBuilder extends /** *
          * Flattened list of objects in the object graph.
    +     *
          * The position of the object in this list indicates its id.
          * Nodes[0] is considered the root node.
          * 
    @@ -52,6 +66,7 @@ public interface SavedObjectGraphOrBuilder extends /** *
          * Flattened list of objects in the object graph.
    +     *
          * The position of the object in this list indicates its id.
          * Nodes[0] is considered the root node.
          * 
    @@ -63,6 +78,7 @@ public interface SavedObjectGraphOrBuilder extends /** *
          * Flattened list of objects in the object graph.
    +     *
          * The position of the object in this list indicates its id.
          * Nodes[0] is considered the root node.
          * 
    @@ -115,7 +131,6 @@ boolean containsConcreteFunctions( * * map<string, .tensorflow.SavedConcreteFunction> concrete_functions = 2; */ - /* nullable */ org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction getConcreteFunctionsOrDefault( java.lang.String key, @@ -129,7 +144,6 @@ org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction getConcret * * map<string, .tensorflow.SavedConcreteFunction> concrete_functions = 2; */ - org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction getConcreteFunctionsOrThrow( java.lang.String key); } @@ -137,30 +151,27 @@ org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction getConcret * Protobuf type {@code tensorflow.SavedObjectGraph} */ public static final class SavedObjectGraph extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.SavedObjectGraph) SavedObjectGraphOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + SavedObjectGraph.class.getName()); + } // Use SavedObjectGraph.newBuilder() to construct. - private SavedObjectGraph(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private SavedObjectGraph(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private SavedObjectGraph() { nodes_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new SavedObjectGraph(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedObjectGraph_descriptor; @@ -168,7 +179,7 @@ protected java.lang.Object newInstance( @SuppressWarnings({"rawtypes"}) @java.lang.Override - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 2: @@ -179,7 +190,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedObjectGraph_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -187,10 +198,12 @@ protected com.google.protobuf.MapField internalGetMapField( } public static final int NODES_FIELD_NUMBER = 1; + @SuppressWarnings("serial") private java.util.List nodes_; /** *
          * Flattened list of objects in the object graph.
    +     *
          * The position of the object in this list indicates its id.
          * Nodes[0] is considered the root node.
          * 
    @@ -204,6 +217,7 @@ public java.util.List * Flattened list of objects in the object graph. + * * The position of the object in this list indicates its id. * Nodes[0] is considered the root node. *
    @@ -218,6 +232,7 @@ public java.util.List * Flattened list of objects in the object graph. + * * The position of the object in this list indicates its id. * Nodes[0] is considered the root node. *
    @@ -231,6 +246,7 @@ public int getNodesCount() { /** *
          * Flattened list of objects in the object graph.
    +     *
          * The position of the object in this list indicates its id.
          * Nodes[0] is considered the root node.
          * 
    @@ -244,6 +260,7 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject getNodes(int /** *
          * Flattened list of objects in the object graph.
    +     *
          * The position of the object in this list indicates its id.
          * Nodes[0] is considered the root node.
          * 
    @@ -268,6 +285,7 @@ private static final class ConcreteFunctionsDefaultEntryHolder { com.google.protobuf.WireFormat.FieldType.MESSAGE, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction.getDefaultInstance()); } + @SuppressWarnings("serial") private com.google.protobuf.MapField< java.lang.String, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction> concreteFunctions_; private com.google.protobuf.MapField @@ -278,7 +296,6 @@ private static final class ConcreteFunctionsDefaultEntryHolder { } return concreteFunctions_; } - public int getConcreteFunctionsCount() { return internalGetConcreteFunctions().getMap().size(); } @@ -290,7 +307,6 @@ public int getConcreteFunctionsCount() { * * map<string, .tensorflow.SavedConcreteFunction> concrete_functions = 2; */ - @java.lang.Override public boolean containsConcreteFunctions( java.lang.String key) { @@ -314,7 +330,6 @@ public java.util.Mapmap<string, .tensorflow.SavedConcreteFunction> concrete_functions = 2; */ @java.lang.Override - public java.util.Map getConcreteFunctionsMap() { return internalGetConcreteFunctions().getMap(); } @@ -327,10 +342,11 @@ public java.util.Mapmap<string, .tensorflow.SavedConcreteFunction> concrete_functions = 2; */ @java.lang.Override - - public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction getConcreteFunctionsOrDefault( + public /* nullable */ +org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction getConcreteFunctionsOrDefault( java.lang.String key, - org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction defaultValue) { + /* nullable */ +org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction defaultValue) { if (key == null) { throw new NullPointerException("map key"); } java.util.Map map = internalGetConcreteFunctions().getMap(); @@ -345,7 +361,6 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction get * map<string, .tensorflow.SavedConcreteFunction> concrete_functions = 2; */ @java.lang.Override - public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction getConcreteFunctionsOrThrow( java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } @@ -374,7 +389,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) for (int i = 0; i < nodes_.size(); i++) { output.writeMessage(1, nodes_.get(i)); } - com.google.protobuf.GeneratedMessageV3 + com.google.protobuf.GeneratedMessage .serializeStringMapTo( output, internalGetConcreteFunctions(), @@ -480,39 +495,41 @@ public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph p } public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -532,7 +549,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -540,7 +557,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.SavedObjectGraph} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.SavedObjectGraph) org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraphOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -549,7 +566,7 @@ public static final class Builder extends } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 2: @@ -560,7 +577,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMutableMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( int number) { switch (number) { case 2: @@ -571,7 +588,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedObjectGraph_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -584,13 +601,14 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; if (nodesBuilder_ == null) { nodes_ = java.util.Collections.emptyList(); } else { @@ -625,7 +643,13 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph build() @java.lang.Override public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph buildPartial() { org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph result = new org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph(this); - int from_bitField0_ = bitField0_; + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph result) { if (nodesBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { nodes_ = java.util.Collections.unmodifiableList(nodes_); @@ -635,44 +659,15 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph buildPar } else { result.nodes_ = nodesBuilder_.build(); } - result.concreteFunctions_ = internalGetConcreteFunctions(); - result.concreteFunctions_.makeImmutable(); - onBuilt(); - return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.concreteFunctions_ = internalGetConcreteFunctions().build(ConcreteFunctionsDefaultEntryHolder.defaultEntry); + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectGraph) { @@ -704,7 +699,7 @@ public Builder mergeFrom(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedOb nodes_ = other.nodes_; bitField0_ = (bitField0_ & ~0x00000001); nodesBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getNodesFieldBuilder() : null; } else { nodesBuilder_.addAllMessages(other.nodes_); @@ -713,6 +708,7 @@ public Builder mergeFrom(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedOb } internalGetMutableConcreteFunctions().mergeFrom( other.internalGetConcreteFunctions()); + bitField0_ |= 0x00000002; this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -756,8 +752,9 @@ public Builder mergeFrom( com.google.protobuf.MapEntry concreteFunctions__ = input.readMessage( ConcreteFunctionsDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); - internalGetMutableConcreteFunctions().getMutableMap().put( + internalGetMutableConcreteFunctions().ensureBuilderMap().put( concreteFunctions__.getKey(), concreteFunctions__.getValue()); + bitField0_ |= 0x00000002; break; } // case 18 default: { @@ -786,12 +783,13 @@ private void ensureNodesIsMutable() { } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectOrBuilder> nodesBuilder_; /** *
            * Flattened list of objects in the object graph.
    +       *
            * The position of the object in this list indicates its id.
            * Nodes[0] is considered the root node.
            * 
    @@ -808,6 +806,7 @@ public java.util.List * Flattened list of objects in the object graph. + * * The position of the object in this list indicates its id. * Nodes[0] is considered the root node. *
    @@ -824,6 +823,7 @@ public int getNodesCount() { /** *
            * Flattened list of objects in the object graph.
    +       *
            * The position of the object in this list indicates its id.
            * Nodes[0] is considered the root node.
            * 
    @@ -840,6 +840,7 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject getNodes(int /** *
            * Flattened list of objects in the object graph.
    +       *
            * The position of the object in this list indicates its id.
            * Nodes[0] is considered the root node.
            * 
    @@ -863,6 +864,7 @@ public Builder setNodes( /** *
            * Flattened list of objects in the object graph.
    +       *
            * The position of the object in this list indicates its id.
            * Nodes[0] is considered the root node.
            * 
    @@ -883,6 +885,7 @@ public Builder setNodes( /** *
            * Flattened list of objects in the object graph.
    +       *
            * The position of the object in this list indicates its id.
            * Nodes[0] is considered the root node.
            * 
    @@ -905,6 +908,7 @@ public Builder addNodes(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObj /** *
            * Flattened list of objects in the object graph.
    +       *
            * The position of the object in this list indicates its id.
            * Nodes[0] is considered the root node.
            * 
    @@ -928,6 +932,7 @@ public Builder addNodes( /** *
            * Flattened list of objects in the object graph.
    +       *
            * The position of the object in this list indicates its id.
            * Nodes[0] is considered the root node.
            * 
    @@ -948,6 +953,7 @@ public Builder addNodes( /** *
            * Flattened list of objects in the object graph.
    +       *
            * The position of the object in this list indicates its id.
            * Nodes[0] is considered the root node.
            * 
    @@ -968,6 +974,7 @@ public Builder addNodes( /** *
            * Flattened list of objects in the object graph.
    +       *
            * The position of the object in this list indicates its id.
            * Nodes[0] is considered the root node.
            * 
    @@ -989,6 +996,7 @@ public Builder addAllNodes( /** *
            * Flattened list of objects in the object graph.
    +       *
            * The position of the object in this list indicates its id.
            * Nodes[0] is considered the root node.
            * 
    @@ -1008,6 +1016,7 @@ public Builder clearNodes() { /** *
            * Flattened list of objects in the object graph.
    +       *
            * The position of the object in this list indicates its id.
            * Nodes[0] is considered the root node.
            * 
    @@ -1027,6 +1036,7 @@ public Builder removeNodes(int index) { /** *
            * Flattened list of objects in the object graph.
    +       *
            * The position of the object in this list indicates its id.
            * Nodes[0] is considered the root node.
            * 
    @@ -1040,6 +1050,7 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject.Builder getNo /** *
            * Flattened list of objects in the object graph.
    +       *
            * The position of the object in this list indicates its id.
            * Nodes[0] is considered the root node.
            * 
    @@ -1056,6 +1067,7 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectOrBuilder getN /** *
            * Flattened list of objects in the object graph.
    +       *
            * The position of the object in this list indicates its id.
            * Nodes[0] is considered the root node.
            * 
    @@ -1073,6 +1085,7 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectOrBuilder getN /** *
            * Flattened list of objects in the object graph.
    +       *
            * The position of the object in this list indicates its id.
            * Nodes[0] is considered the root node.
            * 
    @@ -1086,6 +1099,7 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject.Builder addNo /** *
            * Flattened list of objects in the object graph.
    +       *
            * The position of the object in this list indicates its id.
            * Nodes[0] is considered the root node.
            * 
    @@ -1100,6 +1114,7 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject.Builder addNo /** *
            * Flattened list of objects in the object graph.
    +       *
            * The position of the object in this list indicates its id.
            * Nodes[0] is considered the root node.
            * 
    @@ -1110,11 +1125,11 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject.Builder addNo getNodesBuilderList() { return getNodesFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectOrBuilder> getNodesFieldBuilder() { if (nodesBuilder_ == null) { - nodesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + nodesBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectOrBuilder>( nodes_, ((bitField0_ & 0x00000001) != 0), @@ -1125,31 +1140,40 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject.Builder addNo return nodesBuilder_; } - private com.google.protobuf.MapField< - java.lang.String, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction> concreteFunctions_; - private com.google.protobuf.MapField - internalGetConcreteFunctions() { + private static final class ConcreteFunctionsConverter implements com.google.protobuf.MapFieldBuilder.Converter { + @java.lang.Override + public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction build(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunctionOrBuilder val) { + if (val instanceof org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction) { return (org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction) val; } + return ((org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction.Builder) val).build(); + } + + @java.lang.Override + public com.google.protobuf.MapEntry defaultEntry() { + return ConcreteFunctionsDefaultEntryHolder.defaultEntry; + } + }; + private static final ConcreteFunctionsConverter concreteFunctionsConverter = new ConcreteFunctionsConverter(); + + private com.google.protobuf.MapFieldBuilder< + java.lang.String, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunctionOrBuilder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction.Builder> concreteFunctions_; + private com.google.protobuf.MapFieldBuilder + internalGetConcreteFunctions() { if (concreteFunctions_ == null) { - return com.google.protobuf.MapField.emptyMapField( - ConcreteFunctionsDefaultEntryHolder.defaultEntry); + return new com.google.protobuf.MapFieldBuilder<>(concreteFunctionsConverter); } return concreteFunctions_; } - private com.google.protobuf.MapField - internalGetMutableConcreteFunctions() { - onChanged();; + private com.google.protobuf.MapFieldBuilder + internalGetMutableConcreteFunctions() { if (concreteFunctions_ == null) { - concreteFunctions_ = com.google.protobuf.MapField.newMapField( - ConcreteFunctionsDefaultEntryHolder.defaultEntry); - } - if (!concreteFunctions_.isMutable()) { - concreteFunctions_ = concreteFunctions_.copy(); + concreteFunctions_ = new com.google.protobuf.MapFieldBuilder<>(concreteFunctionsConverter); } + bitField0_ |= 0x00000002; + onChanged(); return concreteFunctions_; } - public int getConcreteFunctionsCount() { - return internalGetConcreteFunctions().getMap().size(); + return internalGetConcreteFunctions().ensureBuilderMap().size(); } /** *
    @@ -1159,12 +1183,11 @@ public int getConcreteFunctionsCount() {
            *
            * map<string, .tensorflow.SavedConcreteFunction> concrete_functions = 2;
            */
    -
           @java.lang.Override
           public boolean containsConcreteFunctions(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        return internalGetConcreteFunctions().getMap().containsKey(key);
    +        return internalGetConcreteFunctions().ensureBuilderMap().containsKey(key);
           }
           /**
            * Use {@link #getConcreteFunctionsMap()} instead.
    @@ -1183,9 +1206,8 @@ public java.util.Mapmap<string, .tensorflow.SavedConcreteFunction> concrete_functions = 2;
            */
           @java.lang.Override
    -
           public java.util.Map getConcreteFunctionsMap() {
    -        return internalGetConcreteFunctions().getMap();
    +        return internalGetConcreteFunctions().getImmutableMap();
           }
           /**
            * 
    @@ -1196,14 +1218,14 @@ public java.util.Mapmap<string, .tensorflow.SavedConcreteFunction> concrete_functions = 2;
            */
           @java.lang.Override
    -
    -      public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction getConcreteFunctionsOrDefault(
    +      public /* nullable */
    +org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction getConcreteFunctionsOrDefault(
               java.lang.String key,
    -          org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction defaultValue) {
    +          /* nullable */
    +org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction defaultValue) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        java.util.Map map =
    -            internalGetConcreteFunctions().getMap();
    -        return map.containsKey(key) ? map.get(key) : defaultValue;
    +        java.util.Map map = internalGetMutableConcreteFunctions().ensureBuilderMap();
    +        return map.containsKey(key) ? concreteFunctionsConverter.build(map.get(key)) : defaultValue;
           }
           /**
            * 
    @@ -1214,21 +1236,18 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction get
            * map<string, .tensorflow.SavedConcreteFunction> concrete_functions = 2;
            */
           @java.lang.Override
    -
           public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction getConcreteFunctionsOrThrow(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        java.util.Map map =
    -            internalGetConcreteFunctions().getMap();
    +        java.util.Map map = internalGetMutableConcreteFunctions().ensureBuilderMap();
             if (!map.containsKey(key)) {
               throw new java.lang.IllegalArgumentException();
             }
    -        return map.get(key);
    +        return concreteFunctionsConverter.build(map.get(key));
           }
    -
           public Builder clearConcreteFunctions() {
    -        internalGetMutableConcreteFunctions().getMutableMap()
    -            .clear();
    +        bitField0_ = (bitField0_ & ~0x00000002);
    +        internalGetMutableConcreteFunctions().clear();
             return this;
           }
           /**
    @@ -1239,11 +1258,10 @@ public Builder clearConcreteFunctions() {
            *
            * map<string, .tensorflow.SavedConcreteFunction> concrete_functions = 2;
            */
    -
           public Builder removeConcreteFunctions(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        internalGetMutableConcreteFunctions().getMutableMap()
    +        internalGetMutableConcreteFunctions().ensureBuilderMap()
                 .remove(key);
             return this;
           }
    @@ -1252,8 +1270,9 @@ public Builder removeConcreteFunctions(
            */
           @java.lang.Deprecated
           public java.util.Map
    -      getMutableConcreteFunctions() {
    -        return internalGetMutableConcreteFunctions().getMutableMap();
    +          getMutableConcreteFunctions() {
    +        bitField0_ |= 0x00000002;
    +        return internalGetMutableConcreteFunctions().ensureMessageMap();
           }
           /**
            * 
    @@ -1267,12 +1286,10 @@ public Builder putConcreteFunctions(
               java.lang.String key,
               org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction value) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    -        internalGetMutableConcreteFunctions().getMutableMap()
    +        if (value == null) { throw new NullPointerException("map value"); }
    +        internalGetMutableConcreteFunctions().ensureBuilderMap()
                 .put(key, value);
    +        bitField0_ |= 0x00000002;
             return this;
           }
           /**
    @@ -1283,26 +1300,41 @@ public Builder putConcreteFunctions(
            *
            * map<string, .tensorflow.SavedConcreteFunction> concrete_functions = 2;
            */
    -
           public Builder putAllConcreteFunctions(
               java.util.Map values) {
    -        internalGetMutableConcreteFunctions().getMutableMap()
    +        for (java.util.Map.Entry e : values.entrySet()) {
    +          if (e.getKey() == null || e.getValue() == null) {
    +            throw new NullPointerException();
    +          }
    +        }
    +        internalGetMutableConcreteFunctions().ensureBuilderMap()
                 .putAll(values);
    +        bitField0_ |= 0x00000002;
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    +      /**
    +       * 
    +       * Information about captures and output structures in concrete functions.
    +       * Referenced from SavedBareConcreteFunction and SavedFunction.
    +       * 
    + * + * map<string, .tensorflow.SavedConcreteFunction> concrete_functions = 2; + */ + public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction.Builder putConcreteFunctionsBuilderIfAbsent( + java.lang.String key) { + java.util.Map builderMap = internalGetMutableConcreteFunctions().ensureBuilderMap(); + org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunctionOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction) { + entry = ((org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction.Builder) entry; } - // @@protoc_insertion_point(builder_scope:tensorflow.SavedObjectGraph) } @@ -1362,6 +1394,7 @@ public interface SavedObjectOrBuilder extends *
          * Objects which this object depends on: named edges in the dependency
          * graph.
    +     *
          * Note: All kinds of SavedObject may have children, except
          * "constant" and "captured_tensor".
          * 
    @@ -1374,6 +1407,7 @@ public interface SavedObjectOrBuilder extends *
          * Objects which this object depends on: named edges in the dependency
          * graph.
    +     *
          * Note: All kinds of SavedObject may have children, except
          * "constant" and "captured_tensor".
          * 
    @@ -1385,6 +1419,7 @@ public interface SavedObjectOrBuilder extends *
          * Objects which this object depends on: named edges in the dependency
          * graph.
    +     *
          * Note: All kinds of SavedObject may have children, except
          * "constant" and "captured_tensor".
          * 
    @@ -1396,6 +1431,7 @@ public interface SavedObjectOrBuilder extends *
          * Objects which this object depends on: named edges in the dependency
          * graph.
    +     *
          * Note: All kinds of SavedObject may have children, except
          * "constant" and "captured_tensor".
          * 
    @@ -1408,6 +1444,7 @@ public interface SavedObjectOrBuilder extends *
          * Objects which this object depends on: named edges in the dependency
          * graph.
    +     *
          * Note: All kinds of SavedObject may have children, except
          * "constant" and "captured_tensor".
          * 
    @@ -1476,6 +1513,7 @@ org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.Trackab * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -1488,6 +1526,7 @@ org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.Trackab * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -1499,6 +1538,7 @@ org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.Trackab * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -1510,6 +1550,7 @@ org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.Trackab * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -1522,6 +1563,7 @@ org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.Trackab * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -1701,7 +1743,6 @@ boolean containsSaveableObjects( * * map<string, .tensorflow.SaveableObject> saveable_objects = 11; */ - /* nullable */ org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject getSaveableObjectsOrDefault( java.lang.String key, @@ -1717,7 +1758,6 @@ org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject getSaveableObject * * map<string, .tensorflow.SaveableObject> saveable_objects = 11; */ - org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject getSaveableObjectsOrThrow( java.lang.String key); @@ -1798,18 +1838,27 @@ org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject getSaveableObject com.google.protobuf.ByteString getRegisteredSaverBytes(); - public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject.KindCase getKindCase(); + org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject.KindCase getKindCase(); } /** * Protobuf type {@code tensorflow.SavedObject} */ public static final class SavedObject extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.SavedObject) SavedObjectOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + SavedObject.class.getName()); + } // Use SavedObject.newBuilder() to construct. - private SavedObject(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private SavedObject(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private SavedObject() { @@ -1820,18 +1869,6 @@ private SavedObject() { registeredSaver_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new SavedObject(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedObject_descriptor; @@ -1839,7 +1876,7 @@ protected java.lang.Object newInstance( @SuppressWarnings({"rawtypes"}) @java.lang.Override - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 11: @@ -1850,14 +1887,16 @@ protected com.google.protobuf.MapField internalGetMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedObject_fieldAccessorTable .ensureFieldAccessorsInitialized( org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject.class, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject.Builder.class); } + private int bitField0_; private int kindCase_ = 0; + @SuppressWarnings("serial") private java.lang.Object kind_; public enum KindCase implements com.google.protobuf.Internal.EnumLite, @@ -1911,11 +1950,13 @@ public int getNumber() { } public static final int CHILDREN_FIELD_NUMBER = 1; + @SuppressWarnings("serial") private java.util.List children_; /** *
          * Objects which this object depends on: named edges in the dependency
          * graph.
    +     *
          * Note: All kinds of SavedObject may have children, except
          * "constant" and "captured_tensor".
          * 
    @@ -1930,6 +1971,7 @@ public java.util.List * Objects which this object depends on: named edges in the dependency * graph. + * * Note: All kinds of SavedObject may have children, except * "constant" and "captured_tensor". *
    @@ -1945,6 +1987,7 @@ public java.util.List * Objects which this object depends on: named edges in the dependency * graph. + * * Note: All kinds of SavedObject may have children, except * "constant" and "captured_tensor". *
    @@ -1959,6 +2002,7 @@ public int getChildrenCount() { *
          * Objects which this object depends on: named edges in the dependency
          * graph.
    +     *
          * Note: All kinds of SavedObject may have children, except
          * "constant" and "captured_tensor".
          * 
    @@ -1973,6 +2017,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph. *
          * Objects which this object depends on: named edges in the dependency
          * graph.
    +     *
          * Note: All kinds of SavedObject may have children, except
          * "constant" and "captured_tensor".
          * 
    @@ -1986,6 +2031,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph. } public static final int DEPENDENCIES_FIELD_NUMBER = 15; + @SuppressWarnings("serial") private java.util.List dependencies_; /** *
    @@ -2056,12 +2102,14 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.
         }
     
         public static final int SLOT_VARIABLES_FIELD_NUMBER = 3;
    +    @SuppressWarnings("serial")
         private java.util.List slotVariables_;
         /**
          * 
          * Slot variables owned by this object. This describes the three-way
          * (optimizer, variable, slot variable) relationship; none of the three
          * depend on the others directly.
    +     *
          * Note: currently only valid if kind == "user_object".
          * 
    * @@ -2076,6 +2124,7 @@ public java.util.List * @@ -2091,6 +2140,7 @@ public java.util.List * @@ -2105,6 +2155,7 @@ public int getSlotVariablesCount() { * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -2119,6 +2170,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph. * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -2390,6 +2442,7 @@ private static final class SaveableObjectsDefaultEntryHolder { com.google.protobuf.WireFormat.FieldType.MESSAGE, org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject.getDefaultInstance()); } + @SuppressWarnings("serial") private com.google.protobuf.MapField< java.lang.String, org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject> saveableObjects_; private com.google.protobuf.MapField @@ -2400,7 +2453,6 @@ private static final class SaveableObjectsDefaultEntryHolder { } return saveableObjects_; } - public int getSaveableObjectsCount() { return internalGetSaveableObjects().getMap().size(); } @@ -2414,7 +2466,6 @@ public int getSaveableObjectsCount() { * * map<string, .tensorflow.SaveableObject> saveable_objects = 11; */ - @java.lang.Override public boolean containsSaveableObjects( java.lang.String key) { @@ -2440,7 +2491,6 @@ public java.util.Mapmap<string, .tensorflow.SaveableObject> saveable_objects = 11; */ @java.lang.Override - public java.util.Map getSaveableObjectsMap() { return internalGetSaveableObjects().getMap(); } @@ -2455,10 +2505,11 @@ public java.util.Mapmap<string, .tensorflow.SaveableObject> saveable_objects = 11; */ @java.lang.Override - - public org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject getSaveableObjectsOrDefault( + public /* nullable */ +org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject getSaveableObjectsOrDefault( java.lang.String key, - org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject defaultValue) { + /* nullable */ +org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject defaultValue) { if (key == null) { throw new NullPointerException("map key"); } java.util.Map map = internalGetSaveableObjects().getMap(); @@ -2475,7 +2526,6 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject getSaveabl * map<string, .tensorflow.SaveableObject> saveable_objects = 11; */ @java.lang.Override - public org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject getSaveableObjectsOrThrow( java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } @@ -2488,7 +2538,8 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject getSaveabl } public static final int REGISTERED_NAME_FIELD_NUMBER = 13; - private volatile java.lang.Object registeredName_; + @SuppressWarnings("serial") + private volatile java.lang.Object registeredName_ = ""; /** *
          * The name of the registered class of the form "{package}.{class_name}".
    @@ -2549,7 +2600,7 @@ public java.lang.String getRegisteredName() {
          */
         @java.lang.Override
         public boolean hasSerializedUserProto() {
    -      return serializedUserProto_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -2576,11 +2627,12 @@ public com.google.protobuf.Any getSerializedUserProto() {
          */
         @java.lang.Override
         public com.google.protobuf.AnyOrBuilder getSerializedUserProtoOrBuilder() {
    -      return getSerializedUserProto();
    +      return serializedUserProto_ == null ? com.google.protobuf.Any.getDefaultInstance() : serializedUserProto_;
         }
     
         public static final int REGISTERED_SAVER_FIELD_NUMBER = 16;
    -    private volatile java.lang.Object registeredSaver_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object registeredSaver_ = "";
         /**
          * 
          * String name of the registered saver. At most one of `saveable_objects` or
    @@ -2668,7 +2720,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (kindCase_ == 10) {
             output.writeMessage(10, (org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource) kind_);
           }
    -      com.google.protobuf.GeneratedMessageV3
    +      com.google.protobuf.GeneratedMessage
             .serializeStringMapTo(
               output,
               internalGetSaveableObjects(),
    @@ -2677,17 +2729,17 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (kindCase_ == 12) {
             output.writeMessage(12, (org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor) kind_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(registeredName_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 13, registeredName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(registeredName_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 13, registeredName_);
           }
    -      if (serializedUserProto_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(14, getSerializedUserProto());
           }
           for (int i = 0; i < dependencies_.size(); i++) {
             output.writeMessage(15, dependencies_.get(i));
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(registeredSaver_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 16, registeredSaver_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(registeredSaver_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 16, registeredSaver_);
           }
           getUnknownFields().writeTo(output);
         }
    @@ -2748,10 +2800,10 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(12, (org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor) kind_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(registeredName_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(13, registeredName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(registeredName_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(13, registeredName_);
           }
    -      if (serializedUserProto_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(14, getSerializedUserProto());
           }
    @@ -2759,8 +2811,8 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(15, dependencies_.get(i));
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(registeredSaver_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(16, registeredSaver_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(registeredSaver_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(16, registeredSaver_);
           }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
    @@ -2941,39 +2993,41 @@ public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject parseF
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -2993,7 +3047,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -3001,7 +3055,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.SavedObject}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.SavedObject)
             org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObjectOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -3010,7 +3064,7 @@ public static final class Builder extends
           }
     
           @SuppressWarnings({"rawtypes"})
    -      protected com.google.protobuf.MapField internalGetMapField(
    +      protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
               int number) {
             switch (number) {
               case 11:
    @@ -3021,7 +3075,7 @@ protected com.google.protobuf.MapField internalGetMapField(
             }
           }
           @SuppressWarnings({"rawtypes"})
    -      protected com.google.protobuf.MapField internalGetMutableMapField(
    +      protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(
               int number) {
             switch (number) {
               case 11:
    @@ -3032,7 +3086,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
             }
           }
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedObject_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -3041,17 +3095,27 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
     
           // Construct using org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getChildrenFieldBuilder();
    +          getDependenciesFieldBuilder();
    +          getSlotVariablesFieldBuilder();
    +          getSerializedUserProtoFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             if (childrenBuilder_ == null) {
               children_ = java.util.Collections.emptyList();
             } else {
    @@ -3099,15 +3163,12 @@ public Builder clear() {
             }
             internalGetMutableSaveableObjects().clear();
             registeredName_ = "";
    -
    -        if (serializedUserProtoBuilder_ == null) {
    -          serializedUserProto_ = null;
    -        } else {
    -          serializedUserProto_ = null;
    +        serializedUserProto_ = null;
    +        if (serializedUserProtoBuilder_ != null) {
    +          serializedUserProtoBuilder_.dispose();
               serializedUserProtoBuilder_ = null;
             }
             registeredSaver_ = "";
    -
             kindCase_ = 0;
             kind_ = null;
             return this;
    @@ -3136,7 +3197,14 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject build() {
           @java.lang.Override
           public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject buildPartial() {
             org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject result = new org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject(this);
    -        int from_bitField0_ = bitField0_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        buildPartialOneofs(result);
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject result) {
             if (childrenBuilder_ == null) {
               if (((bitField0_ & 0x00000001) != 0)) {
                 children_ = java.util.Collections.unmodifiableList(children_);
    @@ -3164,108 +3232,66 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject buildPartial(
             } else {
               result.slotVariables_ = slotVariablesBuilder_.build();
             }
    -        if (kindCase_ == 4) {
    -          if (userObjectBuilder_ == null) {
    -            result.kind_ = kind_;
    -          } else {
    -            result.kind_ = userObjectBuilder_.build();
    -          }
    +      }
    +
    +      private void buildPartial0(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000800) != 0)) {
    +          result.saveableObjects_ = internalGetSaveableObjects().build(SaveableObjectsDefaultEntryHolder.defaultEntry);
             }
    -        if (kindCase_ == 5) {
    -          if (assetBuilder_ == null) {
    -            result.kind_ = kind_;
    -          } else {
    -            result.kind_ = assetBuilder_.build();
    -          }
    +        if (((from_bitField0_ & 0x00001000) != 0)) {
    +          result.registeredName_ = registeredName_;
             }
    -        if (kindCase_ == 6) {
    -          if (functionBuilder_ == null) {
    -            result.kind_ = kind_;
    -          } else {
    -            result.kind_ = functionBuilder_.build();
    -          }
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00002000) != 0)) {
    +          result.serializedUserProto_ = serializedUserProtoBuilder_ == null
    +              ? serializedUserProto_
    +              : serializedUserProtoBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
             }
    -        if (kindCase_ == 7) {
    -          if (variableBuilder_ == null) {
    -            result.kind_ = kind_;
    -          } else {
    -            result.kind_ = variableBuilder_.build();
    -          }
    +        if (((from_bitField0_ & 0x00004000) != 0)) {
    +          result.registeredSaver_ = registeredSaver_;
             }
    -        if (kindCase_ == 8) {
    -          if (bareConcreteFunctionBuilder_ == null) {
    -            result.kind_ = kind_;
    -          } else {
    -            result.kind_ = bareConcreteFunctionBuilder_.build();
    -          }
    +        result.bitField0_ |= to_bitField0_;
    +      }
    +
    +      private void buildPartialOneofs(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject result) {
    +        result.kindCase_ = kindCase_;
    +        result.kind_ = this.kind_;
    +        if (kindCase_ == 4 &&
    +            userObjectBuilder_ != null) {
    +          result.kind_ = userObjectBuilder_.build();
             }
    -        if (kindCase_ == 9) {
    -          if (constantBuilder_ == null) {
    -            result.kind_ = kind_;
    -          } else {
    -            result.kind_ = constantBuilder_.build();
    -          }
    +        if (kindCase_ == 5 &&
    +            assetBuilder_ != null) {
    +          result.kind_ = assetBuilder_.build();
             }
    -        if (kindCase_ == 10) {
    -          if (resourceBuilder_ == null) {
    -            result.kind_ = kind_;
    -          } else {
    -            result.kind_ = resourceBuilder_.build();
    -          }
    +        if (kindCase_ == 6 &&
    +            functionBuilder_ != null) {
    +          result.kind_ = functionBuilder_.build();
             }
    -        if (kindCase_ == 12) {
    -          if (capturedTensorBuilder_ == null) {
    -            result.kind_ = kind_;
    -          } else {
    -            result.kind_ = capturedTensorBuilder_.build();
    -          }
    +        if (kindCase_ == 7 &&
    +            variableBuilder_ != null) {
    +          result.kind_ = variableBuilder_.build();
             }
    -        result.saveableObjects_ = internalGetSaveableObjects();
    -        result.saveableObjects_.makeImmutable();
    -        result.registeredName_ = registeredName_;
    -        if (serializedUserProtoBuilder_ == null) {
    -          result.serializedUserProto_ = serializedUserProto_;
    -        } else {
    -          result.serializedUserProto_ = serializedUserProtoBuilder_.build();
    +        if (kindCase_ == 8 &&
    +            bareConcreteFunctionBuilder_ != null) {
    +          result.kind_ = bareConcreteFunctionBuilder_.build();
    +        }
    +        if (kindCase_ == 9 &&
    +            constantBuilder_ != null) {
    +          result.kind_ = constantBuilder_.build();
    +        }
    +        if (kindCase_ == 10 &&
    +            resourceBuilder_ != null) {
    +          result.kind_ = resourceBuilder_.build();
    +        }
    +        if (kindCase_ == 12 &&
    +            capturedTensorBuilder_ != null) {
    +          result.kind_ = capturedTensorBuilder_.build();
             }
    -        result.registeredSaver_ = registeredSaver_;
    -        result.kindCase_ = kindCase_;
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    -      }
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.SavedObjectGraphOuterClass.SavedObject) {
    @@ -3297,7 +3323,7 @@ public Builder mergeFrom(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedOb
                   children_ = other.children_;
                   bitField0_ = (bitField0_ & ~0x00000001);
                   childrenBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getChildrenFieldBuilder() : null;
                 } else {
                   childrenBuilder_.addAllMessages(other.children_);
    @@ -3323,7 +3349,7 @@ public Builder mergeFrom(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedOb
                   dependencies_ = other.dependencies_;
                   bitField0_ = (bitField0_ & ~0x00000002);
                   dependenciesBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getDependenciesFieldBuilder() : null;
                 } else {
                   dependenciesBuilder_.addAllMessages(other.dependencies_);
    @@ -3349,7 +3375,7 @@ public Builder mergeFrom(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedOb
                   slotVariables_ = other.slotVariables_;
                   bitField0_ = (bitField0_ & ~0x00000004);
                   slotVariablesBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getSlotVariablesFieldBuilder() : null;
                 } else {
                   slotVariablesBuilder_.addAllMessages(other.slotVariables_);
    @@ -3358,8 +3384,10 @@ public Builder mergeFrom(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedOb
             }
             internalGetMutableSaveableObjects().mergeFrom(
                 other.internalGetSaveableObjects());
    +        bitField0_ |= 0x00000800;
             if (!other.getRegisteredName().isEmpty()) {
               registeredName_ = other.registeredName_;
    +          bitField0_ |= 0x00001000;
               onChanged();
             }
             if (other.hasSerializedUserProto()) {
    @@ -3367,6 +3395,7 @@ public Builder mergeFrom(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedOb
             }
             if (!other.getRegisteredSaver().isEmpty()) {
               registeredSaver_ = other.registeredSaver_;
    +          bitField0_ |= 0x00004000;
               onChanged();
             }
             switch (other.getKindCase()) {
    @@ -3511,8 +3540,9 @@ public Builder mergeFrom(
                     com.google.protobuf.MapEntry
                     saveableObjects__ = input.readMessage(
                         SaveableObjectsDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
    -                internalGetMutableSaveableObjects().getMutableMap().put(
    +                internalGetMutableSaveableObjects().ensureBuilderMap().put(
                         saveableObjects__.getKey(), saveableObjects__.getValue());
    +                bitField0_ |= 0x00000800;
                     break;
                   } // case 90
                   case 98: {
    @@ -3524,14 +3554,14 @@ public Builder mergeFrom(
                   } // case 98
                   case 106: {
                     registeredName_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00001000;
                     break;
                   } // case 106
                   case 114: {
                     input.readMessage(
                         getSerializedUserProtoFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00002000;
                     break;
                   } // case 114
                   case 122: {
    @@ -3549,7 +3579,7 @@ public Builder mergeFrom(
                   } // case 122
                   case 130: {
                     registeredSaver_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00004000;
                     break;
                   } // case 130
                   default: {
    @@ -3593,13 +3623,14 @@ private void ensureChildrenIsMutable() {
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReferenceOrBuilder> childrenBuilder_;
     
           /**
            * 
            * Objects which this object depends on: named edges in the dependency
            * graph.
    +       *
            * Note: All kinds of SavedObject may have children, except
            * "constant" and "captured_tensor".
            * 
    @@ -3617,6 +3648,7 @@ public java.util.List * Objects which this object depends on: named edges in the dependency * graph. + * * Note: All kinds of SavedObject may have children, except * "constant" and "captured_tensor". *
    @@ -3634,6 +3666,7 @@ public int getChildrenCount() { *
            * Objects which this object depends on: named edges in the dependency
            * graph.
    +       *
            * Note: All kinds of SavedObject may have children, except
            * "constant" and "captured_tensor".
            * 
    @@ -3651,6 +3684,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph. *
            * Objects which this object depends on: named edges in the dependency
            * graph.
    +       *
            * Note: All kinds of SavedObject may have children, except
            * "constant" and "captured_tensor".
            * 
    @@ -3675,6 +3709,7 @@ public Builder setChildren( *
            * Objects which this object depends on: named edges in the dependency
            * graph.
    +       *
            * Note: All kinds of SavedObject may have children, except
            * "constant" and "captured_tensor".
            * 
    @@ -3696,6 +3731,7 @@ public Builder setChildren( *
            * Objects which this object depends on: named edges in the dependency
            * graph.
    +       *
            * Note: All kinds of SavedObject may have children, except
            * "constant" and "captured_tensor".
            * 
    @@ -3719,6 +3755,7 @@ public Builder addChildren(org.tensorflow.proto.TrackableObjectGraphOuterClass.T *
            * Objects which this object depends on: named edges in the dependency
            * graph.
    +       *
            * Note: All kinds of SavedObject may have children, except
            * "constant" and "captured_tensor".
            * 
    @@ -3743,6 +3780,7 @@ public Builder addChildren( *
            * Objects which this object depends on: named edges in the dependency
            * graph.
    +       *
            * Note: All kinds of SavedObject may have children, except
            * "constant" and "captured_tensor".
            * 
    @@ -3764,6 +3802,7 @@ public Builder addChildren( *
            * Objects which this object depends on: named edges in the dependency
            * graph.
    +       *
            * Note: All kinds of SavedObject may have children, except
            * "constant" and "captured_tensor".
            * 
    @@ -3785,6 +3824,7 @@ public Builder addChildren( *
            * Objects which this object depends on: named edges in the dependency
            * graph.
    +       *
            * Note: All kinds of SavedObject may have children, except
            * "constant" and "captured_tensor".
            * 
    @@ -3807,6 +3847,7 @@ public Builder addAllChildren( *
            * Objects which this object depends on: named edges in the dependency
            * graph.
    +       *
            * Note: All kinds of SavedObject may have children, except
            * "constant" and "captured_tensor".
            * 
    @@ -3827,6 +3868,7 @@ public Builder clearChildren() { *
            * Objects which this object depends on: named edges in the dependency
            * graph.
    +       *
            * Note: All kinds of SavedObject may have children, except
            * "constant" and "captured_tensor".
            * 
    @@ -3847,6 +3889,7 @@ public Builder removeChildren(int index) { *
            * Objects which this object depends on: named edges in the dependency
            * graph.
    +       *
            * Note: All kinds of SavedObject may have children, except
            * "constant" and "captured_tensor".
            * 
    @@ -3861,6 +3904,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph. *
            * Objects which this object depends on: named edges in the dependency
            * graph.
    +       *
            * Note: All kinds of SavedObject may have children, except
            * "constant" and "captured_tensor".
            * 
    @@ -3878,6 +3922,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph. *
            * Objects which this object depends on: named edges in the dependency
            * graph.
    +       *
            * Note: All kinds of SavedObject may have children, except
            * "constant" and "captured_tensor".
            * 
    @@ -3896,6 +3941,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph. *
            * Objects which this object depends on: named edges in the dependency
            * graph.
    +       *
            * Note: All kinds of SavedObject may have children, except
            * "constant" and "captured_tensor".
            * 
    @@ -3910,6 +3956,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph. *
            * Objects which this object depends on: named edges in the dependency
            * graph.
    +       *
            * Note: All kinds of SavedObject may have children, except
            * "constant" and "captured_tensor".
            * 
    @@ -3925,6 +3972,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph. *
            * Objects which this object depends on: named edges in the dependency
            * graph.
    +       *
            * Note: All kinds of SavedObject may have children, except
            * "constant" and "captured_tensor".
            * 
    @@ -3935,11 +3983,11 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph. getChildrenBuilderList() { return getChildrenFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReferenceOrBuilder> getChildrenFieldBuilder() { if (childrenBuilder_ == null) { - childrenBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + childrenBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReferenceOrBuilder>( children_, ((bitField0_ & 0x00000001) != 0), @@ -3959,7 +4007,7 @@ private void ensureDependenciesIsMutable() { } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReferenceOrBuilder> dependenciesBuilder_; /** @@ -4283,11 +4331,11 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph. getDependenciesBuilderList() { return getDependenciesFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReferenceOrBuilder> getDependenciesFieldBuilder() { if (dependenciesBuilder_ == null) { - dependenciesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + dependenciesBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReferenceOrBuilder>( dependencies_, ((bitField0_ & 0x00000002) != 0), @@ -4307,7 +4355,7 @@ private void ensureSlotVariablesIsMutable() { } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReferenceOrBuilder> slotVariablesBuilder_; /** @@ -4315,6 +4363,7 @@ private void ensureSlotVariablesIsMutable() { * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -4332,6 +4381,7 @@ public java.util.List * @@ -4349,6 +4399,7 @@ public int getSlotVariablesCount() { * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -4366,6 +4417,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph. * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -4390,6 +4442,7 @@ public Builder setSlotVariables( * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -4411,6 +4464,7 @@ public Builder setSlotVariables( * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -4434,6 +4488,7 @@ public Builder addSlotVariables(org.tensorflow.proto.TrackableObjectGraphOuterCl * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -4458,6 +4513,7 @@ public Builder addSlotVariables( * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -4479,6 +4535,7 @@ public Builder addSlotVariables( * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -4500,6 +4557,7 @@ public Builder addSlotVariables( * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -4522,6 +4580,7 @@ public Builder addAllSlotVariables( * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -4542,6 +4601,7 @@ public Builder clearSlotVariables() { * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -4562,6 +4622,7 @@ public Builder removeSlotVariables(int index) { * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -4576,6 +4637,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph. * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -4593,6 +4655,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph. * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -4611,6 +4674,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph. * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -4625,6 +4689,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph. * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -4640,6 +4705,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph. * Slot variables owned by this object. This describes the three-way * (optimizer, variable, slot variable) relationship; none of the three * depend on the others directly. + * * Note: currently only valid if kind == "user_object". *
    * @@ -4649,11 +4715,11 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph. getSlotVariablesBuilderList() { return getSlotVariablesFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReferenceOrBuilder> getSlotVariablesFieldBuilder() { if (slotVariablesBuilder_ == null) { - slotVariablesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + slotVariablesBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReferenceOrBuilder>( slotVariables_, ((bitField0_ & 0x00000004) != 0), @@ -4664,7 +4730,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph. return slotVariablesBuilder_; } - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObjectOrBuilder> userObjectBuilder_; /** * .tensorflow.SavedUserObject user_object = 4; @@ -4787,14 +4853,14 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObjectOrBuilder /** * .tensorflow.SavedUserObject user_object = 4; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObjectOrBuilder> getUserObjectFieldBuilder() { if (userObjectBuilder_ == null) { if (!(kindCase_ == 4)) { kind_ = org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject.getDefaultInstance(); } - userObjectBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + userObjectBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObjectOrBuilder>( (org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject) kind_, getParentForChildren(), @@ -4802,11 +4868,11 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObjectOrBuilder kind_ = null; } kindCase_ = 4; - onChanged();; + onChanged(); return userObjectBuilder_; } - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAssetOrBuilder> assetBuilder_; /** * .tensorflow.SavedAsset asset = 5; @@ -4929,14 +4995,14 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAssetOrBuilder getAs /** * .tensorflow.SavedAsset asset = 5; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAssetOrBuilder> getAssetFieldBuilder() { if (assetBuilder_ == null) { if (!(kindCase_ == 5)) { kind_ = org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset.getDefaultInstance(); } - assetBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + assetBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAssetOrBuilder>( (org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset) kind_, getParentForChildren(), @@ -4944,11 +5010,11 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAssetOrBuilder getAs kind_ = null; } kindCase_ = 5; - onChanged();; + onChanged(); return assetBuilder_; } - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunctionOrBuilder> functionBuilder_; /** * .tensorflow.SavedFunction function = 6; @@ -5071,14 +5137,14 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunctionOrBuilder ge /** * .tensorflow.SavedFunction function = 6; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunctionOrBuilder> getFunctionFieldBuilder() { if (functionBuilder_ == null) { if (!(kindCase_ == 6)) { kind_ = org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction.getDefaultInstance(); } - functionBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + functionBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunctionOrBuilder>( (org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction) kind_, getParentForChildren(), @@ -5086,11 +5152,11 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunctionOrBuilder ge kind_ = null; } kindCase_ = 6; - onChanged();; + onChanged(); return functionBuilder_; } - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariableOrBuilder> variableBuilder_; /** * .tensorflow.SavedVariable variable = 7; @@ -5213,14 +5279,14 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariableOrBuilder ge /** * .tensorflow.SavedVariable variable = 7; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariableOrBuilder> getVariableFieldBuilder() { if (variableBuilder_ == null) { if (!(kindCase_ == 7)) { kind_ = org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable.getDefaultInstance(); } - variableBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + variableBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariableOrBuilder>( (org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable) kind_, getParentForChildren(), @@ -5228,11 +5294,11 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariableOrBuilder ge kind_ = null; } kindCase_ = 7; - onChanged();; + onChanged(); return variableBuilder_; } - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunctionOrBuilder> bareConcreteFunctionBuilder_; /** * .tensorflow.SavedBareConcreteFunction bare_concrete_function = 8; @@ -5355,14 +5421,14 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction /** * .tensorflow.SavedBareConcreteFunction bare_concrete_function = 8; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunctionOrBuilder> getBareConcreteFunctionFieldBuilder() { if (bareConcreteFunctionBuilder_ == null) { if (!(kindCase_ == 8)) { kind_ = org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction.getDefaultInstance(); } - bareConcreteFunctionBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + bareConcreteFunctionBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunctionOrBuilder>( (org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction) kind_, getParentForChildren(), @@ -5370,11 +5436,11 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction kind_ = null; } kindCase_ = 8; - onChanged();; + onChanged(); return bareConcreteFunctionBuilder_; } - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstantOrBuilder> constantBuilder_; /** * .tensorflow.SavedConstant constant = 9; @@ -5497,14 +5563,14 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstantOrBuilder ge /** * .tensorflow.SavedConstant constant = 9; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstantOrBuilder> getConstantFieldBuilder() { if (constantBuilder_ == null) { if (!(kindCase_ == 9)) { kind_ = org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant.getDefaultInstance(); } - constantBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + constantBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstantOrBuilder>( (org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant) kind_, getParentForChildren(), @@ -5512,11 +5578,11 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstantOrBuilder ge kind_ = null; } kindCase_ = 9; - onChanged();; + onChanged(); return constantBuilder_; } - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResourceOrBuilder> resourceBuilder_; /** * .tensorflow.SavedResource resource = 10; @@ -5639,14 +5705,14 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResourceOrBuilder ge /** * .tensorflow.SavedResource resource = 10; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResourceOrBuilder> getResourceFieldBuilder() { if (resourceBuilder_ == null) { if (!(kindCase_ == 10)) { kind_ = org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource.getDefaultInstance(); } - resourceBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + resourceBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResourceOrBuilder>( (org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource) kind_, getParentForChildren(), @@ -5654,11 +5720,11 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResourceOrBuilder ge kind_ = null; } kindCase_ = 10; - onChanged();; + onChanged(); return resourceBuilder_; } - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor, org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensorOrBuilder> capturedTensorBuilder_; /** * .tensorflow.CapturedTensor captured_tensor = 12; @@ -5781,14 +5847,14 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensorOrBuilder g /** * .tensorflow.CapturedTensor captured_tensor = 12; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor, org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensorOrBuilder> getCapturedTensorFieldBuilder() { if (capturedTensorBuilder_ == null) { if (!(kindCase_ == 12)) { kind_ = org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor.getDefaultInstance(); } - capturedTensorBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + capturedTensorBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor, org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensorOrBuilder>( (org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor) kind_, getParentForChildren(), @@ -5796,35 +5862,44 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensorOrBuilder g kind_ = null; } kindCase_ = 12; - onChanged();; + onChanged(); return capturedTensorBuilder_; } - private com.google.protobuf.MapField< - java.lang.String, org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject> saveableObjects_; - private com.google.protobuf.MapField - internalGetSaveableObjects() { + private static final class SaveableObjectsConverter implements com.google.protobuf.MapFieldBuilder.Converter { + @java.lang.Override + public org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject build(org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObjectOrBuilder val) { + if (val instanceof org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject) { return (org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject) val; } + return ((org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject.Builder) val).build(); + } + + @java.lang.Override + public com.google.protobuf.MapEntry defaultEntry() { + return SaveableObjectsDefaultEntryHolder.defaultEntry; + } + }; + private static final SaveableObjectsConverter saveableObjectsConverter = new SaveableObjectsConverter(); + + private com.google.protobuf.MapFieldBuilder< + java.lang.String, org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObjectOrBuilder, org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject, org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject.Builder> saveableObjects_; + private com.google.protobuf.MapFieldBuilder + internalGetSaveableObjects() { if (saveableObjects_ == null) { - return com.google.protobuf.MapField.emptyMapField( - SaveableObjectsDefaultEntryHolder.defaultEntry); + return new com.google.protobuf.MapFieldBuilder<>(saveableObjectsConverter); } return saveableObjects_; } - private com.google.protobuf.MapField - internalGetMutableSaveableObjects() { - onChanged();; + private com.google.protobuf.MapFieldBuilder + internalGetMutableSaveableObjects() { if (saveableObjects_ == null) { - saveableObjects_ = com.google.protobuf.MapField.newMapField( - SaveableObjectsDefaultEntryHolder.defaultEntry); - } - if (!saveableObjects_.isMutable()) { - saveableObjects_ = saveableObjects_.copy(); + saveableObjects_ = new com.google.protobuf.MapFieldBuilder<>(saveableObjectsConverter); } + bitField0_ |= 0x00000800; + onChanged(); return saveableObjects_; } - public int getSaveableObjectsCount() { - return internalGetSaveableObjects().getMap().size(); + return internalGetSaveableObjects().ensureBuilderMap().size(); } /** *
    @@ -5836,12 +5911,11 @@ public int getSaveableObjectsCount() {
            *
            * map<string, .tensorflow.SaveableObject> saveable_objects = 11;
            */
    -
           @java.lang.Override
           public boolean containsSaveableObjects(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        return internalGetSaveableObjects().getMap().containsKey(key);
    +        return internalGetSaveableObjects().ensureBuilderMap().containsKey(key);
           }
           /**
            * Use {@link #getSaveableObjectsMap()} instead.
    @@ -5862,9 +5936,8 @@ public java.util.Mapmap<string, .tensorflow.SaveableObject> saveable_objects = 11;
            */
           @java.lang.Override
    -
           public java.util.Map getSaveableObjectsMap() {
    -        return internalGetSaveableObjects().getMap();
    +        return internalGetSaveableObjects().getImmutableMap();
           }
           /**
            * 
    @@ -5877,14 +5950,14 @@ public java.util.Mapmap<string, .tensorflow.SaveableObject> saveable_objects = 11;
            */
           @java.lang.Override
    -
    -      public org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject getSaveableObjectsOrDefault(
    +      public /* nullable */
    +org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject getSaveableObjectsOrDefault(
               java.lang.String key,
    -          org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject defaultValue) {
    +          /* nullable */
    +org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject defaultValue) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        java.util.Map map =
    -            internalGetSaveableObjects().getMap();
    -        return map.containsKey(key) ? map.get(key) : defaultValue;
    +        java.util.Map map = internalGetMutableSaveableObjects().ensureBuilderMap();
    +        return map.containsKey(key) ? saveableObjectsConverter.build(map.get(key)) : defaultValue;
           }
           /**
            * 
    @@ -5897,21 +5970,18 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject getSaveabl
            * map<string, .tensorflow.SaveableObject> saveable_objects = 11;
            */
           @java.lang.Override
    -
           public org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject getSaveableObjectsOrThrow(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        java.util.Map map =
    -            internalGetSaveableObjects().getMap();
    +        java.util.Map map = internalGetMutableSaveableObjects().ensureBuilderMap();
             if (!map.containsKey(key)) {
               throw new java.lang.IllegalArgumentException();
             }
    -        return map.get(key);
    +        return saveableObjectsConverter.build(map.get(key));
           }
    -
           public Builder clearSaveableObjects() {
    -        internalGetMutableSaveableObjects().getMutableMap()
    -            .clear();
    +        bitField0_ = (bitField0_ & ~0x00000800);
    +        internalGetMutableSaveableObjects().clear();
             return this;
           }
           /**
    @@ -5924,11 +5994,10 @@ public Builder clearSaveableObjects() {
            *
            * map<string, .tensorflow.SaveableObject> saveable_objects = 11;
            */
    -
           public Builder removeSaveableObjects(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        internalGetMutableSaveableObjects().getMutableMap()
    +        internalGetMutableSaveableObjects().ensureBuilderMap()
                 .remove(key);
             return this;
           }
    @@ -5937,8 +6006,9 @@ public Builder removeSaveableObjects(
            */
           @java.lang.Deprecated
           public java.util.Map
    -      getMutableSaveableObjects() {
    -        return internalGetMutableSaveableObjects().getMutableMap();
    +          getMutableSaveableObjects() {
    +        bitField0_ |= 0x00000800;
    +        return internalGetMutableSaveableObjects().ensureMessageMap();
           }
           /**
            * 
    @@ -5954,12 +6024,10 @@ public Builder putSaveableObjects(
               java.lang.String key,
               org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject value) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    -        internalGetMutableSaveableObjects().getMutableMap()
    +        if (value == null) { throw new NullPointerException("map value"); }
    +        internalGetMutableSaveableObjects().ensureBuilderMap()
                 .put(key, value);
    +        bitField0_ |= 0x00000800;
             return this;
           }
           /**
    @@ -5972,13 +6040,42 @@ public Builder putSaveableObjects(
            *
            * map<string, .tensorflow.SaveableObject> saveable_objects = 11;
            */
    -
           public Builder putAllSaveableObjects(
               java.util.Map values) {
    -        internalGetMutableSaveableObjects().getMutableMap()
    +        for (java.util.Map.Entry e : values.entrySet()) {
    +          if (e.getKey() == null || e.getValue() == null) {
    +            throw new NullPointerException();
    +          }
    +        }
    +        internalGetMutableSaveableObjects().ensureBuilderMap()
                 .putAll(values);
    +        bitField0_ |= 0x00000800;
             return this;
           }
    +      /**
    +       * 
    +       * Stores the functions used to save and restore this object. At most one of
    +       * `saveable_objects` or `registered_saver` is defined for each SavedObject.
    +       * See the comment below for the difference between SaveableObject and
    +       * registered savers.
    +       * 
    + * + * map<string, .tensorflow.SaveableObject> saveable_objects = 11; + */ + public org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject.Builder putSaveableObjectsBuilderIfAbsent( + java.lang.String key) { + java.util.Map builderMap = internalGetMutableSaveableObjects().ensureBuilderMap(); + org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObjectOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject) { + entry = ((org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject.Builder) entry; + } private java.lang.Object registeredName_ = ""; /** @@ -6036,11 +6133,9 @@ public java.lang.String getRegisteredName() { */ public Builder setRegisteredName( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } registeredName_ = value; + bitField0_ |= 0x00001000; onChanged(); return this; } @@ -6054,8 +6149,8 @@ public Builder setRegisteredName( * @return This builder for chaining. */ public Builder clearRegisteredName() { - registeredName_ = getDefaultInstance().getRegisteredName(); + bitField0_ = (bitField0_ & ~0x00001000); onChanged(); return this; } @@ -6071,18 +6166,16 @@ public Builder clearRegisteredName() { */ public Builder setRegisteredNameBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); registeredName_ = value; + bitField0_ |= 0x00001000; onChanged(); return this; } private com.google.protobuf.Any serializedUserProto_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< com.google.protobuf.Any, com.google.protobuf.Any.Builder, com.google.protobuf.AnyOrBuilder> serializedUserProtoBuilder_; /** *
    @@ -6095,7 +6188,7 @@ public Builder setRegisteredNameBytes(
            * @return Whether the serializedUserProto field is set.
            */
           public boolean hasSerializedUserProto() {
    -        return serializedUserProtoBuilder_ != null || serializedUserProto_ != null;
    +        return ((bitField0_ & 0x00002000) != 0);
           }
           /**
            * 
    @@ -6129,11 +6222,11 @@ public Builder setSerializedUserProto(com.google.protobuf.Any value) {
                 throw new NullPointerException();
               }
               serializedUserProto_ = value;
    -          onChanged();
             } else {
               serializedUserProtoBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00002000;
    +        onChanged();
             return this;
           }
           /**
    @@ -6149,11 +6242,11 @@ public Builder setSerializedUserProto(
               com.google.protobuf.Any.Builder builderForValue) {
             if (serializedUserProtoBuilder_ == null) {
               serializedUserProto_ = builderForValue.build();
    -          onChanged();
             } else {
               serializedUserProtoBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00002000;
    +        onChanged();
             return this;
           }
           /**
    @@ -6167,17 +6260,20 @@ public Builder setSerializedUserProto(
            */
           public Builder mergeSerializedUserProto(com.google.protobuf.Any value) {
             if (serializedUserProtoBuilder_ == null) {
    -          if (serializedUserProto_ != null) {
    -            serializedUserProto_ =
    -              com.google.protobuf.Any.newBuilder(serializedUserProto_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00002000) != 0) &&
    +            serializedUserProto_ != null &&
    +            serializedUserProto_ != com.google.protobuf.Any.getDefaultInstance()) {
    +            getSerializedUserProtoBuilder().mergeFrom(value);
               } else {
                 serializedUserProto_ = value;
               }
    -          onChanged();
             } else {
               serializedUserProtoBuilder_.mergeFrom(value);
             }
    -
    +        if (serializedUserProto_ != null) {
    +          bitField0_ |= 0x00002000;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -6190,14 +6286,13 @@ public Builder mergeSerializedUserProto(com.google.protobuf.Any value) {
            * .google.protobuf.Any serialized_user_proto = 14;
            */
           public Builder clearSerializedUserProto() {
    -        if (serializedUserProtoBuilder_ == null) {
    -          serializedUserProto_ = null;
    -          onChanged();
    -        } else {
    -          serializedUserProto_ = null;
    +        bitField0_ = (bitField0_ & ~0x00002000);
    +        serializedUserProto_ = null;
    +        if (serializedUserProtoBuilder_ != null) {
    +          serializedUserProtoBuilder_.dispose();
               serializedUserProtoBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -6210,7 +6305,7 @@ public Builder clearSerializedUserProto() {
            * .google.protobuf.Any serialized_user_proto = 14;
            */
           public com.google.protobuf.Any.Builder getSerializedUserProtoBuilder() {
    -        
    +        bitField0_ |= 0x00002000;
             onChanged();
             return getSerializedUserProtoFieldBuilder().getBuilder();
           }
    @@ -6240,11 +6335,11 @@ public com.google.protobuf.AnyOrBuilder getSerializedUserProtoOrBuilder() {
            *
            * .google.protobuf.Any serialized_user_proto = 14;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               com.google.protobuf.Any, com.google.protobuf.Any.Builder, com.google.protobuf.AnyOrBuilder> 
               getSerializedUserProtoFieldBuilder() {
             if (serializedUserProtoBuilder_ == null) {
    -          serializedUserProtoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          serializedUserProtoBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   com.google.protobuf.Any, com.google.protobuf.Any.Builder, com.google.protobuf.AnyOrBuilder>(
                       getSerializedUserProto(),
                       getParentForChildren(),
    @@ -6310,11 +6405,9 @@ public java.lang.String getRegisteredSaver() {
            */
           public Builder setRegisteredSaver(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             registeredSaver_ = value;
    +        bitField0_ |= 0x00004000;
             onChanged();
             return this;
           }
    @@ -6328,8 +6421,8 @@ public Builder setRegisteredSaver(
            * @return This builder for chaining.
            */
           public Builder clearRegisteredSaver() {
    -        
             registeredSaver_ = getDefaultInstance().getRegisteredSaver();
    +        bitField0_ = (bitField0_ & ~0x00004000);
             onChanged();
             return this;
           }
    @@ -6345,27 +6438,13 @@ public Builder clearRegisteredSaver() {
            */
           public Builder setRegisteredSaverBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             registeredSaver_ = value;
    +        bitField0_ |= 0x00004000;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.SavedObject)
         }
    @@ -6472,6 +6551,7 @@ public interface SavedUserObjectOrBuilder extends
         /**
          * 
          * Metadata for deserializing this object.
    +     *
          * Deprecated! At the time of deprecation, Keras was the only user of this
          * field, and its saving and loading code will be updated shortly.
          * Please save your application-specific metadata to a separate file.
    @@ -6486,6 +6566,7 @@ public interface SavedUserObjectOrBuilder extends
         /**
          * 
          * Metadata for deserializing this object.
    +     *
          * Deprecated! At the time of deprecation, Keras was the only user of this
          * field, and its saving and loading code will be updated shortly.
          * Please save your application-specific metadata to a separate file.
    @@ -6504,6 +6585,7 @@ public interface SavedUserObjectOrBuilder extends
        * A SavedUserObject is an object (in the object-oriented language of the
        * TensorFlow program) of some user- or framework-defined class other than
        * those handled specifically by the other kinds of SavedObjects.
    +   *
        * This object cannot be evaluated as a tensor, and therefore cannot be bound
        * to an input of a function.
        * 
    @@ -6511,12 +6593,21 @@ public interface SavedUserObjectOrBuilder extends * Protobuf type {@code tensorflow.SavedUserObject} */ public static final class SavedUserObject extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.SavedUserObject) SavedUserObjectOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + SavedUserObject.class.getName()); + } // Use SavedUserObject.newBuilder() to construct. - private SavedUserObject(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private SavedUserObject(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private SavedUserObject() { @@ -6524,33 +6615,23 @@ private SavedUserObject() { metadata_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new SavedUserObject(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedUserObject_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedUserObject_fieldAccessorTable .ensureFieldAccessorsInitialized( org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject.class, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject.Builder.class); } + private int bitField0_; public static final int IDENTIFIER_FIELD_NUMBER = 1; - private volatile java.lang.Object identifier_; + @SuppressWarnings("serial") + private volatile java.lang.Object identifier_ = ""; /** *
          * Corresponds to a registration of the type to use in the loading program.
    @@ -6607,7 +6688,7 @@ public java.lang.String getIdentifier() {
          */
         @java.lang.Override
         public boolean hasVersion() {
    -      return version_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -6630,14 +6711,16 @@ public org.tensorflow.proto.VersionDef getVersion() {
          */
         @java.lang.Override
         public org.tensorflow.proto.VersionDefOrBuilder getVersionOrBuilder() {
    -      return getVersion();
    +      return version_ == null ? org.tensorflow.proto.VersionDef.getDefaultInstance() : version_;
         }
     
         public static final int METADATA_FIELD_NUMBER = 3;
    -    private volatile java.lang.Object metadata_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object metadata_ = "";
         /**
          * 
          * Metadata for deserializing this object.
    +     *
          * Deprecated! At the time of deprecation, Keras was the only user of this
          * field, and its saving and loading code will be updated shortly.
          * Please save your application-specific metadata to a separate file.
    @@ -6664,6 +6747,7 @@ public org.tensorflow.proto.VersionDefOrBuilder getVersionOrBuilder() {
         /**
          * 
          * Metadata for deserializing this object.
    +     *
          * Deprecated! At the time of deprecation, Keras was the only user of this
          * field, and its saving and loading code will be updated shortly.
          * Please save your application-specific metadata to a separate file.
    @@ -6703,14 +6787,14 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(identifier_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, identifier_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(identifier_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, identifier_);
           }
    -      if (version_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(2, getVersion());
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(metadata_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, metadata_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(metadata_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 3, metadata_);
           }
           getUnknownFields().writeTo(output);
         }
    @@ -6721,15 +6805,15 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(identifier_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, identifier_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(identifier_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, identifier_);
           }
    -      if (version_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(2, getVersion());
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(metadata_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, metadata_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(metadata_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(3, metadata_);
           }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
    @@ -6813,39 +6897,41 @@ public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject pa
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -6865,7 +6951,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -6874,6 +6960,7 @@ protected Builder newBuilderForType(
          * A SavedUserObject is an object (in the object-oriented language of the
          * TensorFlow program) of some user- or framework-defined class other than
          * those handled specifically by the other kinds of SavedObjects.
    +     *
          * This object cannot be evaluated as a tensor, and therefore cannot be bound
          * to an input of a function.
          * 
    @@ -6881,7 +6968,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.SavedUserObject} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.SavedUserObject) org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObjectOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -6890,7 +6977,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedUserObject_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -6899,27 +6986,31 @@ public static final class Builder extends // Construct using org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject.newBuilder() private Builder() { - + maybeForceBuilderInitialization(); } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); - + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage + .alwaysUseFieldBuilders) { + getVersionFieldBuilder(); + } } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; identifier_ = ""; - - if (versionBuilder_ == null) { - version_ = null; - } else { - version_ = null; + version_ = null; + if (versionBuilder_ != null) { + versionBuilder_.dispose(); versionBuilder_ = null; } metadata_ = ""; - return this; } @@ -6946,49 +7037,29 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject build() { @java.lang.Override public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject buildPartial() { org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject result = new org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject(this); - result.identifier_ = identifier_; - if (versionBuilder_ == null) { - result.version_ = version_; - } else { - result.version_ = versionBuilder_.build(); - } - result.metadata_ = metadata_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.identifier_ = identifier_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.version_ = versionBuilder_ == null + ? version_ + : versionBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.metadata_ = metadata_; + } + result.bitField0_ |= to_bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject) { @@ -7003,6 +7074,7 @@ public Builder mergeFrom(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUs if (other == org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUserObject.getDefaultInstance()) return this; if (!other.getIdentifier().isEmpty()) { identifier_ = other.identifier_; + bitField0_ |= 0x00000001; onChanged(); } if (other.hasVersion()) { @@ -7010,6 +7082,7 @@ public Builder mergeFrom(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedUs } if (!other.getMetadata().isEmpty()) { metadata_ = other.metadata_; + bitField0_ |= 0x00000004; onChanged(); } this.mergeUnknownFields(other.getUnknownFields()); @@ -7040,19 +7113,19 @@ public Builder mergeFrom( break; case 10: { identifier_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000001; break; } // case 10 case 18: { input.readMessage( getVersionFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000002; break; } // case 18 case 26: { metadata_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000004; break; } // case 26 default: { @@ -7070,6 +7143,7 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private java.lang.Object identifier_ = ""; /** @@ -7124,11 +7198,9 @@ public java.lang.String getIdentifier() { */ public Builder setIdentifier( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } identifier_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -7141,8 +7213,8 @@ public Builder setIdentifier( * @return This builder for chaining. */ public Builder clearIdentifier() { - identifier_ = getDefaultInstance().getIdentifier(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } @@ -7157,18 +7229,16 @@ public Builder clearIdentifier() { */ public Builder setIdentifierBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); identifier_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } private org.tensorflow.proto.VersionDef version_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.VersionDef, org.tensorflow.proto.VersionDef.Builder, org.tensorflow.proto.VersionDefOrBuilder> versionBuilder_; /** *
    @@ -7179,7 +7249,7 @@ public Builder setIdentifierBytes(
            * @return Whether the version field is set.
            */
           public boolean hasVersion() {
    -        return versionBuilder_ != null || version_ != null;
    +        return ((bitField0_ & 0x00000002) != 0);
           }
           /**
            * 
    @@ -7209,11 +7279,11 @@ public Builder setVersion(org.tensorflow.proto.VersionDef value) {
                 throw new NullPointerException();
               }
               version_ = value;
    -          onChanged();
             } else {
               versionBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -7227,11 +7297,11 @@ public Builder setVersion(
               org.tensorflow.proto.VersionDef.Builder builderForValue) {
             if (versionBuilder_ == null) {
               version_ = builderForValue.build();
    -          onChanged();
             } else {
               versionBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -7243,17 +7313,20 @@ public Builder setVersion(
            */
           public Builder mergeVersion(org.tensorflow.proto.VersionDef value) {
             if (versionBuilder_ == null) {
    -          if (version_ != null) {
    -            version_ =
    -              org.tensorflow.proto.VersionDef.newBuilder(version_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000002) != 0) &&
    +            version_ != null &&
    +            version_ != org.tensorflow.proto.VersionDef.getDefaultInstance()) {
    +            getVersionBuilder().mergeFrom(value);
               } else {
                 version_ = value;
               }
    -          onChanged();
             } else {
               versionBuilder_.mergeFrom(value);
             }
    -
    +        if (version_ != null) {
    +          bitField0_ |= 0x00000002;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -7264,14 +7337,13 @@ public Builder mergeVersion(org.tensorflow.proto.VersionDef value) {
            * .tensorflow.VersionDef version = 2;
            */
           public Builder clearVersion() {
    -        if (versionBuilder_ == null) {
    -          version_ = null;
    -          onChanged();
    -        } else {
    -          version_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000002);
    +        version_ = null;
    +        if (versionBuilder_ != null) {
    +          versionBuilder_.dispose();
               versionBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -7282,7 +7354,7 @@ public Builder clearVersion() {
            * .tensorflow.VersionDef version = 2;
            */
           public org.tensorflow.proto.VersionDef.Builder getVersionBuilder() {
    -        
    +        bitField0_ |= 0x00000002;
             onChanged();
             return getVersionFieldBuilder().getBuilder();
           }
    @@ -7308,11 +7380,11 @@ public org.tensorflow.proto.VersionDefOrBuilder getVersionOrBuilder() {
            *
            * .tensorflow.VersionDef version = 2;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.VersionDef, org.tensorflow.proto.VersionDef.Builder, org.tensorflow.proto.VersionDefOrBuilder> 
               getVersionFieldBuilder() {
             if (versionBuilder_ == null) {
    -          versionBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          versionBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.VersionDef, org.tensorflow.proto.VersionDef.Builder, org.tensorflow.proto.VersionDefOrBuilder>(
                       getVersion(),
                       getParentForChildren(),
    @@ -7326,6 +7398,7 @@ public org.tensorflow.proto.VersionDefOrBuilder getVersionOrBuilder() {
           /**
            * 
            * Metadata for deserializing this object.
    +       *
            * Deprecated! At the time of deprecation, Keras was the only user of this
            * field, and its saving and loading code will be updated shortly.
            * Please save your application-specific metadata to a separate file.
    @@ -7351,6 +7424,7 @@ public org.tensorflow.proto.VersionDefOrBuilder getVersionOrBuilder() {
           /**
            * 
            * Metadata for deserializing this object.
    +       *
            * Deprecated! At the time of deprecation, Keras was the only user of this
            * field, and its saving and loading code will be updated shortly.
            * Please save your application-specific metadata to a separate file.
    @@ -7377,6 +7451,7 @@ public org.tensorflow.proto.VersionDefOrBuilder getVersionOrBuilder() {
           /**
            * 
            * Metadata for deserializing this object.
    +       *
            * Deprecated! At the time of deprecation, Keras was the only user of this
            * field, and its saving and loading code will be updated shortly.
            * Please save your application-specific metadata to a separate file.
    @@ -7390,17 +7465,16 @@ public org.tensorflow.proto.VersionDefOrBuilder getVersionOrBuilder() {
            */
           @java.lang.Deprecated public Builder setMetadata(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             metadata_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
           /**
            * 
            * Metadata for deserializing this object.
    +       *
            * Deprecated! At the time of deprecation, Keras was the only user of this
            * field, and its saving and loading code will be updated shortly.
            * Please save your application-specific metadata to a separate file.
    @@ -7412,14 +7486,15 @@ public org.tensorflow.proto.VersionDefOrBuilder getVersionOrBuilder() {
            * @return This builder for chaining.
            */
           @java.lang.Deprecated public Builder clearMetadata() {
    -        
             metadata_ = getDefaultInstance().getMetadata();
    +        bitField0_ = (bitField0_ & ~0x00000004);
             onChanged();
             return this;
           }
           /**
            * 
            * Metadata for deserializing this object.
    +       *
            * Deprecated! At the time of deprecation, Keras was the only user of this
            * field, and its saving and loading code will be updated shortly.
            * Please save your application-specific metadata to a separate file.
    @@ -7433,27 +7508,13 @@ public org.tensorflow.proto.VersionDefOrBuilder getVersionOrBuilder() {
            */
           @java.lang.Deprecated public Builder setMetadataBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             metadata_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.SavedUserObject)
         }
    @@ -7513,6 +7574,7 @@ public interface SavedAssetOrBuilder extends
         /**
          * 
          * Index into `MetaGraphDef.asset_file_def[]` that describes the Asset.
    +     *
          * Only the field `AssetFileDef.filename` is used. Other fields, such as
          * `AssetFileDef.tensor_info`, MUST be ignored.
          * 
    @@ -7525,6 +7587,7 @@ public interface SavedAssetOrBuilder extends /** *
        * A SavedAsset points to an asset in the MetaGraph.
    +   *
        * When bound to a function this object evaluates to a tensor with the absolute
        * filename. Users should not depend on a particular part of the filename to
        * remain stable (e.g. basename could be changed).
    @@ -7533,36 +7596,33 @@ public interface SavedAssetOrBuilder extends
        * Protobuf type {@code tensorflow.SavedAsset}
        */
       public static final class SavedAsset extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.SavedAsset)
           SavedAssetOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        SavedAsset.class.getName());
    +    }
         // Use SavedAsset.newBuilder() to construct.
    -    private SavedAsset(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private SavedAsset(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private SavedAsset() {
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new SavedAsset();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedAsset_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedAsset_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -7570,10 +7630,11 @@ protected java.lang.Object newInstance(
         }
     
         public static final int ASSET_FILE_DEF_INDEX_FIELD_NUMBER = 1;
    -    private int assetFileDefIndex_;
    +    private int assetFileDefIndex_ = 0;
         /**
          * 
          * Index into `MetaGraphDef.asset_file_def[]` that describes the Asset.
    +     *
          * Only the field `AssetFileDef.filename` is used. Other fields, such as
          * `AssetFileDef.tensor_info`, MUST be ignored.
          * 
    @@ -7685,39 +7746,41 @@ public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset parseFr } public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -7737,13 +7800,14 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
          * A SavedAsset points to an asset in the MetaGraph.
    +     *
          * When bound to a function this object evaluates to a tensor with the absolute
          * filename. Users should not depend on a particular part of the filename to
          * remain stable (e.g. basename could be changed).
    @@ -7752,7 +7816,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.SavedAsset}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.SavedAsset)
             org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAssetOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -7761,7 +7825,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedAsset_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -7774,15 +7838,15 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             assetFileDefIndex_ = 0;
    -
             return this;
           }
     
    @@ -7809,43 +7873,18 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset build() {
           @java.lang.Override
           public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset buildPartial() {
             org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset result = new org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset(this);
    -        result.assetFileDefIndex_ = assetFileDefIndex_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.assetFileDefIndex_ = assetFileDefIndex_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.SavedObjectGraphOuterClass.SavedAsset) {
    @@ -7889,7 +7928,7 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     assetFileDefIndex_ = input.readInt32();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   default: {
    @@ -7907,11 +7946,13 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private int assetFileDefIndex_ ;
           /**
            * 
            * Index into `MetaGraphDef.asset_file_def[]` that describes the Asset.
    +       *
            * Only the field `AssetFileDef.filename` is used. Other fields, such as
            * `AssetFileDef.tensor_info`, MUST be ignored.
            * 
    @@ -7926,6 +7967,7 @@ public int getAssetFileDefIndex() { /** *
            * Index into `MetaGraphDef.asset_file_def[]` that describes the Asset.
    +       *
            * Only the field `AssetFileDef.filename` is used. Other fields, such as
            * `AssetFileDef.tensor_info`, MUST be ignored.
            * 
    @@ -7935,14 +7977,16 @@ public int getAssetFileDefIndex() { * @return This builder for chaining. */ public Builder setAssetFileDefIndex(int value) { - + assetFileDefIndex_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } /** *
            * Index into `MetaGraphDef.asset_file_def[]` that describes the Asset.
    +       *
            * Only the field `AssetFileDef.filename` is used. Other fields, such as
            * `AssetFileDef.tensor_info`, MUST be ignored.
            * 
    @@ -7951,23 +7995,11 @@ public Builder setAssetFileDefIndex(int value) { * @return This builder for chaining. */ public Builder clearAssetFileDefIndex() { - + bitField0_ = (bitField0_ & ~0x00000001); assetFileDefIndex_ = 0; onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.SavedAsset) } @@ -8072,45 +8104,46 @@ public interface SavedFunctionOrBuilder extends * Protobuf type {@code tensorflow.SavedFunction} */ public static final class SavedFunction extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.SavedFunction) SavedFunctionOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + SavedFunction.class.getName()); + } // Use SavedFunction.newBuilder() to construct. - private SavedFunction(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private SavedFunction(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private SavedFunction() { - concreteFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY; - } - - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new SavedFunction(); + concreteFunctions_ = + com.google.protobuf.LazyStringArrayList.emptyList(); } - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedFunction_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedFunction_fieldAccessorTable .ensureFieldAccessorsInitialized( org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction.class, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction.Builder.class); } + private int bitField0_; public static final int CONCRETE_FUNCTIONS_FIELD_NUMBER = 1; - private com.google.protobuf.LazyStringList concreteFunctions_; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList concreteFunctions_ = + com.google.protobuf.LazyStringArrayList.emptyList(); /** * repeated string concrete_functions = 1; * @return A list containing the concreteFunctions. @@ -8152,7 +8185,7 @@ public java.lang.String getConcreteFunctions(int index) { */ @java.lang.Override public boolean hasFunctionSpec() { - return functionSpec_ != null; + return ((bitField0_ & 0x00000001) != 0); } /** * .tensorflow.FunctionSpec function_spec = 2; @@ -8167,7 +8200,7 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec getFunctionS */ @java.lang.Override public org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpecOrBuilder getFunctionSpecOrBuilder() { - return getFunctionSpec(); + return functionSpec_ == null ? org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.getDefaultInstance() : functionSpec_; } private byte memoizedIsInitialized = -1; @@ -8185,9 +8218,9 @@ public final boolean isInitialized() { public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { for (int i = 0; i < concreteFunctions_.size(); i++) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, concreteFunctions_.getRaw(i)); + com.google.protobuf.GeneratedMessage.writeString(output, 1, concreteFunctions_.getRaw(i)); } - if (functionSpec_ != null) { + if (((bitField0_ & 0x00000001) != 0)) { output.writeMessage(2, getFunctionSpec()); } getUnknownFields().writeTo(output); @@ -8207,7 +8240,7 @@ public int getSerializedSize() { size += dataSize; size += 1 * getConcreteFunctionsList().size(); } - if (functionSpec_ != null) { + if (((bitField0_ & 0x00000001) != 0)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(2, getFunctionSpec()); } @@ -8291,39 +8324,41 @@ public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction pars } public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -8343,7 +8378,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -8355,7 +8390,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.SavedFunction} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.SavedFunction) org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunctionOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -8364,7 +8399,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedFunction_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -8373,23 +8408,29 @@ public static final class Builder extends // Construct using org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction.newBuilder() private Builder() { - + maybeForceBuilderInitialization(); } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); - + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage + .alwaysUseFieldBuilders) { + getFunctionSpecFieldBuilder(); + } } @java.lang.Override public Builder clear() { super.clear(); - concreteFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY; - bitField0_ = (bitField0_ & ~0x00000001); - if (functionSpecBuilder_ == null) { - functionSpec_ = null; - } else { - functionSpec_ = null; + bitField0_ = 0; + concreteFunctions_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + functionSpec_ = null; + if (functionSpecBuilder_ != null) { + functionSpecBuilder_.dispose(); functionSpecBuilder_ = null; } return this; @@ -8418,53 +8459,27 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction build() { @java.lang.Override public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction buildPartial() { org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction result = new org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction(this); - int from_bitField0_ = bitField0_; - if (((bitField0_ & 0x00000001) != 0)) { - concreteFunctions_ = concreteFunctions_.getUnmodifiableView(); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.concreteFunctions_ = concreteFunctions_; - if (functionSpecBuilder_ == null) { - result.functionSpec_ = functionSpec_; - } else { - result.functionSpec_ = functionSpecBuilder_.build(); - } + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + concreteFunctions_.makeImmutable(); + result.concreteFunctions_ = concreteFunctions_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.functionSpec_ = functionSpecBuilder_ == null + ? functionSpec_ + : functionSpecBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFunction) { @@ -8480,7 +8495,7 @@ public Builder mergeFrom(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedFu if (!other.concreteFunctions_.isEmpty()) { if (concreteFunctions_.isEmpty()) { concreteFunctions_ = other.concreteFunctions_; - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ |= 0x00000001; } else { ensureConcreteFunctionsIsMutable(); concreteFunctions_.addAll(other.concreteFunctions_); @@ -8526,7 +8541,7 @@ public Builder mergeFrom( input.readMessage( getFunctionSpecFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000002; break; } // case 18 default: { @@ -8546,12 +8561,13 @@ public Builder mergeFrom( } private int bitField0_; - private com.google.protobuf.LazyStringList concreteFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY; + private com.google.protobuf.LazyStringArrayList concreteFunctions_ = + com.google.protobuf.LazyStringArrayList.emptyList(); private void ensureConcreteFunctionsIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { + if (!concreteFunctions_.isModifiable()) { concreteFunctions_ = new com.google.protobuf.LazyStringArrayList(concreteFunctions_); - bitField0_ |= 0x00000001; - } + } + bitField0_ |= 0x00000001; } /** * repeated string concrete_functions = 1; @@ -8559,7 +8575,8 @@ private void ensureConcreteFunctionsIsMutable() { */ public com.google.protobuf.ProtocolStringList getConcreteFunctionsList() { - return concreteFunctions_.getUnmodifiableView(); + concreteFunctions_.makeImmutable(); + return concreteFunctions_; } /** * repeated string concrete_functions = 1; @@ -8593,11 +8610,10 @@ public java.lang.String getConcreteFunctions(int index) { */ public Builder setConcreteFunctions( int index, java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureConcreteFunctionsIsMutable(); + if (value == null) { throw new NullPointerException(); } + ensureConcreteFunctionsIsMutable(); concreteFunctions_.set(index, value); + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -8608,11 +8624,10 @@ public Builder setConcreteFunctions( */ public Builder addConcreteFunctions( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureConcreteFunctionsIsMutable(); + if (value == null) { throw new NullPointerException(); } + ensureConcreteFunctionsIsMutable(); concreteFunctions_.add(value); + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -8626,6 +8641,7 @@ public Builder addAllConcreteFunctions( ensureConcreteFunctionsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, concreteFunctions_); + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -8634,8 +8650,9 @@ public Builder addAllConcreteFunctions( * @return This builder for chaining. */ public Builder clearConcreteFunctions() { - concreteFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY; - bitField0_ = (bitField0_ & ~0x00000001); + concreteFunctions_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001);; onChanged(); return this; } @@ -8646,25 +8663,24 @@ public Builder clearConcreteFunctions() { */ public Builder addConcreteFunctionsBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); ensureConcreteFunctionsIsMutable(); concreteFunctions_.add(value); + bitField0_ |= 0x00000001; onChanged(); return this; } private org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec functionSpec_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec, org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpecOrBuilder> functionSpecBuilder_; /** * .tensorflow.FunctionSpec function_spec = 2; * @return Whether the functionSpec field is set. */ public boolean hasFunctionSpec() { - return functionSpecBuilder_ != null || functionSpec_ != null; + return ((bitField0_ & 0x00000002) != 0); } /** * .tensorflow.FunctionSpec function_spec = 2; @@ -8686,11 +8702,11 @@ public Builder setFunctionSpec(org.tensorflow.proto.SavedObjectGraphOuterClass.F throw new NullPointerException(); } functionSpec_ = value; - onChanged(); } else { functionSpecBuilder_.setMessage(value); } - + bitField0_ |= 0x00000002; + onChanged(); return this; } /** @@ -8700,11 +8716,11 @@ public Builder setFunctionSpec( org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.Builder builderForValue) { if (functionSpecBuilder_ == null) { functionSpec_ = builderForValue.build(); - onChanged(); } else { functionSpecBuilder_.setMessage(builderForValue.build()); } - + bitField0_ |= 0x00000002; + onChanged(); return this; } /** @@ -8712,38 +8728,40 @@ public Builder setFunctionSpec( */ public Builder mergeFunctionSpec(org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec value) { if (functionSpecBuilder_ == null) { - if (functionSpec_ != null) { - functionSpec_ = - org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.newBuilder(functionSpec_).mergeFrom(value).buildPartial(); + if (((bitField0_ & 0x00000002) != 0) && + functionSpec_ != null && + functionSpec_ != org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.getDefaultInstance()) { + getFunctionSpecBuilder().mergeFrom(value); } else { functionSpec_ = value; } - onChanged(); } else { functionSpecBuilder_.mergeFrom(value); } - + if (functionSpec_ != null) { + bitField0_ |= 0x00000002; + onChanged(); + } return this; } /** * .tensorflow.FunctionSpec function_spec = 2; */ public Builder clearFunctionSpec() { - if (functionSpecBuilder_ == null) { - functionSpec_ = null; - onChanged(); - } else { - functionSpec_ = null; + bitField0_ = (bitField0_ & ~0x00000002); + functionSpec_ = null; + if (functionSpecBuilder_ != null) { + functionSpecBuilder_.dispose(); functionSpecBuilder_ = null; } - + onChanged(); return this; } /** * .tensorflow.FunctionSpec function_spec = 2; */ public org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.Builder getFunctionSpecBuilder() { - + bitField0_ |= 0x00000002; onChanged(); return getFunctionSpecFieldBuilder().getBuilder(); } @@ -8761,11 +8779,11 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpecOrBuilder get /** * .tensorflow.FunctionSpec function_spec = 2; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec, org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpecOrBuilder> getFunctionSpecFieldBuilder() { if (functionSpecBuilder_ == null) { - functionSpecBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + functionSpecBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec, org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpecOrBuilder>( getFunctionSpec(), getParentForChildren(), @@ -8774,18 +8792,6 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpecOrBuilder get } return functionSpecBuilder_; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.SavedFunction) } @@ -8886,12 +8892,21 @@ public interface CapturedTensorOrBuilder extends * Protobuf type {@code tensorflow.CapturedTensor} */ public static final class CapturedTensor extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.CapturedTensor) CapturedTensorOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + CapturedTensor.class.getName()); + } // Use CapturedTensor.newBuilder() to construct. - private CapturedTensor(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private CapturedTensor(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private CapturedTensor() { @@ -8899,25 +8914,13 @@ private CapturedTensor() { concreteFunction_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new CapturedTensor(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_CapturedTensor_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_CapturedTensor_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -8925,7 +8928,8 @@ protected java.lang.Object newInstance( } public static final int NAME_FIELD_NUMBER = 1; - private volatile java.lang.Object name_; + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; /** *
          * Name of captured tensor
    @@ -8971,7 +8975,8 @@ public java.lang.String getName() {
         }
     
         public static final int CONCRETE_FUNCTION_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object concreteFunction_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object concreteFunction_ = "";
         /**
          * 
          * Name of concrete function which contains the computed graph tensor.
    @@ -9030,11 +9035,11 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(concreteFunction_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, concreteFunction_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(concreteFunction_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, concreteFunction_);
           }
           getUnknownFields().writeTo(output);
         }
    @@ -9045,11 +9050,11 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(concreteFunction_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, concreteFunction_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(concreteFunction_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, concreteFunction_);
           }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
    @@ -9124,39 +9129,41 @@ public static org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor par
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -9176,7 +9183,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -9184,7 +9191,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.CapturedTensor}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.CapturedTensor)
             org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensorOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -9193,7 +9200,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_CapturedTensor_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -9206,17 +9213,16 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             name_ = "";
    -
             concreteFunction_ = "";
    -
             return this;
           }
     
    @@ -9243,44 +9249,21 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor build() {
           @java.lang.Override
           public org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor buildPartial() {
             org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor result = new org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor(this);
    -        result.name_ = name_;
    -        result.concreteFunction_ = concreteFunction_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.name_ = name_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.concreteFunction_ = concreteFunction_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor) {
    @@ -9295,10 +9278,12 @@ public Builder mergeFrom(org.tensorflow.proto.SavedObjectGraphOuterClass.Capture
             if (other == org.tensorflow.proto.SavedObjectGraphOuterClass.CapturedTensor.getDefaultInstance()) return this;
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (!other.getConcreteFunction().isEmpty()) {
               concreteFunction_ = other.concreteFunction_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             this.mergeUnknownFields(other.getUnknownFields());
    @@ -9329,12 +9314,12 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     concreteFunction_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   default: {
    @@ -9352,6 +9337,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private java.lang.Object name_ = "";
           /**
    @@ -9406,11 +9392,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -9423,8 +9407,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -9439,12 +9423,10 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -9502,11 +9484,9 @@ public java.lang.String getConcreteFunction() {
            */
           public Builder setConcreteFunction(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             concreteFunction_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -9519,8 +9499,8 @@ public Builder setConcreteFunction(
            * @return This builder for chaining.
            */
           public Builder clearConcreteFunction() {
    -        
             concreteFunction_ = getDefaultInstance().getConcreteFunction();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -9535,27 +9515,13 @@ public Builder clearConcreteFunction() {
            */
           public Builder setConcreteFunctionBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             concreteFunction_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.CapturedTensor)
         }
    @@ -9701,45 +9667,45 @@ public interface SavedConcreteFunctionOrBuilder extends
        * Protobuf type {@code tensorflow.SavedConcreteFunction}
        */
       public static final class SavedConcreteFunction extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.SavedConcreteFunction)
           SavedConcreteFunctionOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        SavedConcreteFunction.class.getName());
    +    }
         // Use SavedConcreteFunction.newBuilder() to construct.
    -    private SavedConcreteFunction(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private SavedConcreteFunction(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private SavedConcreteFunction() {
           boundInputs_ = emptyIntList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new SavedConcreteFunction();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedConcreteFunction_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedConcreteFunction_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
                   org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction.class, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction.Builder.class);
         }
     
    +    private int bitField0_;
         public static final int BOUND_INPUTS_FIELD_NUMBER = 2;
    -    private com.google.protobuf.Internal.IntList boundInputs_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.Internal.IntList boundInputs_ =
    +        emptyIntList();
         /**
          * repeated int32 bound_inputs = 2;
          * @return A list containing the boundInputs.
    @@ -9779,7 +9745,7 @@ public int getBoundInputs(int index) {
          */
         @java.lang.Override
         public boolean hasCanonicalizedInputSignature() {
    -      return canonicalizedInputSignature_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -9804,7 +9770,7 @@ public org.tensorflow.proto.Struct.StructuredValue getCanonicalizedInputSignatur
          */
         @java.lang.Override
         public org.tensorflow.proto.Struct.StructuredValueOrBuilder getCanonicalizedInputSignatureOrBuilder() {
    -      return getCanonicalizedInputSignature();
    +      return canonicalizedInputSignature_ == null ? org.tensorflow.proto.Struct.StructuredValue.getDefaultInstance() : canonicalizedInputSignature_;
         }
     
         public static final int OUTPUT_SIGNATURE_FIELD_NUMBER = 4;
    @@ -9821,7 +9787,7 @@ public org.tensorflow.proto.Struct.StructuredValueOrBuilder getCanonicalizedInpu
          */
         @java.lang.Override
         public boolean hasOutputSignature() {
    -      return outputSignature_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -9848,7 +9814,7 @@ public org.tensorflow.proto.Struct.StructuredValue getOutputSignature() {
          */
         @java.lang.Override
         public org.tensorflow.proto.Struct.StructuredValueOrBuilder getOutputSignatureOrBuilder() {
    -      return getOutputSignature();
    +      return outputSignature_ == null ? org.tensorflow.proto.Struct.StructuredValue.getDefaultInstance() : outputSignature_;
         }
     
         private byte memoizedIsInitialized = -1;
    @@ -9873,10 +9839,10 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           for (int i = 0; i < boundInputs_.size(); i++) {
             output.writeInt32NoTag(boundInputs_.getInt(i));
           }
    -      if (canonicalizedInputSignature_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(3, getCanonicalizedInputSignature());
           }
    -      if (outputSignature_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             output.writeMessage(4, getOutputSignature());
           }
           getUnknownFields().writeTo(output);
    @@ -9902,11 +9868,11 @@ public int getSerializedSize() {
             }
             boundInputsMemoizedSerializedSize = dataSize;
           }
    -      if (canonicalizedInputSignature_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(3, getCanonicalizedInputSignature());
           }
    -      if (outputSignature_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(4, getOutputSignature());
           }
    @@ -9999,39 +9965,41 @@ public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunct
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -10051,7 +10019,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -10064,7 +10032,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.SavedConcreteFunction}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.SavedConcreteFunction)
             org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunctionOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -10073,7 +10041,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedConcreteFunction_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -10082,29 +10050,34 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getCanonicalizedInputSignatureFieldBuilder();
    +          getOutputSignatureFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             boundInputs_ = emptyIntList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -        if (canonicalizedInputSignatureBuilder_ == null) {
    -          canonicalizedInputSignature_ = null;
    -        } else {
    -          canonicalizedInputSignature_ = null;
    +        canonicalizedInputSignature_ = null;
    +        if (canonicalizedInputSignatureBuilder_ != null) {
    +          canonicalizedInputSignatureBuilder_.dispose();
               canonicalizedInputSignatureBuilder_ = null;
             }
    -        if (outputSignatureBuilder_ == null) {
    -          outputSignature_ = null;
    -        } else {
    -          outputSignature_ = null;
    +        outputSignature_ = null;
    +        if (outputSignatureBuilder_ != null) {
    +          outputSignatureBuilder_.dispose();
               outputSignatureBuilder_ = null;
             }
             return this;
    @@ -10133,58 +10106,33 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction bui
           @java.lang.Override
           public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction buildPartial() {
             org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction result = new org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction(this);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartial0(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction result) {
             int from_bitField0_ = bitField0_;
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
               boundInputs_.makeImmutable();
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          result.boundInputs_ = boundInputs_;
             }
    -        result.boundInputs_ = boundInputs_;
    -        if (canonicalizedInputSignatureBuilder_ == null) {
    -          result.canonicalizedInputSignature_ = canonicalizedInputSignature_;
    -        } else {
    -          result.canonicalizedInputSignature_ = canonicalizedInputSignatureBuilder_.build();
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.canonicalizedInputSignature_ = canonicalizedInputSignatureBuilder_ == null
    +              ? canonicalizedInputSignature_
    +              : canonicalizedInputSignatureBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
             }
    -        if (outputSignatureBuilder_ == null) {
    -          result.outputSignature_ = outputSignature_;
    -        } else {
    -          result.outputSignature_ = outputSignatureBuilder_.build();
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.outputSignature_ = outputSignatureBuilder_ == null
    +              ? outputSignature_
    +              : outputSignatureBuilder_.build();
    +          to_bitField0_ |= 0x00000002;
             }
    -        onBuilt();
    -        return result;
    +        result.bitField0_ |= to_bitField0_;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    -      }
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConcreteFunction) {
    @@ -10200,7 +10148,8 @@ public Builder mergeFrom(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedCo
             if (!other.boundInputs_.isEmpty()) {
               if (boundInputs_.isEmpty()) {
                 boundInputs_ = other.boundInputs_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            boundInputs_.makeImmutable();
    +            bitField0_ |= 0x00000001;
               } else {
                 ensureBoundInputsIsMutable();
                 boundInputs_.addAll(other.boundInputs_);
    @@ -10259,14 +10208,14 @@ public Builder mergeFrom(
                     input.readMessage(
                         getCanonicalizedInputSignatureFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 26
                   case 34: {
                     input.readMessage(
                         getOutputSignatureFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 34
                   default: {
    @@ -10288,10 +10237,10 @@ public Builder mergeFrom(
     
           private com.google.protobuf.Internal.IntList boundInputs_ = emptyIntList();
           private void ensureBoundInputsIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    -          boundInputs_ = mutableCopy(boundInputs_);
    -          bitField0_ |= 0x00000001;
    -         }
    +        if (!boundInputs_.isModifiable()) {
    +          boundInputs_ = makeMutableCopy(boundInputs_);
    +        }
    +        bitField0_ |= 0x00000001;
           }
           /**
            * repeated int32 bound_inputs = 2;
    @@ -10299,8 +10248,8 @@ private void ensureBoundInputsIsMutable() {
            */
           public java.util.List
               getBoundInputsList() {
    -        return ((bitField0_ & 0x00000001) != 0) ?
    -                 java.util.Collections.unmodifiableList(boundInputs_) : boundInputs_;
    +        boundInputs_.makeImmutable();
    +        return boundInputs_;
           }
           /**
            * repeated int32 bound_inputs = 2;
    @@ -10325,8 +10274,10 @@ public int getBoundInputs(int index) {
            */
           public Builder setBoundInputs(
               int index, int value) {
    +
             ensureBoundInputsIsMutable();
             boundInputs_.setInt(index, value);
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -10336,8 +10287,10 @@ public Builder setBoundInputs(
            * @return This builder for chaining.
            */
           public Builder addBoundInputs(int value) {
    +
             ensureBoundInputsIsMutable();
             boundInputs_.addInt(value);
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -10351,6 +10304,7 @@ public Builder addAllBoundInputs(
             ensureBoundInputsIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, boundInputs_);
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -10366,7 +10320,7 @@ public Builder clearBoundInputs() {
           }
     
           private org.tensorflow.proto.Struct.StructuredValue canonicalizedInputSignature_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder> canonicalizedInputSignatureBuilder_;
           /**
            * 
    @@ -10378,7 +10332,7 @@ public Builder clearBoundInputs() {
            * @return Whether the canonicalizedInputSignature field is set.
            */
           public boolean hasCanonicalizedInputSignature() {
    -        return canonicalizedInputSignatureBuilder_ != null || canonicalizedInputSignature_ != null;
    +        return ((bitField0_ & 0x00000002) != 0);
           }
           /**
            * 
    @@ -10410,11 +10364,11 @@ public Builder setCanonicalizedInputSignature(org.tensorflow.proto.Struct.Struct
                 throw new NullPointerException();
               }
               canonicalizedInputSignature_ = value;
    -          onChanged();
             } else {
               canonicalizedInputSignatureBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -10429,11 +10383,11 @@ public Builder setCanonicalizedInputSignature(
               org.tensorflow.proto.Struct.StructuredValue.Builder builderForValue) {
             if (canonicalizedInputSignatureBuilder_ == null) {
               canonicalizedInputSignature_ = builderForValue.build();
    -          onChanged();
             } else {
               canonicalizedInputSignatureBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -10446,17 +10400,20 @@ public Builder setCanonicalizedInputSignature(
            */
           public Builder mergeCanonicalizedInputSignature(org.tensorflow.proto.Struct.StructuredValue value) {
             if (canonicalizedInputSignatureBuilder_ == null) {
    -          if (canonicalizedInputSignature_ != null) {
    -            canonicalizedInputSignature_ =
    -              org.tensorflow.proto.Struct.StructuredValue.newBuilder(canonicalizedInputSignature_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000002) != 0) &&
    +            canonicalizedInputSignature_ != null &&
    +            canonicalizedInputSignature_ != org.tensorflow.proto.Struct.StructuredValue.getDefaultInstance()) {
    +            getCanonicalizedInputSignatureBuilder().mergeFrom(value);
               } else {
                 canonicalizedInputSignature_ = value;
               }
    -          onChanged();
             } else {
               canonicalizedInputSignatureBuilder_.mergeFrom(value);
             }
    -
    +        if (canonicalizedInputSignature_ != null) {
    +          bitField0_ |= 0x00000002;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -10465,17 +10422,16 @@ public Builder mergeCanonicalizedInputSignature(org.tensorflow.proto.Struct.Stru
            * function.
            * 
    * - * .tensorflow.StructuredValue canonicalized_input_signature = 3; - */ - public Builder clearCanonicalizedInputSignature() { - if (canonicalizedInputSignatureBuilder_ == null) { - canonicalizedInputSignature_ = null; - onChanged(); - } else { - canonicalizedInputSignature_ = null; + * .tensorflow.StructuredValue canonicalized_input_signature = 3; + */ + public Builder clearCanonicalizedInputSignature() { + bitField0_ = (bitField0_ & ~0x00000002); + canonicalizedInputSignature_ = null; + if (canonicalizedInputSignatureBuilder_ != null) { + canonicalizedInputSignatureBuilder_.dispose(); canonicalizedInputSignatureBuilder_ = null; } - + onChanged(); return this; } /** @@ -10487,7 +10443,7 @@ public Builder clearCanonicalizedInputSignature() { * .tensorflow.StructuredValue canonicalized_input_signature = 3; */ public org.tensorflow.proto.Struct.StructuredValue.Builder getCanonicalizedInputSignatureBuilder() { - + bitField0_ |= 0x00000002; onChanged(); return getCanonicalizedInputSignatureFieldBuilder().getBuilder(); } @@ -10515,11 +10471,11 @@ public org.tensorflow.proto.Struct.StructuredValueOrBuilder getCanonicalizedInpu * * .tensorflow.StructuredValue canonicalized_input_signature = 3; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder> getCanonicalizedInputSignatureFieldBuilder() { if (canonicalizedInputSignatureBuilder_ == null) { - canonicalizedInputSignatureBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + canonicalizedInputSignatureBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder>( getCanonicalizedInputSignature(), getParentForChildren(), @@ -10530,7 +10486,7 @@ public org.tensorflow.proto.Struct.StructuredValueOrBuilder getCanonicalizedInpu } private org.tensorflow.proto.Struct.StructuredValue outputSignature_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder> outputSignatureBuilder_; /** *
    @@ -10543,7 +10499,7 @@ public org.tensorflow.proto.Struct.StructuredValueOrBuilder getCanonicalizedInpu
            * @return Whether the outputSignature field is set.
            */
           public boolean hasOutputSignature() {
    -        return outputSignatureBuilder_ != null || outputSignature_ != null;
    +        return ((bitField0_ & 0x00000004) != 0);
           }
           /**
            * 
    @@ -10577,11 +10533,11 @@ public Builder setOutputSignature(org.tensorflow.proto.Struct.StructuredValue va
                 throw new NullPointerException();
               }
               outputSignature_ = value;
    -          onChanged();
             } else {
               outputSignatureBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000004;
    +        onChanged();
             return this;
           }
           /**
    @@ -10597,11 +10553,11 @@ public Builder setOutputSignature(
               org.tensorflow.proto.Struct.StructuredValue.Builder builderForValue) {
             if (outputSignatureBuilder_ == null) {
               outputSignature_ = builderForValue.build();
    -          onChanged();
             } else {
               outputSignatureBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000004;
    +        onChanged();
             return this;
           }
           /**
    @@ -10615,17 +10571,20 @@ public Builder setOutputSignature(
            */
           public Builder mergeOutputSignature(org.tensorflow.proto.Struct.StructuredValue value) {
             if (outputSignatureBuilder_ == null) {
    -          if (outputSignature_ != null) {
    -            outputSignature_ =
    -              org.tensorflow.proto.Struct.StructuredValue.newBuilder(outputSignature_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000004) != 0) &&
    +            outputSignature_ != null &&
    +            outputSignature_ != org.tensorflow.proto.Struct.StructuredValue.getDefaultInstance()) {
    +            getOutputSignatureBuilder().mergeFrom(value);
               } else {
                 outputSignature_ = value;
               }
    -          onChanged();
             } else {
               outputSignatureBuilder_.mergeFrom(value);
             }
    -
    +        if (outputSignature_ != null) {
    +          bitField0_ |= 0x00000004;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -10638,14 +10597,13 @@ public Builder mergeOutputSignature(org.tensorflow.proto.Struct.StructuredValue
            * .tensorflow.StructuredValue output_signature = 4;
            */
           public Builder clearOutputSignature() {
    -        if (outputSignatureBuilder_ == null) {
    -          outputSignature_ = null;
    -          onChanged();
    -        } else {
    -          outputSignature_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000004);
    +        outputSignature_ = null;
    +        if (outputSignatureBuilder_ != null) {
    +          outputSignatureBuilder_.dispose();
               outputSignatureBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -10658,7 +10616,7 @@ public Builder clearOutputSignature() {
            * .tensorflow.StructuredValue output_signature = 4;
            */
           public org.tensorflow.proto.Struct.StructuredValue.Builder getOutputSignatureBuilder() {
    -        
    +        bitField0_ |= 0x00000004;
             onChanged();
             return getOutputSignatureFieldBuilder().getBuilder();
           }
    @@ -10688,11 +10646,11 @@ public org.tensorflow.proto.Struct.StructuredValueOrBuilder getOutputSignatureOr
            *
            * .tensorflow.StructuredValue output_signature = 4;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder> 
               getOutputSignatureFieldBuilder() {
             if (outputSignatureBuilder_ == null) {
    -          outputSignatureBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          outputSignatureBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder>(
                       getOutputSignature(),
                       getParentForChildren(),
    @@ -10701,18 +10659,6 @@ public org.tensorflow.proto.Struct.StructuredValueOrBuilder getOutputSignatureOr
             }
             return outputSignatureBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.SavedConcreteFunction)
         }
    @@ -10886,46 +10832,46 @@ public interface SavedBareConcreteFunctionOrBuilder extends
        * Protobuf type {@code tensorflow.SavedBareConcreteFunction}
        */
       public static final class SavedBareConcreteFunction extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.SavedBareConcreteFunction)
           SavedBareConcreteFunctionOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        SavedBareConcreteFunction.class.getName());
    +    }
         // Use SavedBareConcreteFunction.newBuilder() to construct.
    -    private SavedBareConcreteFunction(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private SavedBareConcreteFunction(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private SavedBareConcreteFunction() {
           concreteFunctionName_ = "";
    -      argumentKeywords_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -    }
    -
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new SavedBareConcreteFunction();
    +      argumentKeywords_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
         }
     
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedBareConcreteFunction_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedBareConcreteFunction_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
                   org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction.class, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction.Builder.class);
         }
     
    +    private int bitField0_;
         public static final int CONCRETE_FUNCTION_NAME_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object concreteFunctionName_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object concreteFunctionName_ = "";
         /**
          * 
          * Identifies a SavedConcreteFunction.
    @@ -10971,7 +10917,9 @@ public java.lang.String getConcreteFunctionName() {
         }
     
         public static final int ARGUMENT_KEYWORDS_FIELD_NUMBER = 2;
    -    private com.google.protobuf.LazyStringList argumentKeywords_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.LazyStringArrayList argumentKeywords_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         /**
          * 
          * A sequence of unique strings, one per Tensor argument.
    @@ -11022,7 +10970,7 @@ public java.lang.String getArgumentKeywords(int index) {
         }
     
         public static final int ALLOWED_POSITIONAL_ARGUMENTS_FIELD_NUMBER = 3;
    -    private long allowedPositionalArguments_;
    +    private long allowedPositionalArguments_ = 0L;
         /**
          * 
          * The prefix of `argument_keywords` which may be identified by position.
    @@ -11053,7 +11001,7 @@ public long getAllowedPositionalArguments() {
          */
         @java.lang.Override
         public boolean hasFunctionSpec() {
    -      return functionSpec_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -11086,7 +11034,7 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec getFunctionS
          */
         @java.lang.Override
         public org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpecOrBuilder getFunctionSpecOrBuilder() {
    -      return getFunctionSpec();
    +      return functionSpec_ == null ? org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.getDefaultInstance() : functionSpec_;
         }
     
         private byte memoizedIsInitialized = -1;
    @@ -11103,16 +11051,16 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(concreteFunctionName_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, concreteFunctionName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(concreteFunctionName_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, concreteFunctionName_);
           }
           for (int i = 0; i < argumentKeywords_.size(); i++) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, argumentKeywords_.getRaw(i));
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, argumentKeywords_.getRaw(i));
           }
           if (allowedPositionalArguments_ != 0L) {
             output.writeInt64(3, allowedPositionalArguments_);
           }
    -      if (functionSpec_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(4, getFunctionSpec());
           }
           getUnknownFields().writeTo(output);
    @@ -11124,8 +11072,8 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(concreteFunctionName_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, concreteFunctionName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(concreteFunctionName_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, concreteFunctionName_);
           }
           {
             int dataSize = 0;
    @@ -11139,7 +11087,7 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeInt64Size(3, allowedPositionalArguments_);
           }
    -      if (functionSpec_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(4, getFunctionSpec());
           }
    @@ -11232,39 +11180,41 @@ public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteF
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -11284,7 +11234,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -11292,7 +11242,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.SavedBareConcreteFunction}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.SavedBareConcreteFunction)
             org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunctionOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -11301,7 +11251,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedBareConcreteFunction_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -11310,27 +11260,31 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getFunctionSpecFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             concreteFunctionName_ = "";
    -
    -        argumentKeywords_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        argumentKeywords_ =
    +            com.google.protobuf.LazyStringArrayList.emptyList();
             allowedPositionalArguments_ = 0L;
    -
    -        if (functionSpecBuilder_ == null) {
    -          functionSpec_ = null;
    -        } else {
    -          functionSpec_ = null;
    +        functionSpec_ = null;
    +        if (functionSpecBuilder_ != null) {
    +          functionSpecBuilder_.dispose();
               functionSpecBuilder_ = null;
             }
             return this;
    @@ -11359,55 +11313,33 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction
           @java.lang.Override
           public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction buildPartial() {
             org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction result = new org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction(this);
    -        int from_bitField0_ = bitField0_;
    -        result.concreteFunctionName_ = concreteFunctionName_;
    -        if (((bitField0_ & 0x00000001) != 0)) {
    -          argumentKeywords_ = argumentKeywords_.getUnmodifiableView();
    -          bitField0_ = (bitField0_ & ~0x00000001);
    -        }
    -        result.argumentKeywords_ = argumentKeywords_;
    -        result.allowedPositionalArguments_ = allowedPositionalArguments_;
    -        if (functionSpecBuilder_ == null) {
    -          result.functionSpec_ = functionSpec_;
    -        } else {
    -          result.functionSpec_ = functionSpecBuilder_.build();
    -        }
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.concreteFunctionName_ = concreteFunctionName_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          argumentKeywords_.makeImmutable();
    +          result.argumentKeywords_ = argumentKeywords_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.allowedPositionalArguments_ = allowedPositionalArguments_;
    +        }
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.functionSpec_ = functionSpecBuilder_ == null
    +              ? functionSpec_
    +              : functionSpecBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction) {
    @@ -11422,12 +11354,13 @@ public Builder mergeFrom(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBa
             if (other == org.tensorflow.proto.SavedObjectGraphOuterClass.SavedBareConcreteFunction.getDefaultInstance()) return this;
             if (!other.getConcreteFunctionName().isEmpty()) {
               concreteFunctionName_ = other.concreteFunctionName_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (!other.argumentKeywords_.isEmpty()) {
               if (argumentKeywords_.isEmpty()) {
                 argumentKeywords_ = other.argumentKeywords_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ |= 0x00000002;
               } else {
                 ensureArgumentKeywordsIsMutable();
                 argumentKeywords_.addAll(other.argumentKeywords_);
    @@ -11468,7 +11401,7 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     concreteFunctionName_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
    @@ -11479,14 +11412,14 @@ public Builder mergeFrom(
                   } // case 18
                   case 24: {
                     allowedPositionalArguments_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 24
                   case 34: {
                     input.readMessage(
                         getFunctionSpecFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 34
                   default: {
    @@ -11559,11 +11492,9 @@ public java.lang.String getConcreteFunctionName() {
            */
           public Builder setConcreteFunctionName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             concreteFunctionName_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -11576,8 +11507,8 @@ public Builder setConcreteFunctionName(
            * @return This builder for chaining.
            */
           public Builder clearConcreteFunctionName() {
    -        
             concreteFunctionName_ = getDefaultInstance().getConcreteFunctionName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -11592,22 +11523,21 @@ public Builder clearConcreteFunctionName() {
            */
           public Builder setConcreteFunctionNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             concreteFunctionName_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
     
    -      private com.google.protobuf.LazyStringList argumentKeywords_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +      private com.google.protobuf.LazyStringArrayList argumentKeywords_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           private void ensureArgumentKeywordsIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    +        if (!argumentKeywords_.isModifiable()) {
               argumentKeywords_ = new com.google.protobuf.LazyStringArrayList(argumentKeywords_);
    -          bitField0_ |= 0x00000001;
    -         }
    +        }
    +        bitField0_ |= 0x00000002;
           }
           /**
            * 
    @@ -11619,7 +11549,8 @@ private void ensureArgumentKeywordsIsMutable() {
            */
           public com.google.protobuf.ProtocolStringList
               getArgumentKeywordsList() {
    -        return argumentKeywords_.getUnmodifiableView();
    +        argumentKeywords_.makeImmutable();
    +        return argumentKeywords_;
           }
           /**
            * 
    @@ -11669,11 +11600,10 @@ public java.lang.String getArgumentKeywords(int index) {
            */
           public Builder setArgumentKeywords(
               int index, java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureArgumentKeywordsIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureArgumentKeywordsIsMutable();
             argumentKeywords_.set(index, value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -11688,11 +11618,10 @@ public Builder setArgumentKeywords(
            */
           public Builder addArgumentKeywords(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureArgumentKeywordsIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureArgumentKeywordsIsMutable();
             argumentKeywords_.add(value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -11710,6 +11639,7 @@ public Builder addAllArgumentKeywords(
             ensureArgumentKeywordsIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, argumentKeywords_);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -11722,8 +11652,9 @@ public Builder addAllArgumentKeywords(
            * @return This builder for chaining.
            */
           public Builder clearArgumentKeywords() {
    -        argumentKeywords_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        argumentKeywords_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
    +        bitField0_ = (bitField0_ & ~0x00000002);;
             onChanged();
             return this;
           }
    @@ -11738,12 +11669,11 @@ public Builder clearArgumentKeywords() {
            */
           public Builder addArgumentKeywordsBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             ensureArgumentKeywordsIsMutable();
             argumentKeywords_.add(value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -11771,8 +11701,9 @@ public long getAllowedPositionalArguments() {
            * @return This builder for chaining.
            */
           public Builder setAllowedPositionalArguments(long value) {
    -        
    +
             allowedPositionalArguments_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -11785,14 +11716,14 @@ public Builder setAllowedPositionalArguments(long value) {
            * @return This builder for chaining.
            */
           public Builder clearAllowedPositionalArguments() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000004);
             allowedPositionalArguments_ = 0L;
             onChanged();
             return this;
           }
     
           private org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec functionSpec_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec, org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpecOrBuilder> functionSpecBuilder_;
           /**
            * 
    @@ -11808,7 +11739,7 @@ public Builder clearAllowedPositionalArguments() {
            * @return Whether the functionSpec field is set.
            */
           public boolean hasFunctionSpec() {
    -        return functionSpecBuilder_ != null || functionSpec_ != null;
    +        return ((bitField0_ & 0x00000008) != 0);
           }
           /**
            * 
    @@ -11848,11 +11779,11 @@ public Builder setFunctionSpec(org.tensorflow.proto.SavedObjectGraphOuterClass.F
                 throw new NullPointerException();
               }
               functionSpec_ = value;
    -          onChanged();
             } else {
               functionSpecBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000008;
    +        onChanged();
             return this;
           }
           /**
    @@ -11871,11 +11802,11 @@ public Builder setFunctionSpec(
               org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.Builder builderForValue) {
             if (functionSpecBuilder_ == null) {
               functionSpec_ = builderForValue.build();
    -          onChanged();
             } else {
               functionSpecBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000008;
    +        onChanged();
             return this;
           }
           /**
    @@ -11892,17 +11823,20 @@ public Builder setFunctionSpec(
            */
           public Builder mergeFunctionSpec(org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec value) {
             if (functionSpecBuilder_ == null) {
    -          if (functionSpec_ != null) {
    -            functionSpec_ =
    -              org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.newBuilder(functionSpec_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000008) != 0) &&
    +            functionSpec_ != null &&
    +            functionSpec_ != org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.getDefaultInstance()) {
    +            getFunctionSpecBuilder().mergeFrom(value);
               } else {
                 functionSpec_ = value;
               }
    -          onChanged();
             } else {
               functionSpecBuilder_.mergeFrom(value);
             }
    -
    +        if (functionSpec_ != null) {
    +          bitField0_ |= 0x00000008;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -11918,14 +11852,13 @@ public Builder mergeFunctionSpec(org.tensorflow.proto.SavedObjectGraphOuterClass
            * .tensorflow.FunctionSpec function_spec = 4;
            */
           public Builder clearFunctionSpec() {
    -        if (functionSpecBuilder_ == null) {
    -          functionSpec_ = null;
    -          onChanged();
    -        } else {
    -          functionSpec_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000008);
    +        functionSpec_ = null;
    +        if (functionSpecBuilder_ != null) {
    +          functionSpecBuilder_.dispose();
               functionSpecBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -11941,7 +11874,7 @@ public Builder clearFunctionSpec() {
            * .tensorflow.FunctionSpec function_spec = 4;
            */
           public org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.Builder getFunctionSpecBuilder() {
    -        
    +        bitField0_ |= 0x00000008;
             onChanged();
             return getFunctionSpecFieldBuilder().getBuilder();
           }
    @@ -11977,11 +11910,11 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpecOrBuilder get
            *
            * .tensorflow.FunctionSpec function_spec = 4;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec, org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpecOrBuilder> 
               getFunctionSpecFieldBuilder() {
             if (functionSpecBuilder_ == null) {
    -          functionSpecBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          functionSpecBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec, org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpecOrBuilder>(
                       getFunctionSpec(),
                       getParentForChildren(),
    @@ -11990,18 +11923,6 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpecOrBuilder get
             }
             return functionSpecBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.SavedBareConcreteFunction)
         }
    @@ -12082,37 +12003,34 @@ public interface SavedConstantOrBuilder extends
        * Protobuf type {@code tensorflow.SavedConstant}
        */
       public static final class SavedConstant extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.SavedConstant)
           SavedConstantOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        SavedConstant.class.getName());
    +    }
         // Use SavedConstant.newBuilder() to construct.
    -    private SavedConstant(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private SavedConstant(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private SavedConstant() {
           operation_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new SavedConstant();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedConstant_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedConstant_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -12120,7 +12038,8 @@ protected java.lang.Object newInstance(
         }
     
         public static final int OPERATION_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object operation_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object operation_ = "";
         /**
          * 
          * An Operation name for a ConstantOp in this SavedObjectGraph's MetaGraph.
    @@ -12179,8 +12098,8 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(operation_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, operation_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(operation_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, operation_);
           }
           getUnknownFields().writeTo(output);
         }
    @@ -12191,8 +12110,8 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(operation_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, operation_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(operation_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, operation_);
           }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
    @@ -12263,39 +12182,41 @@ public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant pars
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -12315,7 +12236,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -12323,7 +12244,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.SavedConstant}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.SavedConstant)
             org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstantOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -12332,7 +12253,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedConstant_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -12345,15 +12266,15 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             operation_ = "";
    -
             return this;
           }
     
    @@ -12380,43 +12301,18 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant build() {
           @java.lang.Override
           public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant buildPartial() {
             org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant result = new org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant(this);
    -        result.operation_ = operation_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.operation_ = operation_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant) {
    @@ -12431,6 +12327,7 @@ public Builder mergeFrom(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedCo
             if (other == org.tensorflow.proto.SavedObjectGraphOuterClass.SavedConstant.getDefaultInstance()) return this;
             if (!other.getOperation().isEmpty()) {
               operation_ = other.operation_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             this.mergeUnknownFields(other.getUnknownFields());
    @@ -12461,7 +12358,7 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     operation_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   default: {
    @@ -12479,6 +12376,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private java.lang.Object operation_ = "";
           /**
    @@ -12533,11 +12431,9 @@ public java.lang.String getOperation() {
            */
           public Builder setOperation(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             operation_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -12550,8 +12446,8 @@ public Builder setOperation(
            * @return This builder for chaining.
            */
           public Builder clearOperation() {
    -        
             operation_ = getDefaultInstance().getOperation();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -12566,27 +12462,13 @@ public Builder clearOperation() {
            */
           public Builder setOperationBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             operation_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.SavedConstant)
         }
    @@ -12724,8 +12606,10 @@ public interface SavedVariableOrBuilder extends
         /**
          * 
          * List of component variables for a distributed variable.
    +     *
          * When this field is non-empty, the SavedVariable will be assumed
          * to be a distributed variable defined by the components listed here.
    +     *
          * This is only supported by experimental loaders at the moment.
          * 
    * @@ -12736,8 +12620,10 @@ public interface SavedVariableOrBuilder extends /** *
          * List of component variables for a distributed variable.
    +     *
          * When this field is non-empty, the SavedVariable will be assumed
          * to be a distributed variable defined by the components listed here.
    +     *
          * This is only supported by experimental loaders at the moment.
          * 
    * @@ -12747,8 +12633,10 @@ public interface SavedVariableOrBuilder extends /** *
          * List of component variables for a distributed variable.
    +     *
          * When this field is non-empty, the SavedVariable will be assumed
          * to be a distributed variable defined by the components listed here.
    +     *
          * This is only supported by experimental loaders at the moment.
          * 
    * @@ -12758,8 +12646,10 @@ public interface SavedVariableOrBuilder extends /** *
          * List of component variables for a distributed variable.
    +     *
          * When this field is non-empty, the SavedVariable will be assumed
          * to be a distributed variable defined by the components listed here.
    +     *
          * This is only supported by experimental loaders at the moment.
          * 
    * @@ -12770,8 +12660,10 @@ public interface SavedVariableOrBuilder extends /** *
          * List of component variables for a distributed variable.
    +     *
          * When this field is non-empty, the SavedVariable will be assumed
          * to be a distributed variable defined by the components listed here.
    +     *
          * This is only supported by experimental loaders at the moment.
          * 
    * @@ -12789,12 +12681,21 @@ org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariableOrBuilder getExperi * Protobuf type {@code tensorflow.SavedVariable} */ public static final class SavedVariable extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.SavedVariable) SavedVariableOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + SavedVariable.class.getName()); + } // Use SavedVariable.newBuilder() to construct. - private SavedVariable(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private SavedVariable(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private SavedVariable() { @@ -12806,33 +12707,22 @@ private SavedVariable() { experimentalDistributedVariableComponents_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new SavedVariable(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedVariable_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedVariable_fieldAccessorTable .ensureFieldAccessorsInitialized( org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable.class, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable.Builder.class); } + private int bitField0_; public static final int DTYPE_FIELD_NUMBER = 1; - private int dtype_; + private int dtype_ = 0; /** * .tensorflow.DataType dtype = 1; * @return The enum numeric value on the wire for dtype. @@ -12845,8 +12735,7 @@ protected java.lang.Object newInstance( * @return The dtype. */ @java.lang.Override public org.tensorflow.proto.DataType getDtype() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_); + org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_); return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result; } @@ -12858,7 +12747,7 @@ protected java.lang.Object newInstance( */ @java.lang.Override public boolean hasShape() { - return shape_ != null; + return ((bitField0_ & 0x00000001) != 0); } /** * .tensorflow.TensorShapeProto shape = 2; @@ -12873,11 +12762,11 @@ public org.tensorflow.proto.TensorShapeProto getShape() { */ @java.lang.Override public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() { - return getShape(); + return shape_ == null ? org.tensorflow.proto.TensorShapeProto.getDefaultInstance() : shape_; } public static final int TRAINABLE_FIELD_NUMBER = 3; - private boolean trainable_; + private boolean trainable_ = false; /** * bool trainable = 3; * @return The trainable. @@ -12888,7 +12777,7 @@ public boolean getTrainable() { } public static final int SYNCHRONIZATION_FIELD_NUMBER = 4; - private int synchronization_; + private int synchronization_ = 0; /** * .tensorflow.VariableSynchronization synchronization = 4; * @return The enum numeric value on the wire for synchronization. @@ -12901,13 +12790,12 @@ public boolean getTrainable() { * @return The synchronization. */ @java.lang.Override public org.tensorflow.proto.VariableSynchronization getSynchronization() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.VariableSynchronization result = org.tensorflow.proto.VariableSynchronization.valueOf(synchronization_); + org.tensorflow.proto.VariableSynchronization result = org.tensorflow.proto.VariableSynchronization.forNumber(synchronization_); return result == null ? org.tensorflow.proto.VariableSynchronization.UNRECOGNIZED : result; } public static final int AGGREGATION_FIELD_NUMBER = 5; - private int aggregation_; + private int aggregation_ = 0; /** * .tensorflow.VariableAggregation aggregation = 5; * @return The enum numeric value on the wire for aggregation. @@ -12920,13 +12808,13 @@ public boolean getTrainable() { * @return The aggregation. */ @java.lang.Override public org.tensorflow.proto.VariableAggregation getAggregation() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.VariableAggregation result = org.tensorflow.proto.VariableAggregation.valueOf(aggregation_); + org.tensorflow.proto.VariableAggregation result = org.tensorflow.proto.VariableAggregation.forNumber(aggregation_); return result == null ? org.tensorflow.proto.VariableAggregation.UNRECOGNIZED : result; } public static final int NAME_FIELD_NUMBER = 6; - private volatile java.lang.Object name_; + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; /** * string name = 6; * @return The name. @@ -12964,7 +12852,8 @@ public java.lang.String getName() { } public static final int DEVICE_FIELD_NUMBER = 7; - private volatile java.lang.Object device_; + @SuppressWarnings("serial") + private volatile java.lang.Object device_ = ""; /** * string device = 7; * @return The device. @@ -13002,12 +12891,15 @@ public java.lang.String getDevice() { } public static final int EXPERIMENTAL_DISTRIBUTED_VARIABLE_COMPONENTS_FIELD_NUMBER = 8; + @SuppressWarnings("serial") private java.util.List experimentalDistributedVariableComponents_; /** *
          * List of component variables for a distributed variable.
    +     *
          * When this field is non-empty, the SavedVariable will be assumed
          * to be a distributed variable defined by the components listed here.
    +     *
          * This is only supported by experimental loaders at the moment.
          * 
    * @@ -13020,8 +12912,10 @@ public java.util.List * List of component variables for a distributed variable. + * * When this field is non-empty, the SavedVariable will be assumed * to be a distributed variable defined by the components listed here. + * * This is only supported by experimental loaders at the moment. *
    * @@ -13035,8 +12929,10 @@ public java.util.List * List of component variables for a distributed variable. + * * When this field is non-empty, the SavedVariable will be assumed * to be a distributed variable defined by the components listed here. + * * This is only supported by experimental loaders at the moment. *
    * @@ -13049,8 +12945,10 @@ public int getExperimentalDistributedVariableComponentsCount() { /** *
          * List of component variables for a distributed variable.
    +     *
          * When this field is non-empty, the SavedVariable will be assumed
          * to be a distributed variable defined by the components listed here.
    +     *
          * This is only supported by experimental loaders at the moment.
          * 
    * @@ -13063,8 +12961,10 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable getExperime /** *
          * List of component variables for a distributed variable.
    +     *
          * When this field is non-empty, the SavedVariable will be assumed
          * to be a distributed variable defined by the components listed here.
    +     *
          * This is only supported by experimental loaders at the moment.
          * 
    * @@ -13093,7 +12993,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (dtype_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) { output.writeEnum(1, dtype_); } - if (shape_ != null) { + if (((bitField0_ & 0x00000001) != 0)) { output.writeMessage(2, getShape()); } if (trainable_ != false) { @@ -13105,11 +13005,11 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (aggregation_ != org.tensorflow.proto.VariableAggregation.VARIABLE_AGGREGATION_NONE.getNumber()) { output.writeEnum(5, aggregation_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 6, name_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 6, name_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(device_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 7, device_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(device_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 7, device_); } for (int i = 0; i < experimentalDistributedVariableComponents_.size(); i++) { output.writeMessage(8, experimentalDistributedVariableComponents_.get(i)); @@ -13127,7 +13027,7 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeEnumSize(1, dtype_); } - if (shape_ != null) { + if (((bitField0_ & 0x00000001) != 0)) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(2, getShape()); } @@ -13143,11 +13043,11 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeEnumSize(5, aggregation_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, name_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(6, name_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(device_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, device_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(device_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(7, device_); } for (int i = 0; i < experimentalDistributedVariableComponents_.size(); i++) { size += com.google.protobuf.CodedOutputStream @@ -13255,39 +13155,41 @@ public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable pars } public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -13307,7 +13209,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -13320,7 +13222,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.SavedVariable} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.SavedVariable) org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariableOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -13329,7 +13231,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedVariable_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -13338,42 +13240,43 @@ public static final class Builder extends // Construct using org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable.newBuilder() private Builder() { - + maybeForceBuilderInitialization(); } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); - + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage + .alwaysUseFieldBuilders) { + getShapeFieldBuilder(); + getExperimentalDistributedVariableComponentsFieldBuilder(); + } } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; dtype_ = 0; - - if (shapeBuilder_ == null) { - shape_ = null; - } else { - shape_ = null; + shape_ = null; + if (shapeBuilder_ != null) { + shapeBuilder_.dispose(); shapeBuilder_ = null; } trainable_ = false; - synchronization_ = 0; - aggregation_ = 0; - name_ = ""; - device_ = ""; - if (experimentalDistributedVariableComponentsBuilder_ == null) { experimentalDistributedVariableComponents_ = java.util.Collections.emptyList(); } else { experimentalDistributedVariableComponents_ = null; experimentalDistributedVariableComponentsBuilder_.clear(); } - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000080); return this; } @@ -13400,63 +13303,54 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable build() { @java.lang.Override public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable buildPartial() { org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable result = new org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable(this); - int from_bitField0_ = bitField0_; - result.dtype_ = dtype_; - if (shapeBuilder_ == null) { - result.shape_ = shape_; - } else { - result.shape_ = shapeBuilder_.build(); - } - result.trainable_ = trainable_; - result.synchronization_ = synchronization_; - result.aggregation_ = aggregation_; - result.name_ = name_; - result.device_ = device_; + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable result) { if (experimentalDistributedVariableComponentsBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { + if (((bitField0_ & 0x00000080) != 0)) { experimentalDistributedVariableComponents_ = java.util.Collections.unmodifiableList(experimentalDistributedVariableComponents_); - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000080); } result.experimentalDistributedVariableComponents_ = experimentalDistributedVariableComponents_; } else { result.experimentalDistributedVariableComponents_ = experimentalDistributedVariableComponentsBuilder_.build(); } - onBuilt(); - return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.dtype_ = dtype_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.shape_ = shapeBuilder_ == null + ? shape_ + : shapeBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.trainable_ = trainable_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.synchronization_ = synchronization_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.aggregation_ = aggregation_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.device_ = device_; + } + result.bitField0_ |= to_bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable) { @@ -13486,17 +13380,19 @@ public Builder mergeFrom(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVa } if (!other.getName().isEmpty()) { name_ = other.name_; + bitField0_ |= 0x00000020; onChanged(); } if (!other.getDevice().isEmpty()) { device_ = other.device_; + bitField0_ |= 0x00000040; onChanged(); } if (experimentalDistributedVariableComponentsBuilder_ == null) { if (!other.experimentalDistributedVariableComponents_.isEmpty()) { if (experimentalDistributedVariableComponents_.isEmpty()) { experimentalDistributedVariableComponents_ = other.experimentalDistributedVariableComponents_; - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000080); } else { ensureExperimentalDistributedVariableComponentsIsMutable(); experimentalDistributedVariableComponents_.addAll(other.experimentalDistributedVariableComponents_); @@ -13509,9 +13405,9 @@ public Builder mergeFrom(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVa experimentalDistributedVariableComponentsBuilder_.dispose(); experimentalDistributedVariableComponentsBuilder_ = null; experimentalDistributedVariableComponents_ = other.experimentalDistributedVariableComponents_; - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000080); experimentalDistributedVariableComponentsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getExperimentalDistributedVariableComponentsFieldBuilder() : null; } else { experimentalDistributedVariableComponentsBuilder_.addAllMessages(other.experimentalDistributedVariableComponents_); @@ -13546,39 +13442,39 @@ public Builder mergeFrom( break; case 8: { dtype_ = input.readEnum(); - + bitField0_ |= 0x00000001; break; } // case 8 case 18: { input.readMessage( getShapeFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000002; break; } // case 18 case 24: { trainable_ = input.readBool(); - + bitField0_ |= 0x00000004; break; } // case 24 case 32: { synchronization_ = input.readEnum(); - + bitField0_ |= 0x00000008; break; } // case 32 case 40: { aggregation_ = input.readEnum(); - + bitField0_ |= 0x00000010; break; } // case 40 case 50: { name_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000020; break; } // case 50 case 58: { device_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000040; break; } // case 58 case 66: { @@ -13625,8 +13521,8 @@ public Builder mergeFrom( * @return This builder for chaining. */ public Builder setDtypeValue(int value) { - dtype_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -13636,8 +13532,7 @@ public Builder setDtypeValue(int value) { */ @java.lang.Override public org.tensorflow.proto.DataType getDtype() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_); + org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_); return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result; } /** @@ -13649,7 +13544,7 @@ public Builder setDtype(org.tensorflow.proto.DataType value) { if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00000001; dtype_ = value.getNumber(); onChanged(); return this; @@ -13659,21 +13554,21 @@ public Builder setDtype(org.tensorflow.proto.DataType value) { * @return This builder for chaining. */ public Builder clearDtype() { - + bitField0_ = (bitField0_ & ~0x00000001); dtype_ = 0; onChanged(); return this; } private org.tensorflow.proto.TensorShapeProto shape_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> shapeBuilder_; /** * .tensorflow.TensorShapeProto shape = 2; * @return Whether the shape field is set. */ public boolean hasShape() { - return shapeBuilder_ != null || shape_ != null; + return ((bitField0_ & 0x00000002) != 0); } /** * .tensorflow.TensorShapeProto shape = 2; @@ -13695,11 +13590,11 @@ public Builder setShape(org.tensorflow.proto.TensorShapeProto value) { throw new NullPointerException(); } shape_ = value; - onChanged(); } else { shapeBuilder_.setMessage(value); } - + bitField0_ |= 0x00000002; + onChanged(); return this; } /** @@ -13709,11 +13604,11 @@ public Builder setShape( org.tensorflow.proto.TensorShapeProto.Builder builderForValue) { if (shapeBuilder_ == null) { shape_ = builderForValue.build(); - onChanged(); } else { shapeBuilder_.setMessage(builderForValue.build()); } - + bitField0_ |= 0x00000002; + onChanged(); return this; } /** @@ -13721,38 +13616,40 @@ public Builder setShape( */ public Builder mergeShape(org.tensorflow.proto.TensorShapeProto value) { if (shapeBuilder_ == null) { - if (shape_ != null) { - shape_ = - org.tensorflow.proto.TensorShapeProto.newBuilder(shape_).mergeFrom(value).buildPartial(); + if (((bitField0_ & 0x00000002) != 0) && + shape_ != null && + shape_ != org.tensorflow.proto.TensorShapeProto.getDefaultInstance()) { + getShapeBuilder().mergeFrom(value); } else { shape_ = value; } - onChanged(); } else { shapeBuilder_.mergeFrom(value); } - + if (shape_ != null) { + bitField0_ |= 0x00000002; + onChanged(); + } return this; } /** * .tensorflow.TensorShapeProto shape = 2; */ public Builder clearShape() { - if (shapeBuilder_ == null) { - shape_ = null; - onChanged(); - } else { - shape_ = null; + bitField0_ = (bitField0_ & ~0x00000002); + shape_ = null; + if (shapeBuilder_ != null) { + shapeBuilder_.dispose(); shapeBuilder_ = null; } - + onChanged(); return this; } /** * .tensorflow.TensorShapeProto shape = 2; */ public org.tensorflow.proto.TensorShapeProto.Builder getShapeBuilder() { - + bitField0_ |= 0x00000002; onChanged(); return getShapeFieldBuilder().getBuilder(); } @@ -13770,11 +13667,11 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() { /** * .tensorflow.TensorShapeProto shape = 2; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> getShapeFieldBuilder() { if (shapeBuilder_ == null) { - shapeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + shapeBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>( getShape(), getParentForChildren(), @@ -13799,8 +13696,9 @@ public boolean getTrainable() { * @return This builder for chaining. */ public Builder setTrainable(boolean value) { - + trainable_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -13809,7 +13707,7 @@ public Builder setTrainable(boolean value) { * @return This builder for chaining. */ public Builder clearTrainable() { - + bitField0_ = (bitField0_ & ~0x00000004); trainable_ = false; onChanged(); return this; @@ -13829,8 +13727,8 @@ public Builder clearTrainable() { * @return This builder for chaining. */ public Builder setSynchronizationValue(int value) { - synchronization_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -13840,8 +13738,7 @@ public Builder setSynchronizationValue(int value) { */ @java.lang.Override public org.tensorflow.proto.VariableSynchronization getSynchronization() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.VariableSynchronization result = org.tensorflow.proto.VariableSynchronization.valueOf(synchronization_); + org.tensorflow.proto.VariableSynchronization result = org.tensorflow.proto.VariableSynchronization.forNumber(synchronization_); return result == null ? org.tensorflow.proto.VariableSynchronization.UNRECOGNIZED : result; } /** @@ -13853,7 +13750,7 @@ public Builder setSynchronization(org.tensorflow.proto.VariableSynchronization v if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00000008; synchronization_ = value.getNumber(); onChanged(); return this; @@ -13863,7 +13760,7 @@ public Builder setSynchronization(org.tensorflow.proto.VariableSynchronization v * @return This builder for chaining. */ public Builder clearSynchronization() { - + bitField0_ = (bitField0_ & ~0x00000008); synchronization_ = 0; onChanged(); return this; @@ -13883,8 +13780,8 @@ public Builder clearSynchronization() { * @return This builder for chaining. */ public Builder setAggregationValue(int value) { - aggregation_ = value; + bitField0_ |= 0x00000010; onChanged(); return this; } @@ -13894,8 +13791,7 @@ public Builder setAggregationValue(int value) { */ @java.lang.Override public org.tensorflow.proto.VariableAggregation getAggregation() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.VariableAggregation result = org.tensorflow.proto.VariableAggregation.valueOf(aggregation_); + org.tensorflow.proto.VariableAggregation result = org.tensorflow.proto.VariableAggregation.forNumber(aggregation_); return result == null ? org.tensorflow.proto.VariableAggregation.UNRECOGNIZED : result; } /** @@ -13907,7 +13803,7 @@ public Builder setAggregation(org.tensorflow.proto.VariableAggregation value) { if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00000010; aggregation_ = value.getNumber(); onChanged(); return this; @@ -13917,7 +13813,7 @@ public Builder setAggregation(org.tensorflow.proto.VariableAggregation value) { * @return This builder for chaining. */ public Builder clearAggregation() { - + bitField0_ = (bitField0_ & ~0x00000010); aggregation_ = 0; onChanged(); return this; @@ -13964,11 +13860,9 @@ public java.lang.String getName() { */ public Builder setName( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } name_ = value; + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -13977,8 +13871,8 @@ public Builder setName( * @return This builder for chaining. */ public Builder clearName() { - name_ = getDefaultInstance().getName(); + bitField0_ = (bitField0_ & ~0x00000020); onChanged(); return this; } @@ -13989,12 +13883,10 @@ public Builder clearName() { */ public Builder setNameBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); name_ = value; + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -14040,11 +13932,9 @@ public java.lang.String getDevice() { */ public Builder setDevice( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } device_ = value; + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -14053,8 +13943,8 @@ public Builder setDevice( * @return This builder for chaining. */ public Builder clearDevice() { - device_ = getDefaultInstance().getDevice(); + bitField0_ = (bitField0_ & ~0x00000040); onChanged(); return this; } @@ -14065,12 +13955,10 @@ public Builder clearDevice() { */ public Builder setDeviceBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); device_ = value; + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -14078,20 +13966,22 @@ public Builder setDeviceBytes( private java.util.List experimentalDistributedVariableComponents_ = java.util.Collections.emptyList(); private void ensureExperimentalDistributedVariableComponentsIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { + if (!((bitField0_ & 0x00000080) != 0)) { experimentalDistributedVariableComponents_ = new java.util.ArrayList(experimentalDistributedVariableComponents_); - bitField0_ |= 0x00000001; + bitField0_ |= 0x00000080; } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariableOrBuilder> experimentalDistributedVariableComponentsBuilder_; /** *
            * List of component variables for a distributed variable.
    +       *
            * When this field is non-empty, the SavedVariable will be assumed
            * to be a distributed variable defined by the components listed here.
    +       *
            * This is only supported by experimental loaders at the moment.
            * 
    * @@ -14107,8 +13997,10 @@ public java.util.List * List of component variables for a distributed variable. + * * When this field is non-empty, the SavedVariable will be assumed * to be a distributed variable defined by the components listed here. + * * This is only supported by experimental loaders at the moment. *
    * @@ -14124,8 +14016,10 @@ public int getExperimentalDistributedVariableComponentsCount() { /** *
            * List of component variables for a distributed variable.
    +       *
            * When this field is non-empty, the SavedVariable will be assumed
            * to be a distributed variable defined by the components listed here.
    +       *
            * This is only supported by experimental loaders at the moment.
            * 
    * @@ -14141,8 +14035,10 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable getExperime /** *
            * List of component variables for a distributed variable.
    +       *
            * When this field is non-empty, the SavedVariable will be assumed
            * to be a distributed variable defined by the components listed here.
    +       *
            * This is only supported by experimental loaders at the moment.
            * 
    * @@ -14165,8 +14061,10 @@ public Builder setExperimentalDistributedVariableComponents( /** *
            * List of component variables for a distributed variable.
    +       *
            * When this field is non-empty, the SavedVariable will be assumed
            * to be a distributed variable defined by the components listed here.
    +       *
            * This is only supported by experimental loaders at the moment.
            * 
    * @@ -14186,8 +14084,10 @@ public Builder setExperimentalDistributedVariableComponents( /** *
            * List of component variables for a distributed variable.
    +       *
            * When this field is non-empty, the SavedVariable will be assumed
            * to be a distributed variable defined by the components listed here.
    +       *
            * This is only supported by experimental loaders at the moment.
            * 
    * @@ -14209,8 +14109,10 @@ public Builder addExperimentalDistributedVariableComponents(org.tensorflow.proto /** *
            * List of component variables for a distributed variable.
    +       *
            * When this field is non-empty, the SavedVariable will be assumed
            * to be a distributed variable defined by the components listed here.
    +       *
            * This is only supported by experimental loaders at the moment.
            * 
    * @@ -14233,8 +14135,10 @@ public Builder addExperimentalDistributedVariableComponents( /** *
            * List of component variables for a distributed variable.
    +       *
            * When this field is non-empty, the SavedVariable will be assumed
            * to be a distributed variable defined by the components listed here.
    +       *
            * This is only supported by experimental loaders at the moment.
            * 
    * @@ -14254,8 +14158,10 @@ public Builder addExperimentalDistributedVariableComponents( /** *
            * List of component variables for a distributed variable.
    +       *
            * When this field is non-empty, the SavedVariable will be assumed
            * to be a distributed variable defined by the components listed here.
    +       *
            * This is only supported by experimental loaders at the moment.
            * 
    * @@ -14275,8 +14181,10 @@ public Builder addExperimentalDistributedVariableComponents( /** *
            * List of component variables for a distributed variable.
    +       *
            * When this field is non-empty, the SavedVariable will be assumed
            * to be a distributed variable defined by the components listed here.
    +       *
            * This is only supported by experimental loaders at the moment.
            * 
    * @@ -14297,8 +14205,10 @@ public Builder addAllExperimentalDistributedVariableComponents( /** *
            * List of component variables for a distributed variable.
    +       *
            * When this field is non-empty, the SavedVariable will be assumed
            * to be a distributed variable defined by the components listed here.
    +       *
            * This is only supported by experimental loaders at the moment.
            * 
    * @@ -14307,7 +14217,7 @@ public Builder addAllExperimentalDistributedVariableComponents( public Builder clearExperimentalDistributedVariableComponents() { if (experimentalDistributedVariableComponentsBuilder_ == null) { experimentalDistributedVariableComponents_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ = (bitField0_ & ~0x00000080); onChanged(); } else { experimentalDistributedVariableComponentsBuilder_.clear(); @@ -14317,8 +14227,10 @@ public Builder clearExperimentalDistributedVariableComponents() { /** *
            * List of component variables for a distributed variable.
    +       *
            * When this field is non-empty, the SavedVariable will be assumed
            * to be a distributed variable defined by the components listed here.
    +       *
            * This is only supported by experimental loaders at the moment.
            * 
    * @@ -14337,8 +14249,10 @@ public Builder removeExperimentalDistributedVariableComponents(int index) { /** *
            * List of component variables for a distributed variable.
    +       *
            * When this field is non-empty, the SavedVariable will be assumed
            * to be a distributed variable defined by the components listed here.
    +       *
            * This is only supported by experimental loaders at the moment.
            * 
    * @@ -14351,8 +14265,10 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable.Builder get /** *
            * List of component variables for a distributed variable.
    +       *
            * When this field is non-empty, the SavedVariable will be assumed
            * to be a distributed variable defined by the components listed here.
    +       *
            * This is only supported by experimental loaders at the moment.
            * 
    * @@ -14368,8 +14284,10 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariableOrBuilder ge /** *
            * List of component variables for a distributed variable.
    +       *
            * When this field is non-empty, the SavedVariable will be assumed
            * to be a distributed variable defined by the components listed here.
    +       *
            * This is only supported by experimental loaders at the moment.
            * 
    * @@ -14386,8 +14304,10 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariableOrBuilder ge /** *
            * List of component variables for a distributed variable.
    +       *
            * When this field is non-empty, the SavedVariable will be assumed
            * to be a distributed variable defined by the components listed here.
    +       *
            * This is only supported by experimental loaders at the moment.
            * 
    * @@ -14400,8 +14320,10 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable.Builder add /** *
            * List of component variables for a distributed variable.
    +       *
            * When this field is non-empty, the SavedVariable will be assumed
            * to be a distributed variable defined by the components listed here.
    +       *
            * This is only supported by experimental loaders at the moment.
            * 
    * @@ -14415,8 +14337,10 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable.Builder add /** *
            * List of component variables for a distributed variable.
    +       *
            * When this field is non-empty, the SavedVariable will be assumed
            * to be a distributed variable defined by the components listed here.
    +       *
            * This is only supported by experimental loaders at the moment.
            * 
    * @@ -14426,32 +14350,20 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable.Builder add getExperimentalDistributedVariableComponentsBuilderList() { return getExperimentalDistributedVariableComponentsFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariableOrBuilder> getExperimentalDistributedVariableComponentsFieldBuilder() { if (experimentalDistributedVariableComponentsBuilder_ == null) { - experimentalDistributedVariableComponentsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + experimentalDistributedVariableComponentsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariable.Builder, org.tensorflow.proto.SavedObjectGraphOuterClass.SavedVariableOrBuilder>( experimentalDistributedVariableComponents_, - ((bitField0_ & 0x00000001) != 0), + ((bitField0_ & 0x00000080) != 0), getParentForChildren(), isClean()); experimentalDistributedVariableComponents_ = null; } return experimentalDistributedVariableComponentsBuilder_; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.SavedVariable) } @@ -14592,37 +14504,34 @@ public interface FunctionSpecOrBuilder extends * Protobuf type {@code tensorflow.FunctionSpec} */ public static final class FunctionSpec extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.FunctionSpec) FunctionSpecOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + FunctionSpec.class.getName()); + } // Use FunctionSpec.newBuilder() to construct. - private FunctionSpec(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private FunctionSpec(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private FunctionSpec() { jitCompile_ = 0; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new FunctionSpec(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_FunctionSpec_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_FunctionSpec_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -14632,10 +14541,12 @@ protected java.lang.Object newInstance( /** *
          * Whether the function should be compiled by XLA.
    +     *
          * The public interface to `tf.function` uses an optional boolean to
          * represent three distinct states for this field.  Unfortunately, proto3
          * removes the ability to explicitly check for the presence or absence of a
          * field, so we instead map to an enum.
    +     *
          * See `tf.function` for details.
          * 
    * @@ -14658,6 +14569,15 @@ public enum JitCompile UNRECOGNIZED(-1), ; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + JitCompile.class.getName()); + } /** * DEFAULT = 0; */ @@ -14755,6 +14675,7 @@ private JitCompile(int value) { // @@protoc_insertion_point(enum_scope:tensorflow.FunctionSpec.JitCompile) } + private int bitField0_; public static final int FULLARGSPEC_FIELD_NUMBER = 1; private org.tensorflow.proto.Struct.StructuredValue fullargspec_; /** @@ -14767,7 +14688,7 @@ private JitCompile(int value) { */ @java.lang.Override public boolean hasFullargspec() { - return fullargspec_ != null; + return ((bitField0_ & 0x00000001) != 0); } /** *
    @@ -14790,11 +14711,11 @@ public org.tensorflow.proto.Struct.StructuredValue getFullargspec() {
          */
         @java.lang.Override
         public org.tensorflow.proto.Struct.StructuredValueOrBuilder getFullargspecOrBuilder() {
    -      return getFullargspec();
    +      return fullargspec_ == null ? org.tensorflow.proto.Struct.StructuredValue.getDefaultInstance() : fullargspec_;
         }
     
         public static final int IS_METHOD_FIELD_NUMBER = 2;
    -    private boolean isMethod_;
    +    private boolean isMethod_ = false;
         /**
          * 
          * Whether this represents a class method.
    @@ -14820,7 +14741,7 @@ public boolean getIsMethod() {
          */
         @java.lang.Override
         public boolean hasInputSignature() {
    -      return inputSignature_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -14843,11 +14764,11 @@ public org.tensorflow.proto.Struct.StructuredValue getInputSignature() {
          */
         @java.lang.Override
         public org.tensorflow.proto.Struct.StructuredValueOrBuilder getInputSignatureOrBuilder() {
    -      return getInputSignature();
    +      return inputSignature_ == null ? org.tensorflow.proto.Struct.StructuredValue.getDefaultInstance() : inputSignature_;
         }
     
         public static final int JIT_COMPILE_FIELD_NUMBER = 6;
    -    private int jitCompile_;
    +    private int jitCompile_ = 0;
         /**
          * .tensorflow.FunctionSpec.JitCompile jit_compile = 6;
          * @return The enum numeric value on the wire for jitCompile.
    @@ -14860,8 +14781,7 @@ public org.tensorflow.proto.Struct.StructuredValueOrBuilder getInputSignatureOrB
          * @return The jitCompile.
          */
         @java.lang.Override public org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.JitCompile getJitCompile() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.JitCompile result = org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.JitCompile.valueOf(jitCompile_);
    +      org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.JitCompile result = org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.JitCompile.forNumber(jitCompile_);
           return result == null ? org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.JitCompile.UNRECOGNIZED : result;
         }
     
    @@ -14879,13 +14799,13 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (fullargspec_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(1, getFullargspec());
           }
           if (isMethod_ != false) {
             output.writeBool(2, isMethod_);
           }
    -      if (inputSignature_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             output.writeMessage(5, getInputSignature());
           }
           if (jitCompile_ != org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.JitCompile.DEFAULT.getNumber()) {
    @@ -14900,7 +14820,7 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (fullargspec_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(1, getFullargspec());
           }
    @@ -14908,7 +14828,7 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeBoolSize(2, isMethod_);
           }
    -      if (inputSignature_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(5, getInputSignature());
           }
    @@ -15007,39 +14927,41 @@ public static org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec parse
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -15059,7 +14981,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -15072,7 +14994,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.FunctionSpec}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.FunctionSpec)
             org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpecOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -15081,7 +15003,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_FunctionSpec_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -15090,33 +15012,37 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getFullargspecFieldBuilder();
    +          getInputSignatureFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    -        if (fullargspecBuilder_ == null) {
    -          fullargspec_ = null;
    -        } else {
    -          fullargspec_ = null;
    +        bitField0_ = 0;
    +        fullargspec_ = null;
    +        if (fullargspecBuilder_ != null) {
    +          fullargspecBuilder_.dispose();
               fullargspecBuilder_ = null;
             }
             isMethod_ = false;
    -
    -        if (inputSignatureBuilder_ == null) {
    -          inputSignature_ = null;
    -        } else {
    -          inputSignature_ = null;
    +        inputSignature_ = null;
    +        if (inputSignatureBuilder_ != null) {
    +          inputSignatureBuilder_.dispose();
               inputSignatureBuilder_ = null;
             }
             jitCompile_ = 0;
    -
             return this;
           }
     
    @@ -15143,54 +15069,35 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec build() {
           @java.lang.Override
           public org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec buildPartial() {
             org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec result = new org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec(this);
    -        if (fullargspecBuilder_ == null) {
    -          result.fullargspec_ = fullargspec_;
    -        } else {
    -          result.fullargspec_ = fullargspecBuilder_.build();
    -        }
    -        result.isMethod_ = isMethod_;
    -        if (inputSignatureBuilder_ == null) {
    -          result.inputSignature_ = inputSignature_;
    -        } else {
    -          result.inputSignature_ = inputSignatureBuilder_.build();
    -        }
    -        result.jitCompile_ = jitCompile_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec result) {
    +        int from_bitField0_ = bitField0_;
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.fullargspec_ = fullargspecBuilder_ == null
    +              ? fullargspec_
    +              : fullargspecBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.isMethod_ = isMethod_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.inputSignature_ = inputSignatureBuilder_ == null
    +              ? inputSignature_
    +              : inputSignatureBuilder_.build();
    +          to_bitField0_ |= 0x00000002;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.jitCompile_ = jitCompile_;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec) {
    @@ -15245,24 +15152,24 @@ public Builder mergeFrom(
                     input.readMessage(
                         getFullargspecFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 16: {
                     isMethod_ = input.readBool();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 16
                   case 42: {
                     input.readMessage(
                         getInputSignatureFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 42
                   case 48: {
                     jitCompile_ = input.readEnum();
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 48
                   default: {
    @@ -15280,9 +15187,10 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private org.tensorflow.proto.Struct.StructuredValue fullargspec_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder> fullargspecBuilder_;
           /**
            * 
    @@ -15293,7 +15201,7 @@ public Builder mergeFrom(
            * @return Whether the fullargspec field is set.
            */
           public boolean hasFullargspec() {
    -        return fullargspecBuilder_ != null || fullargspec_ != null;
    +        return ((bitField0_ & 0x00000001) != 0);
           }
           /**
            * 
    @@ -15323,11 +15231,11 @@ public Builder setFullargspec(org.tensorflow.proto.Struct.StructuredValue value)
                 throw new NullPointerException();
               }
               fullargspec_ = value;
    -          onChanged();
             } else {
               fullargspecBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000001;
    +        onChanged();
             return this;
           }
           /**
    @@ -15341,11 +15249,11 @@ public Builder setFullargspec(
               org.tensorflow.proto.Struct.StructuredValue.Builder builderForValue) {
             if (fullargspecBuilder_ == null) {
               fullargspec_ = builderForValue.build();
    -          onChanged();
             } else {
               fullargspecBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000001;
    +        onChanged();
             return this;
           }
           /**
    @@ -15357,17 +15265,20 @@ public Builder setFullargspec(
            */
           public Builder mergeFullargspec(org.tensorflow.proto.Struct.StructuredValue value) {
             if (fullargspecBuilder_ == null) {
    -          if (fullargspec_ != null) {
    -            fullargspec_ =
    -              org.tensorflow.proto.Struct.StructuredValue.newBuilder(fullargspec_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000001) != 0) &&
    +            fullargspec_ != null &&
    +            fullargspec_ != org.tensorflow.proto.Struct.StructuredValue.getDefaultInstance()) {
    +            getFullargspecBuilder().mergeFrom(value);
               } else {
                 fullargspec_ = value;
               }
    -          onChanged();
             } else {
               fullargspecBuilder_.mergeFrom(value);
             }
    -
    +        if (fullargspec_ != null) {
    +          bitField0_ |= 0x00000001;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -15378,14 +15289,13 @@ public Builder mergeFullargspec(org.tensorflow.proto.Struct.StructuredValue valu
            * .tensorflow.StructuredValue fullargspec = 1;
            */
           public Builder clearFullargspec() {
    -        if (fullargspecBuilder_ == null) {
    -          fullargspec_ = null;
    -          onChanged();
    -        } else {
    -          fullargspec_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000001);
    +        fullargspec_ = null;
    +        if (fullargspecBuilder_ != null) {
    +          fullargspecBuilder_.dispose();
               fullargspecBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -15396,7 +15306,7 @@ public Builder clearFullargspec() {
            * .tensorflow.StructuredValue fullargspec = 1;
            */
           public org.tensorflow.proto.Struct.StructuredValue.Builder getFullargspecBuilder() {
    -        
    +        bitField0_ |= 0x00000001;
             onChanged();
             return getFullargspecFieldBuilder().getBuilder();
           }
    @@ -15422,11 +15332,11 @@ public org.tensorflow.proto.Struct.StructuredValueOrBuilder getFullargspecOrBuil
            *
            * .tensorflow.StructuredValue fullargspec = 1;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder> 
               getFullargspecFieldBuilder() {
             if (fullargspecBuilder_ == null) {
    -          fullargspecBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          fullargspecBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder>(
                       getFullargspec(),
                       getParentForChildren(),
    @@ -15459,8 +15369,9 @@ public boolean getIsMethod() {
            * @return This builder for chaining.
            */
           public Builder setIsMethod(boolean value) {
    -        
    +
             isMethod_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -15473,14 +15384,14 @@ public Builder setIsMethod(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearIsMethod() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000002);
             isMethod_ = false;
             onChanged();
             return this;
           }
     
           private org.tensorflow.proto.Struct.StructuredValue inputSignature_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder> inputSignatureBuilder_;
           /**
            * 
    @@ -15491,7 +15402,7 @@ public Builder clearIsMethod() {
            * @return Whether the inputSignature field is set.
            */
           public boolean hasInputSignature() {
    -        return inputSignatureBuilder_ != null || inputSignature_ != null;
    +        return ((bitField0_ & 0x00000004) != 0);
           }
           /**
            * 
    @@ -15521,11 +15432,11 @@ public Builder setInputSignature(org.tensorflow.proto.Struct.StructuredValue val
                 throw new NullPointerException();
               }
               inputSignature_ = value;
    -          onChanged();
             } else {
               inputSignatureBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000004;
    +        onChanged();
             return this;
           }
           /**
    @@ -15539,11 +15450,11 @@ public Builder setInputSignature(
               org.tensorflow.proto.Struct.StructuredValue.Builder builderForValue) {
             if (inputSignatureBuilder_ == null) {
               inputSignature_ = builderForValue.build();
    -          onChanged();
             } else {
               inputSignatureBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000004;
    +        onChanged();
             return this;
           }
           /**
    @@ -15555,17 +15466,20 @@ public Builder setInputSignature(
            */
           public Builder mergeInputSignature(org.tensorflow.proto.Struct.StructuredValue value) {
             if (inputSignatureBuilder_ == null) {
    -          if (inputSignature_ != null) {
    -            inputSignature_ =
    -              org.tensorflow.proto.Struct.StructuredValue.newBuilder(inputSignature_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000004) != 0) &&
    +            inputSignature_ != null &&
    +            inputSignature_ != org.tensorflow.proto.Struct.StructuredValue.getDefaultInstance()) {
    +            getInputSignatureBuilder().mergeFrom(value);
               } else {
                 inputSignature_ = value;
               }
    -          onChanged();
             } else {
               inputSignatureBuilder_.mergeFrom(value);
             }
    -
    +        if (inputSignature_ != null) {
    +          bitField0_ |= 0x00000004;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -15576,14 +15490,13 @@ public Builder mergeInputSignature(org.tensorflow.proto.Struct.StructuredValue v
            * .tensorflow.StructuredValue input_signature = 5;
            */
           public Builder clearInputSignature() {
    -        if (inputSignatureBuilder_ == null) {
    -          inputSignature_ = null;
    -          onChanged();
    -        } else {
    -          inputSignature_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000004);
    +        inputSignature_ = null;
    +        if (inputSignatureBuilder_ != null) {
    +          inputSignatureBuilder_.dispose();
               inputSignatureBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -15594,7 +15507,7 @@ public Builder clearInputSignature() {
            * .tensorflow.StructuredValue input_signature = 5;
            */
           public org.tensorflow.proto.Struct.StructuredValue.Builder getInputSignatureBuilder() {
    -        
    +        bitField0_ |= 0x00000004;
             onChanged();
             return getInputSignatureFieldBuilder().getBuilder();
           }
    @@ -15620,11 +15533,11 @@ public org.tensorflow.proto.Struct.StructuredValueOrBuilder getInputSignatureOrB
            *
            * .tensorflow.StructuredValue input_signature = 5;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder> 
               getInputSignatureFieldBuilder() {
             if (inputSignatureBuilder_ == null) {
    -          inputSignatureBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          inputSignatureBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder>(
                       getInputSignature(),
                       getParentForChildren(),
    @@ -15648,8 +15561,8 @@ public org.tensorflow.proto.Struct.StructuredValueOrBuilder getInputSignatureOrB
            * @return This builder for chaining.
            */
           public Builder setJitCompileValue(int value) {
    -        
             jitCompile_ = value;
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -15659,8 +15572,7 @@ public Builder setJitCompileValue(int value) {
            */
           @java.lang.Override
           public org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.JitCompile getJitCompile() {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.JitCompile result = org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.JitCompile.valueOf(jitCompile_);
    +        org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.JitCompile result = org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.JitCompile.forNumber(jitCompile_);
             return result == null ? org.tensorflow.proto.SavedObjectGraphOuterClass.FunctionSpec.JitCompile.UNRECOGNIZED : result;
           }
           /**
    @@ -15672,7 +15584,7 @@ public Builder setJitCompile(org.tensorflow.proto.SavedObjectGraphOuterClass.Fun
             if (value == null) {
               throw new NullPointerException();
             }
    -        
    +        bitField0_ |= 0x00000008;
             jitCompile_ = value.getNumber();
             onChanged();
             return this;
    @@ -15682,23 +15594,11 @@ public Builder setJitCompile(org.tensorflow.proto.SavedObjectGraphOuterClass.Fun
            * @return This builder for chaining.
            */
           public Builder clearJitCompile() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000008);
             jitCompile_ = 0;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.FunctionSpec)
         }
    @@ -15789,37 +15689,34 @@ public interface SavedResourceOrBuilder extends
        * Protobuf type {@code tensorflow.SavedResource}
        */
       public static final class SavedResource extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.SavedResource)
           SavedResourceOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        SavedResource.class.getName());
    +    }
         // Use SavedResource.newBuilder() to construct.
    -    private SavedResource(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private SavedResource(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private SavedResource() {
           device_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new SavedResource();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedResource_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedResource_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -15827,7 +15724,8 @@ protected java.lang.Object newInstance(
         }
     
         public static final int DEVICE_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object device_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object device_ = "";
         /**
          * 
          * A device specification indicating a required placement for the resource
    @@ -15890,8 +15788,8 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(device_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, device_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(device_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, device_);
           }
           getUnknownFields().writeTo(output);
         }
    @@ -15902,8 +15800,8 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(device_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, device_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(device_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, device_);
           }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
    @@ -15974,39 +15872,41 @@ public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource pars
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -16026,7 +15926,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -16040,7 +15940,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.SavedResource}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.SavedResource)
             org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResourceOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -16049,7 +15949,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SavedResource_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -16062,15 +15962,15 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             device_ = "";
    -
             return this;
           }
     
    @@ -16097,43 +15997,18 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource build() {
           @java.lang.Override
           public org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource buildPartial() {
             org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource result = new org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource(this);
    -        result.device_ = device_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.device_ = device_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource) {
    @@ -16148,6 +16023,7 @@ public Builder mergeFrom(org.tensorflow.proto.SavedObjectGraphOuterClass.SavedRe
             if (other == org.tensorflow.proto.SavedObjectGraphOuterClass.SavedResource.getDefaultInstance()) return this;
             if (!other.getDevice().isEmpty()) {
               device_ = other.device_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             this.mergeUnknownFields(other.getUnknownFields());
    @@ -16178,7 +16054,7 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     device_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   default: {
    @@ -16196,6 +16072,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private java.lang.Object device_ = "";
           /**
    @@ -16256,11 +16133,9 @@ public java.lang.String getDevice() {
            */
           public Builder setDevice(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             device_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -16275,8 +16150,8 @@ public Builder setDevice(
            * @return This builder for chaining.
            */
           public Builder clearDevice() {
    -        
             device_ = getDefaultInstance().getDevice();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -16293,27 +16168,13 @@ public Builder clearDevice() {
            */
           public Builder setDeviceBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             device_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.SavedResource)
         }
    @@ -16391,36 +16252,33 @@ public interface SaveableObjectOrBuilder extends
        * Protobuf type {@code tensorflow.SaveableObject}
        */
       public static final class SaveableObject extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.SaveableObject)
           SaveableObjectOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        SaveableObject.class.getName());
    +    }
         // Use SaveableObject.newBuilder() to construct.
    -    private SaveableObject(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private SaveableObject(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private SaveableObject() {
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new SaveableObject();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SaveableObject_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SaveableObject_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -16428,7 +16286,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int SAVE_FUNCTION_FIELD_NUMBER = 2;
    -    private int saveFunction_;
    +    private int saveFunction_ = 0;
         /**
          * 
          * Node ids of concrete functions for saving and loading from a checkpoint.
    @@ -16444,7 +16302,7 @@ public int getSaveFunction() {
         }
     
         public static final int RESTORE_FUNCTION_FIELD_NUMBER = 3;
    -    private int restoreFunction_;
    +    private int restoreFunction_ = 0;
         /**
          * int32 restore_function = 3;
          * @return The restoreFunction.
    @@ -16564,39 +16422,41 @@ public static org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject par
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -16616,7 +16476,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -16624,7 +16484,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.SaveableObject}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.SaveableObject)
             org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObjectOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -16633,7 +16493,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.SavedObjectGraphOuterClass.internal_static_tensorflow_SaveableObject_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -16646,17 +16506,16 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             saveFunction_ = 0;
    -
             restoreFunction_ = 0;
    -
             return this;
           }
     
    @@ -16683,44 +16542,21 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject build() {
           @java.lang.Override
           public org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject buildPartial() {
             org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject result = new org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject(this);
    -        result.saveFunction_ = saveFunction_;
    -        result.restoreFunction_ = restoreFunction_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.saveFunction_ = saveFunction_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.restoreFunction_ = restoreFunction_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject) {
    @@ -16767,12 +16603,12 @@ public Builder mergeFrom(
                     break;
                   case 16: {
                     saveFunction_ = input.readInt32();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 16
                   case 24: {
                     restoreFunction_ = input.readInt32();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 24
                   default: {
    @@ -16790,6 +16626,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private int saveFunction_ ;
           /**
    @@ -16816,8 +16653,9 @@ public int getSaveFunction() {
            * @return This builder for chaining.
            */
           public Builder setSaveFunction(int value) {
    -        
    +
             saveFunction_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -16831,7 +16669,7 @@ public Builder setSaveFunction(int value) {
            * @return This builder for chaining.
            */
           public Builder clearSaveFunction() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             saveFunction_ = 0;
             onChanged();
             return this;
    @@ -16852,8 +16690,9 @@ public int getRestoreFunction() {
            * @return This builder for chaining.
            */
           public Builder setRestoreFunction(int value) {
    -        
    +
             restoreFunction_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -16862,23 +16701,11 @@ public Builder setRestoreFunction(int value) {
            * @return This builder for chaining.
            */
           public Builder clearRestoreFunction() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000002);
             restoreFunction_ = 0;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.SaveableObject)
         }
    @@ -16934,77 +16761,77 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject getDefault
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SavedObjectGraph_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SavedObjectGraph_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SavedObjectGraph_ConcreteFunctionsEntry_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SavedObjectGraph_ConcreteFunctionsEntry_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SavedObject_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SavedObject_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SavedObject_SaveableObjectsEntry_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SavedObject_SaveableObjectsEntry_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SavedUserObject_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SavedUserObject_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SavedAsset_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SavedAsset_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SavedFunction_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SavedFunction_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_CapturedTensor_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_CapturedTensor_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SavedConcreteFunction_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SavedConcreteFunction_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SavedBareConcreteFunction_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SavedBareConcreteFunction_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SavedConstant_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SavedConstant_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SavedVariable_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SavedVariable_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_FunctionSpec_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_FunctionSpec_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SavedResource_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SavedResource_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SaveableObject_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SaveableObject_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -17107,93 +16934,94 @@ public org.tensorflow.proto.SavedObjectGraphOuterClass.SaveableObject getDefault
         internal_static_tensorflow_SavedObjectGraph_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_SavedObjectGraph_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SavedObjectGraph_descriptor,
             new java.lang.String[] { "Nodes", "ConcreteFunctions", });
         internal_static_tensorflow_SavedObjectGraph_ConcreteFunctionsEntry_descriptor =
           internal_static_tensorflow_SavedObjectGraph_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_SavedObjectGraph_ConcreteFunctionsEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SavedObjectGraph_ConcreteFunctionsEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_SavedObject_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_SavedObject_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SavedObject_descriptor,
             new java.lang.String[] { "Children", "Dependencies", "SlotVariables", "UserObject", "Asset", "Function", "Variable", "BareConcreteFunction", "Constant", "Resource", "CapturedTensor", "SaveableObjects", "RegisteredName", "SerializedUserProto", "RegisteredSaver", "Kind", });
         internal_static_tensorflow_SavedObject_SaveableObjectsEntry_descriptor =
           internal_static_tensorflow_SavedObject_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_SavedObject_SaveableObjectsEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SavedObject_SaveableObjectsEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_SavedUserObject_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_SavedUserObject_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SavedUserObject_descriptor,
             new java.lang.String[] { "Identifier", "Version", "Metadata", });
         internal_static_tensorflow_SavedAsset_descriptor =
           getDescriptor().getMessageTypes().get(3);
         internal_static_tensorflow_SavedAsset_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SavedAsset_descriptor,
             new java.lang.String[] { "AssetFileDefIndex", });
         internal_static_tensorflow_SavedFunction_descriptor =
           getDescriptor().getMessageTypes().get(4);
         internal_static_tensorflow_SavedFunction_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SavedFunction_descriptor,
             new java.lang.String[] { "ConcreteFunctions", "FunctionSpec", });
         internal_static_tensorflow_CapturedTensor_descriptor =
           getDescriptor().getMessageTypes().get(5);
         internal_static_tensorflow_CapturedTensor_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_CapturedTensor_descriptor,
             new java.lang.String[] { "Name", "ConcreteFunction", });
         internal_static_tensorflow_SavedConcreteFunction_descriptor =
           getDescriptor().getMessageTypes().get(6);
         internal_static_tensorflow_SavedConcreteFunction_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SavedConcreteFunction_descriptor,
             new java.lang.String[] { "BoundInputs", "CanonicalizedInputSignature", "OutputSignature", });
         internal_static_tensorflow_SavedBareConcreteFunction_descriptor =
           getDescriptor().getMessageTypes().get(7);
         internal_static_tensorflow_SavedBareConcreteFunction_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SavedBareConcreteFunction_descriptor,
             new java.lang.String[] { "ConcreteFunctionName", "ArgumentKeywords", "AllowedPositionalArguments", "FunctionSpec", });
         internal_static_tensorflow_SavedConstant_descriptor =
           getDescriptor().getMessageTypes().get(8);
         internal_static_tensorflow_SavedConstant_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SavedConstant_descriptor,
             new java.lang.String[] { "Operation", });
         internal_static_tensorflow_SavedVariable_descriptor =
           getDescriptor().getMessageTypes().get(9);
         internal_static_tensorflow_SavedVariable_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SavedVariable_descriptor,
             new java.lang.String[] { "Dtype", "Shape", "Trainable", "Synchronization", "Aggregation", "Name", "Device", "ExperimentalDistributedVariableComponents", });
         internal_static_tensorflow_FunctionSpec_descriptor =
           getDescriptor().getMessageTypes().get(10);
         internal_static_tensorflow_FunctionSpec_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_FunctionSpec_descriptor,
             new java.lang.String[] { "Fullargspec", "IsMethod", "InputSignature", "JitCompile", });
         internal_static_tensorflow_SavedResource_descriptor =
           getDescriptor().getMessageTypes().get(11);
         internal_static_tensorflow_SavedResource_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SavedResource_descriptor,
             new java.lang.String[] { "Device", });
         internal_static_tensorflow_SaveableObject_descriptor =
           getDescriptor().getMessageTypes().get(12);
         internal_static_tensorflow_SaveableObject_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SaveableObject_descriptor,
             new java.lang.String[] { "SaveFunction", "RestoreFunction", });
    +    descriptor.resolveAllFeaturesImmutable();
         com.google.protobuf.AnyProto.getDescriptor();
         org.tensorflow.proto.TensorShapeProtos.getDescriptor();
         org.tensorflow.proto.TypesProtos.getDescriptor();
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedSlice.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedSlice.java
    index 3f346f5187d..f25165bb36a 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedSlice.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedSlice.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/saved_tensor_slice.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -12,45 +14,44 @@
      * Protobuf type {@code tensorflow.SavedSlice}
      */
     public final class SavedSlice extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.SavedSlice)
         SavedSliceOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      SavedSlice.class.getName());
    +  }
       // Use SavedSlice.newBuilder() to construct.
    -  private SavedSlice(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private SavedSlice(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private SavedSlice() {
         name_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new SavedSlice();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.SavedTensorSliceProtos.internal_static_tensorflow_SavedSlice_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.SavedTensorSliceProtos.internal_static_tensorflow_SavedSlice_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.SavedSlice.class, org.tensorflow.proto.SavedSlice.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object name_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object name_ = "";
       /**
        * 
        * Name of the tensor that this slice belongs to. This must be identical to
    @@ -110,7 +111,7 @@ public java.lang.String getName() {
        */
       @java.lang.Override
       public boolean hasSlice() {
    -    return slice_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -135,7 +136,7 @@ public org.tensorflow.proto.TensorSliceProto getSlice() {
        */
       @java.lang.Override
       public org.tensorflow.proto.TensorSliceProtoOrBuilder getSliceOrBuilder() {
    -    return getSlice();
    +    return slice_ == null ? org.tensorflow.proto.TensorSliceProto.getDefaultInstance() : slice_;
       }
     
       public static final int DATA_FIELD_NUMBER = 3;
    @@ -151,7 +152,7 @@ public org.tensorflow.proto.TensorSliceProtoOrBuilder getSliceOrBuilder() {
        */
       @java.lang.Override
       public boolean hasData() {
    -    return data_ != null;
    +    return ((bitField0_ & 0x00000002) != 0);
       }
       /**
        * 
    @@ -176,7 +177,7 @@ public org.tensorflow.proto.TensorProto getData() {
        */
       @java.lang.Override
       public org.tensorflow.proto.TensorProtoOrBuilder getDataOrBuilder() {
    -    return getData();
    +    return data_ == null ? org.tensorflow.proto.TensorProto.getDefaultInstance() : data_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -193,13 +194,13 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
         }
    -    if (slice_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(2, getSlice());
         }
    -    if (data_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           output.writeMessage(3, getData());
         }
         getUnknownFields().writeTo(output);
    @@ -211,14 +212,14 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
         }
    -    if (slice_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(2, getSlice());
         }
    -    if (data_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(3, getData());
         }
    @@ -309,39 +310,41 @@ public static org.tensorflow.proto.SavedSlice parseFrom(
       }
       public static org.tensorflow.proto.SavedSlice parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SavedSlice parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.SavedSlice parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.SavedSlice parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.SavedSlice parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SavedSlice parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -361,7 +364,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -374,7 +377,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.SavedSlice}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.SavedSlice)
           org.tensorflow.proto.SavedSliceOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -383,7 +386,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.SavedTensorSliceProtos.internal_static_tensorflow_SavedSlice_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -392,29 +395,34 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.SavedSlice.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getSliceFieldBuilder();
    +        getDataFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           name_ = "";
    -
    -      if (sliceBuilder_ == null) {
    -        slice_ = null;
    -      } else {
    -        slice_ = null;
    +      slice_ = null;
    +      if (sliceBuilder_ != null) {
    +        sliceBuilder_.dispose();
             sliceBuilder_ = null;
           }
    -      if (dataBuilder_ == null) {
    -        data_ = null;
    -      } else {
    -        data_ = null;
    +      data_ = null;
    +      if (dataBuilder_ != null) {
    +        dataBuilder_.dispose();
             dataBuilder_ = null;
           }
           return this;
    @@ -443,53 +451,32 @@ public org.tensorflow.proto.SavedSlice build() {
         @java.lang.Override
         public org.tensorflow.proto.SavedSlice buildPartial() {
           org.tensorflow.proto.SavedSlice result = new org.tensorflow.proto.SavedSlice(this);
    -      result.name_ = name_;
    -      if (sliceBuilder_ == null) {
    -        result.slice_ = slice_;
    -      } else {
    -        result.slice_ = sliceBuilder_.build();
    -      }
    -      if (dataBuilder_ == null) {
    -        result.data_ = data_;
    -      } else {
    -        result.data_ = dataBuilder_.build();
    -      }
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.SavedSlice result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.name_ = name_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.slice_ = sliceBuilder_ == null
    +            ? slice_
    +            : sliceBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.data_ = dataBuilder_ == null
    +            ? data_
    +            : dataBuilder_.build();
    +        to_bitField0_ |= 0x00000002;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.SavedSlice) {
    @@ -504,6 +491,7 @@ public Builder mergeFrom(org.tensorflow.proto.SavedSlice other) {
           if (other == org.tensorflow.proto.SavedSlice.getDefaultInstance()) return this;
           if (!other.getName().isEmpty()) {
             name_ = other.name_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (other.hasSlice()) {
    @@ -540,21 +528,21 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   name_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   input.readMessage(
                       getSliceFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
                   input.readMessage(
                       getDataFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 default: {
    @@ -572,6 +560,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object name_ = "";
         /**
    @@ -629,11 +618,9 @@ public java.lang.String getName() {
          */
         public Builder setName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -647,8 +634,8 @@ public Builder setName(
          * @return This builder for chaining.
          */
         public Builder clearName() {
    -      
           name_ = getDefaultInstance().getName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -664,18 +651,16 @@ public Builder clearName() {
          */
         public Builder setNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.TensorSliceProto slice_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorSliceProto, org.tensorflow.proto.TensorSliceProto.Builder, org.tensorflow.proto.TensorSliceProtoOrBuilder> sliceBuilder_;
         /**
          * 
    @@ -687,7 +672,7 @@ public Builder setNameBytes(
          * @return Whether the slice field is set.
          */
         public boolean hasSlice() {
    -      return sliceBuilder_ != null || slice_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -719,11 +704,11 @@ public Builder setSlice(org.tensorflow.proto.TensorSliceProto value) {
               throw new NullPointerException();
             }
             slice_ = value;
    -        onChanged();
           } else {
             sliceBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -738,11 +723,11 @@ public Builder setSlice(
             org.tensorflow.proto.TensorSliceProto.Builder builderForValue) {
           if (sliceBuilder_ == null) {
             slice_ = builderForValue.build();
    -        onChanged();
           } else {
             sliceBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -755,17 +740,20 @@ public Builder setSlice(
          */
         public Builder mergeSlice(org.tensorflow.proto.TensorSliceProto value) {
           if (sliceBuilder_ == null) {
    -        if (slice_ != null) {
    -          slice_ =
    -            org.tensorflow.proto.TensorSliceProto.newBuilder(slice_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000002) != 0) &&
    +          slice_ != null &&
    +          slice_ != org.tensorflow.proto.TensorSliceProto.getDefaultInstance()) {
    +          getSliceBuilder().mergeFrom(value);
             } else {
               slice_ = value;
             }
    -        onChanged();
           } else {
             sliceBuilder_.mergeFrom(value);
           }
    -
    +      if (slice_ != null) {
    +        bitField0_ |= 0x00000002;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -777,14 +765,13 @@ public Builder mergeSlice(org.tensorflow.proto.TensorSliceProto value) {
          * .tensorflow.TensorSliceProto slice = 2;
          */
         public Builder clearSlice() {
    -      if (sliceBuilder_ == null) {
    -        slice_ = null;
    -        onChanged();
    -      } else {
    -        slice_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      slice_ = null;
    +      if (sliceBuilder_ != null) {
    +        sliceBuilder_.dispose();
             sliceBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -796,7 +783,7 @@ public Builder clearSlice() {
          * .tensorflow.TensorSliceProto slice = 2;
          */
         public org.tensorflow.proto.TensorSliceProto.Builder getSliceBuilder() {
    -      
    +      bitField0_ |= 0x00000002;
           onChanged();
           return getSliceFieldBuilder().getBuilder();
         }
    @@ -824,11 +811,11 @@ public org.tensorflow.proto.TensorSliceProtoOrBuilder getSliceOrBuilder() {
          *
          * .tensorflow.TensorSliceProto slice = 2;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorSliceProto, org.tensorflow.proto.TensorSliceProto.Builder, org.tensorflow.proto.TensorSliceProtoOrBuilder> 
             getSliceFieldBuilder() {
           if (sliceBuilder_ == null) {
    -        sliceBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        sliceBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorSliceProto, org.tensorflow.proto.TensorSliceProto.Builder, org.tensorflow.proto.TensorSliceProtoOrBuilder>(
                     getSlice(),
                     getParentForChildren(),
    @@ -839,7 +826,7 @@ public org.tensorflow.proto.TensorSliceProtoOrBuilder getSliceOrBuilder() {
         }
     
         private org.tensorflow.proto.TensorProto data_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> dataBuilder_;
         /**
          * 
    @@ -851,7 +838,7 @@ public org.tensorflow.proto.TensorSliceProtoOrBuilder getSliceOrBuilder() {
          * @return Whether the data field is set.
          */
         public boolean hasData() {
    -      return dataBuilder_ != null || data_ != null;
    +      return ((bitField0_ & 0x00000004) != 0);
         }
         /**
          * 
    @@ -883,11 +870,11 @@ public Builder setData(org.tensorflow.proto.TensorProto value) {
               throw new NullPointerException();
             }
             data_ = value;
    -        onChanged();
           } else {
             dataBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -902,11 +889,11 @@ public Builder setData(
             org.tensorflow.proto.TensorProto.Builder builderForValue) {
           if (dataBuilder_ == null) {
             data_ = builderForValue.build();
    -        onChanged();
           } else {
             dataBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -919,17 +906,20 @@ public Builder setData(
          */
         public Builder mergeData(org.tensorflow.proto.TensorProto value) {
           if (dataBuilder_ == null) {
    -        if (data_ != null) {
    -          data_ =
    -            org.tensorflow.proto.TensorProto.newBuilder(data_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000004) != 0) &&
    +          data_ != null &&
    +          data_ != org.tensorflow.proto.TensorProto.getDefaultInstance()) {
    +          getDataBuilder().mergeFrom(value);
             } else {
               data_ = value;
             }
    -        onChanged();
           } else {
             dataBuilder_.mergeFrom(value);
           }
    -
    +      if (data_ != null) {
    +        bitField0_ |= 0x00000004;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -941,14 +931,13 @@ public Builder mergeData(org.tensorflow.proto.TensorProto value) {
          * .tensorflow.TensorProto data = 3;
          */
         public Builder clearData() {
    -      if (dataBuilder_ == null) {
    -        data_ = null;
    -        onChanged();
    -      } else {
    -        data_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000004);
    +      data_ = null;
    +      if (dataBuilder_ != null) {
    +        dataBuilder_.dispose();
             dataBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -960,7 +949,7 @@ public Builder clearData() {
          * .tensorflow.TensorProto data = 3;
          */
         public org.tensorflow.proto.TensorProto.Builder getDataBuilder() {
    -      
    +      bitField0_ |= 0x00000004;
           onChanged();
           return getDataFieldBuilder().getBuilder();
         }
    @@ -988,11 +977,11 @@ public org.tensorflow.proto.TensorProtoOrBuilder getDataOrBuilder() {
          *
          * .tensorflow.TensorProto data = 3;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> 
             getDataFieldBuilder() {
           if (dataBuilder_ == null) {
    -        dataBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        dataBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder>(
                     getData(),
                     getParentForChildren(),
    @@ -1001,18 +990,6 @@ public org.tensorflow.proto.TensorProtoOrBuilder getDataOrBuilder() {
           }
           return dataBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.SavedSlice)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedSliceMeta.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedSliceMeta.java
    index 11f292d63b5..6718d0c6493 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedSliceMeta.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedSliceMeta.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/saved_tensor_slice.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -12,12 +14,21 @@
      * Protobuf type {@code tensorflow.SavedSliceMeta}
      */
     public final class SavedSliceMeta extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.SavedSliceMeta)
         SavedSliceMetaOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      SavedSliceMeta.class.getName());
    +  }
       // Use SavedSliceMeta.newBuilder() to construct.
    -  private SavedSliceMeta(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private SavedSliceMeta(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private SavedSliceMeta() {
    @@ -26,33 +37,23 @@ private SavedSliceMeta() {
         slice_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new SavedSliceMeta();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.SavedTensorSliceProtos.internal_static_tensorflow_SavedSliceMeta_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.SavedTensorSliceProtos.internal_static_tensorflow_SavedSliceMeta_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.SavedSliceMeta.class, org.tensorflow.proto.SavedSliceMeta.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object name_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object name_ = "";
       /**
        * 
        * Name of the tensor.
    @@ -109,7 +110,7 @@ public java.lang.String getName() {
        */
       @java.lang.Override
       public boolean hasShape() {
    -    return shape_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -132,11 +133,11 @@ public org.tensorflow.proto.TensorShapeProto getShape() {
        */
       @java.lang.Override
       public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
    -    return getShape();
    +    return shape_ == null ? org.tensorflow.proto.TensorShapeProto.getDefaultInstance() : shape_;
       }
     
       public static final int TYPE_FIELD_NUMBER = 3;
    -  private int type_;
    +  private int type_ = 0;
       /**
        * 
        * Type of the tensor
    @@ -157,12 +158,12 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
        * @return The type.
        */
       @java.lang.Override public org.tensorflow.proto.DataType getType() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(type_);
    +    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(type_);
         return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
       }
     
       public static final int SLICE_FIELD_NUMBER = 4;
    +  @SuppressWarnings("serial")
       private java.util.List slice_;
       /**
        * 
    @@ -236,10 +237,10 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
         }
    -    if (shape_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(2, getShape());
         }
         if (type_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) {
    @@ -257,10 +258,10 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
         }
    -    if (shape_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(2, getShape());
         }
    @@ -359,39 +360,41 @@ public static org.tensorflow.proto.SavedSliceMeta parseFrom(
       }
       public static org.tensorflow.proto.SavedSliceMeta parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SavedSliceMeta parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.SavedSliceMeta parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.SavedSliceMeta parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.SavedSliceMeta parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SavedSliceMeta parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -411,7 +414,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -424,7 +427,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.SavedSliceMeta}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.SavedSliceMeta)
           org.tensorflow.proto.SavedSliceMetaOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -433,7 +436,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.SavedTensorSliceProtos.internal_static_tensorflow_SavedSliceMeta_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -442,34 +445,39 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.SavedSliceMeta.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getShapeFieldBuilder();
    +        getSliceFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           name_ = "";
    -
    -      if (shapeBuilder_ == null) {
    -        shape_ = null;
    -      } else {
    -        shape_ = null;
    +      shape_ = null;
    +      if (shapeBuilder_ != null) {
    +        shapeBuilder_.dispose();
             shapeBuilder_ = null;
           }
           type_ = 0;
    -
           if (sliceBuilder_ == null) {
             slice_ = java.util.Collections.emptyList();
           } else {
             slice_ = null;
             sliceBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000008);
           return this;
         }
     
    @@ -496,59 +504,42 @@ public org.tensorflow.proto.SavedSliceMeta build() {
         @java.lang.Override
         public org.tensorflow.proto.SavedSliceMeta buildPartial() {
           org.tensorflow.proto.SavedSliceMeta result = new org.tensorflow.proto.SavedSliceMeta(this);
    -      int from_bitField0_ = bitField0_;
    -      result.name_ = name_;
    -      if (shapeBuilder_ == null) {
    -        result.shape_ = shape_;
    -      } else {
    -        result.shape_ = shapeBuilder_.build();
    -      }
    -      result.type_ = type_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.SavedSliceMeta result) {
           if (sliceBuilder_ == null) {
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((bitField0_ & 0x00000008) != 0)) {
               slice_ = java.util.Collections.unmodifiableList(slice_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000008);
             }
             result.slice_ = slice_;
           } else {
             result.slice_ = sliceBuilder_.build();
           }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.SavedSliceMeta result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.name_ = name_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.shape_ = shapeBuilder_ == null
    +            ? shape_
    +            : shapeBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.type_ = type_;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.SavedSliceMeta) {
    @@ -563,6 +554,7 @@ public Builder mergeFrom(org.tensorflow.proto.SavedSliceMeta other) {
           if (other == org.tensorflow.proto.SavedSliceMeta.getDefaultInstance()) return this;
           if (!other.getName().isEmpty()) {
             name_ = other.name_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (other.hasShape()) {
    @@ -575,7 +567,7 @@ public Builder mergeFrom(org.tensorflow.proto.SavedSliceMeta other) {
             if (!other.slice_.isEmpty()) {
               if (slice_.isEmpty()) {
                 slice_ = other.slice_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000008);
               } else {
                 ensureSliceIsMutable();
                 slice_.addAll(other.slice_);
    @@ -588,9 +580,9 @@ public Builder mergeFrom(org.tensorflow.proto.SavedSliceMeta other) {
                 sliceBuilder_.dispose();
                 sliceBuilder_ = null;
                 slice_ = other.slice_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000008);
                 sliceBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getSliceFieldBuilder() : null;
               } else {
                 sliceBuilder_.addAllMessages(other.slice_);
    @@ -625,19 +617,19 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   name_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   input.readMessage(
                       getShapeFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 24: {
                   type_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 24
                 case 34: {
    @@ -723,11 +715,9 @@ public java.lang.String getName() {
          */
         public Builder setName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -740,8 +730,8 @@ public Builder setName(
          * @return This builder for chaining.
          */
         public Builder clearName() {
    -      
           name_ = getDefaultInstance().getName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -756,18 +746,16 @@ public Builder clearName() {
          */
         public Builder setNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           name_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.TensorShapeProto shape_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> shapeBuilder_;
         /**
          * 
    @@ -778,7 +766,7 @@ public Builder setNameBytes(
          * @return Whether the shape field is set.
          */
         public boolean hasShape() {
    -      return shapeBuilder_ != null || shape_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -808,11 +796,11 @@ public Builder setShape(org.tensorflow.proto.TensorShapeProto value) {
               throw new NullPointerException();
             }
             shape_ = value;
    -        onChanged();
           } else {
             shapeBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -826,11 +814,11 @@ public Builder setShape(
             org.tensorflow.proto.TensorShapeProto.Builder builderForValue) {
           if (shapeBuilder_ == null) {
             shape_ = builderForValue.build();
    -        onChanged();
           } else {
             shapeBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -842,17 +830,20 @@ public Builder setShape(
          */
         public Builder mergeShape(org.tensorflow.proto.TensorShapeProto value) {
           if (shapeBuilder_ == null) {
    -        if (shape_ != null) {
    -          shape_ =
    -            org.tensorflow.proto.TensorShapeProto.newBuilder(shape_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000002) != 0) &&
    +          shape_ != null &&
    +          shape_ != org.tensorflow.proto.TensorShapeProto.getDefaultInstance()) {
    +          getShapeBuilder().mergeFrom(value);
             } else {
               shape_ = value;
             }
    -        onChanged();
           } else {
             shapeBuilder_.mergeFrom(value);
           }
    -
    +      if (shape_ != null) {
    +        bitField0_ |= 0x00000002;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -863,14 +854,13 @@ public Builder mergeShape(org.tensorflow.proto.TensorShapeProto value) {
          * .tensorflow.TensorShapeProto shape = 2;
          */
         public Builder clearShape() {
    -      if (shapeBuilder_ == null) {
    -        shape_ = null;
    -        onChanged();
    -      } else {
    -        shape_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      shape_ = null;
    +      if (shapeBuilder_ != null) {
    +        shapeBuilder_.dispose();
             shapeBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -881,7 +871,7 @@ public Builder clearShape() {
          * .tensorflow.TensorShapeProto shape = 2;
          */
         public org.tensorflow.proto.TensorShapeProto.Builder getShapeBuilder() {
    -      
    +      bitField0_ |= 0x00000002;
           onChanged();
           return getShapeFieldBuilder().getBuilder();
         }
    @@ -907,11 +897,11 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
          *
          * .tensorflow.TensorShapeProto shape = 2;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> 
             getShapeFieldBuilder() {
           if (shapeBuilder_ == null) {
    -        shapeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        shapeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>(
                     getShape(),
                     getParentForChildren(),
    @@ -943,8 +933,8 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
          * @return This builder for chaining.
          */
         public Builder setTypeValue(int value) {
    -      
           type_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -958,8 +948,7 @@ public Builder setTypeValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.DataType getType() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(type_);
    +      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(type_);
           return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
         }
         /**
    @@ -975,7 +964,7 @@ public Builder setType(org.tensorflow.proto.DataType value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000004;
           type_ = value.getNumber();
           onChanged();
           return this;
    @@ -989,7 +978,7 @@ public Builder setType(org.tensorflow.proto.DataType value) {
          * @return This builder for chaining.
          */
         public Builder clearType() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           type_ = 0;
           onChanged();
           return this;
    @@ -998,13 +987,13 @@ public Builder clearType() {
         private java.util.List slice_ =
           java.util.Collections.emptyList();
         private void ensureSliceIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!((bitField0_ & 0x00000008) != 0)) {
             slice_ = new java.util.ArrayList(slice_);
    -        bitField0_ |= 0x00000001;
    +        bitField0_ |= 0x00000008;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.TensorSliceProto, org.tensorflow.proto.TensorSliceProto.Builder, org.tensorflow.proto.TensorSliceProtoOrBuilder> sliceBuilder_;
     
         /**
    @@ -1194,7 +1183,7 @@ public Builder addAllSlice(
         public Builder clearSlice() {
           if (sliceBuilder_ == null) {
             slice_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000008);
             onChanged();
           } else {
             sliceBuilder_.clear();
    @@ -1292,32 +1281,20 @@ public org.tensorflow.proto.TensorSliceProto.Builder addSliceBuilder(
              getSliceBuilderList() {
           return getSliceFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.TensorSliceProto, org.tensorflow.proto.TensorSliceProto.Builder, org.tensorflow.proto.TensorSliceProtoOrBuilder> 
             getSliceFieldBuilder() {
           if (sliceBuilder_ == null) {
    -        sliceBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        sliceBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.TensorSliceProto, org.tensorflow.proto.TensorSliceProto.Builder, org.tensorflow.proto.TensorSliceProtoOrBuilder>(
                     slice_,
    -                ((bitField0_ & 0x00000001) != 0),
    +                ((bitField0_ & 0x00000008) != 0),
                     getParentForChildren(),
                     isClean());
             slice_ = null;
           }
           return sliceBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.SavedSliceMeta)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedSliceMetaOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedSliceMetaOrBuilder.java
    index a42c77a3a54..b16e0be04c9 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedSliceMetaOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedSliceMetaOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/saved_tensor_slice.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedSliceOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedSliceOrBuilder.java
    index 414f5bef75b..0b485f9caca 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedSliceOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedSliceOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/saved_tensor_slice.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSliceMeta.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSliceMeta.java
    index 14751b8b480..ebe9c66228b 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSliceMeta.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSliceMeta.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/saved_tensor_slice.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -12,44 +14,43 @@
      * Protobuf type {@code tensorflow.SavedTensorSliceMeta}
      */
     public final class SavedTensorSliceMeta extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.SavedTensorSliceMeta)
         SavedTensorSliceMetaOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      SavedTensorSliceMeta.class.getName());
    +  }
       // Use SavedTensorSliceMeta.newBuilder() to construct.
    -  private SavedTensorSliceMeta(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private SavedTensorSliceMeta(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private SavedTensorSliceMeta() {
         tensor_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new SavedTensorSliceMeta();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.SavedTensorSliceProtos.internal_static_tensorflow_SavedTensorSliceMeta_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.SavedTensorSliceProtos.internal_static_tensorflow_SavedTensorSliceMeta_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.SavedTensorSliceMeta.class, org.tensorflow.proto.SavedTensorSliceMeta.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int TENSOR_FIELD_NUMBER = 1;
    +  @SuppressWarnings("serial")
       private java.util.List tensor_;
       /**
        * 
    @@ -122,7 +123,7 @@ public org.tensorflow.proto.SavedSliceMetaOrBuilder getTensorOrBuilder(
        */
       @java.lang.Override
       public boolean hasVersions() {
    -    return versions_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -147,7 +148,7 @@ public org.tensorflow.proto.VersionDef getVersions() {
        */
       @java.lang.Override
       public org.tensorflow.proto.VersionDefOrBuilder getVersionsOrBuilder() {
    -    return getVersions();
    +    return versions_ == null ? org.tensorflow.proto.VersionDef.getDefaultInstance() : versions_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -167,7 +168,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         for (int i = 0; i < tensor_.size(); i++) {
           output.writeMessage(1, tensor_.get(i));
         }
    -    if (versions_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(2, getVersions());
         }
         getUnknownFields().writeTo(output);
    @@ -183,7 +184,7 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(1, tensor_.get(i));
         }
    -    if (versions_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(2, getVersions());
         }
    @@ -267,39 +268,41 @@ public static org.tensorflow.proto.SavedTensorSliceMeta parseFrom(
       }
       public static org.tensorflow.proto.SavedTensorSliceMeta parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SavedTensorSliceMeta parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.SavedTensorSliceMeta parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.SavedTensorSliceMeta parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.SavedTensorSliceMeta parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SavedTensorSliceMeta parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -319,7 +322,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -332,7 +335,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.SavedTensorSliceMeta}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.SavedTensorSliceMeta)
           org.tensorflow.proto.SavedTensorSliceMetaOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -341,7 +344,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.SavedTensorSliceProtos.internal_static_tensorflow_SavedTensorSliceMeta_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -350,17 +353,25 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.SavedTensorSliceMeta.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getTensorFieldBuilder();
    +        getVersionsFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           if (tensorBuilder_ == null) {
             tensor_ = java.util.Collections.emptyList();
           } else {
    @@ -368,10 +379,9 @@ public Builder clear() {
             tensorBuilder_.clear();
           }
           bitField0_ = (bitField0_ & ~0x00000001);
    -      if (versionsBuilder_ == null) {
    -        versions_ = null;
    -      } else {
    -        versions_ = null;
    +      versions_ = null;
    +      if (versionsBuilder_ != null) {
    +        versionsBuilder_.dispose();
             versionsBuilder_ = null;
           }
           return this;
    @@ -400,7 +410,13 @@ public org.tensorflow.proto.SavedTensorSliceMeta build() {
         @java.lang.Override
         public org.tensorflow.proto.SavedTensorSliceMeta buildPartial() {
           org.tensorflow.proto.SavedTensorSliceMeta result = new org.tensorflow.proto.SavedTensorSliceMeta(this);
    -      int from_bitField0_ = bitField0_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.SavedTensorSliceMeta result) {
           if (tensorBuilder_ == null) {
             if (((bitField0_ & 0x00000001) != 0)) {
               tensor_ = java.util.Collections.unmodifiableList(tensor_);
    @@ -410,47 +426,20 @@ public org.tensorflow.proto.SavedTensorSliceMeta buildPartial() {
           } else {
             result.tensor_ = tensorBuilder_.build();
           }
    -      if (versionsBuilder_ == null) {
    -        result.versions_ = versions_;
    -      } else {
    -        result.versions_ = versionsBuilder_.build();
    -      }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.SavedTensorSliceMeta result) {
    +      int from_bitField0_ = bitField0_;
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.versions_ = versionsBuilder_ == null
    +            ? versions_
    +            : versionsBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.SavedTensorSliceMeta) {
    @@ -482,7 +471,7 @@ public Builder mergeFrom(org.tensorflow.proto.SavedTensorSliceMeta other) {
                 tensor_ = other.tensor_;
                 bitField0_ = (bitField0_ & ~0x00000001);
                 tensorBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getTensorFieldBuilder() : null;
               } else {
                 tensorBuilder_.addAllMessages(other.tensor_);
    @@ -535,7 +524,7 @@ public Builder mergeFrom(
                   input.readMessage(
                       getVersionsFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 default: {
    @@ -564,7 +553,7 @@ private void ensureTensorIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.SavedSliceMeta, org.tensorflow.proto.SavedSliceMeta.Builder, org.tensorflow.proto.SavedSliceMetaOrBuilder> tensorBuilder_;
     
         /**
    @@ -852,11 +841,11 @@ public org.tensorflow.proto.SavedSliceMeta.Builder addTensorBuilder(
              getTensorBuilderList() {
           return getTensorFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.SavedSliceMeta, org.tensorflow.proto.SavedSliceMeta.Builder, org.tensorflow.proto.SavedSliceMetaOrBuilder> 
             getTensorFieldBuilder() {
           if (tensorBuilder_ == null) {
    -        tensorBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        tensorBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.SavedSliceMeta, org.tensorflow.proto.SavedSliceMeta.Builder, org.tensorflow.proto.SavedSliceMetaOrBuilder>(
                     tensor_,
                     ((bitField0_ & 0x00000001) != 0),
    @@ -868,7 +857,7 @@ public org.tensorflow.proto.SavedSliceMeta.Builder addTensorBuilder(
         }
     
         private org.tensorflow.proto.VersionDef versions_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.VersionDef, org.tensorflow.proto.VersionDef.Builder, org.tensorflow.proto.VersionDefOrBuilder> versionsBuilder_;
         /**
          * 
    @@ -880,7 +869,7 @@ public org.tensorflow.proto.SavedSliceMeta.Builder addTensorBuilder(
          * @return Whether the versions field is set.
          */
         public boolean hasVersions() {
    -      return versionsBuilder_ != null || versions_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -912,11 +901,11 @@ public Builder setVersions(org.tensorflow.proto.VersionDef value) {
               throw new NullPointerException();
             }
             versions_ = value;
    -        onChanged();
           } else {
             versionsBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -931,11 +920,11 @@ public Builder setVersions(
             org.tensorflow.proto.VersionDef.Builder builderForValue) {
           if (versionsBuilder_ == null) {
             versions_ = builderForValue.build();
    -        onChanged();
           } else {
             versionsBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -948,17 +937,20 @@ public Builder setVersions(
          */
         public Builder mergeVersions(org.tensorflow.proto.VersionDef value) {
           if (versionsBuilder_ == null) {
    -        if (versions_ != null) {
    -          versions_ =
    -            org.tensorflow.proto.VersionDef.newBuilder(versions_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000002) != 0) &&
    +          versions_ != null &&
    +          versions_ != org.tensorflow.proto.VersionDef.getDefaultInstance()) {
    +          getVersionsBuilder().mergeFrom(value);
             } else {
               versions_ = value;
             }
    -        onChanged();
           } else {
             versionsBuilder_.mergeFrom(value);
           }
    -
    +      if (versions_ != null) {
    +        bitField0_ |= 0x00000002;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -970,14 +962,13 @@ public Builder mergeVersions(org.tensorflow.proto.VersionDef value) {
          * .tensorflow.VersionDef versions = 2;
          */
         public Builder clearVersions() {
    -      if (versionsBuilder_ == null) {
    -        versions_ = null;
    -        onChanged();
    -      } else {
    -        versions_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      versions_ = null;
    +      if (versionsBuilder_ != null) {
    +        versionsBuilder_.dispose();
             versionsBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -989,7 +980,7 @@ public Builder clearVersions() {
          * .tensorflow.VersionDef versions = 2;
          */
         public org.tensorflow.proto.VersionDef.Builder getVersionsBuilder() {
    -      
    +      bitField0_ |= 0x00000002;
           onChanged();
           return getVersionsFieldBuilder().getBuilder();
         }
    @@ -1017,11 +1008,11 @@ public org.tensorflow.proto.VersionDefOrBuilder getVersionsOrBuilder() {
          *
          * .tensorflow.VersionDef versions = 2;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.VersionDef, org.tensorflow.proto.VersionDef.Builder, org.tensorflow.proto.VersionDefOrBuilder> 
             getVersionsFieldBuilder() {
           if (versionsBuilder_ == null) {
    -        versionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        versionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.VersionDef, org.tensorflow.proto.VersionDef.Builder, org.tensorflow.proto.VersionDefOrBuilder>(
                     getVersions(),
                     getParentForChildren(),
    @@ -1030,18 +1021,6 @@ public org.tensorflow.proto.VersionDefOrBuilder getVersionsOrBuilder() {
           }
           return versionsBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.SavedTensorSliceMeta)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSliceMetaOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSliceMetaOrBuilder.java
    index e00e2fd2ae9..bb69dc63e26 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSliceMetaOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSliceMetaOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/saved_tensor_slice.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSliceProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSliceProtos.java
    index dc265ab518b..57c5be9c252 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSliceProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSliceProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/saved_tensor_slice.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class SavedTensorSliceProtos {
       private SavedTensorSliceProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      SavedTensorSliceProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,22 +28,22 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SavedSliceMeta_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SavedSliceMeta_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SavedTensorSliceMeta_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SavedTensorSliceMeta_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SavedSlice_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SavedSlice_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SavedTensorSlices_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SavedTensorSlices_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -77,27 +88,28 @@ public static void registerAllExtensions(
         internal_static_tensorflow_SavedSliceMeta_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_SavedSliceMeta_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SavedSliceMeta_descriptor,
             new java.lang.String[] { "Name", "Shape", "Type", "Slice", });
         internal_static_tensorflow_SavedTensorSliceMeta_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_SavedTensorSliceMeta_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SavedTensorSliceMeta_descriptor,
             new java.lang.String[] { "Tensor", "Versions", });
         internal_static_tensorflow_SavedSlice_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_SavedSlice_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SavedSlice_descriptor,
             new java.lang.String[] { "Name", "Slice", "Data", });
         internal_static_tensorflow_SavedTensorSlices_descriptor =
           getDescriptor().getMessageTypes().get(3);
         internal_static_tensorflow_SavedTensorSlices_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SavedTensorSlices_descriptor,
             new java.lang.String[] { "Meta", "Data", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.TensorShapeProtos.getDescriptor();
         org.tensorflow.proto.TensorSliceProtos.getDescriptor();
         org.tensorflow.proto.TensorProtos.getDescriptor();
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSlices.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSlices.java
    index 32d7d41a63c..73a6edbc8d1 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSlices.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSlices.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/saved_tensor_slice.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -12,42 +14,40 @@
      * Protobuf type {@code tensorflow.SavedTensorSlices}
      */
     public final class SavedTensorSlices extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.SavedTensorSlices)
         SavedTensorSlicesOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      SavedTensorSlices.class.getName());
    +  }
       // Use SavedTensorSlices.newBuilder() to construct.
    -  private SavedTensorSlices(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private SavedTensorSlices(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private SavedTensorSlices() {
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new SavedTensorSlices();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.SavedTensorSliceProtos.internal_static_tensorflow_SavedTensorSlices_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.SavedTensorSliceProtos.internal_static_tensorflow_SavedTensorSlices_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.SavedTensorSlices.class, org.tensorflow.proto.SavedTensorSlices.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int META_FIELD_NUMBER = 1;
       private org.tensorflow.proto.SavedTensorSliceMeta meta_;
       /**
    @@ -61,7 +61,7 @@ protected java.lang.Object newInstance(
        */
       @java.lang.Override
       public boolean hasMeta() {
    -    return meta_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -86,7 +86,7 @@ public org.tensorflow.proto.SavedTensorSliceMeta getMeta() {
        */
       @java.lang.Override
       public org.tensorflow.proto.SavedTensorSliceMetaOrBuilder getMetaOrBuilder() {
    -    return getMeta();
    +    return meta_ == null ? org.tensorflow.proto.SavedTensorSliceMeta.getDefaultInstance() : meta_;
       }
     
       public static final int DATA_FIELD_NUMBER = 2;
    @@ -101,7 +101,7 @@ public org.tensorflow.proto.SavedTensorSliceMetaOrBuilder getMetaOrBuilder() {
        */
       @java.lang.Override
       public boolean hasData() {
    -    return data_ != null;
    +    return ((bitField0_ & 0x00000002) != 0);
       }
       /**
        * 
    @@ -124,7 +124,7 @@ public org.tensorflow.proto.SavedSlice getData() {
        */
       @java.lang.Override
       public org.tensorflow.proto.SavedSliceOrBuilder getDataOrBuilder() {
    -    return getData();
    +    return data_ == null ? org.tensorflow.proto.SavedSlice.getDefaultInstance() : data_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -141,10 +141,10 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (meta_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(1, getMeta());
         }
    -    if (data_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           output.writeMessage(2, getData());
         }
         getUnknownFields().writeTo(output);
    @@ -156,11 +156,11 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (meta_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(1, getMeta());
         }
    -    if (data_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(2, getData());
         }
    @@ -247,39 +247,41 @@ public static org.tensorflow.proto.SavedTensorSlices parseFrom(
       }
       public static org.tensorflow.proto.SavedTensorSlices parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SavedTensorSlices parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.SavedTensorSlices parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.SavedTensorSlices parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.SavedTensorSlices parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SavedTensorSlices parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -299,7 +301,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -312,7 +314,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.SavedTensorSlices}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.SavedTensorSlices)
           org.tensorflow.proto.SavedTensorSlicesOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -321,7 +323,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.SavedTensorSliceProtos.internal_static_tensorflow_SavedTensorSlices_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -330,27 +332,33 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.SavedTensorSlices.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getMetaFieldBuilder();
    +        getDataFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    -      if (metaBuilder_ == null) {
    -        meta_ = null;
    -      } else {
    -        meta_ = null;
    +      bitField0_ = 0;
    +      meta_ = null;
    +      if (metaBuilder_ != null) {
    +        metaBuilder_.dispose();
             metaBuilder_ = null;
           }
    -      if (dataBuilder_ == null) {
    -        data_ = null;
    -      } else {
    -        data_ = null;
    +      data_ = null;
    +      if (dataBuilder_ != null) {
    +        dataBuilder_.dispose();
             dataBuilder_ = null;
           }
           return this;
    @@ -379,52 +387,29 @@ public org.tensorflow.proto.SavedTensorSlices build() {
         @java.lang.Override
         public org.tensorflow.proto.SavedTensorSlices buildPartial() {
           org.tensorflow.proto.SavedTensorSlices result = new org.tensorflow.proto.SavedTensorSlices(this);
    -      if (metaBuilder_ == null) {
    -        result.meta_ = meta_;
    -      } else {
    -        result.meta_ = metaBuilder_.build();
    -      }
    -      if (dataBuilder_ == null) {
    -        result.data_ = data_;
    -      } else {
    -        result.data_ = dataBuilder_.build();
    -      }
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.SavedTensorSlices result) {
    +      int from_bitField0_ = bitField0_;
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.meta_ = metaBuilder_ == null
    +            ? meta_
    +            : metaBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.data_ = dataBuilder_ == null
    +            ? data_
    +            : dataBuilder_.build();
    +        to_bitField0_ |= 0x00000002;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.SavedTensorSlices) {
    @@ -473,14 +458,14 @@ public Builder mergeFrom(
                   input.readMessage(
                       getMetaFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   input.readMessage(
                       getDataFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 default: {
    @@ -498,9 +483,10 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private org.tensorflow.proto.SavedTensorSliceMeta meta_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.SavedTensorSliceMeta, org.tensorflow.proto.SavedTensorSliceMeta.Builder, org.tensorflow.proto.SavedTensorSliceMetaOrBuilder> metaBuilder_;
         /**
          * 
    @@ -512,7 +498,7 @@ public Builder mergeFrom(
          * @return Whether the meta field is set.
          */
         public boolean hasMeta() {
    -      return metaBuilder_ != null || meta_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -544,11 +530,11 @@ public Builder setMeta(org.tensorflow.proto.SavedTensorSliceMeta value) {
               throw new NullPointerException();
             }
             meta_ = value;
    -        onChanged();
           } else {
             metaBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000001;
    +      onChanged();
           return this;
         }
         /**
    @@ -563,11 +549,11 @@ public Builder setMeta(
             org.tensorflow.proto.SavedTensorSliceMeta.Builder builderForValue) {
           if (metaBuilder_ == null) {
             meta_ = builderForValue.build();
    -        onChanged();
           } else {
             metaBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000001;
    +      onChanged();
           return this;
         }
         /**
    @@ -580,17 +566,20 @@ public Builder setMeta(
          */
         public Builder mergeMeta(org.tensorflow.proto.SavedTensorSliceMeta value) {
           if (metaBuilder_ == null) {
    -        if (meta_ != null) {
    -          meta_ =
    -            org.tensorflow.proto.SavedTensorSliceMeta.newBuilder(meta_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000001) != 0) &&
    +          meta_ != null &&
    +          meta_ != org.tensorflow.proto.SavedTensorSliceMeta.getDefaultInstance()) {
    +          getMetaBuilder().mergeFrom(value);
             } else {
               meta_ = value;
             }
    -        onChanged();
           } else {
             metaBuilder_.mergeFrom(value);
           }
    -
    +      if (meta_ != null) {
    +        bitField0_ |= 0x00000001;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -602,14 +591,13 @@ public Builder mergeMeta(org.tensorflow.proto.SavedTensorSliceMeta value) {
          * .tensorflow.SavedTensorSliceMeta meta = 1;
          */
         public Builder clearMeta() {
    -      if (metaBuilder_ == null) {
    -        meta_ = null;
    -        onChanged();
    -      } else {
    -        meta_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000001);
    +      meta_ = null;
    +      if (metaBuilder_ != null) {
    +        metaBuilder_.dispose();
             metaBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -621,7 +609,7 @@ public Builder clearMeta() {
          * .tensorflow.SavedTensorSliceMeta meta = 1;
          */
         public org.tensorflow.proto.SavedTensorSliceMeta.Builder getMetaBuilder() {
    -      
    +      bitField0_ |= 0x00000001;
           onChanged();
           return getMetaFieldBuilder().getBuilder();
         }
    @@ -649,11 +637,11 @@ public org.tensorflow.proto.SavedTensorSliceMetaOrBuilder getMetaOrBuilder() {
          *
          * .tensorflow.SavedTensorSliceMeta meta = 1;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.SavedTensorSliceMeta, org.tensorflow.proto.SavedTensorSliceMeta.Builder, org.tensorflow.proto.SavedTensorSliceMetaOrBuilder> 
             getMetaFieldBuilder() {
           if (metaBuilder_ == null) {
    -        metaBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        metaBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.SavedTensorSliceMeta, org.tensorflow.proto.SavedTensorSliceMeta.Builder, org.tensorflow.proto.SavedTensorSliceMetaOrBuilder>(
                     getMeta(),
                     getParentForChildren(),
    @@ -664,7 +652,7 @@ public org.tensorflow.proto.SavedTensorSliceMetaOrBuilder getMetaOrBuilder() {
         }
     
         private org.tensorflow.proto.SavedSlice data_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.SavedSlice, org.tensorflow.proto.SavedSlice.Builder, org.tensorflow.proto.SavedSliceOrBuilder> dataBuilder_;
         /**
          * 
    @@ -675,7 +663,7 @@ public org.tensorflow.proto.SavedTensorSliceMetaOrBuilder getMetaOrBuilder() {
          * @return Whether the data field is set.
          */
         public boolean hasData() {
    -      return dataBuilder_ != null || data_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -705,11 +693,11 @@ public Builder setData(org.tensorflow.proto.SavedSlice value) {
               throw new NullPointerException();
             }
             data_ = value;
    -        onChanged();
           } else {
             dataBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -723,11 +711,11 @@ public Builder setData(
             org.tensorflow.proto.SavedSlice.Builder builderForValue) {
           if (dataBuilder_ == null) {
             data_ = builderForValue.build();
    -        onChanged();
           } else {
             dataBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -739,17 +727,20 @@ public Builder setData(
          */
         public Builder mergeData(org.tensorflow.proto.SavedSlice value) {
           if (dataBuilder_ == null) {
    -        if (data_ != null) {
    -          data_ =
    -            org.tensorflow.proto.SavedSlice.newBuilder(data_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000002) != 0) &&
    +          data_ != null &&
    +          data_ != org.tensorflow.proto.SavedSlice.getDefaultInstance()) {
    +          getDataBuilder().mergeFrom(value);
             } else {
               data_ = value;
             }
    -        onChanged();
           } else {
             dataBuilder_.mergeFrom(value);
           }
    -
    +      if (data_ != null) {
    +        bitField0_ |= 0x00000002;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -760,14 +751,13 @@ public Builder mergeData(org.tensorflow.proto.SavedSlice value) {
          * .tensorflow.SavedSlice data = 2;
          */
         public Builder clearData() {
    -      if (dataBuilder_ == null) {
    -        data_ = null;
    -        onChanged();
    -      } else {
    -        data_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      data_ = null;
    +      if (dataBuilder_ != null) {
    +        dataBuilder_.dispose();
             dataBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -778,7 +768,7 @@ public Builder clearData() {
          * .tensorflow.SavedSlice data = 2;
          */
         public org.tensorflow.proto.SavedSlice.Builder getDataBuilder() {
    -      
    +      bitField0_ |= 0x00000002;
           onChanged();
           return getDataFieldBuilder().getBuilder();
         }
    @@ -804,11 +794,11 @@ public org.tensorflow.proto.SavedSliceOrBuilder getDataOrBuilder() {
          *
          * .tensorflow.SavedSlice data = 2;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.SavedSlice, org.tensorflow.proto.SavedSlice.Builder, org.tensorflow.proto.SavedSliceOrBuilder> 
             getDataFieldBuilder() {
           if (dataBuilder_ == null) {
    -        dataBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        dataBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.SavedSlice, org.tensorflow.proto.SavedSlice.Builder, org.tensorflow.proto.SavedSliceOrBuilder>(
                     getData(),
                     getParentForChildren(),
    @@ -817,18 +807,6 @@ public org.tensorflow.proto.SavedSliceOrBuilder getDataOrBuilder() {
           }
           return dataBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.SavedTensorSlices)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSlicesOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSlicesOrBuilder.java
    index 00604c4b783..b22a704bc31 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSlicesOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SavedTensorSlicesOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/saved_tensor_slice.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaverDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaverDef.java
    index 2975b8177e4..c7940c18c50 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaverDef.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaverDef.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/saver.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,12 +13,21 @@
      * Protobuf type {@code tensorflow.SaverDef}
      */
     public final class SaverDef extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.SaverDef)
         SaverDefOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      SaverDef.class.getName());
    +  }
       // Use SaverDef.newBuilder() to construct.
    -  private SaverDef(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private SaverDef(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private SaverDef() {
    @@ -26,25 +37,13 @@ private SaverDef() {
         version_ = 0;
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new SaverDef();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.SaverProtos.internal_static_tensorflow_SaverDef_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.SaverProtos.internal_static_tensorflow_SaverDef_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -90,6 +89,15 @@ public enum CheckpointFormatVersion
         UNRECOGNIZED(-1),
         ;
     
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        CheckpointFormatVersion.class.getName());
    +    }
         /**
          * 
          * Internal legacy format.
    @@ -200,7 +208,8 @@ private CheckpointFormatVersion(int value) {
       }
     
       public static final int FILENAME_TENSOR_NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object filenameTensorName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object filenameTensorName_ = "";
       /**
        * 
        * The name of the tensor in which to specify the filename when saving or
    @@ -248,7 +257,8 @@ public java.lang.String getFilenameTensorName() {
       }
     
       public static final int SAVE_TENSOR_NAME_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object saveTensorName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object saveTensorName_ = "";
       /**
        * 
        * The operation to run when saving a model checkpoint.
    @@ -294,7 +304,8 @@ public java.lang.String getSaveTensorName() {
       }
     
       public static final int RESTORE_OP_NAME_FIELD_NUMBER = 3;
    -  private volatile java.lang.Object restoreOpName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object restoreOpName_ = "";
       /**
        * 
        * The operation to run when restoring a model checkpoint.
    @@ -340,7 +351,7 @@ public java.lang.String getRestoreOpName() {
       }
     
       public static final int MAX_TO_KEEP_FIELD_NUMBER = 4;
    -  private int maxToKeep_;
    +  private int maxToKeep_ = 0;
       /**
        * 
        * Maximum number of checkpoints to keep.  If 0, no checkpoints are deleted.
    @@ -355,7 +366,7 @@ public int getMaxToKeep() {
       }
     
       public static final int SHARDED_FIELD_NUMBER = 5;
    -  private boolean sharded_;
    +  private boolean sharded_ = false;
       /**
        * 
        * Shard the save files, one per device that has Variable nodes.
    @@ -370,7 +381,7 @@ public boolean getSharded() {
       }
     
       public static final int KEEP_CHECKPOINT_EVERY_N_HOURS_FIELD_NUMBER = 6;
    -  private float keepCheckpointEveryNHours_;
    +  private float keepCheckpointEveryNHours_ = 0F;
       /**
        * 
        * How often to keep an additional checkpoint. If not specified, only the last
    @@ -388,7 +399,7 @@ public float getKeepCheckpointEveryNHours() {
       }
     
       public static final int VERSION_FIELD_NUMBER = 7;
    -  private int version_;
    +  private int version_ = 0;
       /**
        * .tensorflow.SaverDef.CheckpointFormatVersion version = 7;
        * @return The enum numeric value on the wire for version.
    @@ -401,8 +412,7 @@ public float getKeepCheckpointEveryNHours() {
        * @return The version.
        */
       @java.lang.Override public org.tensorflow.proto.SaverDef.CheckpointFormatVersion getVersion() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.SaverDef.CheckpointFormatVersion result = org.tensorflow.proto.SaverDef.CheckpointFormatVersion.valueOf(version_);
    +    org.tensorflow.proto.SaverDef.CheckpointFormatVersion result = org.tensorflow.proto.SaverDef.CheckpointFormatVersion.forNumber(version_);
         return result == null ? org.tensorflow.proto.SaverDef.CheckpointFormatVersion.UNRECOGNIZED : result;
       }
     
    @@ -420,14 +430,14 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filenameTensorName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, filenameTensorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filenameTensorName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, filenameTensorName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(saveTensorName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, saveTensorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(saveTensorName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, saveTensorName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(restoreOpName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, restoreOpName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(restoreOpName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, restoreOpName_);
         }
         if (maxToKeep_ != 0) {
           output.writeInt32(4, maxToKeep_);
    @@ -450,14 +460,14 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filenameTensorName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, filenameTensorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filenameTensorName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, filenameTensorName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(saveTensorName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, saveTensorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(saveTensorName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, saveTensorName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(restoreOpName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, restoreOpName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(restoreOpName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, restoreOpName_);
         }
         if (maxToKeep_ != 0) {
           size += com.google.protobuf.CodedOutputStream
    @@ -570,39 +580,41 @@ public static org.tensorflow.proto.SaverDef parseFrom(
       }
       public static org.tensorflow.proto.SaverDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SaverDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.SaverDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.SaverDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.SaverDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SaverDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -622,7 +634,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -634,7 +646,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.SaverDef}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.SaverDef)
           org.tensorflow.proto.SaverDefOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -643,7 +655,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.SaverProtos.internal_static_tensorflow_SaverDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -656,27 +668,21 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           filenameTensorName_ = "";
    -
           saveTensorName_ = "";
    -
           restoreOpName_ = "";
    -
           maxToKeep_ = 0;
    -
           sharded_ = false;
    -
           keepCheckpointEveryNHours_ = 0F;
    -
           version_ = 0;
    -
           return this;
         }
     
    @@ -703,49 +709,36 @@ public org.tensorflow.proto.SaverDef build() {
         @java.lang.Override
         public org.tensorflow.proto.SaverDef buildPartial() {
           org.tensorflow.proto.SaverDef result = new org.tensorflow.proto.SaverDef(this);
    -      result.filenameTensorName_ = filenameTensorName_;
    -      result.saveTensorName_ = saveTensorName_;
    -      result.restoreOpName_ = restoreOpName_;
    -      result.maxToKeep_ = maxToKeep_;
    -      result.sharded_ = sharded_;
    -      result.keepCheckpointEveryNHours_ = keepCheckpointEveryNHours_;
    -      result.version_ = version_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.SaverDef result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.filenameTensorName_ = filenameTensorName_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.saveTensorName_ = saveTensorName_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.restoreOpName_ = restoreOpName_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.maxToKeep_ = maxToKeep_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.sharded_ = sharded_;
    +      }
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.keepCheckpointEveryNHours_ = keepCheckpointEveryNHours_;
    +      }
    +      if (((from_bitField0_ & 0x00000040) != 0)) {
    +        result.version_ = version_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.SaverDef) {
    @@ -760,14 +753,17 @@ public Builder mergeFrom(org.tensorflow.proto.SaverDef other) {
           if (other == org.tensorflow.proto.SaverDef.getDefaultInstance()) return this;
           if (!other.getFilenameTensorName().isEmpty()) {
             filenameTensorName_ = other.filenameTensorName_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getSaveTensorName().isEmpty()) {
             saveTensorName_ = other.saveTensorName_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (!other.getRestoreOpName().isEmpty()) {
             restoreOpName_ = other.restoreOpName_;
    +        bitField0_ |= 0x00000004;
             onChanged();
           }
           if (other.getMaxToKeep() != 0) {
    @@ -810,37 +806,37 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   filenameTensorName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   saveTensorName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
                   restoreOpName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 case 32: {
                   maxToKeep_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 32
                 case 40: {
                   sharded_ = input.readBool();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 40
                 case 53: {
                   keepCheckpointEveryNHours_ = input.readFloat();
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 53
                 case 56: {
                   version_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000040;
                   break;
                 } // case 56
                 default: {
    @@ -858,6 +854,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object filenameTensorName_ = "";
         /**
    @@ -915,11 +912,9 @@ public java.lang.String getFilenameTensorName() {
          */
         public Builder setFilenameTensorName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           filenameTensorName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -933,8 +928,8 @@ public Builder setFilenameTensorName(
          * @return This builder for chaining.
          */
         public Builder clearFilenameTensorName() {
    -      
           filenameTensorName_ = getDefaultInstance().getFilenameTensorName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -950,12 +945,10 @@ public Builder clearFilenameTensorName() {
          */
         public Builder setFilenameTensorNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           filenameTensorName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1013,11 +1006,9 @@ public java.lang.String getSaveTensorName() {
          */
         public Builder setSaveTensorName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           saveTensorName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1030,8 +1021,8 @@ public Builder setSaveTensorName(
          * @return This builder for chaining.
          */
         public Builder clearSaveTensorName() {
    -      
           saveTensorName_ = getDefaultInstance().getSaveTensorName();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -1046,12 +1037,10 @@ public Builder clearSaveTensorName() {
          */
         public Builder setSaveTensorNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           saveTensorName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1109,11 +1098,9 @@ public java.lang.String getRestoreOpName() {
          */
         public Builder setRestoreOpName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           restoreOpName_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1126,8 +1113,8 @@ public Builder setRestoreOpName(
          * @return This builder for chaining.
          */
         public Builder clearRestoreOpName() {
    -      
           restoreOpName_ = getDefaultInstance().getRestoreOpName();
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -1142,12 +1129,10 @@ public Builder clearRestoreOpName() {
          */
         public Builder setRestoreOpNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           restoreOpName_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1175,8 +1160,9 @@ public int getMaxToKeep() {
          * @return This builder for chaining.
          */
         public Builder setMaxToKeep(int value) {
    -      
    +
           maxToKeep_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1189,7 +1175,7 @@ public Builder setMaxToKeep(int value) {
          * @return This builder for chaining.
          */
         public Builder clearMaxToKeep() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           maxToKeep_ = 0;
           onChanged();
           return this;
    @@ -1218,8 +1204,9 @@ public boolean getSharded() {
          * @return This builder for chaining.
          */
         public Builder setSharded(boolean value) {
    -      
    +
           sharded_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1232,7 +1219,7 @@ public Builder setSharded(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearSharded() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000010);
           sharded_ = false;
           onChanged();
           return this;
    @@ -1267,8 +1254,9 @@ public float getKeepCheckpointEveryNHours() {
          * @return This builder for chaining.
          */
         public Builder setKeepCheckpointEveryNHours(float value) {
    -      
    +
           keepCheckpointEveryNHours_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -1284,7 +1272,7 @@ public Builder setKeepCheckpointEveryNHours(float value) {
          * @return This builder for chaining.
          */
         public Builder clearKeepCheckpointEveryNHours() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000020);
           keepCheckpointEveryNHours_ = 0F;
           onChanged();
           return this;
    @@ -1304,8 +1292,8 @@ public Builder clearKeepCheckpointEveryNHours() {
          * @return This builder for chaining.
          */
         public Builder setVersionValue(int value) {
    -      
           version_ = value;
    +      bitField0_ |= 0x00000040;
           onChanged();
           return this;
         }
    @@ -1315,8 +1303,7 @@ public Builder setVersionValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.SaverDef.CheckpointFormatVersion getVersion() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.SaverDef.CheckpointFormatVersion result = org.tensorflow.proto.SaverDef.CheckpointFormatVersion.valueOf(version_);
    +      org.tensorflow.proto.SaverDef.CheckpointFormatVersion result = org.tensorflow.proto.SaverDef.CheckpointFormatVersion.forNumber(version_);
           return result == null ? org.tensorflow.proto.SaverDef.CheckpointFormatVersion.UNRECOGNIZED : result;
         }
         /**
    @@ -1328,7 +1315,7 @@ public Builder setVersion(org.tensorflow.proto.SaverDef.CheckpointFormatVersion
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000040;
           version_ = value.getNumber();
           onChanged();
           return this;
    @@ -1338,23 +1325,11 @@ public Builder setVersion(org.tensorflow.proto.SaverDef.CheckpointFormatVersion
          * @return This builder for chaining.
          */
         public Builder clearVersion() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000040);
           version_ = 0;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.SaverDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaverDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaverDefOrBuilder.java
    index a98a0e5dac2..22751b6cd6c 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaverDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaverDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/saver.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaverProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaverProtos.java
    index 979745be38d..09a24e9951c 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaverProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SaverProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/saver.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class SaverProtos {
       private SaverProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      SaverProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,7 +28,7 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SaverDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SaverDef_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -48,9 +59,10 @@ public static void registerAllExtensions(
         internal_static_tensorflow_SaverDef_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_SaverDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SaverDef_descriptor,
             new java.lang.String[] { "FilenameTensorName", "SaveTensorName", "RestoreOpName", "MaxToKeep", "Sharded", "KeepCheckpointEveryNHours", "Version", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ScopedAllocatorOptions.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ScopedAllocatorOptions.java
    index d687c4fc756..688a251a612 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ScopedAllocatorOptions.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ScopedAllocatorOptions.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/rewriter_config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,37 +9,35 @@
      * Protobuf type {@code tensorflow.ScopedAllocatorOptions}
      */
     public final class ScopedAllocatorOptions extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.ScopedAllocatorOptions)
         ScopedAllocatorOptionsOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ScopedAllocatorOptions.class.getName());
    +  }
       // Use ScopedAllocatorOptions.newBuilder() to construct.
    -  private ScopedAllocatorOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private ScopedAllocatorOptions(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private ScopedAllocatorOptions() {
    -    enableOp_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -  }
    -
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new ScopedAllocatorOptions();
    +    enableOp_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
       }
     
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.RewriterConfigProtos.internal_static_tensorflow_ScopedAllocatorOptions_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.RewriterConfigProtos.internal_static_tensorflow_ScopedAllocatorOptions_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -45,7 +45,9 @@ protected java.lang.Object newInstance(
       }
     
       public static final int ENABLE_OP_FIELD_NUMBER = 1;
    -  private com.google.protobuf.LazyStringList enableOp_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList enableOp_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * If present, only perform optimization for these ops.
    @@ -110,7 +112,7 @@ public final boolean isInitialized() {
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
         for (int i = 0; i < enableOp_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, enableOp_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, enableOp_.getRaw(i));
         }
         getUnknownFields().writeTo(output);
       }
    @@ -200,39 +202,41 @@ public static org.tensorflow.proto.ScopedAllocatorOptions parseFrom(
       }
       public static org.tensorflow.proto.ScopedAllocatorOptions parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ScopedAllocatorOptions parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.ScopedAllocatorOptions parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.ScopedAllocatorOptions parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.ScopedAllocatorOptions parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ScopedAllocatorOptions parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -252,7 +256,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -260,7 +264,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.ScopedAllocatorOptions}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.ScopedAllocatorOptions)
           org.tensorflow.proto.ScopedAllocatorOptionsOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -269,7 +273,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.RewriterConfigProtos.internal_static_tensorflow_ScopedAllocatorOptions_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -282,15 +286,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    -      enableOp_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = 0;
    +      enableOp_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           return this;
         }
     
    @@ -317,48 +322,19 @@ public org.tensorflow.proto.ScopedAllocatorOptions build() {
         @java.lang.Override
         public org.tensorflow.proto.ScopedAllocatorOptions buildPartial() {
           org.tensorflow.proto.ScopedAllocatorOptions result = new org.tensorflow.proto.ScopedAllocatorOptions(this);
    -      int from_bitField0_ = bitField0_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        enableOp_ = enableOp_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.enableOp_ = enableOp_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.ScopedAllocatorOptions result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        enableOp_.makeImmutable();
    +        result.enableOp_ = enableOp_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.ScopedAllocatorOptions) {
    @@ -374,7 +350,7 @@ public Builder mergeFrom(org.tensorflow.proto.ScopedAllocatorOptions other) {
           if (!other.enableOp_.isEmpty()) {
             if (enableOp_.isEmpty()) {
               enableOp_ = other.enableOp_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ |= 0x00000001;
             } else {
               ensureEnableOpIsMutable();
               enableOp_.addAll(other.enableOp_);
    @@ -430,12 +406,13 @@ public Builder mergeFrom(
         }
         private int bitField0_;
     
    -    private com.google.protobuf.LazyStringList enableOp_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList enableOp_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureEnableOpIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!enableOp_.isModifiable()) {
             enableOp_ = new com.google.protobuf.LazyStringArrayList(enableOp_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      }
    +      bitField0_ |= 0x00000001;
         }
         /**
          * 
    @@ -447,7 +424,8 @@ private void ensureEnableOpIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getEnableOpList() {
    -      return enableOp_.getUnmodifiableView();
    +      enableOp_.makeImmutable();
    +      return enableOp_;
         }
         /**
          * 
    @@ -497,11 +475,10 @@ public java.lang.String getEnableOp(int index) {
          */
         public Builder setEnableOp(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureEnableOpIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureEnableOpIsMutable();
           enableOp_.set(index, value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -516,11 +493,10 @@ public Builder setEnableOp(
          */
         public Builder addEnableOp(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureEnableOpIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureEnableOpIsMutable();
           enableOp_.add(value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -538,6 +514,7 @@ public Builder addAllEnableOp(
           ensureEnableOpIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, enableOp_);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -550,8 +527,9 @@ public Builder addAllEnableOp(
          * @return This builder for chaining.
          */
         public Builder clearEnableOp() {
    -      enableOp_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      enableOp_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000001);;
           onChanged();
           return this;
         }
    @@ -566,27 +544,14 @@ public Builder clearEnableOp() {
          */
         public Builder addEnableOpBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureEnableOpIsMutable();
           enableOp_.add(value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.ScopedAllocatorOptions)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ScopedAllocatorOptionsOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ScopedAllocatorOptionsOrBuilder.java
    index 65336fad91c..34a7e2c7eaf 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ScopedAllocatorOptionsOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ScopedAllocatorOptionsOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/rewriter_config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SequenceExample.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SequenceExample.java
    index f8742eb250f..37deaaff1a8 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SequenceExample.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SequenceExample.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/example.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,42 +9,40 @@
      * Protobuf type {@code tensorflow.SequenceExample}
      */
     public final class SequenceExample extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.SequenceExample)
         SequenceExampleOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      SequenceExample.class.getName());
    +  }
       // Use SequenceExample.newBuilder() to construct.
    -  private SequenceExample(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private SequenceExample(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private SequenceExample() {
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new SequenceExample();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ExampleProtos.internal_static_tensorflow_SequenceExample_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ExampleProtos.internal_static_tensorflow_SequenceExample_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.SequenceExample.class, org.tensorflow.proto.SequenceExample.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int CONTEXT_FIELD_NUMBER = 1;
       private org.tensorflow.proto.Features context_;
       /**
    @@ -51,7 +51,7 @@ protected java.lang.Object newInstance(
        */
       @java.lang.Override
       public boolean hasContext() {
    -    return context_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * .tensorflow.Features context = 1;
    @@ -66,7 +66,7 @@ public org.tensorflow.proto.Features getContext() {
        */
       @java.lang.Override
       public org.tensorflow.proto.FeaturesOrBuilder getContextOrBuilder() {
    -    return getContext();
    +    return context_ == null ? org.tensorflow.proto.Features.getDefaultInstance() : context_;
       }
     
       public static final int FEATURE_LISTS_FIELD_NUMBER = 2;
    @@ -77,7 +77,7 @@ public org.tensorflow.proto.FeaturesOrBuilder getContextOrBuilder() {
        */
       @java.lang.Override
       public boolean hasFeatureLists() {
    -    return featureLists_ != null;
    +    return ((bitField0_ & 0x00000002) != 0);
       }
       /**
        * .tensorflow.FeatureLists feature_lists = 2;
    @@ -92,7 +92,7 @@ public org.tensorflow.proto.FeatureLists getFeatureLists() {
        */
       @java.lang.Override
       public org.tensorflow.proto.FeatureListsOrBuilder getFeatureListsOrBuilder() {
    -    return getFeatureLists();
    +    return featureLists_ == null ? org.tensorflow.proto.FeatureLists.getDefaultInstance() : featureLists_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -109,10 +109,10 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (context_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(1, getContext());
         }
    -    if (featureLists_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           output.writeMessage(2, getFeatureLists());
         }
         getUnknownFields().writeTo(output);
    @@ -124,11 +124,11 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (context_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(1, getContext());
         }
    -    if (featureLists_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(2, getFeatureLists());
         }
    @@ -215,39 +215,41 @@ public static org.tensorflow.proto.SequenceExample parseFrom(
       }
       public static org.tensorflow.proto.SequenceExample parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SequenceExample parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.SequenceExample parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.SequenceExample parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.SequenceExample parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SequenceExample parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -267,7 +269,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -275,7 +277,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.SequenceExample}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.SequenceExample)
           org.tensorflow.proto.SequenceExampleOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -284,7 +286,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ExampleProtos.internal_static_tensorflow_SequenceExample_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -293,27 +295,33 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.SequenceExample.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getContextFieldBuilder();
    +        getFeatureListsFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    -      if (contextBuilder_ == null) {
    -        context_ = null;
    -      } else {
    -        context_ = null;
    +      bitField0_ = 0;
    +      context_ = null;
    +      if (contextBuilder_ != null) {
    +        contextBuilder_.dispose();
             contextBuilder_ = null;
           }
    -      if (featureListsBuilder_ == null) {
    -        featureLists_ = null;
    -      } else {
    -        featureLists_ = null;
    +      featureLists_ = null;
    +      if (featureListsBuilder_ != null) {
    +        featureListsBuilder_.dispose();
             featureListsBuilder_ = null;
           }
           return this;
    @@ -342,52 +350,29 @@ public org.tensorflow.proto.SequenceExample build() {
         @java.lang.Override
         public org.tensorflow.proto.SequenceExample buildPartial() {
           org.tensorflow.proto.SequenceExample result = new org.tensorflow.proto.SequenceExample(this);
    -      if (contextBuilder_ == null) {
    -        result.context_ = context_;
    -      } else {
    -        result.context_ = contextBuilder_.build();
    -      }
    -      if (featureListsBuilder_ == null) {
    -        result.featureLists_ = featureLists_;
    -      } else {
    -        result.featureLists_ = featureListsBuilder_.build();
    -      }
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.SequenceExample result) {
    +      int from_bitField0_ = bitField0_;
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.context_ = contextBuilder_ == null
    +            ? context_
    +            : contextBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.featureLists_ = featureListsBuilder_ == null
    +            ? featureLists_
    +            : featureListsBuilder_.build();
    +        to_bitField0_ |= 0x00000002;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.SequenceExample) {
    @@ -436,14 +421,14 @@ public Builder mergeFrom(
                   input.readMessage(
                       getContextFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   input.readMessage(
                       getFeatureListsFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 default: {
    @@ -461,16 +446,17 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private org.tensorflow.proto.Features context_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.Features, org.tensorflow.proto.Features.Builder, org.tensorflow.proto.FeaturesOrBuilder> contextBuilder_;
         /**
          * .tensorflow.Features context = 1;
          * @return Whether the context field is set.
          */
         public boolean hasContext() {
    -      return contextBuilder_ != null || context_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * .tensorflow.Features context = 1;
    @@ -492,11 +478,11 @@ public Builder setContext(org.tensorflow.proto.Features value) {
               throw new NullPointerException();
             }
             context_ = value;
    -        onChanged();
           } else {
             contextBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000001;
    +      onChanged();
           return this;
         }
         /**
    @@ -506,11 +492,11 @@ public Builder setContext(
             org.tensorflow.proto.Features.Builder builderForValue) {
           if (contextBuilder_ == null) {
             context_ = builderForValue.build();
    -        onChanged();
           } else {
             contextBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000001;
    +      onChanged();
           return this;
         }
         /**
    @@ -518,38 +504,40 @@ public Builder setContext(
          */
         public Builder mergeContext(org.tensorflow.proto.Features value) {
           if (contextBuilder_ == null) {
    -        if (context_ != null) {
    -          context_ =
    -            org.tensorflow.proto.Features.newBuilder(context_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000001) != 0) &&
    +          context_ != null &&
    +          context_ != org.tensorflow.proto.Features.getDefaultInstance()) {
    +          getContextBuilder().mergeFrom(value);
             } else {
               context_ = value;
             }
    -        onChanged();
           } else {
             contextBuilder_.mergeFrom(value);
           }
    -
    +      if (context_ != null) {
    +        bitField0_ |= 0x00000001;
    +        onChanged();
    +      }
           return this;
         }
         /**
          * .tensorflow.Features context = 1;
          */
         public Builder clearContext() {
    -      if (contextBuilder_ == null) {
    -        context_ = null;
    -        onChanged();
    -      } else {
    -        context_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000001);
    +      context_ = null;
    +      if (contextBuilder_ != null) {
    +        contextBuilder_.dispose();
             contextBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
          * .tensorflow.Features context = 1;
          */
         public org.tensorflow.proto.Features.Builder getContextBuilder() {
    -      
    +      bitField0_ |= 0x00000001;
           onChanged();
           return getContextFieldBuilder().getBuilder();
         }
    @@ -567,11 +555,11 @@ public org.tensorflow.proto.FeaturesOrBuilder getContextOrBuilder() {
         /**
          * .tensorflow.Features context = 1;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.Features, org.tensorflow.proto.Features.Builder, org.tensorflow.proto.FeaturesOrBuilder> 
             getContextFieldBuilder() {
           if (contextBuilder_ == null) {
    -        contextBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        contextBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.Features, org.tensorflow.proto.Features.Builder, org.tensorflow.proto.FeaturesOrBuilder>(
                     getContext(),
                     getParentForChildren(),
    @@ -582,14 +570,14 @@ public org.tensorflow.proto.FeaturesOrBuilder getContextOrBuilder() {
         }
     
         private org.tensorflow.proto.FeatureLists featureLists_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.FeatureLists, org.tensorflow.proto.FeatureLists.Builder, org.tensorflow.proto.FeatureListsOrBuilder> featureListsBuilder_;
         /**
          * .tensorflow.FeatureLists feature_lists = 2;
          * @return Whether the featureLists field is set.
          */
         public boolean hasFeatureLists() {
    -      return featureListsBuilder_ != null || featureLists_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * .tensorflow.FeatureLists feature_lists = 2;
    @@ -611,11 +599,11 @@ public Builder setFeatureLists(org.tensorflow.proto.FeatureLists value) {
               throw new NullPointerException();
             }
             featureLists_ = value;
    -        onChanged();
           } else {
             featureListsBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -625,11 +613,11 @@ public Builder setFeatureLists(
             org.tensorflow.proto.FeatureLists.Builder builderForValue) {
           if (featureListsBuilder_ == null) {
             featureLists_ = builderForValue.build();
    -        onChanged();
           } else {
             featureListsBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -637,38 +625,40 @@ public Builder setFeatureLists(
          */
         public Builder mergeFeatureLists(org.tensorflow.proto.FeatureLists value) {
           if (featureListsBuilder_ == null) {
    -        if (featureLists_ != null) {
    -          featureLists_ =
    -            org.tensorflow.proto.FeatureLists.newBuilder(featureLists_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000002) != 0) &&
    +          featureLists_ != null &&
    +          featureLists_ != org.tensorflow.proto.FeatureLists.getDefaultInstance()) {
    +          getFeatureListsBuilder().mergeFrom(value);
             } else {
               featureLists_ = value;
             }
    -        onChanged();
           } else {
             featureListsBuilder_.mergeFrom(value);
           }
    -
    +      if (featureLists_ != null) {
    +        bitField0_ |= 0x00000002;
    +        onChanged();
    +      }
           return this;
         }
         /**
          * .tensorflow.FeatureLists feature_lists = 2;
          */
         public Builder clearFeatureLists() {
    -      if (featureListsBuilder_ == null) {
    -        featureLists_ = null;
    -        onChanged();
    -      } else {
    -        featureLists_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      featureLists_ = null;
    +      if (featureListsBuilder_ != null) {
    +        featureListsBuilder_.dispose();
             featureListsBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
          * .tensorflow.FeatureLists feature_lists = 2;
          */
         public org.tensorflow.proto.FeatureLists.Builder getFeatureListsBuilder() {
    -      
    +      bitField0_ |= 0x00000002;
           onChanged();
           return getFeatureListsFieldBuilder().getBuilder();
         }
    @@ -686,11 +676,11 @@ public org.tensorflow.proto.FeatureListsOrBuilder getFeatureListsOrBuilder() {
         /**
          * .tensorflow.FeatureLists feature_lists = 2;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.FeatureLists, org.tensorflow.proto.FeatureLists.Builder, org.tensorflow.proto.FeatureListsOrBuilder> 
             getFeatureListsFieldBuilder() {
           if (featureListsBuilder_ == null) {
    -        featureListsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        featureListsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.FeatureLists, org.tensorflow.proto.FeatureLists.Builder, org.tensorflow.proto.FeatureListsOrBuilder>(
                     getFeatureLists(),
                     getParentForChildren(),
    @@ -699,18 +689,6 @@ public org.tensorflow.proto.FeatureListsOrBuilder getFeatureListsOrBuilder() {
           }
           return featureListsBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.SequenceExample)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SequenceExampleOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SequenceExampleOrBuilder.java
    index 760a6434916..e38f99c7f8f 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SequenceExampleOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SequenceExampleOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/example.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SerializedDType.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SerializedDType.java
    index 5bf4bc289a7..a1c9bf8580b 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SerializedDType.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SerializedDType.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/types.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,37 +13,34 @@
      * Protobuf type {@code tensorflow.SerializedDType}
      */
     public final class SerializedDType extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.SerializedDType)
         SerializedDTypeOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      SerializedDType.class.getName());
    +  }
       // Use SerializedDType.newBuilder() to construct.
    -  private SerializedDType(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private SerializedDType(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private SerializedDType() {
         datatype_ = 0;
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new SerializedDType();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.TypesProtos.internal_static_tensorflow_SerializedDType_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.TypesProtos.internal_static_tensorflow_SerializedDType_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -49,7 +48,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int DATATYPE_FIELD_NUMBER = 1;
    -  private int datatype_;
    +  private int datatype_ = 0;
       /**
        * .tensorflow.DataType datatype = 1;
        * @return The enum numeric value on the wire for datatype.
    @@ -62,8 +61,7 @@ protected java.lang.Object newInstance(
        * @return The datatype.
        */
       @java.lang.Override public org.tensorflow.proto.DataType getDatatype() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(datatype_);
    +    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(datatype_);
         return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
       }
     
    @@ -165,39 +163,41 @@ public static org.tensorflow.proto.SerializedDType parseFrom(
       }
       public static org.tensorflow.proto.SerializedDType parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SerializedDType parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.SerializedDType parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.SerializedDType parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.SerializedDType parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SerializedDType parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -217,7 +217,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -229,7 +229,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.SerializedDType}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.SerializedDType)
           org.tensorflow.proto.SerializedDTypeOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -238,7 +238,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TypesProtos.internal_static_tensorflow_SerializedDType_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -251,15 +251,15 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           datatype_ = 0;
    -
           return this;
         }
     
    @@ -286,43 +286,18 @@ public org.tensorflow.proto.SerializedDType build() {
         @java.lang.Override
         public org.tensorflow.proto.SerializedDType buildPartial() {
           org.tensorflow.proto.SerializedDType result = new org.tensorflow.proto.SerializedDType(this);
    -      result.datatype_ = datatype_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.SerializedDType result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.datatype_ = datatype_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.SerializedDType) {
    @@ -366,7 +341,7 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   datatype_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 default: {
    @@ -384,6 +359,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private int datatype_ = 0;
         /**
    @@ -399,8 +375,8 @@ public Builder mergeFrom(
          * @return This builder for chaining.
          */
         public Builder setDatatypeValue(int value) {
    -      
           datatype_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -410,8 +386,7 @@ public Builder setDatatypeValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.DataType getDatatype() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(datatype_);
    +      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(datatype_);
           return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
         }
         /**
    @@ -423,7 +398,7 @@ public Builder setDatatype(org.tensorflow.proto.DataType value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000001;
           datatype_ = value.getNumber();
           onChanged();
           return this;
    @@ -433,23 +408,11 @@ public Builder setDatatype(org.tensorflow.proto.DataType value) {
          * @return This builder for chaining.
          */
         public Builder clearDatatype() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           datatype_ = 0;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.SerializedDType)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SerializedDTypeOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SerializedDTypeOrBuilder.java
    index 529e5936962..ffadd4ef5f2 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SerializedDTypeOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SerializedDTypeOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/types.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ServerDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ServerDef.java
    index 7f16f8ba6e1..961f896b0c1 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ServerDef.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ServerDef.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/tensorflow_server.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,12 +13,21 @@
      * Protobuf type {@code tensorflow.ServerDef}
      */
     public final class ServerDef extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.ServerDef)
         ServerDefOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ServerDef.class.getName());
    +  }
       // Use ServerDef.newBuilder() to construct.
    -  private ServerDef(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private ServerDef(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private ServerDef() {
    @@ -24,31 +35,20 @@ private ServerDef() {
         protocol_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new ServerDef();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ServerProtos.internal_static_tensorflow_ServerDef_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ServerProtos.internal_static_tensorflow_ServerDef_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.ServerDef.class, org.tensorflow.proto.ServerDef.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int CLUSTER_FIELD_NUMBER = 1;
       private org.tensorflow.proto.ClusterDef cluster_;
       /**
    @@ -61,7 +61,7 @@ protected java.lang.Object newInstance(
        */
       @java.lang.Override
       public boolean hasCluster() {
    -    return cluster_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -84,14 +84,16 @@ public org.tensorflow.proto.ClusterDef getCluster() {
        */
       @java.lang.Override
       public org.tensorflow.proto.ClusterDefOrBuilder getClusterOrBuilder() {
    -    return getCluster();
    +    return cluster_ == null ? org.tensorflow.proto.ClusterDef.getDefaultInstance() : cluster_;
       }
     
       public static final int JOB_NAME_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object jobName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object jobName_ = "";
       /**
        * 
        * The name of the job of which this server is a member.
    +   *
        * NOTE(mrry): The `cluster` field must contain a `JobDef` with a `name` field
        * that matches this name.
        * 
    @@ -115,6 +117,7 @@ public java.lang.String getJobName() { /** *
        * The name of the job of which this server is a member.
    +   *
        * NOTE(mrry): The `cluster` field must contain a `JobDef` with a `name` field
        * that matches this name.
        * 
    @@ -138,7 +141,7 @@ public java.lang.String getJobName() { } public static final int REPLICA_FIELD_NUMBER = 8; - private int replica_; + private int replica_ = 0; /** *
        * Replica this server manages.
    @@ -153,10 +156,11 @@ public int getReplica() {
       }
     
       public static final int TASK_INDEX_FIELD_NUMBER = 3;
    -  private int taskIndex_;
    +  private int taskIndex_ = 0;
       /**
        * 
        * The task index of this server in its job.
    +   *
        * NOTE: The `cluster` field must contain a `JobDef` with a matching `name`
        * and a mapping in its `tasks` field for this index.
        * 
    @@ -181,7 +185,7 @@ public int getTaskIndex() { */ @java.lang.Override public boolean hasDefaultSessionConfig() { - return defaultSessionConfig_ != null; + return ((bitField0_ & 0x00000002) != 0); } /** *
    @@ -204,14 +208,16 @@ public org.tensorflow.proto.ConfigProto getDefaultSessionConfig() {
        */
       @java.lang.Override
       public org.tensorflow.proto.ConfigProtoOrBuilder getDefaultSessionConfigOrBuilder() {
    -    return getDefaultSessionConfig();
    +    return defaultSessionConfig_ == null ? org.tensorflow.proto.ConfigProto.getDefaultInstance() : defaultSessionConfig_;
       }
     
       public static final int PROTOCOL_FIELD_NUMBER = 5;
    -  private volatile java.lang.Object protocol_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object protocol_ = "";
       /**
        * 
        * The protocol to be used by this server.
    +   *
        * Acceptable values include: "grpc", "grpc+verbs".
        * 
    * @@ -234,6 +240,7 @@ public java.lang.String getProtocol() { /** *
        * The protocol to be used by this server.
    +   *
        * Acceptable values include: "grpc", "grpc+verbs".
        * 
    * @@ -256,7 +263,7 @@ public java.lang.String getProtocol() { } public static final int PORT_FIELD_NUMBER = 6; - private int port_; + private int port_ = 0; /** *
        * The server port. If not set, then we identify the port from the job_name.
    @@ -283,7 +290,7 @@ public int getPort() {
        */
       @java.lang.Override
       public boolean hasClusterDeviceFilters() {
    -    return clusterDeviceFilters_ != null;
    +    return ((bitField0_ & 0x00000004) != 0);
       }
       /**
        * 
    @@ -308,7 +315,7 @@ public org.tensorflow.proto.ClusterDeviceFilters getClusterDeviceFilters() {
        */
       @java.lang.Override
       public org.tensorflow.proto.ClusterDeviceFiltersOrBuilder getClusterDeviceFiltersOrBuilder() {
    -    return getClusterDeviceFilters();
    +    return clusterDeviceFilters_ == null ? org.tensorflow.proto.ClusterDeviceFilters.getDefaultInstance() : clusterDeviceFilters_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -325,25 +332,25 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (cluster_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(1, getCluster());
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(jobName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, jobName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(jobName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, jobName_);
         }
         if (taskIndex_ != 0) {
           output.writeInt32(3, taskIndex_);
         }
    -    if (defaultSessionConfig_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           output.writeMessage(4, getDefaultSessionConfig());
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(protocol_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 5, protocol_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(protocol_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 5, protocol_);
         }
         if (port_ != 0) {
           output.writeInt32(6, port_);
         }
    -    if (clusterDeviceFilters_ != null) {
    +    if (((bitField0_ & 0x00000004) != 0)) {
           output.writeMessage(7, getClusterDeviceFilters());
         }
         if (replica_ != 0) {
    @@ -358,29 +365,29 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (cluster_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(1, getCluster());
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(jobName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, jobName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(jobName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, jobName_);
         }
         if (taskIndex_ != 0) {
           size += com.google.protobuf.CodedOutputStream
             .computeInt32Size(3, taskIndex_);
         }
    -    if (defaultSessionConfig_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(4, getDefaultSessionConfig());
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(protocol_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, protocol_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(protocol_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(5, protocol_);
         }
         if (port_ != 0) {
           size += com.google.protobuf.CodedOutputStream
             .computeInt32Size(6, port_);
         }
    -    if (clusterDeviceFilters_ != null) {
    +    if (((bitField0_ & 0x00000004) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(7, getClusterDeviceFilters());
         }
    @@ -500,39 +507,41 @@ public static org.tensorflow.proto.ServerDef parseFrom(
       }
       public static org.tensorflow.proto.ServerDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ServerDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.ServerDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.ServerDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.ServerDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ServerDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -552,7 +561,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -564,7 +573,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.ServerDef}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.ServerDef)
           org.tensorflow.proto.ServerDefOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -573,7 +582,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ServerProtos.internal_static_tensorflow_ServerDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -582,43 +591,44 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.ServerDef.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getClusterFieldBuilder();
    +        getDefaultSessionConfigFieldBuilder();
    +        getClusterDeviceFiltersFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    -      if (clusterBuilder_ == null) {
    -        cluster_ = null;
    -      } else {
    -        cluster_ = null;
    +      bitField0_ = 0;
    +      cluster_ = null;
    +      if (clusterBuilder_ != null) {
    +        clusterBuilder_.dispose();
             clusterBuilder_ = null;
           }
           jobName_ = "";
    -
           replica_ = 0;
    -
           taskIndex_ = 0;
    -
    -      if (defaultSessionConfigBuilder_ == null) {
    -        defaultSessionConfig_ = null;
    -      } else {
    -        defaultSessionConfig_ = null;
    +      defaultSessionConfig_ = null;
    +      if (defaultSessionConfigBuilder_ != null) {
    +        defaultSessionConfigBuilder_.dispose();
             defaultSessionConfigBuilder_ = null;
           }
           protocol_ = "";
    -
           port_ = 0;
    -
    -      if (clusterDeviceFiltersBuilder_ == null) {
    -        clusterDeviceFilters_ = null;
    -      } else {
    -        clusterDeviceFilters_ = null;
    +      clusterDeviceFilters_ = null;
    +      if (clusterDeviceFiltersBuilder_ != null) {
    +        clusterDeviceFiltersBuilder_.dispose();
             clusterDeviceFiltersBuilder_ = null;
           }
           return this;
    @@ -647,62 +657,50 @@ public org.tensorflow.proto.ServerDef build() {
         @java.lang.Override
         public org.tensorflow.proto.ServerDef buildPartial() {
           org.tensorflow.proto.ServerDef result = new org.tensorflow.proto.ServerDef(this);
    -      if (clusterBuilder_ == null) {
    -        result.cluster_ = cluster_;
    -      } else {
    -        result.cluster_ = clusterBuilder_.build();
    -      }
    -      result.jobName_ = jobName_;
    -      result.replica_ = replica_;
    -      result.taskIndex_ = taskIndex_;
    -      if (defaultSessionConfigBuilder_ == null) {
    -        result.defaultSessionConfig_ = defaultSessionConfig_;
    -      } else {
    -        result.defaultSessionConfig_ = defaultSessionConfigBuilder_.build();
    -      }
    -      result.protocol_ = protocol_;
    -      result.port_ = port_;
    -      if (clusterDeviceFiltersBuilder_ == null) {
    -        result.clusterDeviceFilters_ = clusterDeviceFilters_;
    -      } else {
    -        result.clusterDeviceFilters_ = clusterDeviceFiltersBuilder_.build();
    -      }
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.ServerDef result) {
    +      int from_bitField0_ = bitField0_;
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.cluster_ = clusterBuilder_ == null
    +            ? cluster_
    +            : clusterBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.jobName_ = jobName_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.replica_ = replica_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.taskIndex_ = taskIndex_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.defaultSessionConfig_ = defaultSessionConfigBuilder_ == null
    +            ? defaultSessionConfig_
    +            : defaultSessionConfigBuilder_.build();
    +        to_bitField0_ |= 0x00000002;
    +      }
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.protocol_ = protocol_;
    +      }
    +      if (((from_bitField0_ & 0x00000040) != 0)) {
    +        result.port_ = port_;
    +      }
    +      if (((from_bitField0_ & 0x00000080) != 0)) {
    +        result.clusterDeviceFilters_ = clusterDeviceFiltersBuilder_ == null
    +            ? clusterDeviceFilters_
    +            : clusterDeviceFiltersBuilder_.build();
    +        to_bitField0_ |= 0x00000004;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.ServerDef) {
    @@ -720,6 +718,7 @@ public Builder mergeFrom(org.tensorflow.proto.ServerDef other) {
           }
           if (!other.getJobName().isEmpty()) {
             jobName_ = other.jobName_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (other.getReplica() != 0) {
    @@ -733,6 +732,7 @@ public Builder mergeFrom(org.tensorflow.proto.ServerDef other) {
           }
           if (!other.getProtocol().isEmpty()) {
             protocol_ = other.protocol_;
    +        bitField0_ |= 0x00000020;
             onChanged();
           }
           if (other.getPort() != 0) {
    @@ -771,46 +771,46 @@ public Builder mergeFrom(
                   input.readMessage(
                       getClusterFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   jobName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 24: {
                   taskIndex_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 24
                 case 34: {
                   input.readMessage(
                       getDefaultSessionConfigFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 34
                 case 42: {
                   protocol_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 42
                 case 48: {
                   port_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000040;
                   break;
                 } // case 48
                 case 58: {
                   input.readMessage(
                       getClusterDeviceFiltersFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000080;
                   break;
                 } // case 58
                 case 64: {
                   replica_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 64
                 default: {
    @@ -828,9 +828,10 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private org.tensorflow.proto.ClusterDef cluster_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.ClusterDef, org.tensorflow.proto.ClusterDef.Builder, org.tensorflow.proto.ClusterDefOrBuilder> clusterBuilder_;
         /**
          * 
    @@ -841,7 +842,7 @@ public Builder mergeFrom(
          * @return Whether the cluster field is set.
          */
         public boolean hasCluster() {
    -      return clusterBuilder_ != null || cluster_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -871,11 +872,11 @@ public Builder setCluster(org.tensorflow.proto.ClusterDef value) {
               throw new NullPointerException();
             }
             cluster_ = value;
    -        onChanged();
           } else {
             clusterBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000001;
    +      onChanged();
           return this;
         }
         /**
    @@ -889,11 +890,11 @@ public Builder setCluster(
             org.tensorflow.proto.ClusterDef.Builder builderForValue) {
           if (clusterBuilder_ == null) {
             cluster_ = builderForValue.build();
    -        onChanged();
           } else {
             clusterBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000001;
    +      onChanged();
           return this;
         }
         /**
    @@ -905,17 +906,20 @@ public Builder setCluster(
          */
         public Builder mergeCluster(org.tensorflow.proto.ClusterDef value) {
           if (clusterBuilder_ == null) {
    -        if (cluster_ != null) {
    -          cluster_ =
    -            org.tensorflow.proto.ClusterDef.newBuilder(cluster_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000001) != 0) &&
    +          cluster_ != null &&
    +          cluster_ != org.tensorflow.proto.ClusterDef.getDefaultInstance()) {
    +          getClusterBuilder().mergeFrom(value);
             } else {
               cluster_ = value;
             }
    -        onChanged();
           } else {
             clusterBuilder_.mergeFrom(value);
           }
    -
    +      if (cluster_ != null) {
    +        bitField0_ |= 0x00000001;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -926,14 +930,13 @@ public Builder mergeCluster(org.tensorflow.proto.ClusterDef value) {
          * .tensorflow.ClusterDef cluster = 1;
          */
         public Builder clearCluster() {
    -      if (clusterBuilder_ == null) {
    -        cluster_ = null;
    -        onChanged();
    -      } else {
    -        cluster_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000001);
    +      cluster_ = null;
    +      if (clusterBuilder_ != null) {
    +        clusterBuilder_.dispose();
             clusterBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -944,7 +947,7 @@ public Builder clearCluster() {
          * .tensorflow.ClusterDef cluster = 1;
          */
         public org.tensorflow.proto.ClusterDef.Builder getClusterBuilder() {
    -      
    +      bitField0_ |= 0x00000001;
           onChanged();
           return getClusterFieldBuilder().getBuilder();
         }
    @@ -970,11 +973,11 @@ public org.tensorflow.proto.ClusterDefOrBuilder getClusterOrBuilder() {
          *
          * .tensorflow.ClusterDef cluster = 1;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.ClusterDef, org.tensorflow.proto.ClusterDef.Builder, org.tensorflow.proto.ClusterDefOrBuilder> 
             getClusterFieldBuilder() {
           if (clusterBuilder_ == null) {
    -        clusterBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        clusterBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.ClusterDef, org.tensorflow.proto.ClusterDef.Builder, org.tensorflow.proto.ClusterDefOrBuilder>(
                     getCluster(),
                     getParentForChildren(),
    @@ -988,6 +991,7 @@ public org.tensorflow.proto.ClusterDefOrBuilder getClusterOrBuilder() {
         /**
          * 
          * The name of the job of which this server is a member.
    +     *
          * NOTE(mrry): The `cluster` field must contain a `JobDef` with a `name` field
          * that matches this name.
          * 
    @@ -1010,6 +1014,7 @@ public java.lang.String getJobName() { /** *
          * The name of the job of which this server is a member.
    +     *
          * NOTE(mrry): The `cluster` field must contain a `JobDef` with a `name` field
          * that matches this name.
          * 
    @@ -1033,6 +1038,7 @@ public java.lang.String getJobName() { /** *
          * The name of the job of which this server is a member.
    +     *
          * NOTE(mrry): The `cluster` field must contain a `JobDef` with a `name` field
          * that matches this name.
          * 
    @@ -1043,17 +1049,16 @@ public java.lang.String getJobName() { */ public Builder setJobName( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } jobName_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } /** *
          * The name of the job of which this server is a member.
    +     *
          * NOTE(mrry): The `cluster` field must contain a `JobDef` with a `name` field
          * that matches this name.
          * 
    @@ -1062,14 +1067,15 @@ public Builder setJobName( * @return This builder for chaining. */ public Builder clearJobName() { - jobName_ = getDefaultInstance().getJobName(); + bitField0_ = (bitField0_ & ~0x00000002); onChanged(); return this; } /** *
          * The name of the job of which this server is a member.
    +     *
          * NOTE(mrry): The `cluster` field must contain a `JobDef` with a `name` field
          * that matches this name.
          * 
    @@ -1080,12 +1086,10 @@ public Builder clearJobName() { */ public Builder setJobNameBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); jobName_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -1113,8 +1117,9 @@ public int getReplica() { * @return This builder for chaining. */ public Builder setReplica(int value) { - + replica_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -1127,7 +1132,7 @@ public Builder setReplica(int value) { * @return This builder for chaining. */ public Builder clearReplica() { - + bitField0_ = (bitField0_ & ~0x00000004); replica_ = 0; onChanged(); return this; @@ -1137,6 +1142,7 @@ public Builder clearReplica() { /** *
          * The task index of this server in its job.
    +     *
          * NOTE: The `cluster` field must contain a `JobDef` with a matching `name`
          * and a mapping in its `tasks` field for this index.
          * 
    @@ -1151,6 +1157,7 @@ public int getTaskIndex() { /** *
          * The task index of this server in its job.
    +     *
          * NOTE: The `cluster` field must contain a `JobDef` with a matching `name`
          * and a mapping in its `tasks` field for this index.
          * 
    @@ -1160,14 +1167,16 @@ public int getTaskIndex() { * @return This builder for chaining. */ public Builder setTaskIndex(int value) { - + taskIndex_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } /** *
          * The task index of this server in its job.
    +     *
          * NOTE: The `cluster` field must contain a `JobDef` with a matching `name`
          * and a mapping in its `tasks` field for this index.
          * 
    @@ -1176,14 +1185,14 @@ public Builder setTaskIndex(int value) { * @return This builder for chaining. */ public Builder clearTaskIndex() { - + bitField0_ = (bitField0_ & ~0x00000008); taskIndex_ = 0; onChanged(); return this; } private org.tensorflow.proto.ConfigProto defaultSessionConfig_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.ConfigProto, org.tensorflow.proto.ConfigProto.Builder, org.tensorflow.proto.ConfigProtoOrBuilder> defaultSessionConfigBuilder_; /** *
    @@ -1194,7 +1203,7 @@ public Builder clearTaskIndex() {
          * @return Whether the defaultSessionConfig field is set.
          */
         public boolean hasDefaultSessionConfig() {
    -      return defaultSessionConfigBuilder_ != null || defaultSessionConfig_ != null;
    +      return ((bitField0_ & 0x00000010) != 0);
         }
         /**
          * 
    @@ -1224,11 +1233,11 @@ public Builder setDefaultSessionConfig(org.tensorflow.proto.ConfigProto value) {
               throw new NullPointerException();
             }
             defaultSessionConfig_ = value;
    -        onChanged();
           } else {
             defaultSessionConfigBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000010;
    +      onChanged();
           return this;
         }
         /**
    @@ -1242,11 +1251,11 @@ public Builder setDefaultSessionConfig(
             org.tensorflow.proto.ConfigProto.Builder builderForValue) {
           if (defaultSessionConfigBuilder_ == null) {
             defaultSessionConfig_ = builderForValue.build();
    -        onChanged();
           } else {
             defaultSessionConfigBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000010;
    +      onChanged();
           return this;
         }
         /**
    @@ -1258,17 +1267,20 @@ public Builder setDefaultSessionConfig(
          */
         public Builder mergeDefaultSessionConfig(org.tensorflow.proto.ConfigProto value) {
           if (defaultSessionConfigBuilder_ == null) {
    -        if (defaultSessionConfig_ != null) {
    -          defaultSessionConfig_ =
    -            org.tensorflow.proto.ConfigProto.newBuilder(defaultSessionConfig_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000010) != 0) &&
    +          defaultSessionConfig_ != null &&
    +          defaultSessionConfig_ != org.tensorflow.proto.ConfigProto.getDefaultInstance()) {
    +          getDefaultSessionConfigBuilder().mergeFrom(value);
             } else {
               defaultSessionConfig_ = value;
             }
    -        onChanged();
           } else {
             defaultSessionConfigBuilder_.mergeFrom(value);
           }
    -
    +      if (defaultSessionConfig_ != null) {
    +        bitField0_ |= 0x00000010;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -1279,14 +1291,13 @@ public Builder mergeDefaultSessionConfig(org.tensorflow.proto.ConfigProto value)
          * .tensorflow.ConfigProto default_session_config = 4;
          */
         public Builder clearDefaultSessionConfig() {
    -      if (defaultSessionConfigBuilder_ == null) {
    -        defaultSessionConfig_ = null;
    -        onChanged();
    -      } else {
    -        defaultSessionConfig_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000010);
    +      defaultSessionConfig_ = null;
    +      if (defaultSessionConfigBuilder_ != null) {
    +        defaultSessionConfigBuilder_.dispose();
             defaultSessionConfigBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -1297,7 +1308,7 @@ public Builder clearDefaultSessionConfig() {
          * .tensorflow.ConfigProto default_session_config = 4;
          */
         public org.tensorflow.proto.ConfigProto.Builder getDefaultSessionConfigBuilder() {
    -      
    +      bitField0_ |= 0x00000010;
           onChanged();
           return getDefaultSessionConfigFieldBuilder().getBuilder();
         }
    @@ -1323,11 +1334,11 @@ public org.tensorflow.proto.ConfigProtoOrBuilder getDefaultSessionConfigOrBuilde
          *
          * .tensorflow.ConfigProto default_session_config = 4;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.ConfigProto, org.tensorflow.proto.ConfigProto.Builder, org.tensorflow.proto.ConfigProtoOrBuilder> 
             getDefaultSessionConfigFieldBuilder() {
           if (defaultSessionConfigBuilder_ == null) {
    -        defaultSessionConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        defaultSessionConfigBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.ConfigProto, org.tensorflow.proto.ConfigProto.Builder, org.tensorflow.proto.ConfigProtoOrBuilder>(
                     getDefaultSessionConfig(),
                     getParentForChildren(),
    @@ -1341,6 +1352,7 @@ public org.tensorflow.proto.ConfigProtoOrBuilder getDefaultSessionConfigOrBuilde
         /**
          * 
          * The protocol to be used by this server.
    +     *
          * Acceptable values include: "grpc", "grpc+verbs".
          * 
    * @@ -1362,6 +1374,7 @@ public java.lang.String getProtocol() { /** *
          * The protocol to be used by this server.
    +     *
          * Acceptable values include: "grpc", "grpc+verbs".
          * 
    * @@ -1384,6 +1397,7 @@ public java.lang.String getProtocol() { /** *
          * The protocol to be used by this server.
    +     *
          * Acceptable values include: "grpc", "grpc+verbs".
          * 
    * @@ -1393,17 +1407,16 @@ public java.lang.String getProtocol() { */ public Builder setProtocol( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } protocol_ = value; + bitField0_ |= 0x00000020; onChanged(); return this; } /** *
          * The protocol to be used by this server.
    +     *
          * Acceptable values include: "grpc", "grpc+verbs".
          * 
    * @@ -1411,14 +1424,15 @@ public Builder setProtocol( * @return This builder for chaining. */ public Builder clearProtocol() { - protocol_ = getDefaultInstance().getProtocol(); + bitField0_ = (bitField0_ & ~0x00000020); onChanged(); return this; } /** *
          * The protocol to be used by this server.
    +     *
          * Acceptable values include: "grpc", "grpc+verbs".
          * 
    * @@ -1428,12 +1442,10 @@ public Builder clearProtocol() { */ public Builder setProtocolBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); protocol_ = value; + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -1461,8 +1473,9 @@ public int getPort() { * @return This builder for chaining. */ public Builder setPort(int value) { - + port_ = value; + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -1475,14 +1488,14 @@ public Builder setPort(int value) { * @return This builder for chaining. */ public Builder clearPort() { - + bitField0_ = (bitField0_ & ~0x00000040); port_ = 0; onChanged(); return this; } private org.tensorflow.proto.ClusterDeviceFilters clusterDeviceFilters_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.ClusterDeviceFilters, org.tensorflow.proto.ClusterDeviceFilters.Builder, org.tensorflow.proto.ClusterDeviceFiltersOrBuilder> clusterDeviceFiltersBuilder_; /** *
    @@ -1494,7 +1507,7 @@ public Builder clearPort() {
          * @return Whether the clusterDeviceFilters field is set.
          */
         public boolean hasClusterDeviceFilters() {
    -      return clusterDeviceFiltersBuilder_ != null || clusterDeviceFilters_ != null;
    +      return ((bitField0_ & 0x00000080) != 0);
         }
         /**
          * 
    @@ -1526,11 +1539,11 @@ public Builder setClusterDeviceFilters(org.tensorflow.proto.ClusterDeviceFilters
               throw new NullPointerException();
             }
             clusterDeviceFilters_ = value;
    -        onChanged();
           } else {
             clusterDeviceFiltersBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000080;
    +      onChanged();
           return this;
         }
         /**
    @@ -1545,11 +1558,11 @@ public Builder setClusterDeviceFilters(
             org.tensorflow.proto.ClusterDeviceFilters.Builder builderForValue) {
           if (clusterDeviceFiltersBuilder_ == null) {
             clusterDeviceFilters_ = builderForValue.build();
    -        onChanged();
           } else {
             clusterDeviceFiltersBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000080;
    +      onChanged();
           return this;
         }
         /**
    @@ -1562,17 +1575,20 @@ public Builder setClusterDeviceFilters(
          */
         public Builder mergeClusterDeviceFilters(org.tensorflow.proto.ClusterDeviceFilters value) {
           if (clusterDeviceFiltersBuilder_ == null) {
    -        if (clusterDeviceFilters_ != null) {
    -          clusterDeviceFilters_ =
    -            org.tensorflow.proto.ClusterDeviceFilters.newBuilder(clusterDeviceFilters_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000080) != 0) &&
    +          clusterDeviceFilters_ != null &&
    +          clusterDeviceFilters_ != org.tensorflow.proto.ClusterDeviceFilters.getDefaultInstance()) {
    +          getClusterDeviceFiltersBuilder().mergeFrom(value);
             } else {
               clusterDeviceFilters_ = value;
             }
    -        onChanged();
           } else {
             clusterDeviceFiltersBuilder_.mergeFrom(value);
           }
    -
    +      if (clusterDeviceFilters_ != null) {
    +        bitField0_ |= 0x00000080;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -1584,14 +1600,13 @@ public Builder mergeClusterDeviceFilters(org.tensorflow.proto.ClusterDeviceFilte
          * .tensorflow.ClusterDeviceFilters cluster_device_filters = 7;
          */
         public Builder clearClusterDeviceFilters() {
    -      if (clusterDeviceFiltersBuilder_ == null) {
    -        clusterDeviceFilters_ = null;
    -        onChanged();
    -      } else {
    -        clusterDeviceFilters_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000080);
    +      clusterDeviceFilters_ = null;
    +      if (clusterDeviceFiltersBuilder_ != null) {
    +        clusterDeviceFiltersBuilder_.dispose();
             clusterDeviceFiltersBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -1603,7 +1618,7 @@ public Builder clearClusterDeviceFilters() {
          * .tensorflow.ClusterDeviceFilters cluster_device_filters = 7;
          */
         public org.tensorflow.proto.ClusterDeviceFilters.Builder getClusterDeviceFiltersBuilder() {
    -      
    +      bitField0_ |= 0x00000080;
           onChanged();
           return getClusterDeviceFiltersFieldBuilder().getBuilder();
         }
    @@ -1631,11 +1646,11 @@ public org.tensorflow.proto.ClusterDeviceFiltersOrBuilder getClusterDeviceFilter
          *
          * .tensorflow.ClusterDeviceFilters cluster_device_filters = 7;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.ClusterDeviceFilters, org.tensorflow.proto.ClusterDeviceFilters.Builder, org.tensorflow.proto.ClusterDeviceFiltersOrBuilder> 
             getClusterDeviceFiltersFieldBuilder() {
           if (clusterDeviceFiltersBuilder_ == null) {
    -        clusterDeviceFiltersBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        clusterDeviceFiltersBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.ClusterDeviceFilters, org.tensorflow.proto.ClusterDeviceFilters.Builder, org.tensorflow.proto.ClusterDeviceFiltersOrBuilder>(
                     getClusterDeviceFilters(),
                     getParentForChildren(),
    @@ -1644,18 +1659,6 @@ public org.tensorflow.proto.ClusterDeviceFiltersOrBuilder getClusterDeviceFilter
           }
           return clusterDeviceFiltersBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.ServerDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ServerDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ServerDefOrBuilder.java
    index bab65d9cac9..b6f191e3c59 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ServerDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ServerDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/tensorflow_server.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -37,6 +39,7 @@ public interface ServerDefOrBuilder extends
       /**
        * 
        * The name of the job of which this server is a member.
    +   *
        * NOTE(mrry): The `cluster` field must contain a `JobDef` with a `name` field
        * that matches this name.
        * 
    @@ -48,6 +51,7 @@ public interface ServerDefOrBuilder extends /** *
        * The name of the job of which this server is a member.
    +   *
        * NOTE(mrry): The `cluster` field must contain a `JobDef` with a `name` field
        * that matches this name.
        * 
    @@ -71,6 +75,7 @@ public interface ServerDefOrBuilder extends /** *
        * The task index of this server in its job.
    +   *
        * NOTE: The `cluster` field must contain a `JobDef` with a matching `name`
        * and a mapping in its `tasks` field for this index.
        * 
    @@ -110,6 +115,7 @@ public interface ServerDefOrBuilder extends /** *
        * The protocol to be used by this server.
    +   *
        * Acceptable values include: "grpc", "grpc+verbs".
        * 
    * @@ -120,6 +126,7 @@ public interface ServerDefOrBuilder extends /** *
        * The protocol to be used by this server.
    +   *
        * Acceptable values include: "grpc", "grpc+verbs".
        * 
    * diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ServerProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ServerProtos.java index d727958a5b7..56fff5364e9 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ServerProtos.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ServerProtos.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/tensorflow_server.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; public final class ServerProtos { private ServerProtos() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + ServerProtos.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -17,7 +28,7 @@ public static void registerAllExtensions( static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_ServerDef_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_ServerDef_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor @@ -54,9 +65,10 @@ public static void registerAllExtensions( internal_static_tensorflow_ServerDef_descriptor = getDescriptor().getMessageTypes().get(0); internal_static_tensorflow_ServerDef_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_ServerDef_descriptor, new java.lang.String[] { "Cluster", "JobName", "Replica", "TaskIndex", "DefaultSessionConfig", "Protocol", "Port", "ClusterDeviceFilters", }); + descriptor.resolveAllFeaturesImmutable(); org.tensorflow.proto.ClusterProtos.getDescriptor(); org.tensorflow.proto.ConfigProtos.getDescriptor(); org.tensorflow.proto.DeviceFiltersProtos.getDescriptor(); diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SessionLog.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SessionLog.java index 7bcacf95a4c..1bcf1d93e9a 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SessionLog.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SessionLog.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/util/event.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -11,12 +13,21 @@ * Protobuf type {@code tensorflow.SessionLog} */ public final class SessionLog extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.SessionLog) SessionLogOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + SessionLog.class.getName()); + } // Use SessionLog.newBuilder() to construct. - private SessionLog(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private SessionLog(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private SessionLog() { @@ -25,25 +36,13 @@ private SessionLog() { msg_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new SessionLog(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.EventProtos.internal_static_tensorflow_SessionLog_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.EventProtos.internal_static_tensorflow_SessionLog_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -74,6 +73,15 @@ public enum SessionStatus UNRECOGNIZED(-1), ; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + SessionStatus.class.getName()); + } /** * STATUS_UNSPECIFIED = 0; */ @@ -177,7 +185,7 @@ private SessionStatus(int value) { } public static final int STATUS_FIELD_NUMBER = 1; - private int status_; + private int status_ = 0; /** * .tensorflow.SessionLog.SessionStatus status = 1; * @return The enum numeric value on the wire for status. @@ -190,13 +198,13 @@ private SessionStatus(int value) { * @return The status. */ @java.lang.Override public org.tensorflow.proto.SessionLog.SessionStatus getStatus() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.SessionLog.SessionStatus result = org.tensorflow.proto.SessionLog.SessionStatus.valueOf(status_); + org.tensorflow.proto.SessionLog.SessionStatus result = org.tensorflow.proto.SessionLog.SessionStatus.forNumber(status_); return result == null ? org.tensorflow.proto.SessionLog.SessionStatus.UNRECOGNIZED : result; } public static final int CHECKPOINT_PATH_FIELD_NUMBER = 2; - private volatile java.lang.Object checkpointPath_; + @SuppressWarnings("serial") + private volatile java.lang.Object checkpointPath_ = ""; /** *
        * This checkpoint_path contains both the path and filename.
    @@ -242,7 +250,8 @@ public java.lang.String getCheckpointPath() {
       }
     
       public static final int MSG_FIELD_NUMBER = 3;
    -  private volatile java.lang.Object msg_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object msg_ = "";
       /**
        * string msg = 3;
        * @return The msg.
    @@ -296,11 +305,11 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (status_ != org.tensorflow.proto.SessionLog.SessionStatus.STATUS_UNSPECIFIED.getNumber()) {
           output.writeEnum(1, status_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(checkpointPath_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, checkpointPath_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(checkpointPath_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, checkpointPath_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(msg_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, msg_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(msg_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, msg_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -315,11 +324,11 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeEnumSize(1, status_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(checkpointPath_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, checkpointPath_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(checkpointPath_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, checkpointPath_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(msg_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, msg_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(msg_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, msg_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -397,39 +406,41 @@ public static org.tensorflow.proto.SessionLog parseFrom(
       }
       public static org.tensorflow.proto.SessionLog parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SessionLog parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.SessionLog parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.SessionLog parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.SessionLog parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SessionLog parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -449,7 +460,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -461,7 +472,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.SessionLog}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.SessionLog)
           org.tensorflow.proto.SessionLogOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -470,7 +481,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.EventProtos.internal_static_tensorflow_SessionLog_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -483,19 +494,17 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           status_ = 0;
    -
           checkpointPath_ = "";
    -
           msg_ = "";
    -
           return this;
         }
     
    @@ -522,45 +531,24 @@ public org.tensorflow.proto.SessionLog build() {
         @java.lang.Override
         public org.tensorflow.proto.SessionLog buildPartial() {
           org.tensorflow.proto.SessionLog result = new org.tensorflow.proto.SessionLog(this);
    -      result.status_ = status_;
    -      result.checkpointPath_ = checkpointPath_;
    -      result.msg_ = msg_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.SessionLog result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.status_ = status_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.checkpointPath_ = checkpointPath_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.msg_ = msg_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.SessionLog) {
    @@ -578,10 +566,12 @@ public Builder mergeFrom(org.tensorflow.proto.SessionLog other) {
           }
           if (!other.getCheckpointPath().isEmpty()) {
             checkpointPath_ = other.checkpointPath_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (!other.getMsg().isEmpty()) {
             msg_ = other.msg_;
    +        bitField0_ |= 0x00000004;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -612,17 +602,17 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   status_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 18: {
                   checkpointPath_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
                   msg_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 default: {
    @@ -640,6 +630,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private int status_ = 0;
         /**
    @@ -655,8 +646,8 @@ public Builder mergeFrom(
          * @return This builder for chaining.
          */
         public Builder setStatusValue(int value) {
    -      
           status_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -666,8 +657,7 @@ public Builder setStatusValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.SessionLog.SessionStatus getStatus() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.SessionLog.SessionStatus result = org.tensorflow.proto.SessionLog.SessionStatus.valueOf(status_);
    +      org.tensorflow.proto.SessionLog.SessionStatus result = org.tensorflow.proto.SessionLog.SessionStatus.forNumber(status_);
           return result == null ? org.tensorflow.proto.SessionLog.SessionStatus.UNRECOGNIZED : result;
         }
         /**
    @@ -679,7 +669,7 @@ public Builder setStatus(org.tensorflow.proto.SessionLog.SessionStatus value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000001;
           status_ = value.getNumber();
           onChanged();
           return this;
    @@ -689,7 +679,7 @@ public Builder setStatus(org.tensorflow.proto.SessionLog.SessionStatus value) {
          * @return This builder for chaining.
          */
         public Builder clearStatus() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           status_ = 0;
           onChanged();
           return this;
    @@ -748,11 +738,9 @@ public java.lang.String getCheckpointPath() {
          */
         public Builder setCheckpointPath(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           checkpointPath_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -765,8 +753,8 @@ public Builder setCheckpointPath(
          * @return This builder for chaining.
          */
         public Builder clearCheckpointPath() {
    -      
           checkpointPath_ = getDefaultInstance().getCheckpointPath();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -781,12 +769,10 @@ public Builder clearCheckpointPath() {
          */
         public Builder setCheckpointPathBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           checkpointPath_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -832,11 +818,9 @@ public java.lang.String getMsg() {
          */
         public Builder setMsg(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           msg_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -845,8 +829,8 @@ public Builder setMsg(
          * @return This builder for chaining.
          */
         public Builder clearMsg() {
    -      
           msg_ = getDefaultInstance().getMsg();
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -857,27 +841,13 @@ public Builder clearMsg() {
          */
         public Builder setMsgBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           msg_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.SessionLog)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SessionLogOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SessionLogOrBuilder.java
    index 553c2b098f0..1c97f0c82e8 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SessionLogOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SessionLogOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SessionMetadata.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SessionMetadata.java
    index a8f83cfd9d6..3031e8e58cb 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SessionMetadata.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SessionMetadata.java
    @@ -1,51 +1,53 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     /**
      * 
      * Metadata about the session.
    + *
      * This can be used by the runtime and the Ops for debugging, monitoring, etc.
    + *
      * The (name, version) tuple is expected to be a unique identifier for
      * sessions within the same process.
    + *
      * NOTE: This is currently used and propagated only by the direct session.
      * 
    * * Protobuf type {@code tensorflow.SessionMetadata} */ public final class SessionMetadata extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.SessionMetadata) SessionMetadataOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + SessionMetadata.class.getName()); + } // Use SessionMetadata.newBuilder() to construct. - private SessionMetadata(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private SessionMetadata(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private SessionMetadata() { name_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new SessionMetadata(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_SessionMetadata_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_SessionMetadata_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -53,7 +55,8 @@ protected java.lang.Object newInstance( } public static final int NAME_FIELD_NUMBER = 1; - private volatile java.lang.Object name_; + @SuppressWarnings("serial") + private volatile java.lang.Object name_ = ""; /** * string name = 1; * @return The name. @@ -91,7 +94,7 @@ public java.lang.String getName() { } public static final int VERSION_FIELD_NUMBER = 2; - private long version_; + private long version_ = 0L; /** *
        * The version is optional. If set, needs to be >= 0.
    @@ -119,8 +122,8 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
         }
         if (version_ != 0L) {
           output.writeInt64(2, version_);
    @@ -134,8 +137,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
         }
         if (version_ != 0L) {
           size += com.google.protobuf.CodedOutputStream
    @@ -215,39 +218,41 @@ public static org.tensorflow.proto.SessionMetadata parseFrom(
       }
       public static org.tensorflow.proto.SessionMetadata parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SessionMetadata parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.SessionMetadata parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.SessionMetadata parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.SessionMetadata parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SessionMetadata parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -267,23 +272,26 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
       /**
        * 
        * Metadata about the session.
    +   *
        * This can be used by the runtime and the Ops for debugging, monitoring, etc.
    +   *
        * The (name, version) tuple is expected to be a unique identifier for
        * sessions within the same process.
    +   *
        * NOTE: This is currently used and propagated only by the direct session.
        * 
    * * Protobuf type {@code tensorflow.SessionMetadata} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.SessionMetadata) org.tensorflow.proto.SessionMetadataOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -292,7 +300,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_SessionMetadata_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -305,17 +313,16 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; name_ = ""; - version_ = 0L; - return this; } @@ -342,44 +349,21 @@ public org.tensorflow.proto.SessionMetadata build() { @java.lang.Override public org.tensorflow.proto.SessionMetadata buildPartial() { org.tensorflow.proto.SessionMetadata result = new org.tensorflow.proto.SessionMetadata(this); - result.name_ = name_; - result.version_ = version_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.SessionMetadata result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.version_ = version_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.SessionMetadata) { @@ -394,6 +378,7 @@ public Builder mergeFrom(org.tensorflow.proto.SessionMetadata other) { if (other == org.tensorflow.proto.SessionMetadata.getDefaultInstance()) return this; if (!other.getName().isEmpty()) { name_ = other.name_; + bitField0_ |= 0x00000001; onChanged(); } if (other.getVersion() != 0L) { @@ -427,12 +412,12 @@ public Builder mergeFrom( break; case 10: { name_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000001; break; } // case 10 case 16: { version_ = input.readInt64(); - + bitField0_ |= 0x00000002; break; } // case 16 default: { @@ -450,6 +435,7 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private java.lang.Object name_ = ""; /** @@ -492,11 +478,9 @@ public java.lang.String getName() { */ public Builder setName( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } name_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -505,8 +489,8 @@ public Builder setName( * @return This builder for chaining. */ public Builder clearName() { - name_ = getDefaultInstance().getName(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } @@ -517,12 +501,10 @@ public Builder clearName() { */ public Builder setNameBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); name_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -550,8 +532,9 @@ public long getVersion() { * @return This builder for chaining. */ public Builder setVersion(long value) { - + version_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -564,23 +547,11 @@ public Builder setVersion(long value) { * @return This builder for chaining. */ public Builder clearVersion() { - + bitField0_ = (bitField0_ & ~0x00000002); version_ = 0L; onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.SessionMetadata) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SessionMetadataOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SessionMetadataOrBuilder.java index 4a43a99f1dd..2401495d7e2 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SessionMetadataOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SessionMetadataOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/config.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SignatureDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SignatureDef.java index ecb73cc96e7..6e0faf13917 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SignatureDef.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SignatureDef.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/meta_graph.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,87 +9,32 @@ *
      * SignatureDef defines the signature of a computation supported by a TensorFlow
      * graph.
    - * For example, a model with two loss computations, sharing a single input,
    - * might have the following signature_def map, in a MetaGraphDef message.
    - * Note that across the two SignatureDefs "loss_A" and "loss_B", the input key,
    - * output key, and method_name are identical, and will be used by system(s) that
    - * implement or rely upon this particular loss method. The output tensor names
    - * differ, demonstrating how different outputs can exist for the same method.
    - * signature_def {
    - *   key: "loss_A"
    - *   value {
    - *     inputs {
    - *       key: "input"
    - *       value {
    - *         name: "input:0"
    - *         dtype: DT_STRING
    - *         tensor_shape: ...
    - *       }
    - *     }
    - *     outputs {
    - *       key: "loss_output"
    - *       value {
    - *         name: "loss_output_A:0"
    - *         dtype: DT_FLOAT
    - *         tensor_shape: ...
    - *       }
    - *     }
    - *     method_name: "some/package/compute_loss"
    - *   }
    - *   ...
    - * }
    - * signature_def {
    - *   key: "loss_B"
    - *   value {
    - *     inputs {
    - *       key: "input"
    - *       value {
    - *         name: "input:0"
    - *         dtype: DT_STRING
    - *         tensor_shape: ...
    - *       }
    - *     }
    - *     outputs {
    - *       key: "loss_output"
    - *       value {
    - *         name: "loss_output_B:0"
    - *         dtype: DT_FLOAT
    - *         tensor_shape: ...
    - *       }
    - *     }
    - *     method_name: "some/package/compute_loss"
    - *   }
    - *   ...
    - * }
      * 
    * * Protobuf type {@code tensorflow.SignatureDef} */ public final class SignatureDef extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.SignatureDef) SignatureDefOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + SignatureDef.class.getName()); + } // Use SignatureDef.newBuilder() to construct. - private SignatureDef(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private SignatureDef(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private SignatureDef() { methodName_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new SignatureDef(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_SignatureDef_descriptor; @@ -95,7 +42,7 @@ protected java.lang.Object newInstance( @SuppressWarnings({"rawtypes"}) @java.lang.Override - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 1: @@ -110,7 +57,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_SignatureDef_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -129,6 +76,7 @@ private static final class InputsDefaultEntryHolder { com.google.protobuf.WireFormat.FieldType.MESSAGE, org.tensorflow.proto.TensorInfo.getDefaultInstance()); } + @SuppressWarnings("serial") private com.google.protobuf.MapField< java.lang.String, org.tensorflow.proto.TensorInfo> inputs_; private com.google.protobuf.MapField @@ -139,7 +87,6 @@ private static final class InputsDefaultEntryHolder { } return inputs_; } - public int getInputsCount() { return internalGetInputs().getMap().size(); } @@ -150,7 +97,6 @@ public int getInputsCount() { * * map<string, .tensorflow.TensorInfo> inputs = 1; */ - @java.lang.Override public boolean containsInputs( java.lang.String key) { @@ -173,7 +119,6 @@ public java.util.Map getInput * map<string, .tensorflow.TensorInfo> inputs = 1; */ @java.lang.Override - public java.util.Map getInputsMap() { return internalGetInputs().getMap(); } @@ -185,10 +130,11 @@ public java.util.Map getInput * map<string, .tensorflow.TensorInfo> inputs = 1; */ @java.lang.Override - - public org.tensorflow.proto.TensorInfo getInputsOrDefault( + public /* nullable */ +org.tensorflow.proto.TensorInfo getInputsOrDefault( java.lang.String key, - org.tensorflow.proto.TensorInfo defaultValue) { + /* nullable */ +org.tensorflow.proto.TensorInfo defaultValue) { if (key == null) { throw new NullPointerException("map key"); } java.util.Map map = internalGetInputs().getMap(); @@ -202,7 +148,6 @@ public org.tensorflow.proto.TensorInfo getInputsOrDefault( * map<string, .tensorflow.TensorInfo> inputs = 1; */ @java.lang.Override - public org.tensorflow.proto.TensorInfo getInputsOrThrow( java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } @@ -226,6 +171,7 @@ private static final class OutputsDefaultEntryHolder { com.google.protobuf.WireFormat.FieldType.MESSAGE, org.tensorflow.proto.TensorInfo.getDefaultInstance()); } + @SuppressWarnings("serial") private com.google.protobuf.MapField< java.lang.String, org.tensorflow.proto.TensorInfo> outputs_; private com.google.protobuf.MapField @@ -236,7 +182,6 @@ private static final class OutputsDefaultEntryHolder { } return outputs_; } - public int getOutputsCount() { return internalGetOutputs().getMap().size(); } @@ -247,7 +192,6 @@ public int getOutputsCount() { * * map<string, .tensorflow.TensorInfo> outputs = 2; */ - @java.lang.Override public boolean containsOutputs( java.lang.String key) { @@ -270,7 +214,6 @@ public java.util.Map getOutpu * map<string, .tensorflow.TensorInfo> outputs = 2; */ @java.lang.Override - public java.util.Map getOutputsMap() { return internalGetOutputs().getMap(); } @@ -282,10 +225,11 @@ public java.util.Map getOutpu * map<string, .tensorflow.TensorInfo> outputs = 2; */ @java.lang.Override - - public org.tensorflow.proto.TensorInfo getOutputsOrDefault( + public /* nullable */ +org.tensorflow.proto.TensorInfo getOutputsOrDefault( java.lang.String key, - org.tensorflow.proto.TensorInfo defaultValue) { + /* nullable */ +org.tensorflow.proto.TensorInfo defaultValue) { if (key == null) { throw new NullPointerException("map key"); } java.util.Map map = internalGetOutputs().getMap(); @@ -299,7 +243,6 @@ public org.tensorflow.proto.TensorInfo getOutputsOrDefault( * map<string, .tensorflow.TensorInfo> outputs = 2; */ @java.lang.Override - public org.tensorflow.proto.TensorInfo getOutputsOrThrow( java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } @@ -312,16 +255,17 @@ public org.tensorflow.proto.TensorInfo getOutputsOrThrow( } public static final int METHOD_NAME_FIELD_NUMBER = 3; - private volatile java.lang.Object methodName_; + @SuppressWarnings("serial") + private volatile java.lang.Object methodName_ = ""; /** *
    -   * Extensible method_name information enabling third-party users to mark a
    -   * SignatureDef as supporting a particular method. This enables producers and
    -   * consumers of SignatureDefs, e.g. a model definition library and a serving
    -   * library to have a clear hand-off regarding the semantics of a computation.
    -   * Note that multiple SignatureDefs in a single MetaGraphDef may have the same
    -   * method_name. This is commonly used to support multi-headed computation,
    -   * where a single graph computation may return multiple results.
    +   * Deprecated: TensorFlow 2 always sets this to a fixed value;
    +   * open-source TF Serving stopped checking by default since release 2.4.
    +   *
    +   * In TensorFlow 1, the method_name enabled users to mark a SignatureDef as
    +   * supporting a particular method. Multiple SignatureDefs in a single
    +   * MetaGraphDef could have the same method_name (e.g., to support multi-headed
    +   * computation).
        * 
    * * string method_name = 3; @@ -342,13 +286,13 @@ public java.lang.String getMethodName() { } /** *
    -   * Extensible method_name information enabling third-party users to mark a
    -   * SignatureDef as supporting a particular method. This enables producers and
    -   * consumers of SignatureDefs, e.g. a model definition library and a serving
    -   * library to have a clear hand-off regarding the semantics of a computation.
    -   * Note that multiple SignatureDefs in a single MetaGraphDef may have the same
    -   * method_name. This is commonly used to support multi-headed computation,
    -   * where a single graph computation may return multiple results.
    +   * Deprecated: TensorFlow 2 always sets this to a fixed value;
    +   * open-source TF Serving stopped checking by default since release 2.4.
    +   *
    +   * In TensorFlow 1, the method_name enabled users to mark a SignatureDef as
    +   * supporting a particular method. Multiple SignatureDefs in a single
    +   * MetaGraphDef could have the same method_name (e.g., to support multi-headed
    +   * computation).
        * 
    * * string method_name = 3; @@ -381,6 +325,7 @@ private static final class DefaultsDefaultEntryHolder { com.google.protobuf.WireFormat.FieldType.MESSAGE, org.tensorflow.proto.TensorProto.getDefaultInstance()); } + @SuppressWarnings("serial") private com.google.protobuf.MapField< java.lang.String, org.tensorflow.proto.TensorProto> defaults_; private com.google.protobuf.MapField @@ -391,7 +336,6 @@ private static final class DefaultsDefaultEntryHolder { } return defaults_; } - public int getDefaultsCount() { return internalGetDefaults().getMap().size(); } @@ -402,7 +346,6 @@ public int getDefaultsCount() { * * map<string, .tensorflow.TensorProto> defaults = 4; */ - @java.lang.Override public boolean containsDefaults( java.lang.String key) { @@ -425,7 +368,6 @@ public java.util.Map getDefa * map<string, .tensorflow.TensorProto> defaults = 4; */ @java.lang.Override - public java.util.Map getDefaultsMap() { return internalGetDefaults().getMap(); } @@ -437,10 +379,11 @@ public java.util.Map getDefa * map<string, .tensorflow.TensorProto> defaults = 4; */ @java.lang.Override - - public org.tensorflow.proto.TensorProto getDefaultsOrDefault( + public /* nullable */ +org.tensorflow.proto.TensorProto getDefaultsOrDefault( java.lang.String key, - org.tensorflow.proto.TensorProto defaultValue) { + /* nullable */ +org.tensorflow.proto.TensorProto defaultValue) { if (key == null) { throw new NullPointerException("map key"); } java.util.Map map = internalGetDefaults().getMap(); @@ -454,7 +397,6 @@ public org.tensorflow.proto.TensorProto getDefaultsOrDefault( * map<string, .tensorflow.TensorProto> defaults = 4; */ @java.lang.Override - public org.tensorflow.proto.TensorProto getDefaultsOrThrow( java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } @@ -480,22 +422,22 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - com.google.protobuf.GeneratedMessageV3 + com.google.protobuf.GeneratedMessage .serializeStringMapTo( output, internalGetInputs(), InputsDefaultEntryHolder.defaultEntry, 1); - com.google.protobuf.GeneratedMessageV3 + com.google.protobuf.GeneratedMessage .serializeStringMapTo( output, internalGetOutputs(), OutputsDefaultEntryHolder.defaultEntry, 2); - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(methodName_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 3, methodName_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(methodName_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, methodName_); } - com.google.protobuf.GeneratedMessageV3 + com.google.protobuf.GeneratedMessage .serializeStringMapTo( output, internalGetDefaults(), @@ -530,8 +472,8 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeMessageSize(2, outputs__); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(methodName_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, methodName_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(methodName_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, methodName_); } for (java.util.Map.Entry entry : internalGetDefaults().getMap().entrySet()) { @@ -630,39 +572,41 @@ public static org.tensorflow.proto.SignatureDef parseFrom( } public static org.tensorflow.proto.SignatureDef parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.SignatureDef parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.SignatureDef parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.SignatureDef parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.SignatureDef parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.SignatureDef parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -682,7 +626,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -690,64 +634,12 @@ protected Builder newBuilderForType( *
        * SignatureDef defines the signature of a computation supported by a TensorFlow
        * graph.
    -   * For example, a model with two loss computations, sharing a single input,
    -   * might have the following signature_def map, in a MetaGraphDef message.
    -   * Note that across the two SignatureDefs "loss_A" and "loss_B", the input key,
    -   * output key, and method_name are identical, and will be used by system(s) that
    -   * implement or rely upon this particular loss method. The output tensor names
    -   * differ, demonstrating how different outputs can exist for the same method.
    -   * signature_def {
    -   *   key: "loss_A"
    -   *   value {
    -   *     inputs {
    -   *       key: "input"
    -   *       value {
    -   *         name: "input:0"
    -   *         dtype: DT_STRING
    -   *         tensor_shape: ...
    -   *       }
    -   *     }
    -   *     outputs {
    -   *       key: "loss_output"
    -   *       value {
    -   *         name: "loss_output_A:0"
    -   *         dtype: DT_FLOAT
    -   *         tensor_shape: ...
    -   *       }
    -   *     }
    -   *     method_name: "some/package/compute_loss"
    -   *   }
    -   *   ...
    -   * }
    -   * signature_def {
    -   *   key: "loss_B"
    -   *   value {
    -   *     inputs {
    -   *       key: "input"
    -   *       value {
    -   *         name: "input:0"
    -   *         dtype: DT_STRING
    -   *         tensor_shape: ...
    -   *       }
    -   *     }
    -   *     outputs {
    -   *       key: "loss_output"
    -   *       value {
    -   *         name: "loss_output_B:0"
    -   *         dtype: DT_FLOAT
    -   *         tensor_shape: ...
    -   *       }
    -   *     }
    -   *     method_name: "some/package/compute_loss"
    -   *   }
    -   *   ...
    -   * }
        * 
    * * Protobuf type {@code tensorflow.SignatureDef} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.SignatureDef) org.tensorflow.proto.SignatureDefOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -756,7 +648,7 @@ public static final class Builder extends } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 1: @@ -771,7 +663,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMutableMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( int number) { switch (number) { case 1: @@ -786,7 +678,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_SignatureDef_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -799,17 +691,17 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; internalGetMutableInputs().clear(); internalGetMutableOutputs().clear(); methodName_ = ""; - internalGetMutableDefaults().clear(); return this; } @@ -837,50 +729,27 @@ public org.tensorflow.proto.SignatureDef build() { @java.lang.Override public org.tensorflow.proto.SignatureDef buildPartial() { org.tensorflow.proto.SignatureDef result = new org.tensorflow.proto.SignatureDef(this); - int from_bitField0_ = bitField0_; - result.inputs_ = internalGetInputs(); - result.inputs_.makeImmutable(); - result.outputs_ = internalGetOutputs(); - result.outputs_.makeImmutable(); - result.methodName_ = methodName_; - result.defaults_ = internalGetDefaults(); - result.defaults_.makeImmutable(); + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.SignatureDef result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.inputs_ = internalGetInputs().build(InputsDefaultEntryHolder.defaultEntry); + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.outputs_ = internalGetOutputs().build(OutputsDefaultEntryHolder.defaultEntry); + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.methodName_ = methodName_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.defaults_ = internalGetDefaults().build(DefaultsDefaultEntryHolder.defaultEntry); + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.SignatureDef) { @@ -895,14 +764,18 @@ public Builder mergeFrom(org.tensorflow.proto.SignatureDef other) { if (other == org.tensorflow.proto.SignatureDef.getDefaultInstance()) return this; internalGetMutableInputs().mergeFrom( other.internalGetInputs()); + bitField0_ |= 0x00000001; internalGetMutableOutputs().mergeFrom( other.internalGetOutputs()); + bitField0_ |= 0x00000002; if (!other.getMethodName().isEmpty()) { methodName_ = other.methodName_; + bitField0_ |= 0x00000004; onChanged(); } internalGetMutableDefaults().mergeFrom( other.internalGetDefaults()); + bitField0_ |= 0x00000008; this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -933,29 +806,32 @@ public Builder mergeFrom( com.google.protobuf.MapEntry inputs__ = input.readMessage( InputsDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); - internalGetMutableInputs().getMutableMap().put( + internalGetMutableInputs().ensureBuilderMap().put( inputs__.getKey(), inputs__.getValue()); + bitField0_ |= 0x00000001; break; } // case 10 case 18: { com.google.protobuf.MapEntry outputs__ = input.readMessage( OutputsDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); - internalGetMutableOutputs().getMutableMap().put( + internalGetMutableOutputs().ensureBuilderMap().put( outputs__.getKey(), outputs__.getValue()); + bitField0_ |= 0x00000002; break; } // case 18 case 26: { methodName_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000004; break; } // case 26 case 34: { com.google.protobuf.MapEntry defaults__ = input.readMessage( DefaultsDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); - internalGetMutableDefaults().getMutableMap().put( + internalGetMutableDefaults().ensureBuilderMap().put( defaults__.getKey(), defaults__.getValue()); + bitField0_ |= 0x00000008; break; } // case 34 default: { @@ -975,31 +851,40 @@ public Builder mergeFrom( } private int bitField0_; - private com.google.protobuf.MapField< - java.lang.String, org.tensorflow.proto.TensorInfo> inputs_; - private com.google.protobuf.MapField - internalGetInputs() { + private static final class InputsConverter implements com.google.protobuf.MapFieldBuilder.Converter { + @java.lang.Override + public org.tensorflow.proto.TensorInfo build(org.tensorflow.proto.TensorInfoOrBuilder val) { + if (val instanceof org.tensorflow.proto.TensorInfo) { return (org.tensorflow.proto.TensorInfo) val; } + return ((org.tensorflow.proto.TensorInfo.Builder) val).build(); + } + + @java.lang.Override + public com.google.protobuf.MapEntry defaultEntry() { + return InputsDefaultEntryHolder.defaultEntry; + } + }; + private static final InputsConverter inputsConverter = new InputsConverter(); + + private com.google.protobuf.MapFieldBuilder< + java.lang.String, org.tensorflow.proto.TensorInfoOrBuilder, org.tensorflow.proto.TensorInfo, org.tensorflow.proto.TensorInfo.Builder> inputs_; + private com.google.protobuf.MapFieldBuilder + internalGetInputs() { if (inputs_ == null) { - return com.google.protobuf.MapField.emptyMapField( - InputsDefaultEntryHolder.defaultEntry); + return new com.google.protobuf.MapFieldBuilder<>(inputsConverter); } return inputs_; } - private com.google.protobuf.MapField - internalGetMutableInputs() { - onChanged();; + private com.google.protobuf.MapFieldBuilder + internalGetMutableInputs() { if (inputs_ == null) { - inputs_ = com.google.protobuf.MapField.newMapField( - InputsDefaultEntryHolder.defaultEntry); - } - if (!inputs_.isMutable()) { - inputs_ = inputs_.copy(); + inputs_ = new com.google.protobuf.MapFieldBuilder<>(inputsConverter); } + bitField0_ |= 0x00000001; + onChanged(); return inputs_; } - public int getInputsCount() { - return internalGetInputs().getMap().size(); + return internalGetInputs().ensureBuilderMap().size(); } /** *
    @@ -1008,12 +893,11 @@ public int getInputsCount() {
          *
          * map<string, .tensorflow.TensorInfo> inputs = 1;
          */
    -
         @java.lang.Override
         public boolean containsInputs(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      return internalGetInputs().getMap().containsKey(key);
    +      return internalGetInputs().ensureBuilderMap().containsKey(key);
         }
         /**
          * Use {@link #getInputsMap()} instead.
    @@ -1031,9 +915,8 @@ public java.util.Map getInput
          * map<string, .tensorflow.TensorInfo> inputs = 1;
          */
         @java.lang.Override
    -
         public java.util.Map getInputsMap() {
    -      return internalGetInputs().getMap();
    +      return internalGetInputs().getImmutableMap();
         }
         /**
          * 
    @@ -1043,14 +926,14 @@ public java.util.Map getInput
          * map<string, .tensorflow.TensorInfo> inputs = 1;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.TensorInfo getInputsOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.TensorInfo getInputsOrDefault(
             java.lang.String key,
    -        org.tensorflow.proto.TensorInfo defaultValue) {
    +        /* nullable */
    +org.tensorflow.proto.TensorInfo defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetInputs().getMap();
    -      return map.containsKey(key) ? map.get(key) : defaultValue;
    +      java.util.Map map = internalGetMutableInputs().ensureBuilderMap();
    +      return map.containsKey(key) ? inputsConverter.build(map.get(key)) : defaultValue;
         }
         /**
          * 
    @@ -1060,21 +943,18 @@ public org.tensorflow.proto.TensorInfo getInputsOrDefault(
          * map<string, .tensorflow.TensorInfo> inputs = 1;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.TensorInfo getInputsOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetInputs().getMap();
    +      java.util.Map map = internalGetMutableInputs().ensureBuilderMap();
           if (!map.containsKey(key)) {
             throw new java.lang.IllegalArgumentException();
           }
    -      return map.get(key);
    +      return inputsConverter.build(map.get(key));
         }
    -
         public Builder clearInputs() {
    -      internalGetMutableInputs().getMutableMap()
    -          .clear();
    +      bitField0_ = (bitField0_ & ~0x00000001);
    +      internalGetMutableInputs().clear();
           return this;
         }
         /**
    @@ -1084,11 +964,10 @@ public Builder clearInputs() {
          *
          * map<string, .tensorflow.TensorInfo> inputs = 1;
          */
    -
         public Builder removeInputs(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      internalGetMutableInputs().getMutableMap()
    +      internalGetMutableInputs().ensureBuilderMap()
               .remove(key);
           return this;
         }
    @@ -1097,8 +976,9 @@ public Builder removeInputs(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableInputs() {
    -      return internalGetMutableInputs().getMutableMap();
    +        getMutableInputs() {
    +      bitField0_ |= 0x00000001;
    +      return internalGetMutableInputs().ensureMessageMap();
         }
         /**
          * 
    @@ -1111,12 +991,10 @@ public Builder putInputs(
             java.lang.String key,
             org.tensorflow.proto.TensorInfo value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    -      internalGetMutableInputs().getMutableMap()
    +      if (value == null) { throw new NullPointerException("map value"); }
    +      internalGetMutableInputs().ensureBuilderMap()
               .put(key, value);
    +      bitField0_ |= 0x00000001;
           return this;
         }
         /**
    @@ -1126,39 +1004,74 @@ public Builder putInputs(
          *
          * map<string, .tensorflow.TensorInfo> inputs = 1;
          */
    -
         public Builder putAllInputs(
             java.util.Map values) {
    -      internalGetMutableInputs().getMutableMap()
    +      for (java.util.Map.Entry e : values.entrySet()) {
    +        if (e.getKey() == null || e.getValue() == null) {
    +          throw new NullPointerException();
    +        }
    +      }
    +      internalGetMutableInputs().ensureBuilderMap()
               .putAll(values);
    +      bitField0_ |= 0x00000001;
           return this;
         }
    +    /**
    +     * 
    +     * Named input parameters.
    +     * 
    + * + * map<string, .tensorflow.TensorInfo> inputs = 1; + */ + public org.tensorflow.proto.TensorInfo.Builder putInputsBuilderIfAbsent( + java.lang.String key) { + java.util.Map builderMap = internalGetMutableInputs().ensureBuilderMap(); + org.tensorflow.proto.TensorInfoOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.TensorInfo.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.TensorInfo) { + entry = ((org.tensorflow.proto.TensorInfo) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.TensorInfo.Builder) entry; + } + + private static final class OutputsConverter implements com.google.protobuf.MapFieldBuilder.Converter { + @java.lang.Override + public org.tensorflow.proto.TensorInfo build(org.tensorflow.proto.TensorInfoOrBuilder val) { + if (val instanceof org.tensorflow.proto.TensorInfo) { return (org.tensorflow.proto.TensorInfo) val; } + return ((org.tensorflow.proto.TensorInfo.Builder) val).build(); + } - private com.google.protobuf.MapField< - java.lang.String, org.tensorflow.proto.TensorInfo> outputs_; - private com.google.protobuf.MapField - internalGetOutputs() { + @java.lang.Override + public com.google.protobuf.MapEntry defaultEntry() { + return OutputsDefaultEntryHolder.defaultEntry; + } + }; + private static final OutputsConverter outputsConverter = new OutputsConverter(); + + private com.google.protobuf.MapFieldBuilder< + java.lang.String, org.tensorflow.proto.TensorInfoOrBuilder, org.tensorflow.proto.TensorInfo, org.tensorflow.proto.TensorInfo.Builder> outputs_; + private com.google.protobuf.MapFieldBuilder + internalGetOutputs() { if (outputs_ == null) { - return com.google.protobuf.MapField.emptyMapField( - OutputsDefaultEntryHolder.defaultEntry); + return new com.google.protobuf.MapFieldBuilder<>(outputsConverter); } return outputs_; } - private com.google.protobuf.MapField - internalGetMutableOutputs() { - onChanged();; + private com.google.protobuf.MapFieldBuilder + internalGetMutableOutputs() { if (outputs_ == null) { - outputs_ = com.google.protobuf.MapField.newMapField( - OutputsDefaultEntryHolder.defaultEntry); - } - if (!outputs_.isMutable()) { - outputs_ = outputs_.copy(); + outputs_ = new com.google.protobuf.MapFieldBuilder<>(outputsConverter); } + bitField0_ |= 0x00000002; + onChanged(); return outputs_; } - public int getOutputsCount() { - return internalGetOutputs().getMap().size(); + return internalGetOutputs().ensureBuilderMap().size(); } /** *
    @@ -1167,12 +1080,11 @@ public int getOutputsCount() {
          *
          * map<string, .tensorflow.TensorInfo> outputs = 2;
          */
    -
         @java.lang.Override
         public boolean containsOutputs(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      return internalGetOutputs().getMap().containsKey(key);
    +      return internalGetOutputs().ensureBuilderMap().containsKey(key);
         }
         /**
          * Use {@link #getOutputsMap()} instead.
    @@ -1190,9 +1102,8 @@ public java.util.Map getOutpu
          * map<string, .tensorflow.TensorInfo> outputs = 2;
          */
         @java.lang.Override
    -
         public java.util.Map getOutputsMap() {
    -      return internalGetOutputs().getMap();
    +      return internalGetOutputs().getImmutableMap();
         }
         /**
          * 
    @@ -1202,14 +1113,14 @@ public java.util.Map getOutpu
          * map<string, .tensorflow.TensorInfo> outputs = 2;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.TensorInfo getOutputsOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.TensorInfo getOutputsOrDefault(
             java.lang.String key,
    -        org.tensorflow.proto.TensorInfo defaultValue) {
    +        /* nullable */
    +org.tensorflow.proto.TensorInfo defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetOutputs().getMap();
    -      return map.containsKey(key) ? map.get(key) : defaultValue;
    +      java.util.Map map = internalGetMutableOutputs().ensureBuilderMap();
    +      return map.containsKey(key) ? outputsConverter.build(map.get(key)) : defaultValue;
         }
         /**
          * 
    @@ -1219,21 +1130,18 @@ public org.tensorflow.proto.TensorInfo getOutputsOrDefault(
          * map<string, .tensorflow.TensorInfo> outputs = 2;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.TensorInfo getOutputsOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetOutputs().getMap();
    +      java.util.Map map = internalGetMutableOutputs().ensureBuilderMap();
           if (!map.containsKey(key)) {
             throw new java.lang.IllegalArgumentException();
           }
    -      return map.get(key);
    +      return outputsConverter.build(map.get(key));
         }
    -
         public Builder clearOutputs() {
    -      internalGetMutableOutputs().getMutableMap()
    -          .clear();
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      internalGetMutableOutputs().clear();
           return this;
         }
         /**
    @@ -1243,11 +1151,10 @@ public Builder clearOutputs() {
          *
          * map<string, .tensorflow.TensorInfo> outputs = 2;
          */
    -
         public Builder removeOutputs(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      internalGetMutableOutputs().getMutableMap()
    +      internalGetMutableOutputs().ensureBuilderMap()
               .remove(key);
           return this;
         }
    @@ -1256,8 +1163,9 @@ public Builder removeOutputs(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableOutputs() {
    -      return internalGetMutableOutputs().getMutableMap();
    +        getMutableOutputs() {
    +      bitField0_ |= 0x00000002;
    +      return internalGetMutableOutputs().ensureMessageMap();
         }
         /**
          * 
    @@ -1270,12 +1178,10 @@ public Builder putOutputs(
             java.lang.String key,
             org.tensorflow.proto.TensorInfo value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    -      internalGetMutableOutputs().getMutableMap()
    +      if (value == null) { throw new NullPointerException("map value"); }
    +      internalGetMutableOutputs().ensureBuilderMap()
               .put(key, value);
    +      bitField0_ |= 0x00000002;
           return this;
         }
         /**
    @@ -1285,24 +1191,50 @@ public Builder putOutputs(
          *
          * map<string, .tensorflow.TensorInfo> outputs = 2;
          */
    -
         public Builder putAllOutputs(
             java.util.Map values) {
    -      internalGetMutableOutputs().getMutableMap()
    +      for (java.util.Map.Entry e : values.entrySet()) {
    +        if (e.getKey() == null || e.getValue() == null) {
    +          throw new NullPointerException();
    +        }
    +      }
    +      internalGetMutableOutputs().ensureBuilderMap()
               .putAll(values);
    +      bitField0_ |= 0x00000002;
           return this;
         }
    +    /**
    +     * 
    +     * Named output parameters.
    +     * 
    + * + * map<string, .tensorflow.TensorInfo> outputs = 2; + */ + public org.tensorflow.proto.TensorInfo.Builder putOutputsBuilderIfAbsent( + java.lang.String key) { + java.util.Map builderMap = internalGetMutableOutputs().ensureBuilderMap(); + org.tensorflow.proto.TensorInfoOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.TensorInfo.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.TensorInfo) { + entry = ((org.tensorflow.proto.TensorInfo) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.TensorInfo.Builder) entry; + } private java.lang.Object methodName_ = ""; /** *
    -     * Extensible method_name information enabling third-party users to mark a
    -     * SignatureDef as supporting a particular method. This enables producers and
    -     * consumers of SignatureDefs, e.g. a model definition library and a serving
    -     * library to have a clear hand-off regarding the semantics of a computation.
    -     * Note that multiple SignatureDefs in a single MetaGraphDef may have the same
    -     * method_name. This is commonly used to support multi-headed computation,
    -     * where a single graph computation may return multiple results.
    +     * Deprecated: TensorFlow 2 always sets this to a fixed value;
    +     * open-source TF Serving stopped checking by default since release 2.4.
    +     *
    +     * In TensorFlow 1, the method_name enabled users to mark a SignatureDef as
    +     * supporting a particular method. Multiple SignatureDefs in a single
    +     * MetaGraphDef could have the same method_name (e.g., to support multi-headed
    +     * computation).
          * 
    * * string method_name = 3; @@ -1322,13 +1254,13 @@ public java.lang.String getMethodName() { } /** *
    -     * Extensible method_name information enabling third-party users to mark a
    -     * SignatureDef as supporting a particular method. This enables producers and
    -     * consumers of SignatureDefs, e.g. a model definition library and a serving
    -     * library to have a clear hand-off regarding the semantics of a computation.
    -     * Note that multiple SignatureDefs in a single MetaGraphDef may have the same
    -     * method_name. This is commonly used to support multi-headed computation,
    -     * where a single graph computation may return multiple results.
    +     * Deprecated: TensorFlow 2 always sets this to a fixed value;
    +     * open-source TF Serving stopped checking by default since release 2.4.
    +     *
    +     * In TensorFlow 1, the method_name enabled users to mark a SignatureDef as
    +     * supporting a particular method. Multiple SignatureDefs in a single
    +     * MetaGraphDef could have the same method_name (e.g., to support multi-headed
    +     * computation).
          * 
    * * string method_name = 3; @@ -1349,13 +1281,13 @@ public java.lang.String getMethodName() { } /** *
    -     * Extensible method_name information enabling third-party users to mark a
    -     * SignatureDef as supporting a particular method. This enables producers and
    -     * consumers of SignatureDefs, e.g. a model definition library and a serving
    -     * library to have a clear hand-off regarding the semantics of a computation.
    -     * Note that multiple SignatureDefs in a single MetaGraphDef may have the same
    -     * method_name. This is commonly used to support multi-headed computation,
    -     * where a single graph computation may return multiple results.
    +     * Deprecated: TensorFlow 2 always sets this to a fixed value;
    +     * open-source TF Serving stopped checking by default since release 2.4.
    +     *
    +     * In TensorFlow 1, the method_name enabled users to mark a SignatureDef as
    +     * supporting a particular method. Multiple SignatureDefs in a single
    +     * MetaGraphDef could have the same method_name (e.g., to support multi-headed
    +     * computation).
          * 
    * * string method_name = 3; @@ -1364,43 +1296,41 @@ public java.lang.String getMethodName() { */ public Builder setMethodName( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } methodName_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } /** *
    -     * Extensible method_name information enabling third-party users to mark a
    -     * SignatureDef as supporting a particular method. This enables producers and
    -     * consumers of SignatureDefs, e.g. a model definition library and a serving
    -     * library to have a clear hand-off regarding the semantics of a computation.
    -     * Note that multiple SignatureDefs in a single MetaGraphDef may have the same
    -     * method_name. This is commonly used to support multi-headed computation,
    -     * where a single graph computation may return multiple results.
    +     * Deprecated: TensorFlow 2 always sets this to a fixed value;
    +     * open-source TF Serving stopped checking by default since release 2.4.
    +     *
    +     * In TensorFlow 1, the method_name enabled users to mark a SignatureDef as
    +     * supporting a particular method. Multiple SignatureDefs in a single
    +     * MetaGraphDef could have the same method_name (e.g., to support multi-headed
    +     * computation).
          * 
    * * string method_name = 3; * @return This builder for chaining. */ public Builder clearMethodName() { - methodName_ = getDefaultInstance().getMethodName(); + bitField0_ = (bitField0_ & ~0x00000004); onChanged(); return this; } /** *
    -     * Extensible method_name information enabling third-party users to mark a
    -     * SignatureDef as supporting a particular method. This enables producers and
    -     * consumers of SignatureDefs, e.g. a model definition library and a serving
    -     * library to have a clear hand-off regarding the semantics of a computation.
    -     * Note that multiple SignatureDefs in a single MetaGraphDef may have the same
    -     * method_name. This is commonly used to support multi-headed computation,
    -     * where a single graph computation may return multiple results.
    +     * Deprecated: TensorFlow 2 always sets this to a fixed value;
    +     * open-source TF Serving stopped checking by default since release 2.4.
    +     *
    +     * In TensorFlow 1, the method_name enabled users to mark a SignatureDef as
    +     * supporting a particular method. Multiple SignatureDefs in a single
    +     * MetaGraphDef could have the same method_name (e.g., to support multi-headed
    +     * computation).
          * 
    * * string method_name = 3; @@ -1409,41 +1339,48 @@ public Builder clearMethodName() { */ public Builder setMethodNameBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); methodName_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } - private com.google.protobuf.MapField< - java.lang.String, org.tensorflow.proto.TensorProto> defaults_; - private com.google.protobuf.MapField - internalGetDefaults() { + private static final class DefaultsConverter implements com.google.protobuf.MapFieldBuilder.Converter { + @java.lang.Override + public org.tensorflow.proto.TensorProto build(org.tensorflow.proto.TensorProtoOrBuilder val) { + if (val instanceof org.tensorflow.proto.TensorProto) { return (org.tensorflow.proto.TensorProto) val; } + return ((org.tensorflow.proto.TensorProto.Builder) val).build(); + } + + @java.lang.Override + public com.google.protobuf.MapEntry defaultEntry() { + return DefaultsDefaultEntryHolder.defaultEntry; + } + }; + private static final DefaultsConverter defaultsConverter = new DefaultsConverter(); + + private com.google.protobuf.MapFieldBuilder< + java.lang.String, org.tensorflow.proto.TensorProtoOrBuilder, org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder> defaults_; + private com.google.protobuf.MapFieldBuilder + internalGetDefaults() { if (defaults_ == null) { - return com.google.protobuf.MapField.emptyMapField( - DefaultsDefaultEntryHolder.defaultEntry); + return new com.google.protobuf.MapFieldBuilder<>(defaultsConverter); } return defaults_; } - private com.google.protobuf.MapField - internalGetMutableDefaults() { - onChanged();; + private com.google.protobuf.MapFieldBuilder + internalGetMutableDefaults() { if (defaults_ == null) { - defaults_ = com.google.protobuf.MapField.newMapField( - DefaultsDefaultEntryHolder.defaultEntry); - } - if (!defaults_.isMutable()) { - defaults_ = defaults_.copy(); + defaults_ = new com.google.protobuf.MapFieldBuilder<>(defaultsConverter); } + bitField0_ |= 0x00000008; + onChanged(); return defaults_; } - public int getDefaultsCount() { - return internalGetDefaults().getMap().size(); + return internalGetDefaults().ensureBuilderMap().size(); } /** *
    @@ -1452,12 +1389,11 @@ public int getDefaultsCount() {
          *
          * map<string, .tensorflow.TensorProto> defaults = 4;
          */
    -
         @java.lang.Override
         public boolean containsDefaults(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      return internalGetDefaults().getMap().containsKey(key);
    +      return internalGetDefaults().ensureBuilderMap().containsKey(key);
         }
         /**
          * Use {@link #getDefaultsMap()} instead.
    @@ -1475,9 +1411,8 @@ public java.util.Map getDefa
          * map<string, .tensorflow.TensorProto> defaults = 4;
          */
         @java.lang.Override
    -
         public java.util.Map getDefaultsMap() {
    -      return internalGetDefaults().getMap();
    +      return internalGetDefaults().getImmutableMap();
         }
         /**
          * 
    @@ -1487,14 +1422,14 @@ public java.util.Map getDefa
          * map<string, .tensorflow.TensorProto> defaults = 4;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.TensorProto getDefaultsOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.TensorProto getDefaultsOrDefault(
             java.lang.String key,
    -        org.tensorflow.proto.TensorProto defaultValue) {
    +        /* nullable */
    +org.tensorflow.proto.TensorProto defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetDefaults().getMap();
    -      return map.containsKey(key) ? map.get(key) : defaultValue;
    +      java.util.Map map = internalGetMutableDefaults().ensureBuilderMap();
    +      return map.containsKey(key) ? defaultsConverter.build(map.get(key)) : defaultValue;
         }
         /**
          * 
    @@ -1504,21 +1439,18 @@ public org.tensorflow.proto.TensorProto getDefaultsOrDefault(
          * map<string, .tensorflow.TensorProto> defaults = 4;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.TensorProto getDefaultsOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      java.util.Map map =
    -          internalGetDefaults().getMap();
    +      java.util.Map map = internalGetMutableDefaults().ensureBuilderMap();
           if (!map.containsKey(key)) {
             throw new java.lang.IllegalArgumentException();
           }
    -      return map.get(key);
    +      return defaultsConverter.build(map.get(key));
         }
    -
         public Builder clearDefaults() {
    -      internalGetMutableDefaults().getMutableMap()
    -          .clear();
    +      bitField0_ = (bitField0_ & ~0x00000008);
    +      internalGetMutableDefaults().clear();
           return this;
         }
         /**
    @@ -1528,11 +1460,10 @@ public Builder clearDefaults() {
          *
          * map<string, .tensorflow.TensorProto> defaults = 4;
          */
    -
         public Builder removeDefaults(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      internalGetMutableDefaults().getMutableMap()
    +      internalGetMutableDefaults().ensureBuilderMap()
               .remove(key);
           return this;
         }
    @@ -1541,8 +1472,9 @@ public Builder removeDefaults(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableDefaults() {
    -      return internalGetMutableDefaults().getMutableMap();
    +        getMutableDefaults() {
    +      bitField0_ |= 0x00000008;
    +      return internalGetMutableDefaults().ensureMessageMap();
         }
         /**
          * 
    @@ -1555,12 +1487,10 @@ public Builder putDefaults(
             java.lang.String key,
             org.tensorflow.proto.TensorProto value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    -      internalGetMutableDefaults().getMutableMap()
    +      if (value == null) { throw new NullPointerException("map value"); }
    +      internalGetMutableDefaults().ensureBuilderMap()
               .put(key, value);
    +      bitField0_ |= 0x00000008;
           return this;
         }
         /**
    @@ -1570,26 +1500,40 @@ public Builder putDefaults(
          *
          * map<string, .tensorflow.TensorProto> defaults = 4;
          */
    -
         public Builder putAllDefaults(
             java.util.Map values) {
    -      internalGetMutableDefaults().getMutableMap()
    +      for (java.util.Map.Entry e : values.entrySet()) {
    +        if (e.getKey() == null || e.getValue() == null) {
    +          throw new NullPointerException();
    +        }
    +      }
    +      internalGetMutableDefaults().ensureBuilderMap()
               .putAll(values);
    +      bitField0_ |= 0x00000008;
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    +    /**
    +     * 
    +     * Named input to corresponding default values if any.
    +     * 
    + * + * map<string, .tensorflow.TensorProto> defaults = 4; + */ + public org.tensorflow.proto.TensorProto.Builder putDefaultsBuilderIfAbsent( + java.lang.String key) { + java.util.Map builderMap = internalGetMutableDefaults().ensureBuilderMap(); + org.tensorflow.proto.TensorProtoOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.TensorProto.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.TensorProto) { + entry = ((org.tensorflow.proto.TensorProto) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.TensorProto.Builder) entry; } - // @@protoc_insertion_point(builder_scope:tensorflow.SignatureDef) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SignatureDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SignatureDefOrBuilder.java index 86ae1bcf3d1..0e581154587 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SignatureDefOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SignatureDefOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/meta_graph.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -46,7 +48,6 @@ boolean containsInputs( * * map<string, .tensorflow.TensorInfo> inputs = 1; */ - /* nullable */ org.tensorflow.proto.TensorInfo getInputsOrDefault( java.lang.String key, @@ -59,7 +60,6 @@ org.tensorflow.proto.TensorInfo getInputsOrDefault( * * map<string, .tensorflow.TensorInfo> inputs = 1; */ - org.tensorflow.proto.TensorInfo getInputsOrThrow( java.lang.String key); @@ -102,7 +102,6 @@ boolean containsOutputs( * * map<string, .tensorflow.TensorInfo> outputs = 2; */ - /* nullable */ org.tensorflow.proto.TensorInfo getOutputsOrDefault( java.lang.String key, @@ -115,19 +114,18 @@ org.tensorflow.proto.TensorInfo getOutputsOrDefault( * * map<string, .tensorflow.TensorInfo> outputs = 2; */ - org.tensorflow.proto.TensorInfo getOutputsOrThrow( java.lang.String key); /** *
    -   * Extensible method_name information enabling third-party users to mark a
    -   * SignatureDef as supporting a particular method. This enables producers and
    -   * consumers of SignatureDefs, e.g. a model definition library and a serving
    -   * library to have a clear hand-off regarding the semantics of a computation.
    -   * Note that multiple SignatureDefs in a single MetaGraphDef may have the same
    -   * method_name. This is commonly used to support multi-headed computation,
    -   * where a single graph computation may return multiple results.
    +   * Deprecated: TensorFlow 2 always sets this to a fixed value;
    +   * open-source TF Serving stopped checking by default since release 2.4.
    +   *
    +   * In TensorFlow 1, the method_name enabled users to mark a SignatureDef as
    +   * supporting a particular method. Multiple SignatureDefs in a single
    +   * MetaGraphDef could have the same method_name (e.g., to support multi-headed
    +   * computation).
        * 
    * * string method_name = 3; @@ -136,13 +134,13 @@ org.tensorflow.proto.TensorInfo getOutputsOrThrow( java.lang.String getMethodName(); /** *
    -   * Extensible method_name information enabling third-party users to mark a
    -   * SignatureDef as supporting a particular method. This enables producers and
    -   * consumers of SignatureDefs, e.g. a model definition library and a serving
    -   * library to have a clear hand-off regarding the semantics of a computation.
    -   * Note that multiple SignatureDefs in a single MetaGraphDef may have the same
    -   * method_name. This is commonly used to support multi-headed computation,
    -   * where a single graph computation may return multiple results.
    +   * Deprecated: TensorFlow 2 always sets this to a fixed value;
    +   * open-source TF Serving stopped checking by default since release 2.4.
    +   *
    +   * In TensorFlow 1, the method_name enabled users to mark a SignatureDef as
    +   * supporting a particular method. Multiple SignatureDefs in a single
    +   * MetaGraphDef could have the same method_name (e.g., to support multi-headed
    +   * computation).
        * 
    * * string method_name = 3; @@ -190,7 +188,6 @@ boolean containsDefaults( * * map<string, .tensorflow.TensorProto> defaults = 4; */ - /* nullable */ org.tensorflow.proto.TensorProto getDefaultsOrDefault( java.lang.String key, @@ -203,7 +200,6 @@ org.tensorflow.proto.TensorProto getDefaultsOrDefault( * * map<string, .tensorflow.TensorProto> defaults = 4; */ - org.tensorflow.proto.TensorProto getDefaultsOrThrow( java.lang.String key); } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SourceFile.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SourceFile.java index baebe320789..ea02bfde086 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SourceFile.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SourceFile.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/debug_event.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -12,39 +14,37 @@ * Protobuf type {@code tensorflow.SourceFile} */ public final class SourceFile extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.SourceFile) SourceFileOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + SourceFile.class.getName()); + } // Use SourceFile.newBuilder() to construct. - private SourceFile(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private SourceFile(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private SourceFile() { filePath_ = ""; hostName_ = ""; - lines_ = com.google.protobuf.LazyStringArrayList.EMPTY; + lines_ = + com.google.protobuf.LazyStringArrayList.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new SourceFile(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_SourceFile_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_SourceFile_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -52,7 +52,8 @@ protected java.lang.Object newInstance( } public static final int FILE_PATH_FIELD_NUMBER = 1; - private volatile java.lang.Object filePath_; + @SuppressWarnings("serial") + private volatile java.lang.Object filePath_ = ""; /** *
        * Path to the file.
    @@ -98,7 +99,8 @@ public java.lang.String getFilePath() {
       }
     
       public static final int HOST_NAME_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object hostName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object hostName_ = "";
       /**
        * 
        * Name of the host on which the file is located.
    @@ -144,7 +146,9 @@ public java.lang.String getHostName() {
       }
     
       public static final int LINES_FIELD_NUMBER = 3;
    -  private com.google.protobuf.LazyStringList lines_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList lines_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * Line-by-line content of the file.
    @@ -208,14 +212,14 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filePath_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, filePath_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filePath_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, filePath_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hostName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, hostName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(hostName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, hostName_);
         }
         for (int i = 0; i < lines_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, lines_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, lines_.getRaw(i));
         }
         getUnknownFields().writeTo(output);
       }
    @@ -226,11 +230,11 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(filePath_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, filePath_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filePath_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, filePath_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hostName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, hostName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(hostName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, hostName_);
         }
         {
           int dataSize = 0;
    @@ -319,39 +323,41 @@ public static org.tensorflow.proto.SourceFile parseFrom(
       }
       public static org.tensorflow.proto.SourceFile parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SourceFile parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.SourceFile parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.SourceFile parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.SourceFile parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SourceFile parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -371,7 +377,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -384,7 +390,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.SourceFile}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.SourceFile)
           org.tensorflow.proto.SourceFileOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -393,7 +399,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_SourceFile_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -406,19 +412,18 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           filePath_ = "";
    -
           hostName_ = "";
    -
    -      lines_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      lines_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           return this;
         }
     
    @@ -445,50 +450,25 @@ public org.tensorflow.proto.SourceFile build() {
         @java.lang.Override
         public org.tensorflow.proto.SourceFile buildPartial() {
           org.tensorflow.proto.SourceFile result = new org.tensorflow.proto.SourceFile(this);
    -      int from_bitField0_ = bitField0_;
    -      result.filePath_ = filePath_;
    -      result.hostName_ = hostName_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        lines_ = lines_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.lines_ = lines_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.SourceFile result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.filePath_ = filePath_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.hostName_ = hostName_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        lines_.makeImmutable();
    +        result.lines_ = lines_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.SourceFile) {
    @@ -503,16 +483,18 @@ public Builder mergeFrom(org.tensorflow.proto.SourceFile other) {
           if (other == org.tensorflow.proto.SourceFile.getDefaultInstance()) return this;
           if (!other.getFilePath().isEmpty()) {
             filePath_ = other.filePath_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getHostName().isEmpty()) {
             hostName_ = other.hostName_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (!other.lines_.isEmpty()) {
             if (lines_.isEmpty()) {
               lines_ = other.lines_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ |= 0x00000004;
             } else {
               ensureLinesIsMutable();
               lines_.addAll(other.lines_);
    @@ -547,12 +529,12 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   filePath_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   hostName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
    @@ -631,11 +613,9 @@ public java.lang.String getFilePath() {
          */
         public Builder setFilePath(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           filePath_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -648,8 +628,8 @@ public Builder setFilePath(
          * @return This builder for chaining.
          */
         public Builder clearFilePath() {
    -      
           filePath_ = getDefaultInstance().getFilePath();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -664,12 +644,10 @@ public Builder clearFilePath() {
          */
         public Builder setFilePathBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           filePath_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -727,11 +705,9 @@ public java.lang.String getHostName() {
          */
         public Builder setHostName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           hostName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -744,8 +720,8 @@ public Builder setHostName(
          * @return This builder for chaining.
          */
         public Builder clearHostName() {
    -      
           hostName_ = getDefaultInstance().getHostName();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -760,22 +736,21 @@ public Builder clearHostName() {
          */
         public Builder setHostNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           hostName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.LazyStringList lines_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList lines_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureLinesIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!lines_.isModifiable()) {
             lines_ = new com.google.protobuf.LazyStringArrayList(lines_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      }
    +      bitField0_ |= 0x00000004;
         }
         /**
          * 
    @@ -787,7 +762,8 @@ private void ensureLinesIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getLinesList() {
    -      return lines_.getUnmodifiableView();
    +      lines_.makeImmutable();
    +      return lines_;
         }
         /**
          * 
    @@ -837,11 +813,10 @@ public java.lang.String getLines(int index) {
          */
         public Builder setLines(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureLinesIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureLinesIsMutable();
           lines_.set(index, value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -856,11 +831,10 @@ public Builder setLines(
          */
         public Builder addLines(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureLinesIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureLinesIsMutable();
           lines_.add(value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -878,6 +852,7 @@ public Builder addAllLines(
           ensureLinesIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, lines_);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -890,8 +865,9 @@ public Builder addAllLines(
          * @return This builder for chaining.
          */
         public Builder clearLines() {
    -      lines_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      lines_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000004);;
           onChanged();
           return this;
         }
    @@ -906,27 +882,14 @@ public Builder clearLines() {
          */
         public Builder addLinesBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureLinesIsMutable();
           lines_.add(value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.SourceFile)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SourceFileOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SourceFileOrBuilder.java
    index 41a25144a9b..b4ba2c5003a 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SourceFileOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SourceFileOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug_event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SourceMetadata.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SourceMetadata.java
    index 555bf4fcf82..4ba484f32c5 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SourceMetadata.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SourceMetadata.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,37 +13,34 @@
      * Protobuf type {@code tensorflow.SourceMetadata}
      */
     public final class SourceMetadata extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.SourceMetadata)
         SourceMetadataOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      SourceMetadata.class.getName());
    +  }
       // Use SourceMetadata.newBuilder() to construct.
    -  private SourceMetadata(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private SourceMetadata(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private SourceMetadata() {
         writer_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new SourceMetadata();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.EventProtos.internal_static_tensorflow_SourceMetadata_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.EventProtos.internal_static_tensorflow_SourceMetadata_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -49,7 +48,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int WRITER_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object writer_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object writer_ = "";
       /**
        * 
        * Low level name of the summary writer, such as
    @@ -110,8 +110,8 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(writer_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, writer_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(writer_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, writer_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -122,8 +122,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(writer_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, writer_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(writer_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, writer_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -194,39 +194,41 @@ public static org.tensorflow.proto.SourceMetadata parseFrom(
       }
       public static org.tensorflow.proto.SourceMetadata parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SourceMetadata parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.SourceMetadata parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.SourceMetadata parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.SourceMetadata parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SourceMetadata parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -246,7 +248,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -258,7 +260,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.SourceMetadata}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.SourceMetadata)
           org.tensorflow.proto.SourceMetadataOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -267,7 +269,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.EventProtos.internal_static_tensorflow_SourceMetadata_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -280,15 +282,15 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           writer_ = "";
    -
           return this;
         }
     
    @@ -315,43 +317,18 @@ public org.tensorflow.proto.SourceMetadata build() {
         @java.lang.Override
         public org.tensorflow.proto.SourceMetadata buildPartial() {
           org.tensorflow.proto.SourceMetadata result = new org.tensorflow.proto.SourceMetadata(this);
    -      result.writer_ = writer_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.SourceMetadata result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.writer_ = writer_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.SourceMetadata) {
    @@ -366,6 +343,7 @@ public Builder mergeFrom(org.tensorflow.proto.SourceMetadata other) {
           if (other == org.tensorflow.proto.SourceMetadata.getDefaultInstance()) return this;
           if (!other.getWriter().isEmpty()) {
             writer_ = other.writer_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -396,7 +374,7 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   writer_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 default: {
    @@ -414,6 +392,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object writer_ = "";
         /**
    @@ -471,11 +450,9 @@ public java.lang.String getWriter() {
          */
         public Builder setWriter(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           writer_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -489,8 +466,8 @@ public Builder setWriter(
          * @return This builder for chaining.
          */
         public Builder clearWriter() {
    -      
           writer_ = getDefaultInstance().getWriter();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -506,27 +483,13 @@ public Builder clearWriter() {
          */
         public Builder setWriterBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           writer_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.SourceMetadata)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SourceMetadataOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SourceMetadataOrBuilder.java
    index 6c0645c2a87..7517f9cb4b6 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SourceMetadataOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SourceMetadataOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StackFrameWithId.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StackFrameWithId.java
    index 80740149b50..cb50e0e9abd 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StackFrameWithId.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StackFrameWithId.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug_event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,45 +13,44 @@
      * Protobuf type {@code tensorflow.StackFrameWithId}
      */
     public final class StackFrameWithId extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.StackFrameWithId)
         StackFrameWithIdOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      StackFrameWithId.class.getName());
    +  }
       // Use StackFrameWithId.newBuilder() to construct.
    -  private StackFrameWithId(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private StackFrameWithId(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private StackFrameWithId() {
         id_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new StackFrameWithId();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_StackFrameWithId_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_StackFrameWithId_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.StackFrameWithId.class, org.tensorflow.proto.StackFrameWithId.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int ID_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object id_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object id_ = "";
       /**
        * 
        * A unique ID for the stack frame: A UUID-like string.
    @@ -108,7 +109,7 @@ public java.lang.String getId() {
        */
       @java.lang.Override
       public boolean hasFileLineCol() {
    -    return fileLineCol_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -135,7 +136,7 @@ public org.tensorflow.proto.GraphDebugInfo.FileLineCol getFileLineCol() {
        */
       @java.lang.Override
       public org.tensorflow.proto.GraphDebugInfo.FileLineColOrBuilder getFileLineColOrBuilder() {
    -    return getFileLineCol();
    +    return fileLineCol_ == null ? org.tensorflow.proto.GraphDebugInfo.FileLineCol.getDefaultInstance() : fileLineCol_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -152,10 +153,10 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, id_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(id_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, id_);
         }
    -    if (fileLineCol_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(2, getFileLineCol());
         }
         getUnknownFields().writeTo(output);
    @@ -167,10 +168,10 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, id_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(id_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, id_);
         }
    -    if (fileLineCol_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(2, getFileLineCol());
         }
    @@ -252,39 +253,41 @@ public static org.tensorflow.proto.StackFrameWithId parseFrom(
       }
       public static org.tensorflow.proto.StackFrameWithId parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.StackFrameWithId parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.StackFrameWithId parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.StackFrameWithId parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.StackFrameWithId parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.StackFrameWithId parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -304,7 +307,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -316,7 +319,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.StackFrameWithId}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.StackFrameWithId)
           org.tensorflow.proto.StackFrameWithIdOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -325,7 +328,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DebugEventProtos.internal_static_tensorflow_StackFrameWithId_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -334,23 +337,28 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.StackFrameWithId.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getFileLineColFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           id_ = "";
    -
    -      if (fileLineColBuilder_ == null) {
    -        fileLineCol_ = null;
    -      } else {
    -        fileLineCol_ = null;
    +      fileLineCol_ = null;
    +      if (fileLineColBuilder_ != null) {
    +        fileLineColBuilder_.dispose();
             fileLineColBuilder_ = null;
           }
           return this;
    @@ -379,48 +387,26 @@ public org.tensorflow.proto.StackFrameWithId build() {
         @java.lang.Override
         public org.tensorflow.proto.StackFrameWithId buildPartial() {
           org.tensorflow.proto.StackFrameWithId result = new org.tensorflow.proto.StackFrameWithId(this);
    -      result.id_ = id_;
    -      if (fileLineColBuilder_ == null) {
    -        result.fileLineCol_ = fileLineCol_;
    -      } else {
    -        result.fileLineCol_ = fileLineColBuilder_.build();
    -      }
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.StackFrameWithId result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.id_ = id_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.fileLineCol_ = fileLineColBuilder_ == null
    +            ? fileLineCol_
    +            : fileLineColBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.StackFrameWithId) {
    @@ -435,6 +421,7 @@ public Builder mergeFrom(org.tensorflow.proto.StackFrameWithId other) {
           if (other == org.tensorflow.proto.StackFrameWithId.getDefaultInstance()) return this;
           if (!other.getId().isEmpty()) {
             id_ = other.id_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (other.hasFileLineCol()) {
    @@ -468,14 +455,14 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   id_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   input.readMessage(
                       getFileLineColFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 default: {
    @@ -493,6 +480,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object id_ = "";
         /**
    @@ -547,11 +535,9 @@ public java.lang.String getId() {
          */
         public Builder setId(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           id_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -564,8 +550,8 @@ public Builder setId(
          * @return This builder for chaining.
          */
         public Builder clearId() {
    -      
           id_ = getDefaultInstance().getId();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -580,18 +566,16 @@ public Builder clearId() {
          */
         public Builder setIdBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           id_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.GraphDebugInfo.FileLineCol fileLineCol_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.GraphDebugInfo.FileLineCol, org.tensorflow.proto.GraphDebugInfo.FileLineCol.Builder, org.tensorflow.proto.GraphDebugInfo.FileLineColOrBuilder> fileLineColBuilder_;
         /**
          * 
    @@ -604,7 +588,7 @@ public Builder setIdBytes(
          * @return Whether the fileLineCol field is set.
          */
         public boolean hasFileLineCol() {
    -      return fileLineColBuilder_ != null || fileLineCol_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -638,11 +622,11 @@ public Builder setFileLineCol(org.tensorflow.proto.GraphDebugInfo.FileLineCol va
               throw new NullPointerException();
             }
             fileLineCol_ = value;
    -        onChanged();
           } else {
             fileLineColBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -658,11 +642,11 @@ public Builder setFileLineCol(
             org.tensorflow.proto.GraphDebugInfo.FileLineCol.Builder builderForValue) {
           if (fileLineColBuilder_ == null) {
             fileLineCol_ = builderForValue.build();
    -        onChanged();
           } else {
             fileLineColBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -676,17 +660,20 @@ public Builder setFileLineCol(
          */
         public Builder mergeFileLineCol(org.tensorflow.proto.GraphDebugInfo.FileLineCol value) {
           if (fileLineColBuilder_ == null) {
    -        if (fileLineCol_ != null) {
    -          fileLineCol_ =
    -            org.tensorflow.proto.GraphDebugInfo.FileLineCol.newBuilder(fileLineCol_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000002) != 0) &&
    +          fileLineCol_ != null &&
    +          fileLineCol_ != org.tensorflow.proto.GraphDebugInfo.FileLineCol.getDefaultInstance()) {
    +          getFileLineColBuilder().mergeFrom(value);
             } else {
               fileLineCol_ = value;
             }
    -        onChanged();
           } else {
             fileLineColBuilder_.mergeFrom(value);
           }
    -
    +      if (fileLineCol_ != null) {
    +        bitField0_ |= 0x00000002;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -699,14 +686,13 @@ public Builder mergeFileLineCol(org.tensorflow.proto.GraphDebugInfo.FileLineCol
          * .tensorflow.GraphDebugInfo.FileLineCol file_line_col = 2;
          */
         public Builder clearFileLineCol() {
    -      if (fileLineColBuilder_ == null) {
    -        fileLineCol_ = null;
    -        onChanged();
    -      } else {
    -        fileLineCol_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      fileLineCol_ = null;
    +      if (fileLineColBuilder_ != null) {
    +        fileLineColBuilder_.dispose();
             fileLineColBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -719,7 +705,7 @@ public Builder clearFileLineCol() {
          * .tensorflow.GraphDebugInfo.FileLineCol file_line_col = 2;
          */
         public org.tensorflow.proto.GraphDebugInfo.FileLineCol.Builder getFileLineColBuilder() {
    -      
    +      bitField0_ |= 0x00000002;
           onChanged();
           return getFileLineColFieldBuilder().getBuilder();
         }
    @@ -749,11 +735,11 @@ public org.tensorflow.proto.GraphDebugInfo.FileLineColOrBuilder getFileLineColOr
          *
          * .tensorflow.GraphDebugInfo.FileLineCol file_line_col = 2;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.GraphDebugInfo.FileLineCol, org.tensorflow.proto.GraphDebugInfo.FileLineCol.Builder, org.tensorflow.proto.GraphDebugInfo.FileLineColOrBuilder> 
             getFileLineColFieldBuilder() {
           if (fileLineColBuilder_ == null) {
    -        fileLineColBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        fileLineColBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.GraphDebugInfo.FileLineCol, org.tensorflow.proto.GraphDebugInfo.FileLineCol.Builder, org.tensorflow.proto.GraphDebugInfo.FileLineColOrBuilder>(
                     getFileLineCol(),
                     getParentForChildren(),
    @@ -762,18 +748,6 @@ public org.tensorflow.proto.GraphDebugInfo.FileLineColOrBuilder getFileLineColOr
           }
           return fileLineColBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.StackFrameWithId)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StackFrameWithIdOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StackFrameWithIdOrBuilder.java
    index c11b2b585c1..a75ee48a314 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StackFrameWithIdOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StackFrameWithIdOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug_event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Status.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Status.java
    index d4a312a0762..39e89e7969d 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Status.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Status.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/status.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/status.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class Status {
       private Status() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      Status.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,8 +28,13 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_StatusProto_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_StatusProto_fieldAccessorTable;
    +  static final com.google.protobuf.Descriptors.Descriptor
    +    internal_static_tensorflow_StatusProto_PayloadEntry_descriptor;
    +  static final 
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
    +      internal_static_tensorflow_StatusProto_PayloadEntry_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
           getDescriptor() {
    @@ -28,13 +44,15 @@ public static void registerAllExtensions(
           descriptor;
       static {
         java.lang.String[] descriptorData = {
    -      "\n\031tsl/protobuf/status.proto\022\ntensorflow\032" +
    -      "\036tsl/protobuf/error_codes.proto\"D\n\013Statu" +
    -      "sProto\022$\n\004code\030\001 \001(\0162\026.tensorflow.error." +
    -      "Code\022\017\n\007message\030\002 \001(\tB[\n\024org.tensorflow." +
    -      "protoP\001Z>github.com/google/tsl/tsl/go/pr" +
    -      "otobuf/for_core_protos_go_proto\370\001\001b\006prot" +
    -      "o3"
    +      "\n\035xla/tsl/protobuf/status.proto\022\ntensorf" +
    +      "low\032\"xla/tsl/protobuf/error_codes.proto\"" +
    +      "\253\001\n\013StatusProto\022$\n\004code\030\001 \001(\0162\026.tensorfl" +
    +      "ow.error.Code\022\017\n\007message\030\002 \001(\t\0225\n\007payloa" +
    +      "d\030\003 \003(\0132$.tensorflow.StatusProto.Payload" +
    +      "Entry\032.\n\014PayloadEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005va" +
    +      "lue\030\002 \001(\014:\0028\001B[\n\024org.tensorflow.protoP\001Z" +
    +      ">github.com/google/tsl/tsl/go/protobuf/f" +
    +      "or_core_protos_go_proto\370\001\001b\006proto3"
         };
         descriptor = com.google.protobuf.Descriptors.FileDescriptor
           .internalBuildGeneratedFileFrom(descriptorData,
    @@ -44,9 +62,16 @@ public static void registerAllExtensions(
         internal_static_tensorflow_StatusProto_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_StatusProto_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_StatusProto_descriptor,
    -        new java.lang.String[] { "Code", "Message", });
    +        new java.lang.String[] { "Code", "Message", "Payload", });
    +    internal_static_tensorflow_StatusProto_PayloadEntry_descriptor =
    +      internal_static_tensorflow_StatusProto_descriptor.getNestedTypes().get(0);
    +    internal_static_tensorflow_StatusProto_PayloadEntry_fieldAccessorTable = new
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
    +        internal_static_tensorflow_StatusProto_PayloadEntry_descriptor,
    +        new java.lang.String[] { "Key", "Value", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.error.ErrorCodesProtos.getDescriptor();
       }
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StatusProto.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StatusProto.java
    index 178834d006f..43cb0aec28b 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StatusProto.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StatusProto.java
    @@ -1,23 +1,34 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/status.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/status.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     /**
      * 
      * Wire-format for Status.
    - * Next tag: 3
    + * Next tag: 4
      * 
    * * Protobuf type {@code tensorflow.StatusProto} */ public final class StatusProto extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.StatusProto) StatusProtoOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + StatusProto.class.getName()); + } // Use StatusProto.newBuilder() to construct. - private StatusProto(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private StatusProto(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private StatusProto() { @@ -25,25 +36,25 @@ private StatusProto() { message_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new StatusProto(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.Status.internal_static_tensorflow_StatusProto_descriptor; } + @SuppressWarnings({"rawtypes"}) + @java.lang.Override + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 3: + return internalGetPayload(); + default: + throw new RuntimeException( + "Invalid map field number: " + number); + } + } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.Status.internal_static_tensorflow_StatusProto_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -51,10 +62,11 @@ protected java.lang.Object newInstance( } public static final int CODE_FIELD_NUMBER = 1; - private int code_; + private int code_ = 0; /** *
    -   * Status code as defined in tensorflow/tsl/protobuf/error_codes.proto.
    +   * Status code as defined in
    +   * tensorflow/compiler/xla/tsl/protobuf/error_codes.proto.
        * 
    * * .tensorflow.error.Code code = 1; @@ -65,20 +77,21 @@ protected java.lang.Object newInstance( } /** *
    -   * Status code as defined in tensorflow/tsl/protobuf/error_codes.proto.
    +   * Status code as defined in
    +   * tensorflow/compiler/xla/tsl/protobuf/error_codes.proto.
        * 
    * * .tensorflow.error.Code code = 1; * @return The code. */ @java.lang.Override public org.tensorflow.proto.error.Code getCode() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.error.Code result = org.tensorflow.proto.error.Code.valueOf(code_); + org.tensorflow.proto.error.Code result = org.tensorflow.proto.error.Code.forNumber(code_); return result == null ? org.tensorflow.proto.error.Code.UNRECOGNIZED : result; } public static final int MESSAGE_FIELD_NUMBER = 2; - private volatile java.lang.Object message_; + @SuppressWarnings("serial") + private volatile java.lang.Object message_ = ""; /** *
        * Detail error message.
    @@ -123,6 +136,101 @@ public java.lang.String getMessage() {
         }
       }
     
    +  public static final int PAYLOAD_FIELD_NUMBER = 3;
    +  private static final class PayloadDefaultEntryHolder {
    +    static final com.google.protobuf.MapEntry<
    +        java.lang.String, com.google.protobuf.ByteString> defaultEntry =
    +            com.google.protobuf.MapEntry
    +            .newDefaultInstance(
    +                org.tensorflow.proto.Status.internal_static_tensorflow_StatusProto_PayloadEntry_descriptor, 
    +                com.google.protobuf.WireFormat.FieldType.STRING,
    +                "",
    +                com.google.protobuf.WireFormat.FieldType.BYTES,
    +                com.google.protobuf.ByteString.EMPTY);
    +  }
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.MapField<
    +      java.lang.String, com.google.protobuf.ByteString> payload_;
    +  private com.google.protobuf.MapField
    +  internalGetPayload() {
    +    if (payload_ == null) {
    +      return com.google.protobuf.MapField.emptyMapField(
    +          PayloadDefaultEntryHolder.defaultEntry);
    +    }
    +    return payload_;
    +  }
    +  public int getPayloadCount() {
    +    return internalGetPayload().getMap().size();
    +  }
    +  /**
    +   * 
    +   * Unique type URL -> value, like absl::Status payloads.
    +   * 
    + * + * map<string, bytes> payload = 3; + */ + @java.lang.Override + public boolean containsPayload( + java.lang.String key) { + if (key == null) { throw new NullPointerException("map key"); } + return internalGetPayload().getMap().containsKey(key); + } + /** + * Use {@link #getPayloadMap()} instead. + */ + @java.lang.Override + @java.lang.Deprecated + public java.util.Map getPayload() { + return getPayloadMap(); + } + /** + *
    +   * Unique type URL -> value, like absl::Status payloads.
    +   * 
    + * + * map<string, bytes> payload = 3; + */ + @java.lang.Override + public java.util.Map getPayloadMap() { + return internalGetPayload().getMap(); + } + /** + *
    +   * Unique type URL -> value, like absl::Status payloads.
    +   * 
    + * + * map<string, bytes> payload = 3; + */ + @java.lang.Override + public /* nullable */ +com.google.protobuf.ByteString getPayloadOrDefault( + java.lang.String key, + /* nullable */ +com.google.protobuf.ByteString defaultValue) { + if (key == null) { throw new NullPointerException("map key"); } + java.util.Map map = + internalGetPayload().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + /** + *
    +   * Unique type URL -> value, like absl::Status payloads.
    +   * 
    + * + * map<string, bytes> payload = 3; + */ + @java.lang.Override + public com.google.protobuf.ByteString getPayloadOrThrow( + java.lang.String key) { + if (key == null) { throw new NullPointerException("map key"); } + java.util.Map map = + internalGetPayload().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -140,9 +248,15 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (code_ != org.tensorflow.proto.error.Code.OK.getNumber()) { output.writeEnum(1, code_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(message_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, message_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(message_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, message_); } + com.google.protobuf.GeneratedMessage + .serializeStringMapTo( + output, + internalGetPayload(), + PayloadDefaultEntryHolder.defaultEntry, + 3); getUnknownFields().writeTo(output); } @@ -156,8 +270,18 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeEnumSize(1, code_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(message_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, message_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(message_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, message_); + } + for (java.util.Map.Entry entry + : internalGetPayload().getMap().entrySet()) { + com.google.protobuf.MapEntry + payload__ = PayloadDefaultEntryHolder.defaultEntry.newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, payload__); } size += getUnknownFields().getSerializedSize(); memoizedSize = size; @@ -177,6 +301,8 @@ public boolean equals(final java.lang.Object obj) { if (code_ != other.code_) return false; if (!getMessage() .equals(other.getMessage())) return false; + if (!internalGetPayload().equals( + other.internalGetPayload())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -192,6 +318,10 @@ public int hashCode() { hash = (53 * hash) + code_; hash = (37 * hash) + MESSAGE_FIELD_NUMBER; hash = (53 * hash) + getMessage().hashCode(); + if (!internalGetPayload().getMap().isEmpty()) { + hash = (37 * hash) + PAYLOAD_FIELD_NUMBER; + hash = (53 * hash) + internalGetPayload().hashCode(); + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -231,39 +361,41 @@ public static org.tensorflow.proto.StatusProto parseFrom( } public static org.tensorflow.proto.StatusProto parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.StatusProto parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.StatusProto parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.StatusProto parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.StatusProto parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.StatusProto parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -283,20 +415,20 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
        * Wire-format for Status.
    -   * Next tag: 3
    +   * Next tag: 4
        * 
    * * Protobuf type {@code tensorflow.StatusProto} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.StatusProto) org.tensorflow.proto.StatusProtoOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -304,8 +436,30 @@ public static final class Builder extends return org.tensorflow.proto.Status.internal_static_tensorflow_StatusProto_descriptor; } + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( + int number) { + switch (number) { + case 3: + return internalGetPayload(); + default: + throw new RuntimeException( + "Invalid map field number: " + number); + } + } + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( + int number) { + switch (number) { + case 3: + return internalGetMutablePayload(); + default: + throw new RuntimeException( + "Invalid map field number: " + number); + } + } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.Status.internal_static_tensorflow_StatusProto_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -318,17 +472,17 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; code_ = 0; - message_ = ""; - + internalGetMutablePayload().clear(); return this; } @@ -355,44 +509,25 @@ public org.tensorflow.proto.StatusProto build() { @java.lang.Override public org.tensorflow.proto.StatusProto buildPartial() { org.tensorflow.proto.StatusProto result = new org.tensorflow.proto.StatusProto(this); - result.code_ = code_; - result.message_ = message_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.StatusProto result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.code_ = code_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.message_ = message_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.payload_ = internalGetPayload(); + result.payload_.makeImmutable(); + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.StatusProto) { @@ -410,8 +545,12 @@ public Builder mergeFrom(org.tensorflow.proto.StatusProto other) { } if (!other.getMessage().isEmpty()) { message_ = other.message_; + bitField0_ |= 0x00000002; onChanged(); } + internalGetMutablePayload().mergeFrom( + other.internalGetPayload()); + bitField0_ |= 0x00000004; this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -440,14 +579,23 @@ public Builder mergeFrom( break; case 8: { code_ = input.readEnum(); - + bitField0_ |= 0x00000001; break; } // case 8 case 18: { message_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000002; break; } // case 18 + case 26: { + com.google.protobuf.MapEntry + payload__ = input.readMessage( + PayloadDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); + internalGetMutablePayload().getMutableMap().put( + payload__.getKey(), payload__.getValue()); + bitField0_ |= 0x00000004; + break; + } // case 26 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag @@ -463,11 +611,13 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private int code_ = 0; /** *
    -     * Status code as defined in tensorflow/tsl/protobuf/error_codes.proto.
    +     * Status code as defined in
    +     * tensorflow/compiler/xla/tsl/protobuf/error_codes.proto.
          * 
    * * .tensorflow.error.Code code = 1; @@ -478,7 +628,8 @@ public Builder mergeFrom( } /** *
    -     * Status code as defined in tensorflow/tsl/protobuf/error_codes.proto.
    +     * Status code as defined in
    +     * tensorflow/compiler/xla/tsl/protobuf/error_codes.proto.
          * 
    * * .tensorflow.error.Code code = 1; @@ -486,14 +637,15 @@ public Builder mergeFrom( * @return This builder for chaining. */ public Builder setCodeValue(int value) { - code_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } /** *
    -     * Status code as defined in tensorflow/tsl/protobuf/error_codes.proto.
    +     * Status code as defined in
    +     * tensorflow/compiler/xla/tsl/protobuf/error_codes.proto.
          * 
    * * .tensorflow.error.Code code = 1; @@ -501,13 +653,13 @@ public Builder setCodeValue(int value) { */ @java.lang.Override public org.tensorflow.proto.error.Code getCode() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.error.Code result = org.tensorflow.proto.error.Code.valueOf(code_); + org.tensorflow.proto.error.Code result = org.tensorflow.proto.error.Code.forNumber(code_); return result == null ? org.tensorflow.proto.error.Code.UNRECOGNIZED : result; } /** *
    -     * Status code as defined in tensorflow/tsl/protobuf/error_codes.proto.
    +     * Status code as defined in
    +     * tensorflow/compiler/xla/tsl/protobuf/error_codes.proto.
          * 
    * * .tensorflow.error.Code code = 1; @@ -518,21 +670,22 @@ public Builder setCode(org.tensorflow.proto.error.Code value) { if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00000001; code_ = value.getNumber(); onChanged(); return this; } /** *
    -     * Status code as defined in tensorflow/tsl/protobuf/error_codes.proto.
    +     * Status code as defined in
    +     * tensorflow/compiler/xla/tsl/protobuf/error_codes.proto.
          * 
    * * .tensorflow.error.Code code = 1; * @return This builder for chaining. */ public Builder clearCode() { - + bitField0_ = (bitField0_ & ~0x00000001); code_ = 0; onChanged(); return this; @@ -591,11 +744,9 @@ public java.lang.String getMessage() { */ public Builder setMessage( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } message_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -608,8 +759,8 @@ public Builder setMessage( * @return This builder for chaining. */ public Builder clearMessage() { - message_ = getDefaultInstance().getMessage(); + bitField0_ = (bitField0_ & ~0x00000002); onChanged(); return this; } @@ -624,27 +775,168 @@ public Builder clearMessage() { */ public Builder setMessageBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); message_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } + + private com.google.protobuf.MapField< + java.lang.String, com.google.protobuf.ByteString> payload_; + private com.google.protobuf.MapField + internalGetPayload() { + if (payload_ == null) { + return com.google.protobuf.MapField.emptyMapField( + PayloadDefaultEntryHolder.defaultEntry); + } + return payload_; + } + private com.google.protobuf.MapField + internalGetMutablePayload() { + if (payload_ == null) { + payload_ = com.google.protobuf.MapField.newMapField( + PayloadDefaultEntryHolder.defaultEntry); + } + if (!payload_.isMutable()) { + payload_ = payload_.copy(); + } + bitField0_ |= 0x00000004; + onChanged(); + return payload_; + } + public int getPayloadCount() { + return internalGetPayload().getMap().size(); + } + /** + *
    +     * Unique type URL -> value, like absl::Status payloads.
    +     * 
    + * + * map<string, bytes> payload = 3; + */ @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); + public boolean containsPayload( + java.lang.String key) { + if (key == null) { throw new NullPointerException("map key"); } + return internalGetPayload().getMap().containsKey(key); } - + /** + * Use {@link #getPayloadMap()} instead. + */ @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + @java.lang.Deprecated + public java.util.Map getPayload() { + return getPayloadMap(); + } + /** + *
    +     * Unique type URL -> value, like absl::Status payloads.
    +     * 
    + * + * map<string, bytes> payload = 3; + */ + @java.lang.Override + public java.util.Map getPayloadMap() { + return internalGetPayload().getMap(); + } + /** + *
    +     * Unique type URL -> value, like absl::Status payloads.
    +     * 
    + * + * map<string, bytes> payload = 3; + */ + @java.lang.Override + public /* nullable */ +com.google.protobuf.ByteString getPayloadOrDefault( + java.lang.String key, + /* nullable */ +com.google.protobuf.ByteString defaultValue) { + if (key == null) { throw new NullPointerException("map key"); } + java.util.Map map = + internalGetPayload().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + /** + *
    +     * Unique type URL -> value, like absl::Status payloads.
    +     * 
    + * + * map<string, bytes> payload = 3; + */ + @java.lang.Override + public com.google.protobuf.ByteString getPayloadOrThrow( + java.lang.String key) { + if (key == null) { throw new NullPointerException("map key"); } + java.util.Map map = + internalGetPayload().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + public Builder clearPayload() { + bitField0_ = (bitField0_ & ~0x00000004); + internalGetMutablePayload().getMutableMap() + .clear(); + return this; + } + /** + *
    +     * Unique type URL -> value, like absl::Status payloads.
    +     * 
    + * + * map<string, bytes> payload = 3; + */ + public Builder removePayload( + java.lang.String key) { + if (key == null) { throw new NullPointerException("map key"); } + internalGetMutablePayload().getMutableMap() + .remove(key); + return this; + } + /** + * Use alternate mutation accessors instead. + */ + @java.lang.Deprecated + public java.util.Map + getMutablePayload() { + bitField0_ |= 0x00000004; + return internalGetMutablePayload().getMutableMap(); + } + /** + *
    +     * Unique type URL -> value, like absl::Status payloads.
    +     * 
    + * + * map<string, bytes> payload = 3; + */ + public Builder putPayload( + java.lang.String key, + com.google.protobuf.ByteString value) { + if (key == null) { throw new NullPointerException("map key"); } + if (value == null) { throw new NullPointerException("map value"); } + internalGetMutablePayload().getMutableMap() + .put(key, value); + bitField0_ |= 0x00000004; + return this; + } + /** + *
    +     * Unique type URL -> value, like absl::Status payloads.
    +     * 
    + * + * map<string, bytes> payload = 3; + */ + public Builder putAllPayload( + java.util.Map values) { + internalGetMutablePayload().getMutableMap() + .putAll(values); + bitField0_ |= 0x00000004; + return this; } - // @@protoc_insertion_point(builder_scope:tensorflow.StatusProto) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StatusProtoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StatusProtoOrBuilder.java index a8df57e37b3..ca1ada631f8 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StatusProtoOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StatusProtoOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! -// source: tsl/protobuf/status.proto +// NO CHECKED-IN PROTOBUF GENCODE +// source: xla/tsl/protobuf/status.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -9,7 +11,8 @@ public interface StatusProtoOrBuilder extends /** *
    -   * Status code as defined in tensorflow/tsl/protobuf/error_codes.proto.
    +   * Status code as defined in
    +   * tensorflow/compiler/xla/tsl/protobuf/error_codes.proto.
        * 
    * * .tensorflow.error.Code code = 1; @@ -18,7 +21,8 @@ public interface StatusProtoOrBuilder extends int getCodeValue(); /** *
    -   * Status code as defined in tensorflow/tsl/protobuf/error_codes.proto.
    +   * Status code as defined in
    +   * tensorflow/compiler/xla/tsl/protobuf/error_codes.proto.
        * 
    * * .tensorflow.error.Code code = 1; @@ -45,4 +49,58 @@ public interface StatusProtoOrBuilder extends */ com.google.protobuf.ByteString getMessageBytes(); + + /** + *
    +   * Unique type URL -> value, like absl::Status payloads.
    +   * 
    + * + * map<string, bytes> payload = 3; + */ + int getPayloadCount(); + /** + *
    +   * Unique type URL -> value, like absl::Status payloads.
    +   * 
    + * + * map<string, bytes> payload = 3; + */ + boolean containsPayload( + java.lang.String key); + /** + * Use {@link #getPayloadMap()} instead. + */ + @java.lang.Deprecated + java.util.Map + getPayload(); + /** + *
    +   * Unique type URL -> value, like absl::Status payloads.
    +   * 
    + * + * map<string, bytes> payload = 3; + */ + java.util.Map + getPayloadMap(); + /** + *
    +   * Unique type URL -> value, like absl::Status payloads.
    +   * 
    + * + * map<string, bytes> payload = 3; + */ + /* nullable */ +com.google.protobuf.ByteString getPayloadOrDefault( + java.lang.String key, + /* nullable */ +com.google.protobuf.ByteString defaultValue); + /** + *
    +   * Unique type URL -> value, like absl::Status payloads.
    +   * 
    + * + * map<string, bytes> payload = 3; + */ + com.google.protobuf.ByteString getPayloadOrThrow( + java.lang.String key); } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StepStats.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StepStats.java index 94214d3d0bb..2625199ba7b 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StepStats.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StepStats.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/step_stats.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,37 +9,34 @@ * Protobuf type {@code tensorflow.StepStats} */ public final class StepStats extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.StepStats) StepStatsOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + StepStats.class.getName()); + } // Use StepStats.newBuilder() to construct. - private StepStats(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private StepStats(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private StepStats() { devStats_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new StepStats(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_StepStats_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_StepStats_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -45,6 +44,7 @@ protected java.lang.Object newInstance( } public static final int DEV_STATS_FIELD_NUMBER = 1; + @SuppressWarnings("serial") private java.util.List devStats_; /** * repeated .tensorflow.DeviceStepStats dev_stats = 1; @@ -185,39 +185,41 @@ public static org.tensorflow.proto.StepStats parseFrom( } public static org.tensorflow.proto.StepStats parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.StepStats parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.StepStats parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.StepStats parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.StepStats parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.StepStats parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -237,7 +239,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -245,7 +247,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.StepStats} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.StepStats) org.tensorflow.proto.StepStatsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -254,7 +256,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.StepStatsProtos.internal_static_tensorflow_StepStats_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -267,13 +269,14 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; if (devStatsBuilder_ == null) { devStats_ = java.util.Collections.emptyList(); } else { @@ -307,7 +310,13 @@ public org.tensorflow.proto.StepStats build() { @java.lang.Override public org.tensorflow.proto.StepStats buildPartial() { org.tensorflow.proto.StepStats result = new org.tensorflow.proto.StepStats(this); - int from_bitField0_ = bitField0_; + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(org.tensorflow.proto.StepStats result) { if (devStatsBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { devStats_ = java.util.Collections.unmodifiableList(devStats_); @@ -317,42 +326,12 @@ public org.tensorflow.proto.StepStats buildPartial() { } else { result.devStats_ = devStatsBuilder_.build(); } - onBuilt(); - return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.StepStats result) { + int from_bitField0_ = bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.StepStats) { @@ -384,7 +363,7 @@ public Builder mergeFrom(org.tensorflow.proto.StepStats other) { devStats_ = other.devStats_; bitField0_ = (bitField0_ & ~0x00000001); devStatsBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getDevStatsFieldBuilder() : null; } else { devStatsBuilder_.addAllMessages(other.devStats_); @@ -456,7 +435,7 @@ private void ensureDevStatsIsMutable() { } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.DeviceStepStats, org.tensorflow.proto.DeviceStepStats.Builder, org.tensorflow.proto.DeviceStepStatsOrBuilder> devStatsBuilder_; /** @@ -672,11 +651,11 @@ public org.tensorflow.proto.DeviceStepStats.Builder addDevStatsBuilder( getDevStatsBuilderList() { return getDevStatsFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.DeviceStepStats, org.tensorflow.proto.DeviceStepStats.Builder, org.tensorflow.proto.DeviceStepStatsOrBuilder> getDevStatsFieldBuilder() { if (devStatsBuilder_ == null) { - devStatsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + devStatsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.DeviceStepStats, org.tensorflow.proto.DeviceStepStats.Builder, org.tensorflow.proto.DeviceStepStatsOrBuilder>( devStats_, ((bitField0_ & 0x00000001) != 0), @@ -686,18 +665,6 @@ public org.tensorflow.proto.DeviceStepStats.Builder addDevStatsBuilder( } return devStatsBuilder_; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.StepStats) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StepStatsOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StepStatsOrBuilder.java index 4d523784da8..3accebd26e9 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StepStatsOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StepStatsOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/step_stats.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StepStatsProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StepStatsProtos.java index d829afd3d35..859a9f24f42 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StepStatsProtos.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/StepStatsProtos.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/step_stats.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; public final class StepStatsProtos { private StepStatsProtos() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + StepStatsProtos.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -17,42 +28,42 @@ public static void registerAllExtensions( static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_AllocationRecord_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_AllocationRecord_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_AllocatorMemoryUsed_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_AllocatorMemoryUsed_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_NodeOutput_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_NodeOutput_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_MemoryStats_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_MemoryStats_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_NodeExecStats_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_NodeExecStats_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_DeviceStepStats_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_DeviceStepStats_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_DeviceStepStats_ThreadNamesEntry_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_DeviceStepStats_ThreadNamesEntry_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_StepStats_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_StepStats_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor @@ -116,51 +127,52 @@ public static void registerAllExtensions( internal_static_tensorflow_AllocationRecord_descriptor = getDescriptor().getMessageTypes().get(0); internal_static_tensorflow_AllocationRecord_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_AllocationRecord_descriptor, new java.lang.String[] { "AllocMicros", "AllocBytes", }); internal_static_tensorflow_AllocatorMemoryUsed_descriptor = getDescriptor().getMessageTypes().get(1); internal_static_tensorflow_AllocatorMemoryUsed_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_AllocatorMemoryUsed_descriptor, new java.lang.String[] { "AllocatorName", "TotalBytes", "PeakBytes", "LiveBytes", "AllocationRecords", "AllocatorBytesInUse", }); internal_static_tensorflow_NodeOutput_descriptor = getDescriptor().getMessageTypes().get(2); internal_static_tensorflow_NodeOutput_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_NodeOutput_descriptor, new java.lang.String[] { "Slot", "TensorDescription", }); internal_static_tensorflow_MemoryStats_descriptor = getDescriptor().getMessageTypes().get(3); internal_static_tensorflow_MemoryStats_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_MemoryStats_descriptor, new java.lang.String[] { "TempMemorySize", "PersistentMemorySize", "PersistentTensorAllocIds", "DeviceTempMemorySize", "DevicePersistentMemorySize", "DevicePersistentTensorAllocIds", }); internal_static_tensorflow_NodeExecStats_descriptor = getDescriptor().getMessageTypes().get(4); internal_static_tensorflow_NodeExecStats_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_NodeExecStats_descriptor, new java.lang.String[] { "NodeName", "AllStartMicros", "OpStartRelMicros", "OpEndRelMicros", "AllEndRelMicros", "Memory", "Output", "TimelineLabel", "ScheduledMicros", "ThreadId", "ReferencedTensor", "MemoryStats", "AllStartNanos", "OpStartRelNanos", "OpEndRelNanos", "AllEndRelNanos", "ScheduledNanos", }); internal_static_tensorflow_DeviceStepStats_descriptor = getDescriptor().getMessageTypes().get(5); internal_static_tensorflow_DeviceStepStats_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_DeviceStepStats_descriptor, new java.lang.String[] { "Device", "NodeStats", "ThreadNames", }); internal_static_tensorflow_DeviceStepStats_ThreadNamesEntry_descriptor = internal_static_tensorflow_DeviceStepStats_descriptor.getNestedTypes().get(0); internal_static_tensorflow_DeviceStepStats_ThreadNamesEntry_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_DeviceStepStats_ThreadNamesEntry_descriptor, new java.lang.String[] { "Key", "Value", }); internal_static_tensorflow_StepStats_descriptor = getDescriptor().getMessageTypes().get(6); internal_static_tensorflow_StepStats_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_StepStats_descriptor, new java.lang.String[] { "DevStats", }); + descriptor.resolveAllFeaturesImmutable(); org.tensorflow.proto.AllocationDescriptionProtos.getDescriptor(); org.tensorflow.proto.TensorDescriptionProtos.getDescriptor(); } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Struct.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Struct.java index 7e2a874260e..4c87522127d 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Struct.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Struct.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/struct.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; public final class Struct { private Struct() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + Struct.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -446,17 +457,19 @@ public interface StructuredValueOrBuilder extends */ org.tensorflow.proto.TensorProtoOrBuilder getNumpyValueOrBuilder(); - public org.tensorflow.proto.Struct.StructuredValue.KindCase getKindCase(); + org.tensorflow.proto.Struct.StructuredValue.KindCase getKindCase(); } /** *
        * `StructuredValue` represents a dynamically typed value representing various
        * data structures that are inspired by Python data structures typically used in
        * TensorFlow functions as inputs and outputs.
    +   *
        * For example when saving a Layer there may be a `training` argument. If the
        * user passes a boolean True/False, that switches between two concrete
        * TensorFlow functions. In order to switch between them in the same way after
        * loading the SavedModel, we need to represent "True" and "False".
    +   *
        * A more advanced example might be a function which takes a list of
        * dictionaries mapping from strings to Tensors. In order to map from
        * user-specified arguments `[{"a": tf.constant(1.)}, {"q": tf.constant(3.)}]`
    @@ -464,9 +477,11 @@ public interface StructuredValueOrBuilder extends
        * nested structure and the strings, recording that we have a trace for anything
        * matching `[{"a": tf.TensorSpec(None, tf.float32)}, {"q": tf.TensorSpec([],
        * tf.float64)}]` as an example.
    +   *
        * Likewise functions may return nested structures of Tensors, for example
        * returning a dictionary mapping from strings to Tensors. In order for the
        * loaded function to return the same structure we need to serialize it.
    +   *
        * This is an ergonomic aid for working with loaded SavedModels, not a promise
        * to serialize all possible function signatures. For example we do not expect
        * to pickle generic Python objects, and ideally we'd stay language-agnostic.
    @@ -475,36 +490,33 @@ public interface StructuredValueOrBuilder extends
        * Protobuf type {@code tensorflow.StructuredValue}
        */
       public static final class StructuredValue extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.StructuredValue)
           StructuredValueOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        StructuredValue.class.getName());
    +    }
         // Use StructuredValue.newBuilder() to construct.
    -    private StructuredValue(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private StructuredValue(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private StructuredValue() {
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new StructuredValue();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.Struct.internal_static_tensorflow_StructuredValue_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.Struct.internal_static_tensorflow_StructuredValue_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -512,6 +524,7 @@ protected java.lang.Object newInstance(
         }
     
         private int kindCase_ = 0;
    +    @SuppressWarnings("serial")
         private java.lang.Object kind_;
         public enum KindCase
             implements com.google.protobuf.Internal.EnumLite,
    @@ -870,8 +883,7 @@ public int getTensorDtypeValueValue() {
          */
         public org.tensorflow.proto.DataType getTensorDtypeValue() {
           if (kindCase_ == 32) {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(
    +        org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(
                 (java.lang.Integer) kind_);
             return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
           }
    @@ -1291,7 +1303,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
                 12, (long)((java.lang.Long) kind_));
           }
           if (kindCase_ == 13) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 13, kind_);
    +        com.google.protobuf.GeneratedMessage.writeString(output, 13, kind_);
           }
           if (kindCase_ == 14) {
             output.writeBool(
    @@ -1354,7 +1366,7 @@ public int getSerializedSize() {
                   12, (long)((java.lang.Long) kind_));
           }
           if (kindCase_ == 13) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(13, kind_);
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(13, kind_);
           }
           if (kindCase_ == 14) {
             size += com.google.protobuf.CodedOutputStream
    @@ -1611,39 +1623,41 @@ public static org.tensorflow.proto.Struct.StructuredValue parseFrom(
         }
         public static org.tensorflow.proto.Struct.StructuredValue parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.StructuredValue parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.Struct.StructuredValue parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.Struct.StructuredValue parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.Struct.StructuredValue parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.StructuredValue parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -1663,7 +1677,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -1672,10 +1686,12 @@ protected Builder newBuilderForType(
          * `StructuredValue` represents a dynamically typed value representing various
          * data structures that are inspired by Python data structures typically used in
          * TensorFlow functions as inputs and outputs.
    +     *
          * For example when saving a Layer there may be a `training` argument. If the
          * user passes a boolean True/False, that switches between two concrete
          * TensorFlow functions. In order to switch between them in the same way after
          * loading the SavedModel, we need to represent "True" and "False".
    +     *
          * A more advanced example might be a function which takes a list of
          * dictionaries mapping from strings to Tensors. In order to map from
          * user-specified arguments `[{"a": tf.constant(1.)}, {"q": tf.constant(3.)}]`
    @@ -1683,9 +1699,11 @@ protected Builder newBuilderForType(
          * nested structure and the strings, recording that we have a trace for anything
          * matching `[{"a": tf.TensorSpec(None, tf.float32)}, {"q": tf.TensorSpec([],
          * tf.float64)}]` as an example.
    +     *
          * Likewise functions may return nested structures of Tensors, for example
          * returning a dictionary mapping from strings to Tensors. In order for the
          * loaded function to return the same structure we need to serialize it.
    +     *
          * This is an ergonomic aid for working with loaded SavedModels, not a promise
          * to serialize all possible function signatures. For example we do not expect
          * to pickle generic Python objects, and ideally we'd stay language-agnostic.
    @@ -1694,7 +1712,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.StructuredValue}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.StructuredValue)
             org.tensorflow.proto.Struct.StructuredValueOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1703,7 +1721,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.Struct.internal_static_tensorflow_StructuredValue_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -1716,13 +1734,14 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             if (noneValueBuilder_ != null) {
               noneValueBuilder_.clear();
             }
    @@ -1784,135 +1803,65 @@ public org.tensorflow.proto.Struct.StructuredValue build() {
           @java.lang.Override
           public org.tensorflow.proto.Struct.StructuredValue buildPartial() {
             org.tensorflow.proto.Struct.StructuredValue result = new org.tensorflow.proto.Struct.StructuredValue(this);
    -        if (kindCase_ == 1) {
    -          if (noneValueBuilder_ == null) {
    -            result.kind_ = kind_;
    -          } else {
    -            result.kind_ = noneValueBuilder_.build();
    -          }
    -        }
    -        if (kindCase_ == 11) {
    -          result.kind_ = kind_;
    -        }
    -        if (kindCase_ == 12) {
    -          result.kind_ = kind_;
    -        }
    -        if (kindCase_ == 13) {
    -          result.kind_ = kind_;
    -        }
    -        if (kindCase_ == 14) {
    -          result.kind_ = kind_;
    -        }
    -        if (kindCase_ == 31) {
    -          if (tensorShapeValueBuilder_ == null) {
    -            result.kind_ = kind_;
    -          } else {
    -            result.kind_ = tensorShapeValueBuilder_.build();
    -          }
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        buildPartialOneofs(result);
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartial0(org.tensorflow.proto.Struct.StructuredValue result) {
    +        int from_bitField0_ = bitField0_;
    +      }
    +
    +      private void buildPartialOneofs(org.tensorflow.proto.Struct.StructuredValue result) {
    +        result.kindCase_ = kindCase_;
    +        result.kind_ = this.kind_;
    +        if (kindCase_ == 1 &&
    +            noneValueBuilder_ != null) {
    +          result.kind_ = noneValueBuilder_.build();
             }
    -        if (kindCase_ == 32) {
    -          result.kind_ = kind_;
    +        if (kindCase_ == 31 &&
    +            tensorShapeValueBuilder_ != null) {
    +          result.kind_ = tensorShapeValueBuilder_.build();
             }
    -        if (kindCase_ == 33) {
    -          if (tensorSpecValueBuilder_ == null) {
    -            result.kind_ = kind_;
    -          } else {
    -            result.kind_ = tensorSpecValueBuilder_.build();
    -          }
    +        if (kindCase_ == 33 &&
    +            tensorSpecValueBuilder_ != null) {
    +          result.kind_ = tensorSpecValueBuilder_.build();
             }
    -        if (kindCase_ == 34) {
    -          if (typeSpecValueBuilder_ == null) {
    -            result.kind_ = kind_;
    -          } else {
    -            result.kind_ = typeSpecValueBuilder_.build();
    -          }
    +        if (kindCase_ == 34 &&
    +            typeSpecValueBuilder_ != null) {
    +          result.kind_ = typeSpecValueBuilder_.build();
             }
    -        if (kindCase_ == 35) {
    -          if (boundedTensorSpecValueBuilder_ == null) {
    -            result.kind_ = kind_;
    -          } else {
    -            result.kind_ = boundedTensorSpecValueBuilder_.build();
    -          }
    +        if (kindCase_ == 35 &&
    +            boundedTensorSpecValueBuilder_ != null) {
    +          result.kind_ = boundedTensorSpecValueBuilder_.build();
             }
    -        if (kindCase_ == 51) {
    -          if (listValueBuilder_ == null) {
    -            result.kind_ = kind_;
    -          } else {
    -            result.kind_ = listValueBuilder_.build();
    -          }
    +        if (kindCase_ == 51 &&
    +            listValueBuilder_ != null) {
    +          result.kind_ = listValueBuilder_.build();
             }
    -        if (kindCase_ == 52) {
    -          if (tupleValueBuilder_ == null) {
    -            result.kind_ = kind_;
    -          } else {
    -            result.kind_ = tupleValueBuilder_.build();
    -          }
    +        if (kindCase_ == 52 &&
    +            tupleValueBuilder_ != null) {
    +          result.kind_ = tupleValueBuilder_.build();
             }
    -        if (kindCase_ == 53) {
    -          if (dictValueBuilder_ == null) {
    -            result.kind_ = kind_;
    -          } else {
    -            result.kind_ = dictValueBuilder_.build();
    -          }
    +        if (kindCase_ == 53 &&
    +            dictValueBuilder_ != null) {
    +          result.kind_ = dictValueBuilder_.build();
             }
    -        if (kindCase_ == 54) {
    -          if (namedTupleValueBuilder_ == null) {
    -            result.kind_ = kind_;
    -          } else {
    -            result.kind_ = namedTupleValueBuilder_.build();
    -          }
    +        if (kindCase_ == 54 &&
    +            namedTupleValueBuilder_ != null) {
    +          result.kind_ = namedTupleValueBuilder_.build();
             }
    -        if (kindCase_ == 55) {
    -          if (tensorValueBuilder_ == null) {
    -            result.kind_ = kind_;
    -          } else {
    -            result.kind_ = tensorValueBuilder_.build();
    -          }
    +        if (kindCase_ == 55 &&
    +            tensorValueBuilder_ != null) {
    +          result.kind_ = tensorValueBuilder_.build();
             }
    -        if (kindCase_ == 56) {
    -          if (numpyValueBuilder_ == null) {
    -            result.kind_ = kind_;
    -          } else {
    -            result.kind_ = numpyValueBuilder_.build();
    -          }
    +        if (kindCase_ == 56 &&
    +            numpyValueBuilder_ != null) {
    +          result.kind_ = numpyValueBuilder_.build();
             }
    -        result.kindCase_ = kindCase_;
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    -      }
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.Struct.StructuredValue) {
    @@ -2156,8 +2105,9 @@ public Builder clearKind() {
             return this;
           }
     
    +      private int bitField0_;
     
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.NoneValue, org.tensorflow.proto.Struct.NoneValue.Builder, org.tensorflow.proto.Struct.NoneValueOrBuilder> noneValueBuilder_;
           /**
            * 
    @@ -2316,14 +2266,14 @@ public org.tensorflow.proto.Struct.NoneValueOrBuilder getNoneValueOrBuilder() {
            *
            * .tensorflow.NoneValue none_value = 1;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.NoneValue, org.tensorflow.proto.Struct.NoneValue.Builder, org.tensorflow.proto.Struct.NoneValueOrBuilder> 
               getNoneValueFieldBuilder() {
             if (noneValueBuilder_ == null) {
               if (!(kindCase_ == 1)) {
                 kind_ = org.tensorflow.proto.Struct.NoneValue.getDefaultInstance();
               }
    -          noneValueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          noneValueBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.Struct.NoneValue, org.tensorflow.proto.Struct.NoneValue.Builder, org.tensorflow.proto.Struct.NoneValueOrBuilder>(
                       (org.tensorflow.proto.Struct.NoneValue) kind_,
                       getParentForChildren(),
    @@ -2331,7 +2281,7 @@ public org.tensorflow.proto.Struct.NoneValueOrBuilder getNoneValueOrBuilder() {
               kind_ = null;
             }
             kindCase_ = 1;
    -        onChanged();;
    +        onChanged();
             return noneValueBuilder_;
           }
     
    @@ -2370,6 +2320,7 @@ public double getFloat64Value() {
            * @return This builder for chaining.
            */
           public Builder setFloat64Value(double value) {
    +
             kindCase_ = 11;
             kind_ = value;
             onChanged();
    @@ -2430,6 +2381,7 @@ public long getInt64Value() {
            * @return This builder for chaining.
            */
           public Builder setInt64Value(long value) {
    +
             kindCase_ = 12;
             kind_ = value;
             onChanged();
    @@ -2549,10 +2501,8 @@ public java.lang.String getStringValue() {
            */
           public Builder setStringValue(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  kindCase_ = 13;
    +        if (value == null) { throw new NullPointerException(); }
    +        kindCase_ = 13;
             kind_ = value;
             onChanged();
             return this;
    @@ -2594,10 +2544,8 @@ public Builder clearStringValue() {
            */
           public Builder setStringValueBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             kindCase_ = 13;
             kind_ = value;
             onChanged();
    @@ -2639,6 +2587,7 @@ public boolean getBoolValue() {
            * @return This builder for chaining.
            */
           public Builder setBoolValue(boolean value) {
    +
             kindCase_ = 14;
             kind_ = value;
             onChanged();
    @@ -2661,7 +2610,7 @@ public Builder clearBoolValue() {
             return this;
           }
     
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> tensorShapeValueBuilder_;
           /**
            * 
    @@ -2820,14 +2769,14 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getTensorShapeValueOrBuild
            *
            * .tensorflow.TensorShapeProto tensor_shape_value = 31;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> 
               getTensorShapeValueFieldBuilder() {
             if (tensorShapeValueBuilder_ == null) {
               if (!(kindCase_ == 31)) {
                 kind_ = org.tensorflow.proto.TensorShapeProto.getDefaultInstance();
               }
    -          tensorShapeValueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          tensorShapeValueBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>(
                       (org.tensorflow.proto.TensorShapeProto) kind_,
                       getParentForChildren(),
    @@ -2835,7 +2784,7 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getTensorShapeValueOrBuild
               kind_ = null;
             }
             kindCase_ = 31;
    -        onChanged();;
    +        onChanged();
             return tensorShapeValueBuilder_;
           }
     
    @@ -2892,8 +2841,7 @@ public Builder setTensorDtypeValueValue(int value) {
           @java.lang.Override
           public org.tensorflow.proto.DataType getTensorDtypeValue() {
             if (kindCase_ == 32) {
    -          @SuppressWarnings("deprecation")
    -          org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(
    +          org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(
                   (java.lang.Integer) kind_);
               return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
             }
    @@ -2934,7 +2882,7 @@ public Builder clearTensorDtypeValue() {
             return this;
           }
     
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.TensorSpecProto, org.tensorflow.proto.Struct.TensorSpecProto.Builder, org.tensorflow.proto.Struct.TensorSpecProtoOrBuilder> tensorSpecValueBuilder_;
           /**
            * 
    @@ -3093,14 +3041,14 @@ public org.tensorflow.proto.Struct.TensorSpecProtoOrBuilder getTensorSpecValueOr
            *
            * .tensorflow.TensorSpecProto tensor_spec_value = 33;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.TensorSpecProto, org.tensorflow.proto.Struct.TensorSpecProto.Builder, org.tensorflow.proto.Struct.TensorSpecProtoOrBuilder> 
               getTensorSpecValueFieldBuilder() {
             if (tensorSpecValueBuilder_ == null) {
               if (!(kindCase_ == 33)) {
                 kind_ = org.tensorflow.proto.Struct.TensorSpecProto.getDefaultInstance();
               }
    -          tensorSpecValueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          tensorSpecValueBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.Struct.TensorSpecProto, org.tensorflow.proto.Struct.TensorSpecProto.Builder, org.tensorflow.proto.Struct.TensorSpecProtoOrBuilder>(
                       (org.tensorflow.proto.Struct.TensorSpecProto) kind_,
                       getParentForChildren(),
    @@ -3108,11 +3056,11 @@ public org.tensorflow.proto.Struct.TensorSpecProtoOrBuilder getTensorSpecValueOr
               kind_ = null;
             }
             kindCase_ = 33;
    -        onChanged();;
    +        onChanged();
             return tensorSpecValueBuilder_;
           }
     
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.TypeSpecProto, org.tensorflow.proto.Struct.TypeSpecProto.Builder, org.tensorflow.proto.Struct.TypeSpecProtoOrBuilder> typeSpecValueBuilder_;
           /**
            * 
    @@ -3271,14 +3219,14 @@ public org.tensorflow.proto.Struct.TypeSpecProtoOrBuilder getTypeSpecValueOrBuil
            *
            * .tensorflow.TypeSpecProto type_spec_value = 34;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.TypeSpecProto, org.tensorflow.proto.Struct.TypeSpecProto.Builder, org.tensorflow.proto.Struct.TypeSpecProtoOrBuilder> 
               getTypeSpecValueFieldBuilder() {
             if (typeSpecValueBuilder_ == null) {
               if (!(kindCase_ == 34)) {
                 kind_ = org.tensorflow.proto.Struct.TypeSpecProto.getDefaultInstance();
               }
    -          typeSpecValueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          typeSpecValueBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.Struct.TypeSpecProto, org.tensorflow.proto.Struct.TypeSpecProto.Builder, org.tensorflow.proto.Struct.TypeSpecProtoOrBuilder>(
                       (org.tensorflow.proto.Struct.TypeSpecProto) kind_,
                       getParentForChildren(),
    @@ -3286,11 +3234,11 @@ public org.tensorflow.proto.Struct.TypeSpecProtoOrBuilder getTypeSpecValueOrBuil
               kind_ = null;
             }
             kindCase_ = 34;
    -        onChanged();;
    +        onChanged();
             return typeSpecValueBuilder_;
           }
     
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.BoundedTensorSpecProto, org.tensorflow.proto.Struct.BoundedTensorSpecProto.Builder, org.tensorflow.proto.Struct.BoundedTensorSpecProtoOrBuilder> boundedTensorSpecValueBuilder_;
           /**
            * 
    @@ -3449,14 +3397,14 @@ public org.tensorflow.proto.Struct.BoundedTensorSpecProtoOrBuilder getBoundedTen
            *
            * .tensorflow.BoundedTensorSpecProto bounded_tensor_spec_value = 35;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.BoundedTensorSpecProto, org.tensorflow.proto.Struct.BoundedTensorSpecProto.Builder, org.tensorflow.proto.Struct.BoundedTensorSpecProtoOrBuilder> 
               getBoundedTensorSpecValueFieldBuilder() {
             if (boundedTensorSpecValueBuilder_ == null) {
               if (!(kindCase_ == 35)) {
                 kind_ = org.tensorflow.proto.Struct.BoundedTensorSpecProto.getDefaultInstance();
               }
    -          boundedTensorSpecValueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          boundedTensorSpecValueBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.Struct.BoundedTensorSpecProto, org.tensorflow.proto.Struct.BoundedTensorSpecProto.Builder, org.tensorflow.proto.Struct.BoundedTensorSpecProtoOrBuilder>(
                       (org.tensorflow.proto.Struct.BoundedTensorSpecProto) kind_,
                       getParentForChildren(),
    @@ -3464,11 +3412,11 @@ public org.tensorflow.proto.Struct.BoundedTensorSpecProtoOrBuilder getBoundedTen
               kind_ = null;
             }
             kindCase_ = 35;
    -        onChanged();;
    +        onChanged();
             return boundedTensorSpecValueBuilder_;
           }
     
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.ListValue, org.tensorflow.proto.Struct.ListValue.Builder, org.tensorflow.proto.Struct.ListValueOrBuilder> listValueBuilder_;
           /**
            * 
    @@ -3627,14 +3575,14 @@ public org.tensorflow.proto.Struct.ListValueOrBuilder getListValueOrBuilder() {
            *
            * .tensorflow.ListValue list_value = 51;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.ListValue, org.tensorflow.proto.Struct.ListValue.Builder, org.tensorflow.proto.Struct.ListValueOrBuilder> 
               getListValueFieldBuilder() {
             if (listValueBuilder_ == null) {
               if (!(kindCase_ == 51)) {
                 kind_ = org.tensorflow.proto.Struct.ListValue.getDefaultInstance();
               }
    -          listValueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          listValueBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.Struct.ListValue, org.tensorflow.proto.Struct.ListValue.Builder, org.tensorflow.proto.Struct.ListValueOrBuilder>(
                       (org.tensorflow.proto.Struct.ListValue) kind_,
                       getParentForChildren(),
    @@ -3642,11 +3590,11 @@ public org.tensorflow.proto.Struct.ListValueOrBuilder getListValueOrBuilder() {
               kind_ = null;
             }
             kindCase_ = 51;
    -        onChanged();;
    +        onChanged();
             return listValueBuilder_;
           }
     
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.TupleValue, org.tensorflow.proto.Struct.TupleValue.Builder, org.tensorflow.proto.Struct.TupleValueOrBuilder> tupleValueBuilder_;
           /**
            * 
    @@ -3805,14 +3753,14 @@ public org.tensorflow.proto.Struct.TupleValueOrBuilder getTupleValueOrBuilder()
            *
            * .tensorflow.TupleValue tuple_value = 52;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.TupleValue, org.tensorflow.proto.Struct.TupleValue.Builder, org.tensorflow.proto.Struct.TupleValueOrBuilder> 
               getTupleValueFieldBuilder() {
             if (tupleValueBuilder_ == null) {
               if (!(kindCase_ == 52)) {
                 kind_ = org.tensorflow.proto.Struct.TupleValue.getDefaultInstance();
               }
    -          tupleValueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          tupleValueBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.Struct.TupleValue, org.tensorflow.proto.Struct.TupleValue.Builder, org.tensorflow.proto.Struct.TupleValueOrBuilder>(
                       (org.tensorflow.proto.Struct.TupleValue) kind_,
                       getParentForChildren(),
    @@ -3820,11 +3768,11 @@ public org.tensorflow.proto.Struct.TupleValueOrBuilder getTupleValueOrBuilder()
               kind_ = null;
             }
             kindCase_ = 52;
    -        onChanged();;
    +        onChanged();
             return tupleValueBuilder_;
           }
     
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.DictValue, org.tensorflow.proto.Struct.DictValue.Builder, org.tensorflow.proto.Struct.DictValueOrBuilder> dictValueBuilder_;
           /**
            * 
    @@ -3983,14 +3931,14 @@ public org.tensorflow.proto.Struct.DictValueOrBuilder getDictValueOrBuilder() {
            *
            * .tensorflow.DictValue dict_value = 53;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.DictValue, org.tensorflow.proto.Struct.DictValue.Builder, org.tensorflow.proto.Struct.DictValueOrBuilder> 
               getDictValueFieldBuilder() {
             if (dictValueBuilder_ == null) {
               if (!(kindCase_ == 53)) {
                 kind_ = org.tensorflow.proto.Struct.DictValue.getDefaultInstance();
               }
    -          dictValueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          dictValueBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.Struct.DictValue, org.tensorflow.proto.Struct.DictValue.Builder, org.tensorflow.proto.Struct.DictValueOrBuilder>(
                       (org.tensorflow.proto.Struct.DictValue) kind_,
                       getParentForChildren(),
    @@ -3998,11 +3946,11 @@ public org.tensorflow.proto.Struct.DictValueOrBuilder getDictValueOrBuilder() {
               kind_ = null;
             }
             kindCase_ = 53;
    -        onChanged();;
    +        onChanged();
             return dictValueBuilder_;
           }
     
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.NamedTupleValue, org.tensorflow.proto.Struct.NamedTupleValue.Builder, org.tensorflow.proto.Struct.NamedTupleValueOrBuilder> namedTupleValueBuilder_;
           /**
            * 
    @@ -4161,14 +4109,14 @@ public org.tensorflow.proto.Struct.NamedTupleValueOrBuilder getNamedTupleValueOr
            *
            * .tensorflow.NamedTupleValue named_tuple_value = 54;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.NamedTupleValue, org.tensorflow.proto.Struct.NamedTupleValue.Builder, org.tensorflow.proto.Struct.NamedTupleValueOrBuilder> 
               getNamedTupleValueFieldBuilder() {
             if (namedTupleValueBuilder_ == null) {
               if (!(kindCase_ == 54)) {
                 kind_ = org.tensorflow.proto.Struct.NamedTupleValue.getDefaultInstance();
               }
    -          namedTupleValueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          namedTupleValueBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.Struct.NamedTupleValue, org.tensorflow.proto.Struct.NamedTupleValue.Builder, org.tensorflow.proto.Struct.NamedTupleValueOrBuilder>(
                       (org.tensorflow.proto.Struct.NamedTupleValue) kind_,
                       getParentForChildren(),
    @@ -4176,11 +4124,11 @@ public org.tensorflow.proto.Struct.NamedTupleValueOrBuilder getNamedTupleValueOr
               kind_ = null;
             }
             kindCase_ = 54;
    -        onChanged();;
    +        onChanged();
             return namedTupleValueBuilder_;
           }
     
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> tensorValueBuilder_;
           /**
            * 
    @@ -4339,14 +4287,14 @@ public org.tensorflow.proto.TensorProtoOrBuilder getTensorValueOrBuilder() {
            *
            * .tensorflow.TensorProto tensor_value = 55;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> 
               getTensorValueFieldBuilder() {
             if (tensorValueBuilder_ == null) {
               if (!(kindCase_ == 55)) {
                 kind_ = org.tensorflow.proto.TensorProto.getDefaultInstance();
               }
    -          tensorValueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          tensorValueBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder>(
                       (org.tensorflow.proto.TensorProto) kind_,
                       getParentForChildren(),
    @@ -4354,11 +4302,11 @@ public org.tensorflow.proto.TensorProtoOrBuilder getTensorValueOrBuilder() {
               kind_ = null;
             }
             kindCase_ = 55;
    -        onChanged();;
    +        onChanged();
             return tensorValueBuilder_;
           }
     
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> numpyValueBuilder_;
           /**
            * 
    @@ -4517,14 +4465,14 @@ public org.tensorflow.proto.TensorProtoOrBuilder getNumpyValueOrBuilder() {
            *
            * .tensorflow.TensorProto numpy_value = 56;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> 
               getNumpyValueFieldBuilder() {
             if (numpyValueBuilder_ == null) {
               if (!(kindCase_ == 56)) {
                 kind_ = org.tensorflow.proto.TensorProto.getDefaultInstance();
               }
    -          numpyValueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          numpyValueBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder>(
                       (org.tensorflow.proto.TensorProto) kind_,
                       getParentForChildren(),
    @@ -4532,21 +4480,9 @@ public org.tensorflow.proto.TensorProtoOrBuilder getNumpyValueOrBuilder() {
               kind_ = null;
             }
             kindCase_ = 56;
    -        onChanged();;
    +        onChanged();
             return numpyValueBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.StructuredValue)
         }
    @@ -4611,36 +4547,33 @@ public interface NoneValueOrBuilder extends
        * Protobuf type {@code tensorflow.NoneValue}
        */
       public static final class NoneValue extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.NoneValue)
           NoneValueOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        NoneValue.class.getName());
    +    }
         // Use NoneValue.newBuilder() to construct.
    -    private NoneValue(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private NoneValue(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private NoneValue() {
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new NoneValue();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.Struct.internal_static_tensorflow_NoneValue_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.Struct.internal_static_tensorflow_NoneValue_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -4735,39 +4668,41 @@ public static org.tensorflow.proto.Struct.NoneValue parseFrom(
         }
         public static org.tensorflow.proto.Struct.NoneValue parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.NoneValue parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.Struct.NoneValue parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.Struct.NoneValue parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.Struct.NoneValue parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.NoneValue parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -4787,7 +4722,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -4799,7 +4734,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.NoneValue}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.NoneValue)
             org.tensorflow.proto.Struct.NoneValueOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -4808,7 +4743,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.Struct.internal_static_tensorflow_NoneValue_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -4821,7 +4756,7 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
    @@ -4858,38 +4793,6 @@ public org.tensorflow.proto.Struct.NoneValue buildPartial() {
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    -      }
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.Struct.NoneValue) {
    @@ -4943,18 +4846,6 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.NoneValue)
         }
    @@ -5043,37 +4934,34 @@ org.tensorflow.proto.Struct.StructuredValueOrBuilder getValuesOrBuilder(
        * Protobuf type {@code tensorflow.ListValue}
        */
       public static final class ListValue extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.ListValue)
           ListValueOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        ListValue.class.getName());
    +    }
         // Use ListValue.newBuilder() to construct.
    -    private ListValue(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private ListValue(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private ListValue() {
           values_ = java.util.Collections.emptyList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new ListValue();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.Struct.internal_static_tensorflow_ListValue_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.Struct.internal_static_tensorflow_ListValue_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -5081,6 +4969,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int VALUES_FIELD_NUMBER = 1;
    +    @SuppressWarnings("serial")
         private java.util.List values_;
         /**
          * repeated .tensorflow.StructuredValue values = 1;
    @@ -5221,39 +5110,41 @@ public static org.tensorflow.proto.Struct.ListValue parseFrom(
         }
         public static org.tensorflow.proto.Struct.ListValue parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.ListValue parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.Struct.ListValue parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.Struct.ListValue parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.Struct.ListValue parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.ListValue parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -5273,7 +5164,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -5285,7 +5176,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.ListValue}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.ListValue)
             org.tensorflow.proto.Struct.ListValueOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -5294,7 +5185,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.Struct.internal_static_tensorflow_ListValue_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -5307,13 +5198,14 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             if (valuesBuilder_ == null) {
               values_ = java.util.Collections.emptyList();
             } else {
    @@ -5347,7 +5239,13 @@ public org.tensorflow.proto.Struct.ListValue build() {
           @java.lang.Override
           public org.tensorflow.proto.Struct.ListValue buildPartial() {
             org.tensorflow.proto.Struct.ListValue result = new org.tensorflow.proto.Struct.ListValue(this);
    -        int from_bitField0_ = bitField0_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.Struct.ListValue result) {
             if (valuesBuilder_ == null) {
               if (((bitField0_ & 0x00000001) != 0)) {
                 values_ = java.util.Collections.unmodifiableList(values_);
    @@ -5357,42 +5255,12 @@ public org.tensorflow.proto.Struct.ListValue buildPartial() {
             } else {
               result.values_ = valuesBuilder_.build();
             }
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.Struct.ListValue result) {
    +        int from_bitField0_ = bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.Struct.ListValue) {
    @@ -5424,7 +5292,7 @@ public Builder mergeFrom(org.tensorflow.proto.Struct.ListValue other) {
                   values_ = other.values_;
                   bitField0_ = (bitField0_ & ~0x00000001);
                   valuesBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getValuesFieldBuilder() : null;
                 } else {
                   valuesBuilder_.addAllMessages(other.values_);
    @@ -5496,7 +5364,7 @@ private void ensureValuesIsMutable() {
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder> valuesBuilder_;
     
           /**
    @@ -5712,11 +5580,11 @@ public org.tensorflow.proto.Struct.StructuredValue.Builder addValuesBuilder(
                getValuesBuilderList() {
             return getValuesFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder> 
               getValuesFieldBuilder() {
             if (valuesBuilder_ == null) {
    -          valuesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          valuesBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder>(
                       values_,
                       ((bitField0_ & 0x00000001) != 0),
    @@ -5726,18 +5594,6 @@ public org.tensorflow.proto.Struct.StructuredValue.Builder addValuesBuilder(
             }
             return valuesBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.ListValue)
         }
    @@ -5826,37 +5682,34 @@ org.tensorflow.proto.Struct.StructuredValueOrBuilder getValuesOrBuilder(
        * Protobuf type {@code tensorflow.TupleValue}
        */
       public static final class TupleValue extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.TupleValue)
           TupleValueOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        TupleValue.class.getName());
    +    }
         // Use TupleValue.newBuilder() to construct.
    -    private TupleValue(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private TupleValue(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private TupleValue() {
           values_ = java.util.Collections.emptyList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new TupleValue();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.Struct.internal_static_tensorflow_TupleValue_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.Struct.internal_static_tensorflow_TupleValue_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -5864,6 +5717,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int VALUES_FIELD_NUMBER = 1;
    +    @SuppressWarnings("serial")
         private java.util.List values_;
         /**
          * repeated .tensorflow.StructuredValue values = 1;
    @@ -6004,39 +5858,41 @@ public static org.tensorflow.proto.Struct.TupleValue parseFrom(
         }
         public static org.tensorflow.proto.Struct.TupleValue parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.TupleValue parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.Struct.TupleValue parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.Struct.TupleValue parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.Struct.TupleValue parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.TupleValue parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -6056,7 +5912,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -6068,7 +5924,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.TupleValue}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.TupleValue)
             org.tensorflow.proto.Struct.TupleValueOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -6077,7 +5933,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.Struct.internal_static_tensorflow_TupleValue_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -6090,13 +5946,14 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             if (valuesBuilder_ == null) {
               values_ = java.util.Collections.emptyList();
             } else {
    @@ -6130,7 +5987,13 @@ public org.tensorflow.proto.Struct.TupleValue build() {
           @java.lang.Override
           public org.tensorflow.proto.Struct.TupleValue buildPartial() {
             org.tensorflow.proto.Struct.TupleValue result = new org.tensorflow.proto.Struct.TupleValue(this);
    -        int from_bitField0_ = bitField0_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.Struct.TupleValue result) {
             if (valuesBuilder_ == null) {
               if (((bitField0_ & 0x00000001) != 0)) {
                 values_ = java.util.Collections.unmodifiableList(values_);
    @@ -6140,42 +6003,12 @@ public org.tensorflow.proto.Struct.TupleValue buildPartial() {
             } else {
               result.values_ = valuesBuilder_.build();
             }
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.Struct.TupleValue result) {
    +        int from_bitField0_ = bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.Struct.TupleValue) {
    @@ -6207,7 +6040,7 @@ public Builder mergeFrom(org.tensorflow.proto.Struct.TupleValue other) {
                   values_ = other.values_;
                   bitField0_ = (bitField0_ & ~0x00000001);
                   valuesBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getValuesFieldBuilder() : null;
                 } else {
                   valuesBuilder_.addAllMessages(other.values_);
    @@ -6279,7 +6112,7 @@ private void ensureValuesIsMutable() {
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder> valuesBuilder_;
     
           /**
    @@ -6495,11 +6328,11 @@ public org.tensorflow.proto.Struct.StructuredValue.Builder addValuesBuilder(
                getValuesBuilderList() {
             return getValuesFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder> 
               getValuesFieldBuilder() {
             if (valuesBuilder_ == null) {
    -          valuesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          valuesBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder>(
                       values_,
                       ((bitField0_ & 0x00000001) != 0),
    @@ -6509,18 +6342,6 @@ public org.tensorflow.proto.Struct.StructuredValue.Builder addValuesBuilder(
             }
             return valuesBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.TupleValue)
         }
    @@ -6600,7 +6421,6 @@ boolean containsFields(
         /**
          * map<string, .tensorflow.StructuredValue> fields = 1;
          */
    -
         /* nullable */
     org.tensorflow.proto.Struct.StructuredValue getFieldsOrDefault(
             java.lang.String key,
    @@ -6609,7 +6429,6 @@ org.tensorflow.proto.Struct.StructuredValue getFieldsOrDefault(
         /**
          * map<string, .tensorflow.StructuredValue> fields = 1;
          */
    -
         org.tensorflow.proto.Struct.StructuredValue getFieldsOrThrow(
             java.lang.String key);
       }
    @@ -6622,29 +6441,26 @@ org.tensorflow.proto.Struct.StructuredValue getFieldsOrThrow(
        * Protobuf type {@code tensorflow.DictValue}
        */
       public static final class DictValue extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.DictValue)
           DictValueOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        DictValue.class.getName());
    +    }
         // Use DictValue.newBuilder() to construct.
    -    private DictValue(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private DictValue(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private DictValue() {
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new DictValue();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.Struct.internal_static_tensorflow_DictValue_descriptor;
    @@ -6652,7 +6468,7 @@ protected java.lang.Object newInstance(
     
         @SuppressWarnings({"rawtypes"})
         @java.lang.Override
    -    protected com.google.protobuf.MapField internalGetMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
             int number) {
           switch (number) {
             case 1:
    @@ -6663,7 +6479,7 @@ protected com.google.protobuf.MapField internalGetMapField(
           }
         }
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.Struct.internal_static_tensorflow_DictValue_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -6682,6 +6498,7 @@ private static final class FieldsDefaultEntryHolder {
                       com.google.protobuf.WireFormat.FieldType.MESSAGE,
                       org.tensorflow.proto.Struct.StructuredValue.getDefaultInstance());
         }
    +    @SuppressWarnings("serial")
         private com.google.protobuf.MapField<
             java.lang.String, org.tensorflow.proto.Struct.StructuredValue> fields_;
         private com.google.protobuf.MapField
    @@ -6692,14 +6509,12 @@ private static final class FieldsDefaultEntryHolder {
           }
           return fields_;
         }
    -
         public int getFieldsCount() {
           return internalGetFields().getMap().size();
         }
         /**
          * map<string, .tensorflow.StructuredValue> fields = 1;
          */
    -
         @java.lang.Override
         public boolean containsFields(
             java.lang.String key) {
    @@ -6718,7 +6533,6 @@ public java.util.Mapmap<string, .tensorflow.StructuredValue> fields = 1;
          */
         @java.lang.Override
    -
         public java.util.Map getFieldsMap() {
           return internalGetFields().getMap();
         }
    @@ -6726,10 +6540,11 @@ public java.util.Mapmap<string, .tensorflow.StructuredValue> fields = 1;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.Struct.StructuredValue getFieldsOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.Struct.StructuredValue getFieldsOrDefault(
             java.lang.String key,
    -        org.tensorflow.proto.Struct.StructuredValue defaultValue) {
    +        /* nullable */
    +org.tensorflow.proto.Struct.StructuredValue defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
           java.util.Map map =
               internalGetFields().getMap();
    @@ -6739,7 +6554,6 @@ public org.tensorflow.proto.Struct.StructuredValue getFieldsOrDefault(
          * map<string, .tensorflow.StructuredValue> fields = 1;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.Struct.StructuredValue getFieldsOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -6765,7 +6579,7 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      com.google.protobuf.GeneratedMessageV3
    +      com.google.protobuf.GeneratedMessage
             .serializeStringMapTo(
               output,
               internalGetFields(),
    @@ -6861,39 +6675,41 @@ public static org.tensorflow.proto.Struct.DictValue parseFrom(
         }
         public static org.tensorflow.proto.Struct.DictValue parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.DictValue parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.Struct.DictValue parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.Struct.DictValue parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.Struct.DictValue parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.DictValue parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -6913,7 +6729,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -6926,7 +6742,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.DictValue}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.DictValue)
             org.tensorflow.proto.Struct.DictValueOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -6935,7 +6751,7 @@ public static final class Builder extends
           }
     
           @SuppressWarnings({"rawtypes"})
    -      protected com.google.protobuf.MapField internalGetMapField(
    +      protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
               int number) {
             switch (number) {
               case 1:
    @@ -6946,7 +6762,7 @@ protected com.google.protobuf.MapField internalGetMapField(
             }
           }
           @SuppressWarnings({"rawtypes"})
    -      protected com.google.protobuf.MapField internalGetMutableMapField(
    +      protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(
               int number) {
             switch (number) {
               case 1:
    @@ -6957,7 +6773,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
             }
           }
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.Struct.internal_static_tensorflow_DictValue_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -6970,13 +6786,14 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             internalGetMutableFields().clear();
             return this;
           }
    @@ -7004,45 +6821,18 @@ public org.tensorflow.proto.Struct.DictValue build() {
           @java.lang.Override
           public org.tensorflow.proto.Struct.DictValue buildPartial() {
             org.tensorflow.proto.Struct.DictValue result = new org.tensorflow.proto.Struct.DictValue(this);
    -        int from_bitField0_ = bitField0_;
    -        result.fields_ = internalGetFields();
    -        result.fields_.makeImmutable();
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.Struct.DictValue result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.fields_ = internalGetFields().build(FieldsDefaultEntryHolder.defaultEntry);
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.Struct.DictValue) {
    @@ -7057,6 +6847,7 @@ public Builder mergeFrom(org.tensorflow.proto.Struct.DictValue other) {
             if (other == org.tensorflow.proto.Struct.DictValue.getDefaultInstance()) return this;
             internalGetMutableFields().mergeFrom(
                 other.internalGetFields());
    +        bitField0_ |= 0x00000001;
             this.mergeUnknownFields(other.getUnknownFields());
             onChanged();
             return this;
    @@ -7087,8 +6878,9 @@ public Builder mergeFrom(
                     com.google.protobuf.MapEntry
                     fields__ = input.readMessage(
                         FieldsDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
    -                internalGetMutableFields().getMutableMap().put(
    +                internalGetMutableFields().ensureBuilderMap().put(
                         fields__.getKey(), fields__.getValue());
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   default: {
    @@ -7108,41 +6900,49 @@ public Builder mergeFrom(
           }
           private int bitField0_;
     
    -      private com.google.protobuf.MapField<
    -          java.lang.String, org.tensorflow.proto.Struct.StructuredValue> fields_;
    -      private com.google.protobuf.MapField
    -      internalGetFields() {
    +      private static final class FieldsConverter implements com.google.protobuf.MapFieldBuilder.Converter {
    +        @java.lang.Override
    +        public org.tensorflow.proto.Struct.StructuredValue build(org.tensorflow.proto.Struct.StructuredValueOrBuilder val) {
    +          if (val instanceof org.tensorflow.proto.Struct.StructuredValue) { return (org.tensorflow.proto.Struct.StructuredValue) val; }
    +          return ((org.tensorflow.proto.Struct.StructuredValue.Builder) val).build();
    +        }
    +
    +        @java.lang.Override
    +        public com.google.protobuf.MapEntry defaultEntry() {
    +          return FieldsDefaultEntryHolder.defaultEntry;
    +        }
    +      };
    +      private static final FieldsConverter fieldsConverter = new FieldsConverter();
    +
    +      private com.google.protobuf.MapFieldBuilder<
    +          java.lang.String, org.tensorflow.proto.Struct.StructuredValueOrBuilder, org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder> fields_;
    +      private com.google.protobuf.MapFieldBuilder
    +          internalGetFields() {
             if (fields_ == null) {
    -          return com.google.protobuf.MapField.emptyMapField(
    -              FieldsDefaultEntryHolder.defaultEntry);
    +          return new com.google.protobuf.MapFieldBuilder<>(fieldsConverter);
             }
             return fields_;
           }
    -      private com.google.protobuf.MapField
    -      internalGetMutableFields() {
    -        onChanged();;
    +      private com.google.protobuf.MapFieldBuilder
    +          internalGetMutableFields() {
             if (fields_ == null) {
    -          fields_ = com.google.protobuf.MapField.newMapField(
    -              FieldsDefaultEntryHolder.defaultEntry);
    -        }
    -        if (!fields_.isMutable()) {
    -          fields_ = fields_.copy();
    +          fields_ = new com.google.protobuf.MapFieldBuilder<>(fieldsConverter);
             }
    +        bitField0_ |= 0x00000001;
    +        onChanged();
             return fields_;
           }
    -
           public int getFieldsCount() {
    -        return internalGetFields().getMap().size();
    +        return internalGetFields().ensureBuilderMap().size();
           }
           /**
            * map<string, .tensorflow.StructuredValue> fields = 1;
            */
    -
           @java.lang.Override
           public boolean containsFields(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        return internalGetFields().getMap().containsKey(key);
    +        return internalGetFields().ensureBuilderMap().containsKey(key);
           }
           /**
            * Use {@link #getFieldsMap()} instead.
    @@ -7156,52 +6956,47 @@ public java.util.Mapmap<string, .tensorflow.StructuredValue> fields = 1;
            */
           @java.lang.Override
    -
           public java.util.Map getFieldsMap() {
    -        return internalGetFields().getMap();
    +        return internalGetFields().getImmutableMap();
           }
           /**
            * map<string, .tensorflow.StructuredValue> fields = 1;
            */
           @java.lang.Override
    -
    -      public org.tensorflow.proto.Struct.StructuredValue getFieldsOrDefault(
    +      public /* nullable */
    +org.tensorflow.proto.Struct.StructuredValue getFieldsOrDefault(
               java.lang.String key,
    -          org.tensorflow.proto.Struct.StructuredValue defaultValue) {
    +          /* nullable */
    +org.tensorflow.proto.Struct.StructuredValue defaultValue) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        java.util.Map map =
    -            internalGetFields().getMap();
    -        return map.containsKey(key) ? map.get(key) : defaultValue;
    +        java.util.Map map = internalGetMutableFields().ensureBuilderMap();
    +        return map.containsKey(key) ? fieldsConverter.build(map.get(key)) : defaultValue;
           }
           /**
            * map<string, .tensorflow.StructuredValue> fields = 1;
            */
           @java.lang.Override
    -
           public org.tensorflow.proto.Struct.StructuredValue getFieldsOrThrow(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        java.util.Map map =
    -            internalGetFields().getMap();
    +        java.util.Map map = internalGetMutableFields().ensureBuilderMap();
             if (!map.containsKey(key)) {
               throw new java.lang.IllegalArgumentException();
             }
    -        return map.get(key);
    +        return fieldsConverter.build(map.get(key));
           }
    -
           public Builder clearFields() {
    -        internalGetMutableFields().getMutableMap()
    -            .clear();
    +        bitField0_ = (bitField0_ & ~0x00000001);
    +        internalGetMutableFields().clear();
             return this;
           }
           /**
            * map<string, .tensorflow.StructuredValue> fields = 1;
            */
    -
           public Builder removeFields(
               java.lang.String key) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        internalGetMutableFields().getMutableMap()
    +        internalGetMutableFields().ensureBuilderMap()
                 .remove(key);
             return this;
           }
    @@ -7210,8 +7005,9 @@ public Builder removeFields(
            */
           @java.lang.Deprecated
           public java.util.Map
    -      getMutableFields() {
    -        return internalGetMutableFields().getMutableMap();
    +          getMutableFields() {
    +        bitField0_ |= 0x00000001;
    +        return internalGetMutableFields().ensureMessageMap();
           }
           /**
            * map<string, .tensorflow.StructuredValue> fields = 1;
    @@ -7220,37 +7016,45 @@ public Builder putFields(
               java.lang.String key,
               org.tensorflow.proto.Struct.StructuredValue value) {
             if (key == null) { throw new NullPointerException("map key"); }
    -        if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    -        internalGetMutableFields().getMutableMap()
    +        if (value == null) { throw new NullPointerException("map value"); }
    +        internalGetMutableFields().ensureBuilderMap()
                 .put(key, value);
    +        bitField0_ |= 0x00000001;
             return this;
           }
           /**
            * map<string, .tensorflow.StructuredValue> fields = 1;
            */
    -
           public Builder putAllFields(
               java.util.Map values) {
    -        internalGetMutableFields().getMutableMap()
    +        for (java.util.Map.Entry e : values.entrySet()) {
    +          if (e.getKey() == null || e.getValue() == null) {
    +            throw new NullPointerException();
    +          }
    +        }
    +        internalGetMutableFields().ensureBuilderMap()
                 .putAll(values);
    +        bitField0_ |= 0x00000001;
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    +      /**
    +       * map<string, .tensorflow.StructuredValue> fields = 1;
    +       */
    +      public org.tensorflow.proto.Struct.StructuredValue.Builder putFieldsBuilderIfAbsent(
    +          java.lang.String key) {
    +        java.util.Map builderMap = internalGetMutableFields().ensureBuilderMap();
    +        org.tensorflow.proto.Struct.StructuredValueOrBuilder entry = builderMap.get(key);
    +        if (entry == null) {
    +          entry = org.tensorflow.proto.Struct.StructuredValue.newBuilder();
    +          builderMap.put(key, entry);
    +        }
    +        if (entry instanceof org.tensorflow.proto.Struct.StructuredValue) {
    +          entry = ((org.tensorflow.proto.Struct.StructuredValue) entry).toBuilder();
    +          builderMap.put(key, entry);
    +        }
    +        return (org.tensorflow.proto.Struct.StructuredValue.Builder) entry;
           }
     
    -
           // @@protoc_insertion_point(builder_scope:tensorflow.DictValue)
         }
     
    @@ -7341,45 +7145,44 @@ public interface PairValueOrBuilder extends
        * Protobuf type {@code tensorflow.PairValue}
        */
       public static final class PairValue extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.PairValue)
           PairValueOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        PairValue.class.getName());
    +    }
         // Use PairValue.newBuilder() to construct.
    -    private PairValue(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private PairValue(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private PairValue() {
           key_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new PairValue();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.Struct.internal_static_tensorflow_PairValue_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.Struct.internal_static_tensorflow_PairValue_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
                   org.tensorflow.proto.Struct.PairValue.class, org.tensorflow.proto.Struct.PairValue.Builder.class);
         }
     
    +    private int bitField0_;
         public static final int KEY_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object key_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object key_ = "";
         /**
          * string key = 1;
          * @return The key.
    @@ -7424,7 +7227,7 @@ public java.lang.String getKey() {
          */
         @java.lang.Override
         public boolean hasValue() {
    -      return value_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * .tensorflow.StructuredValue value = 2;
    @@ -7439,7 +7242,7 @@ public org.tensorflow.proto.Struct.StructuredValue getValue() {
          */
         @java.lang.Override
         public org.tensorflow.proto.Struct.StructuredValueOrBuilder getValueOrBuilder() {
    -      return getValue();
    +      return value_ == null ? org.tensorflow.proto.Struct.StructuredValue.getDefaultInstance() : value_;
         }
     
         private byte memoizedIsInitialized = -1;
    @@ -7456,10 +7259,10 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(key_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, key_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(key_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, key_);
           }
    -      if (value_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(2, getValue());
           }
           getUnknownFields().writeTo(output);
    @@ -7471,10 +7274,10 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(key_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, key_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(key_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, key_);
           }
    -      if (value_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(2, getValue());
           }
    @@ -7556,39 +7359,41 @@ public static org.tensorflow.proto.Struct.PairValue parseFrom(
         }
         public static org.tensorflow.proto.Struct.PairValue parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.PairValue parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.Struct.PairValue parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.Struct.PairValue parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.Struct.PairValue parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.PairValue parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -7608,7 +7413,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -7620,7 +7425,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.PairValue}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.PairValue)
             org.tensorflow.proto.Struct.PairValueOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -7629,7 +7434,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.Struct.internal_static_tensorflow_PairValue_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -7638,23 +7443,28 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.Struct.PairValue.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getValueFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             key_ = "";
    -
    -        if (valueBuilder_ == null) {
    -          value_ = null;
    -        } else {
    -          value_ = null;
    +        value_ = null;
    +        if (valueBuilder_ != null) {
    +          valueBuilder_.dispose();
               valueBuilder_ = null;
             }
             return this;
    @@ -7683,48 +7493,26 @@ public org.tensorflow.proto.Struct.PairValue build() {
           @java.lang.Override
           public org.tensorflow.proto.Struct.PairValue buildPartial() {
             org.tensorflow.proto.Struct.PairValue result = new org.tensorflow.proto.Struct.PairValue(this);
    -        result.key_ = key_;
    -        if (valueBuilder_ == null) {
    -          result.value_ = value_;
    -        } else {
    -          result.value_ = valueBuilder_.build();
    -        }
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.Struct.PairValue result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.key_ = key_;
    +        }
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.value_ = valueBuilder_ == null
    +              ? value_
    +              : valueBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.Struct.PairValue) {
    @@ -7739,6 +7527,7 @@ public Builder mergeFrom(org.tensorflow.proto.Struct.PairValue other) {
             if (other == org.tensorflow.proto.Struct.PairValue.getDefaultInstance()) return this;
             if (!other.getKey().isEmpty()) {
               key_ = other.key_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (other.hasValue()) {
    @@ -7772,14 +7561,14 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     key_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     input.readMessage(
                         getValueFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   default: {
    @@ -7797,6 +7586,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private java.lang.Object key_ = "";
           /**
    @@ -7839,11 +7629,9 @@ public java.lang.String getKey() {
            */
           public Builder setKey(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             key_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -7852,8 +7640,8 @@ public Builder setKey(
            * @return This builder for chaining.
            */
           public Builder clearKey() {
    -        
             key_ = getDefaultInstance().getKey();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -7864,25 +7652,23 @@ public Builder clearKey() {
            */
           public Builder setKeyBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             key_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
     
           private org.tensorflow.proto.Struct.StructuredValue value_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder> valueBuilder_;
           /**
            * .tensorflow.StructuredValue value = 2;
            * @return Whether the value field is set.
            */
           public boolean hasValue() {
    -        return valueBuilder_ != null || value_ != null;
    +        return ((bitField0_ & 0x00000002) != 0);
           }
           /**
            * .tensorflow.StructuredValue value = 2;
    @@ -7904,11 +7690,11 @@ public Builder setValue(org.tensorflow.proto.Struct.StructuredValue value) {
                 throw new NullPointerException();
               }
               value_ = value;
    -          onChanged();
             } else {
               valueBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -7918,11 +7704,11 @@ public Builder setValue(
               org.tensorflow.proto.Struct.StructuredValue.Builder builderForValue) {
             if (valueBuilder_ == null) {
               value_ = builderForValue.build();
    -          onChanged();
             } else {
               valueBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -7930,38 +7716,40 @@ public Builder setValue(
            */
           public Builder mergeValue(org.tensorflow.proto.Struct.StructuredValue value) {
             if (valueBuilder_ == null) {
    -          if (value_ != null) {
    -            value_ =
    -              org.tensorflow.proto.Struct.StructuredValue.newBuilder(value_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000002) != 0) &&
    +            value_ != null &&
    +            value_ != org.tensorflow.proto.Struct.StructuredValue.getDefaultInstance()) {
    +            getValueBuilder().mergeFrom(value);
               } else {
                 value_ = value;
               }
    -          onChanged();
             } else {
               valueBuilder_.mergeFrom(value);
             }
    -
    +        if (value_ != null) {
    +          bitField0_ |= 0x00000002;
    +          onChanged();
    +        }
             return this;
           }
           /**
            * .tensorflow.StructuredValue value = 2;
            */
           public Builder clearValue() {
    -        if (valueBuilder_ == null) {
    -          value_ = null;
    -          onChanged();
    -        } else {
    -          value_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000002);
    +        value_ = null;
    +        if (valueBuilder_ != null) {
    +          valueBuilder_.dispose();
               valueBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
            * .tensorflow.StructuredValue value = 2;
            */
           public org.tensorflow.proto.Struct.StructuredValue.Builder getValueBuilder() {
    -        
    +        bitField0_ |= 0x00000002;
             onChanged();
             return getValueFieldBuilder().getBuilder();
           }
    @@ -7979,11 +7767,11 @@ public org.tensorflow.proto.Struct.StructuredValueOrBuilder getValueOrBuilder()
           /**
            * .tensorflow.StructuredValue value = 2;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder> 
               getValueFieldBuilder() {
             if (valueBuilder_ == null) {
    -          valueBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          valueBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder>(
                       getValue(),
                       getParentForChildren(),
    @@ -7992,18 +7780,6 @@ public org.tensorflow.proto.Struct.StructuredValueOrBuilder getValueOrBuilder()
             }
             return valueBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.PairValue)
         }
    @@ -8104,12 +7880,21 @@ org.tensorflow.proto.Struct.PairValueOrBuilder getValuesOrBuilder(
        * Protobuf type {@code tensorflow.NamedTupleValue}
        */
       public static final class NamedTupleValue extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.NamedTupleValue)
           NamedTupleValueOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        NamedTupleValue.class.getName());
    +    }
         // Use NamedTupleValue.newBuilder() to construct.
    -    private NamedTupleValue(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private NamedTupleValue(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private NamedTupleValue() {
    @@ -8117,25 +7902,13 @@ private NamedTupleValue() {
           values_ = java.util.Collections.emptyList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new NamedTupleValue();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.Struct.internal_static_tensorflow_NamedTupleValue_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.Struct.internal_static_tensorflow_NamedTupleValue_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -8143,7 +7916,8 @@ protected java.lang.Object newInstance(
         }
     
         public static final int NAME_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object name_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object name_ = "";
         /**
          * string name = 1;
          * @return The name.
    @@ -8181,6 +7955,7 @@ public java.lang.String getName() {
         }
     
         public static final int VALUES_FIELD_NUMBER = 2;
    +    @SuppressWarnings("serial")
         private java.util.List values_;
         /**
          * repeated .tensorflow.PairValue values = 2;
    @@ -8234,8 +8009,8 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
           }
           for (int i = 0; i < values_.size(); i++) {
             output.writeMessage(2, values_.get(i));
    @@ -8249,8 +8024,8 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
           }
           for (int i = 0; i < values_.size(); i++) {
             size += com.google.protobuf.CodedOutputStream
    @@ -8331,39 +8106,41 @@ public static org.tensorflow.proto.Struct.NamedTupleValue parseFrom(
         }
         public static org.tensorflow.proto.Struct.NamedTupleValue parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.NamedTupleValue parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.Struct.NamedTupleValue parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.Struct.NamedTupleValue parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.Struct.NamedTupleValue parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.NamedTupleValue parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -8383,7 +8160,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -8395,7 +8172,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.NamedTupleValue}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.NamedTupleValue)
             org.tensorflow.proto.Struct.NamedTupleValueOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -8404,7 +8181,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.Struct.internal_static_tensorflow_NamedTupleValue_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -8417,22 +8194,22 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             name_ = "";
    -
             if (valuesBuilder_ == null) {
               values_ = java.util.Collections.emptyList();
             } else {
               values_ = null;
               valuesBuilder_.clear();
             }
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000002);
             return this;
           }
     
    @@ -8459,53 +8236,31 @@ public org.tensorflow.proto.Struct.NamedTupleValue build() {
           @java.lang.Override
           public org.tensorflow.proto.Struct.NamedTupleValue buildPartial() {
             org.tensorflow.proto.Struct.NamedTupleValue result = new org.tensorflow.proto.Struct.NamedTupleValue(this);
    -        int from_bitField0_ = bitField0_;
    -        result.name_ = name_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.Struct.NamedTupleValue result) {
             if (valuesBuilder_ == null) {
    -          if (((bitField0_ & 0x00000001) != 0)) {
    +          if (((bitField0_ & 0x00000002) != 0)) {
                 values_ = java.util.Collections.unmodifiableList(values_);
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000002);
               }
               result.values_ = values_;
             } else {
               result.values_ = valuesBuilder_.build();
             }
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.Struct.NamedTupleValue result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.name_ = name_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.Struct.NamedTupleValue) {
    @@ -8520,13 +8275,14 @@ public Builder mergeFrom(org.tensorflow.proto.Struct.NamedTupleValue other) {
             if (other == org.tensorflow.proto.Struct.NamedTupleValue.getDefaultInstance()) return this;
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (valuesBuilder_ == null) {
               if (!other.values_.isEmpty()) {
                 if (values_.isEmpty()) {
                   values_ = other.values_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000002);
                 } else {
                   ensureValuesIsMutable();
                   values_.addAll(other.values_);
    @@ -8539,9 +8295,9 @@ public Builder mergeFrom(org.tensorflow.proto.Struct.NamedTupleValue other) {
                   valuesBuilder_.dispose();
                   valuesBuilder_ = null;
                   values_ = other.values_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000002);
                   valuesBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getValuesFieldBuilder() : null;
                 } else {
                   valuesBuilder_.addAllMessages(other.values_);
    @@ -8576,7 +8332,7 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
    @@ -8650,11 +8406,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -8663,8 +8417,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -8675,12 +8429,10 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -8688,13 +8440,13 @@ public Builder setNameBytes(
           private java.util.List values_ =
             java.util.Collections.emptyList();
           private void ensureValuesIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    +        if (!((bitField0_ & 0x00000002) != 0)) {
               values_ = new java.util.ArrayList(values_);
    -          bitField0_ |= 0x00000001;
    +          bitField0_ |= 0x00000002;
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.Struct.PairValue, org.tensorflow.proto.Struct.PairValue.Builder, org.tensorflow.proto.Struct.PairValueOrBuilder> valuesBuilder_;
     
           /**
    @@ -8840,7 +8592,7 @@ public Builder addAllValues(
           public Builder clearValues() {
             if (valuesBuilder_ == null) {
               values_ = java.util.Collections.emptyList();
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000002);
               onChanged();
             } else {
               valuesBuilder_.clear();
    @@ -8910,32 +8662,20 @@ public org.tensorflow.proto.Struct.PairValue.Builder addValuesBuilder(
                getValuesBuilderList() {
             return getValuesFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.Struct.PairValue, org.tensorflow.proto.Struct.PairValue.Builder, org.tensorflow.proto.Struct.PairValueOrBuilder> 
               getValuesFieldBuilder() {
             if (valuesBuilder_ == null) {
    -          valuesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          valuesBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.Struct.PairValue, org.tensorflow.proto.Struct.PairValue.Builder, org.tensorflow.proto.Struct.PairValueOrBuilder>(
                       values_,
    -                  ((bitField0_ & 0x00000001) != 0),
    +                  ((bitField0_ & 0x00000002) != 0),
                       getParentForChildren(),
                       isClean());
               values_ = null;
             }
             return valuesBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.NamedTupleValue)
         }
    @@ -9038,12 +8778,21 @@ public interface TensorSpecProtoOrBuilder extends
        * Protobuf type {@code tensorflow.TensorSpecProto}
        */
       public static final class TensorSpecProto extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.TensorSpecProto)
           TensorSpecProtoOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        TensorSpecProto.class.getName());
    +    }
         // Use TensorSpecProto.newBuilder() to construct.
    -    private TensorSpecProto(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private TensorSpecProto(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private TensorSpecProto() {
    @@ -9051,33 +8800,23 @@ private TensorSpecProto() {
           dtype_ = 0;
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new TensorSpecProto();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.Struct.internal_static_tensorflow_TensorSpecProto_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.Struct.internal_static_tensorflow_TensorSpecProto_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
                   org.tensorflow.proto.Struct.TensorSpecProto.class, org.tensorflow.proto.Struct.TensorSpecProto.Builder.class);
         }
     
    +    private int bitField0_;
         public static final int NAME_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object name_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object name_ = "";
         /**
          * string name = 1;
          * @return The name.
    @@ -9122,7 +8861,7 @@ public java.lang.String getName() {
          */
         @java.lang.Override
         public boolean hasShape() {
    -      return shape_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * .tensorflow.TensorShapeProto shape = 2;
    @@ -9137,11 +8876,11 @@ public org.tensorflow.proto.TensorShapeProto getShape() {
          */
         @java.lang.Override
         public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
    -      return getShape();
    +      return shape_ == null ? org.tensorflow.proto.TensorShapeProto.getDefaultInstance() : shape_;
         }
     
         public static final int DTYPE_FIELD_NUMBER = 3;
    -    private int dtype_;
    +    private int dtype_ = 0;
         /**
          * .tensorflow.DataType dtype = 3;
          * @return The enum numeric value on the wire for dtype.
    @@ -9154,8 +8893,7 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
          * @return The dtype.
          */
         @java.lang.Override public org.tensorflow.proto.DataType getDtype() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
           return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
         }
     
    @@ -9173,10 +8911,10 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
           }
    -      if (shape_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(2, getShape());
           }
           if (dtype_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) {
    @@ -9191,10 +8929,10 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
           }
    -      if (shape_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(2, getShape());
           }
    @@ -9283,39 +9021,41 @@ public static org.tensorflow.proto.Struct.TensorSpecProto parseFrom(
         }
         public static org.tensorflow.proto.Struct.TensorSpecProto parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.TensorSpecProto parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.Struct.TensorSpecProto parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.Struct.TensorSpecProto parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.Struct.TensorSpecProto parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.TensorSpecProto parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -9335,7 +9075,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -9347,7 +9087,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.TensorSpecProto}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.TensorSpecProto)
             org.tensorflow.proto.Struct.TensorSpecProtoOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -9356,7 +9096,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.Struct.internal_static_tensorflow_TensorSpecProto_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -9365,27 +9105,31 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.Struct.TensorSpecProto.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getShapeFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             name_ = "";
    -
    -        if (shapeBuilder_ == null) {
    -          shape_ = null;
    -        } else {
    -          shape_ = null;
    +        shape_ = null;
    +        if (shapeBuilder_ != null) {
    +          shapeBuilder_.dispose();
               shapeBuilder_ = null;
             }
             dtype_ = 0;
    -
             return this;
           }
     
    @@ -9412,49 +9156,29 @@ public org.tensorflow.proto.Struct.TensorSpecProto build() {
           @java.lang.Override
           public org.tensorflow.proto.Struct.TensorSpecProto buildPartial() {
             org.tensorflow.proto.Struct.TensorSpecProto result = new org.tensorflow.proto.Struct.TensorSpecProto(this);
    -        result.name_ = name_;
    -        if (shapeBuilder_ == null) {
    -          result.shape_ = shape_;
    -        } else {
    -          result.shape_ = shapeBuilder_.build();
    -        }
    -        result.dtype_ = dtype_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.Struct.TensorSpecProto result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.name_ = name_;
    +        }
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.shape_ = shapeBuilder_ == null
    +              ? shape_
    +              : shapeBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.dtype_ = dtype_;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.Struct.TensorSpecProto) {
    @@ -9469,6 +9193,7 @@ public Builder mergeFrom(org.tensorflow.proto.Struct.TensorSpecProto other) {
             if (other == org.tensorflow.proto.Struct.TensorSpecProto.getDefaultInstance()) return this;
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (other.hasShape()) {
    @@ -9505,19 +9230,19 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     input.readMessage(
                         getShapeFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 24: {
                     dtype_ = input.readEnum();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 24
                   default: {
    @@ -9535,6 +9260,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private java.lang.Object name_ = "";
           /**
    @@ -9577,11 +9303,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -9590,8 +9314,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -9602,25 +9326,23 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
     
           private org.tensorflow.proto.TensorShapeProto shape_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> shapeBuilder_;
           /**
            * .tensorflow.TensorShapeProto shape = 2;
            * @return Whether the shape field is set.
            */
           public boolean hasShape() {
    -        return shapeBuilder_ != null || shape_ != null;
    +        return ((bitField0_ & 0x00000002) != 0);
           }
           /**
            * .tensorflow.TensorShapeProto shape = 2;
    @@ -9642,11 +9364,11 @@ public Builder setShape(org.tensorflow.proto.TensorShapeProto value) {
                 throw new NullPointerException();
               }
               shape_ = value;
    -          onChanged();
             } else {
               shapeBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -9656,11 +9378,11 @@ public Builder setShape(
               org.tensorflow.proto.TensorShapeProto.Builder builderForValue) {
             if (shapeBuilder_ == null) {
               shape_ = builderForValue.build();
    -          onChanged();
             } else {
               shapeBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -9668,38 +9390,40 @@ public Builder setShape(
            */
           public Builder mergeShape(org.tensorflow.proto.TensorShapeProto value) {
             if (shapeBuilder_ == null) {
    -          if (shape_ != null) {
    -            shape_ =
    -              org.tensorflow.proto.TensorShapeProto.newBuilder(shape_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000002) != 0) &&
    +            shape_ != null &&
    +            shape_ != org.tensorflow.proto.TensorShapeProto.getDefaultInstance()) {
    +            getShapeBuilder().mergeFrom(value);
               } else {
                 shape_ = value;
               }
    -          onChanged();
             } else {
               shapeBuilder_.mergeFrom(value);
             }
    -
    +        if (shape_ != null) {
    +          bitField0_ |= 0x00000002;
    +          onChanged();
    +        }
             return this;
           }
           /**
            * .tensorflow.TensorShapeProto shape = 2;
            */
           public Builder clearShape() {
    -        if (shapeBuilder_ == null) {
    -          shape_ = null;
    -          onChanged();
    -        } else {
    -          shape_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000002);
    +        shape_ = null;
    +        if (shapeBuilder_ != null) {
    +          shapeBuilder_.dispose();
               shapeBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
            * .tensorflow.TensorShapeProto shape = 2;
            */
           public org.tensorflow.proto.TensorShapeProto.Builder getShapeBuilder() {
    -        
    +        bitField0_ |= 0x00000002;
             onChanged();
             return getShapeFieldBuilder().getBuilder();
           }
    @@ -9717,11 +9441,11 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
           /**
            * .tensorflow.TensorShapeProto shape = 2;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> 
               getShapeFieldBuilder() {
             if (shapeBuilder_ == null) {
    -          shapeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          shapeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>(
                       getShape(),
                       getParentForChildren(),
    @@ -9745,8 +9469,8 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
            * @return This builder for chaining.
            */
           public Builder setDtypeValue(int value) {
    -        
             dtype_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -9756,8 +9480,7 @@ public Builder setDtypeValue(int value) {
            */
           @java.lang.Override
           public org.tensorflow.proto.DataType getDtype() {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +        org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
             return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
           }
           /**
    @@ -9769,7 +9492,7 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
             if (value == null) {
               throw new NullPointerException();
             }
    -        
    +        bitField0_ |= 0x00000004;
             dtype_ = value.getNumber();
             onChanged();
             return this;
    @@ -9779,23 +9502,11 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
            * @return This builder for chaining.
            */
           public Builder clearDtype() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000004);
             dtype_ = 0;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.TensorSpecProto)
         }
    @@ -9928,12 +9639,21 @@ public interface BoundedTensorSpecProtoOrBuilder extends
        * Protobuf type {@code tensorflow.BoundedTensorSpecProto}
        */
       public static final class BoundedTensorSpecProto extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.BoundedTensorSpecProto)
           BoundedTensorSpecProtoOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        BoundedTensorSpecProto.class.getName());
    +    }
         // Use BoundedTensorSpecProto.newBuilder() to construct.
    -    private BoundedTensorSpecProto(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private BoundedTensorSpecProto(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private BoundedTensorSpecProto() {
    @@ -9941,33 +9661,23 @@ private BoundedTensorSpecProto() {
           dtype_ = 0;
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new BoundedTensorSpecProto();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.Struct.internal_static_tensorflow_BoundedTensorSpecProto_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.Struct.internal_static_tensorflow_BoundedTensorSpecProto_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
                   org.tensorflow.proto.Struct.BoundedTensorSpecProto.class, org.tensorflow.proto.Struct.BoundedTensorSpecProto.Builder.class);
         }
     
    +    private int bitField0_;
         public static final int NAME_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object name_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object name_ = "";
         /**
          * string name = 1;
          * @return The name.
    @@ -10012,7 +9722,7 @@ public java.lang.String getName() {
          */
         @java.lang.Override
         public boolean hasShape() {
    -      return shape_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * .tensorflow.TensorShapeProto shape = 2;
    @@ -10027,11 +9737,11 @@ public org.tensorflow.proto.TensorShapeProto getShape() {
          */
         @java.lang.Override
         public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
    -      return getShape();
    +      return shape_ == null ? org.tensorflow.proto.TensorShapeProto.getDefaultInstance() : shape_;
         }
     
         public static final int DTYPE_FIELD_NUMBER = 3;
    -    private int dtype_;
    +    private int dtype_ = 0;
         /**
          * .tensorflow.DataType dtype = 3;
          * @return The enum numeric value on the wire for dtype.
    @@ -10044,8 +9754,7 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
          * @return The dtype.
          */
         @java.lang.Override public org.tensorflow.proto.DataType getDtype() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
           return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
         }
     
    @@ -10057,7 +9766,7 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
          */
         @java.lang.Override
         public boolean hasMinimum() {
    -      return minimum_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * .tensorflow.TensorProto minimum = 4;
    @@ -10072,7 +9781,7 @@ public org.tensorflow.proto.TensorProto getMinimum() {
          */
         @java.lang.Override
         public org.tensorflow.proto.TensorProtoOrBuilder getMinimumOrBuilder() {
    -      return getMinimum();
    +      return minimum_ == null ? org.tensorflow.proto.TensorProto.getDefaultInstance() : minimum_;
         }
     
         public static final int MAXIMUM_FIELD_NUMBER = 5;
    @@ -10083,7 +9792,7 @@ public org.tensorflow.proto.TensorProtoOrBuilder getMinimumOrBuilder() {
          */
         @java.lang.Override
         public boolean hasMaximum() {
    -      return maximum_ != null;
    +      return ((bitField0_ & 0x00000004) != 0);
         }
         /**
          * .tensorflow.TensorProto maximum = 5;
    @@ -10098,7 +9807,7 @@ public org.tensorflow.proto.TensorProto getMaximum() {
          */
         @java.lang.Override
         public org.tensorflow.proto.TensorProtoOrBuilder getMaximumOrBuilder() {
    -      return getMaximum();
    +      return maximum_ == null ? org.tensorflow.proto.TensorProto.getDefaultInstance() : maximum_;
         }
     
         private byte memoizedIsInitialized = -1;
    @@ -10115,19 +9824,19 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
           }
    -      if (shape_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(2, getShape());
           }
           if (dtype_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) {
             output.writeEnum(3, dtype_);
           }
    -      if (minimum_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             output.writeMessage(4, getMinimum());
           }
    -      if (maximum_ != null) {
    +      if (((bitField0_ & 0x00000004) != 0)) {
             output.writeMessage(5, getMaximum());
           }
           getUnknownFields().writeTo(output);
    @@ -10139,10 +9848,10 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
           }
    -      if (shape_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(2, getShape());
           }
    @@ -10150,11 +9859,11 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeEnumSize(3, dtype_);
           }
    -      if (minimum_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(4, getMinimum());
           }
    -      if (maximum_ != null) {
    +      if (((bitField0_ & 0x00000004) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(5, getMaximum());
           }
    @@ -10257,39 +9966,41 @@ public static org.tensorflow.proto.Struct.BoundedTensorSpecProto parseFrom(
         }
         public static org.tensorflow.proto.Struct.BoundedTensorSpecProto parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.BoundedTensorSpecProto parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.Struct.BoundedTensorSpecProto parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.Struct.BoundedTensorSpecProto parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.Struct.BoundedTensorSpecProto parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.BoundedTensorSpecProto parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -10309,7 +10020,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -10321,7 +10032,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.BoundedTensorSpecProto}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.BoundedTensorSpecProto)
             org.tensorflow.proto.Struct.BoundedTensorSpecProtoOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -10330,7 +10041,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.Struct.internal_static_tensorflow_BoundedTensorSpecProto_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -10339,37 +10050,41 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.Struct.BoundedTensorSpecProto.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getShapeFieldBuilder();
    +          getMinimumFieldBuilder();
    +          getMaximumFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             name_ = "";
    -
    -        if (shapeBuilder_ == null) {
    -          shape_ = null;
    -        } else {
    -          shape_ = null;
    +        shape_ = null;
    +        if (shapeBuilder_ != null) {
    +          shapeBuilder_.dispose();
               shapeBuilder_ = null;
             }
             dtype_ = 0;
    -
    -        if (minimumBuilder_ == null) {
    -          minimum_ = null;
    -        } else {
    -          minimum_ = null;
    +        minimum_ = null;
    +        if (minimumBuilder_ != null) {
    +          minimumBuilder_.dispose();
               minimumBuilder_ = null;
             }
    -        if (maximumBuilder_ == null) {
    -          maximum_ = null;
    -        } else {
    -          maximum_ = null;
    +        maximum_ = null;
    +        if (maximumBuilder_ != null) {
    +          maximumBuilder_.dispose();
               maximumBuilder_ = null;
             }
             return this;
    @@ -10398,59 +10113,41 @@ public org.tensorflow.proto.Struct.BoundedTensorSpecProto build() {
           @java.lang.Override
           public org.tensorflow.proto.Struct.BoundedTensorSpecProto buildPartial() {
             org.tensorflow.proto.Struct.BoundedTensorSpecProto result = new org.tensorflow.proto.Struct.BoundedTensorSpecProto(this);
    -        result.name_ = name_;
    -        if (shapeBuilder_ == null) {
    -          result.shape_ = shape_;
    -        } else {
    -          result.shape_ = shapeBuilder_.build();
    -        }
    -        result.dtype_ = dtype_;
    -        if (minimumBuilder_ == null) {
    -          result.minimum_ = minimum_;
    -        } else {
    -          result.minimum_ = minimumBuilder_.build();
    -        }
    -        if (maximumBuilder_ == null) {
    -          result.maximum_ = maximum_;
    -        } else {
    -          result.maximum_ = maximumBuilder_.build();
    -        }
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.Struct.BoundedTensorSpecProto result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.name_ = name_;
    +        }
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.shape_ = shapeBuilder_ == null
    +              ? shape_
    +              : shapeBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.dtype_ = dtype_;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.minimum_ = minimumBuilder_ == null
    +              ? minimum_
    +              : minimumBuilder_.build();
    +          to_bitField0_ |= 0x00000002;
    +        }
    +        if (((from_bitField0_ & 0x00000010) != 0)) {
    +          result.maximum_ = maximumBuilder_ == null
    +              ? maximum_
    +              : maximumBuilder_.build();
    +          to_bitField0_ |= 0x00000004;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.Struct.BoundedTensorSpecProto) {
    @@ -10465,6 +10162,7 @@ public Builder mergeFrom(org.tensorflow.proto.Struct.BoundedTensorSpecProto othe
             if (other == org.tensorflow.proto.Struct.BoundedTensorSpecProto.getDefaultInstance()) return this;
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (other.hasShape()) {
    @@ -10507,33 +10205,33 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     input.readMessage(
                         getShapeFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 24: {
                     dtype_ = input.readEnum();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 24
                   case 34: {
                     input.readMessage(
                         getMinimumFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 34
                   case 42: {
                     input.readMessage(
                         getMaximumFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000010;
                     break;
                   } // case 42
                   default: {
    @@ -10551,6 +10249,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private java.lang.Object name_ = "";
           /**
    @@ -10593,11 +10292,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -10606,8 +10303,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -10618,25 +10315,23 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
     
           private org.tensorflow.proto.TensorShapeProto shape_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> shapeBuilder_;
           /**
            * .tensorflow.TensorShapeProto shape = 2;
            * @return Whether the shape field is set.
            */
           public boolean hasShape() {
    -        return shapeBuilder_ != null || shape_ != null;
    +        return ((bitField0_ & 0x00000002) != 0);
           }
           /**
            * .tensorflow.TensorShapeProto shape = 2;
    @@ -10658,11 +10353,11 @@ public Builder setShape(org.tensorflow.proto.TensorShapeProto value) {
                 throw new NullPointerException();
               }
               shape_ = value;
    -          onChanged();
             } else {
               shapeBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -10672,11 +10367,11 @@ public Builder setShape(
               org.tensorflow.proto.TensorShapeProto.Builder builderForValue) {
             if (shapeBuilder_ == null) {
               shape_ = builderForValue.build();
    -          onChanged();
             } else {
               shapeBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -10684,38 +10379,40 @@ public Builder setShape(
            */
           public Builder mergeShape(org.tensorflow.proto.TensorShapeProto value) {
             if (shapeBuilder_ == null) {
    -          if (shape_ != null) {
    -            shape_ =
    -              org.tensorflow.proto.TensorShapeProto.newBuilder(shape_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000002) != 0) &&
    +            shape_ != null &&
    +            shape_ != org.tensorflow.proto.TensorShapeProto.getDefaultInstance()) {
    +            getShapeBuilder().mergeFrom(value);
               } else {
                 shape_ = value;
               }
    -          onChanged();
             } else {
               shapeBuilder_.mergeFrom(value);
             }
    -
    +        if (shape_ != null) {
    +          bitField0_ |= 0x00000002;
    +          onChanged();
    +        }
             return this;
           }
           /**
            * .tensorflow.TensorShapeProto shape = 2;
            */
           public Builder clearShape() {
    -        if (shapeBuilder_ == null) {
    -          shape_ = null;
    -          onChanged();
    -        } else {
    -          shape_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000002);
    +        shape_ = null;
    +        if (shapeBuilder_ != null) {
    +          shapeBuilder_.dispose();
               shapeBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
            * .tensorflow.TensorShapeProto shape = 2;
            */
           public org.tensorflow.proto.TensorShapeProto.Builder getShapeBuilder() {
    -        
    +        bitField0_ |= 0x00000002;
             onChanged();
             return getShapeFieldBuilder().getBuilder();
           }
    @@ -10733,11 +10430,11 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
           /**
            * .tensorflow.TensorShapeProto shape = 2;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> 
               getShapeFieldBuilder() {
             if (shapeBuilder_ == null) {
    -          shapeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          shapeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>(
                       getShape(),
                       getParentForChildren(),
    @@ -10761,8 +10458,8 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
            * @return This builder for chaining.
            */
           public Builder setDtypeValue(int value) {
    -        
             dtype_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -10772,8 +10469,7 @@ public Builder setDtypeValue(int value) {
            */
           @java.lang.Override
           public org.tensorflow.proto.DataType getDtype() {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +        org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
             return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
           }
           /**
    @@ -10785,7 +10481,7 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
             if (value == null) {
               throw new NullPointerException();
             }
    -        
    +        bitField0_ |= 0x00000004;
             dtype_ = value.getNumber();
             onChanged();
             return this;
    @@ -10795,21 +10491,21 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
            * @return This builder for chaining.
            */
           public Builder clearDtype() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000004);
             dtype_ = 0;
             onChanged();
             return this;
           }
     
           private org.tensorflow.proto.TensorProto minimum_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> minimumBuilder_;
           /**
            * .tensorflow.TensorProto minimum = 4;
            * @return Whether the minimum field is set.
            */
           public boolean hasMinimum() {
    -        return minimumBuilder_ != null || minimum_ != null;
    +        return ((bitField0_ & 0x00000008) != 0);
           }
           /**
            * .tensorflow.TensorProto minimum = 4;
    @@ -10831,11 +10527,11 @@ public Builder setMinimum(org.tensorflow.proto.TensorProto value) {
                 throw new NullPointerException();
               }
               minimum_ = value;
    -          onChanged();
             } else {
               minimumBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000008;
    +        onChanged();
             return this;
           }
           /**
    @@ -10845,11 +10541,11 @@ public Builder setMinimum(
               org.tensorflow.proto.TensorProto.Builder builderForValue) {
             if (minimumBuilder_ == null) {
               minimum_ = builderForValue.build();
    -          onChanged();
             } else {
               minimumBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000008;
    +        onChanged();
             return this;
           }
           /**
    @@ -10857,38 +10553,40 @@ public Builder setMinimum(
            */
           public Builder mergeMinimum(org.tensorflow.proto.TensorProto value) {
             if (minimumBuilder_ == null) {
    -          if (minimum_ != null) {
    -            minimum_ =
    -              org.tensorflow.proto.TensorProto.newBuilder(minimum_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000008) != 0) &&
    +            minimum_ != null &&
    +            minimum_ != org.tensorflow.proto.TensorProto.getDefaultInstance()) {
    +            getMinimumBuilder().mergeFrom(value);
               } else {
                 minimum_ = value;
               }
    -          onChanged();
             } else {
               minimumBuilder_.mergeFrom(value);
             }
    -
    +        if (minimum_ != null) {
    +          bitField0_ |= 0x00000008;
    +          onChanged();
    +        }
             return this;
           }
           /**
            * .tensorflow.TensorProto minimum = 4;
            */
           public Builder clearMinimum() {
    -        if (minimumBuilder_ == null) {
    -          minimum_ = null;
    -          onChanged();
    -        } else {
    -          minimum_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000008);
    +        minimum_ = null;
    +        if (minimumBuilder_ != null) {
    +          minimumBuilder_.dispose();
               minimumBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
            * .tensorflow.TensorProto minimum = 4;
            */
           public org.tensorflow.proto.TensorProto.Builder getMinimumBuilder() {
    -        
    +        bitField0_ |= 0x00000008;
             onChanged();
             return getMinimumFieldBuilder().getBuilder();
           }
    @@ -10906,11 +10604,11 @@ public org.tensorflow.proto.TensorProtoOrBuilder getMinimumOrBuilder() {
           /**
            * .tensorflow.TensorProto minimum = 4;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> 
               getMinimumFieldBuilder() {
             if (minimumBuilder_ == null) {
    -          minimumBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          minimumBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder>(
                       getMinimum(),
                       getParentForChildren(),
    @@ -10921,14 +10619,14 @@ public org.tensorflow.proto.TensorProtoOrBuilder getMinimumOrBuilder() {
           }
     
           private org.tensorflow.proto.TensorProto maximum_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> maximumBuilder_;
           /**
            * .tensorflow.TensorProto maximum = 5;
            * @return Whether the maximum field is set.
            */
           public boolean hasMaximum() {
    -        return maximumBuilder_ != null || maximum_ != null;
    +        return ((bitField0_ & 0x00000010) != 0);
           }
           /**
            * .tensorflow.TensorProto maximum = 5;
    @@ -10950,11 +10648,11 @@ public Builder setMaximum(org.tensorflow.proto.TensorProto value) {
                 throw new NullPointerException();
               }
               maximum_ = value;
    -          onChanged();
             } else {
               maximumBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000010;
    +        onChanged();
             return this;
           }
           /**
    @@ -10964,11 +10662,11 @@ public Builder setMaximum(
               org.tensorflow.proto.TensorProto.Builder builderForValue) {
             if (maximumBuilder_ == null) {
               maximum_ = builderForValue.build();
    -          onChanged();
             } else {
               maximumBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000010;
    +        onChanged();
             return this;
           }
           /**
    @@ -10976,38 +10674,40 @@ public Builder setMaximum(
            */
           public Builder mergeMaximum(org.tensorflow.proto.TensorProto value) {
             if (maximumBuilder_ == null) {
    -          if (maximum_ != null) {
    -            maximum_ =
    -              org.tensorflow.proto.TensorProto.newBuilder(maximum_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000010) != 0) &&
    +            maximum_ != null &&
    +            maximum_ != org.tensorflow.proto.TensorProto.getDefaultInstance()) {
    +            getMaximumBuilder().mergeFrom(value);
               } else {
                 maximum_ = value;
               }
    -          onChanged();
             } else {
               maximumBuilder_.mergeFrom(value);
             }
    -
    +        if (maximum_ != null) {
    +          bitField0_ |= 0x00000010;
    +          onChanged();
    +        }
             return this;
           }
           /**
            * .tensorflow.TensorProto maximum = 5;
            */
           public Builder clearMaximum() {
    -        if (maximumBuilder_ == null) {
    -          maximum_ = null;
    -          onChanged();
    -        } else {
    -          maximum_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000010);
    +        maximum_ = null;
    +        if (maximumBuilder_ != null) {
    +          maximumBuilder_.dispose();
               maximumBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
            * .tensorflow.TensorProto maximum = 5;
            */
           public org.tensorflow.proto.TensorProto.Builder getMaximumBuilder() {
    -        
    +        bitField0_ |= 0x00000010;
             onChanged();
             return getMaximumFieldBuilder().getBuilder();
           }
    @@ -11025,11 +10725,11 @@ public org.tensorflow.proto.TensorProtoOrBuilder getMaximumOrBuilder() {
           /**
            * .tensorflow.TensorProto maximum = 5;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> 
               getMaximumFieldBuilder() {
             if (maximumBuilder_ == null) {
    -          maximumBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          maximumBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder>(
                       getMaximum(),
                       getParentForChildren(),
    @@ -11038,18 +10738,6 @@ public org.tensorflow.proto.TensorProtoOrBuilder getMaximumOrBuilder() {
             }
             return maximumBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.BoundedTensorSpecProto)
         }
    @@ -11147,13 +10835,13 @@ public interface TypeSpecProtoOrBuilder extends
         /**
          * 
          * The name of the TypeSpec class.
    -     *  * If type_spec_class == REGISTERED_TYPE_SPEC, the TypeSpec class is
    -     *    the one registered under this name. For types registered outside
    -     *    core TensorFlow by an add-on library, that library must be loaded
    -     *    before this value can be deserialized by nested_structure_coder.
    -     *  * If type_spec_class specifies a particular TypeSpec class, this field is
    -     *    redundant with the type_spec_class enum, and is only used for error
    -     *    reporting in older binaries that do not know the tupe_spec_class enum.
    +     * * If type_spec_class == REGISTERED_TYPE_SPEC, the TypeSpec class is
    +     * the one registered under this name. For types registered outside
    +     * core TensorFlow by an add-on library, that library must be loaded
    +     * before this value can be deserialized by nested_structure_coder.
    +     * * If type_spec_class specifies a particular TypeSpec class, this field is
    +     * redundant with the type_spec_class enum, and is only used for error
    +     * reporting in older binaries that do not know the tupe_spec_class enum.
          * 
    * * string type_spec_class_name = 3; @@ -11163,13 +10851,13 @@ public interface TypeSpecProtoOrBuilder extends /** *
          * The name of the TypeSpec class.
    -     *  * If type_spec_class == REGISTERED_TYPE_SPEC, the TypeSpec class is
    -     *    the one registered under this name. For types registered outside
    -     *    core TensorFlow by an add-on library, that library must be loaded
    -     *    before this value can be deserialized by nested_structure_coder.
    -     *  * If type_spec_class specifies a particular TypeSpec class, this field is
    -     *    redundant with the type_spec_class enum, and is only used for error
    -     *    reporting in older binaries that do not know the tupe_spec_class enum.
    +     * * If type_spec_class == REGISTERED_TYPE_SPEC, the TypeSpec class is
    +     * the one registered under this name. For types registered outside
    +     * core TensorFlow by an add-on library, that library must be loaded
    +     * before this value can be deserialized by nested_structure_coder.
    +     * * If type_spec_class specifies a particular TypeSpec class, this field is
    +     * redundant with the type_spec_class enum, and is only used for error
    +     * reporting in older binaries that do not know the tupe_spec_class enum.
          * 
    * * string type_spec_class_name = 3; @@ -11196,12 +10884,21 @@ public interface TypeSpecProtoOrBuilder extends * Protobuf type {@code tensorflow.TypeSpecProto} */ public static final class TypeSpecProto extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.TypeSpecProto) TypeSpecProtoOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + TypeSpecProto.class.getName()); + } // Use TypeSpecProto.newBuilder() to construct. - private TypeSpecProto(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private TypeSpecProto(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private TypeSpecProto() { @@ -11209,25 +10906,13 @@ private TypeSpecProto() { typeSpecClassName_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new TypeSpecProto(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.Struct.internal_static_tensorflow_TypeSpecProto_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.Struct.internal_static_tensorflow_TypeSpecProto_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -11342,6 +11027,15 @@ public enum TypeSpecClass UNRECOGNIZED(-1), ; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + TypeSpecClass.class.getName()); + } /** * UNKNOWN = 0; */ @@ -11537,8 +11231,9 @@ private TypeSpecClass(int value) { // @@protoc_insertion_point(enum_scope:tensorflow.TypeSpecProto.TypeSpecClass) } + private int bitField0_; public static final int TYPE_SPEC_CLASS_FIELD_NUMBER = 1; - private int typeSpecClass_; + private int typeSpecClass_ = 0; /** * .tensorflow.TypeSpecProto.TypeSpecClass type_spec_class = 1; * @return The enum numeric value on the wire for typeSpecClass. @@ -11551,8 +11246,7 @@ private TypeSpecClass(int value) { * @return The typeSpecClass. */ @java.lang.Override public org.tensorflow.proto.Struct.TypeSpecProto.TypeSpecClass getTypeSpecClass() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.Struct.TypeSpecProto.TypeSpecClass result = org.tensorflow.proto.Struct.TypeSpecProto.TypeSpecClass.valueOf(typeSpecClass_); + org.tensorflow.proto.Struct.TypeSpecProto.TypeSpecClass result = org.tensorflow.proto.Struct.TypeSpecProto.TypeSpecClass.forNumber(typeSpecClass_); return result == null ? org.tensorflow.proto.Struct.TypeSpecProto.TypeSpecClass.UNRECOGNIZED : result; } @@ -11568,7 +11262,7 @@ private TypeSpecClass(int value) { */ @java.lang.Override public boolean hasTypeState() { - return typeState_ != null; + return ((bitField0_ & 0x00000001) != 0); } /** *
    @@ -11591,21 +11285,22 @@ public org.tensorflow.proto.Struct.StructuredValue getTypeState() {
          */
         @java.lang.Override
         public org.tensorflow.proto.Struct.StructuredValueOrBuilder getTypeStateOrBuilder() {
    -      return getTypeState();
    +      return typeState_ == null ? org.tensorflow.proto.Struct.StructuredValue.getDefaultInstance() : typeState_;
         }
     
         public static final int TYPE_SPEC_CLASS_NAME_FIELD_NUMBER = 3;
    -    private volatile java.lang.Object typeSpecClassName_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object typeSpecClassName_ = "";
         /**
          * 
          * The name of the TypeSpec class.
    -     *  * If type_spec_class == REGISTERED_TYPE_SPEC, the TypeSpec class is
    -     *    the one registered under this name. For types registered outside
    -     *    core TensorFlow by an add-on library, that library must be loaded
    -     *    before this value can be deserialized by nested_structure_coder.
    -     *  * If type_spec_class specifies a particular TypeSpec class, this field is
    -     *    redundant with the type_spec_class enum, and is only used for error
    -     *    reporting in older binaries that do not know the tupe_spec_class enum.
    +     * * If type_spec_class == REGISTERED_TYPE_SPEC, the TypeSpec class is
    +     * the one registered under this name. For types registered outside
    +     * core TensorFlow by an add-on library, that library must be loaded
    +     * before this value can be deserialized by nested_structure_coder.
    +     * * If type_spec_class specifies a particular TypeSpec class, this field is
    +     * redundant with the type_spec_class enum, and is only used for error
    +     * reporting in older binaries that do not know the tupe_spec_class enum.
          * 
    * * string type_spec_class_name = 3; @@ -11627,13 +11322,13 @@ public java.lang.String getTypeSpecClassName() { /** *
          * The name of the TypeSpec class.
    -     *  * If type_spec_class == REGISTERED_TYPE_SPEC, the TypeSpec class is
    -     *    the one registered under this name. For types registered outside
    -     *    core TensorFlow by an add-on library, that library must be loaded
    -     *    before this value can be deserialized by nested_structure_coder.
    -     *  * If type_spec_class specifies a particular TypeSpec class, this field is
    -     *    redundant with the type_spec_class enum, and is only used for error
    -     *    reporting in older binaries that do not know the tupe_spec_class enum.
    +     * * If type_spec_class == REGISTERED_TYPE_SPEC, the TypeSpec class is
    +     * the one registered under this name. For types registered outside
    +     * core TensorFlow by an add-on library, that library must be loaded
    +     * before this value can be deserialized by nested_structure_coder.
    +     * * If type_spec_class specifies a particular TypeSpec class, this field is
    +     * redundant with the type_spec_class enum, and is only used for error
    +     * reporting in older binaries that do not know the tupe_spec_class enum.
          * 
    * * string type_spec_class_name = 3; @@ -11655,7 +11350,7 @@ public java.lang.String getTypeSpecClassName() { } public static final int NUM_FLAT_COMPONENTS_FIELD_NUMBER = 4; - private int numFlatComponents_; + private int numFlatComponents_ = 0; /** *
          * The number of flat tensor components required by this TypeSpec.
    @@ -11686,11 +11381,11 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (typeSpecClass_ != org.tensorflow.proto.Struct.TypeSpecProto.TypeSpecClass.UNKNOWN.getNumber()) {
             output.writeEnum(1, typeSpecClass_);
           }
    -      if (typeState_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(2, getTypeState());
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(typeSpecClassName_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, typeSpecClassName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(typeSpecClassName_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 3, typeSpecClassName_);
           }
           if (numFlatComponents_ != 0) {
             output.writeInt32(4, numFlatComponents_);
    @@ -11708,12 +11403,12 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeEnumSize(1, typeSpecClass_);
           }
    -      if (typeState_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(2, getTypeState());
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(typeSpecClassName_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, typeSpecClassName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(typeSpecClassName_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(3, typeSpecClassName_);
           }
           if (numFlatComponents_ != 0) {
             size += com.google.protobuf.CodedOutputStream
    @@ -11804,39 +11499,41 @@ public static org.tensorflow.proto.Struct.TypeSpecProto parseFrom(
         }
         public static org.tensorflow.proto.Struct.TypeSpecProto parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.TypeSpecProto parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.Struct.TypeSpecProto parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.Struct.TypeSpecProto parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.Struct.TypeSpecProto parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Struct.TypeSpecProto parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -11856,7 +11553,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -11868,7 +11565,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.TypeSpecProto}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.TypeSpecProto)
             org.tensorflow.proto.Struct.TypeSpecProtoOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -11877,7 +11574,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.Struct.internal_static_tensorflow_TypeSpecProto_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -11886,29 +11583,32 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.Struct.TypeSpecProto.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getTypeStateFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             typeSpecClass_ = 0;
    -
    -        if (typeStateBuilder_ == null) {
    -          typeState_ = null;
    -        } else {
    -          typeState_ = null;
    +        typeState_ = null;
    +        if (typeStateBuilder_ != null) {
    +          typeStateBuilder_.dispose();
               typeStateBuilder_ = null;
             }
             typeSpecClassName_ = "";
    -
             numFlatComponents_ = 0;
    -
             return this;
           }
     
    @@ -11935,50 +11635,32 @@ public org.tensorflow.proto.Struct.TypeSpecProto build() {
           @java.lang.Override
           public org.tensorflow.proto.Struct.TypeSpecProto buildPartial() {
             org.tensorflow.proto.Struct.TypeSpecProto result = new org.tensorflow.proto.Struct.TypeSpecProto(this);
    -        result.typeSpecClass_ = typeSpecClass_;
    -        if (typeStateBuilder_ == null) {
    -          result.typeState_ = typeState_;
    -        } else {
    -          result.typeState_ = typeStateBuilder_.build();
    -        }
    -        result.typeSpecClassName_ = typeSpecClassName_;
    -        result.numFlatComponents_ = numFlatComponents_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.Struct.TypeSpecProto result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.typeSpecClass_ = typeSpecClass_;
    +        }
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.typeState_ = typeStateBuilder_ == null
    +              ? typeState_
    +              : typeStateBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.typeSpecClassName_ = typeSpecClassName_;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.numFlatComponents_ = numFlatComponents_;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.Struct.TypeSpecProto) {
    @@ -11999,6 +11681,7 @@ public Builder mergeFrom(org.tensorflow.proto.Struct.TypeSpecProto other) {
             }
             if (!other.getTypeSpecClassName().isEmpty()) {
               typeSpecClassName_ = other.typeSpecClassName_;
    +          bitField0_ |= 0x00000004;
               onChanged();
             }
             if (other.getNumFlatComponents() != 0) {
    @@ -12032,24 +11715,24 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     typeSpecClass_ = input.readEnum();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   case 18: {
                     input.readMessage(
                         getTypeStateFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 26: {
                     typeSpecClassName_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 26
                   case 32: {
                     numFlatComponents_ = input.readInt32();
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 32
                   default: {
    @@ -12067,6 +11750,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private int typeSpecClass_ = 0;
           /**
    @@ -12082,8 +11766,8 @@ public Builder mergeFrom(
            * @return This builder for chaining.
            */
           public Builder setTypeSpecClassValue(int value) {
    -        
             typeSpecClass_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -12093,8 +11777,7 @@ public Builder setTypeSpecClassValue(int value) {
            */
           @java.lang.Override
           public org.tensorflow.proto.Struct.TypeSpecProto.TypeSpecClass getTypeSpecClass() {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.Struct.TypeSpecProto.TypeSpecClass result = org.tensorflow.proto.Struct.TypeSpecProto.TypeSpecClass.valueOf(typeSpecClass_);
    +        org.tensorflow.proto.Struct.TypeSpecProto.TypeSpecClass result = org.tensorflow.proto.Struct.TypeSpecProto.TypeSpecClass.forNumber(typeSpecClass_);
             return result == null ? org.tensorflow.proto.Struct.TypeSpecProto.TypeSpecClass.UNRECOGNIZED : result;
           }
           /**
    @@ -12106,7 +11789,7 @@ public Builder setTypeSpecClass(org.tensorflow.proto.Struct.TypeSpecProto.TypeSp
             if (value == null) {
               throw new NullPointerException();
             }
    -        
    +        bitField0_ |= 0x00000001;
             typeSpecClass_ = value.getNumber();
             onChanged();
             return this;
    @@ -12116,14 +11799,14 @@ public Builder setTypeSpecClass(org.tensorflow.proto.Struct.TypeSpecProto.TypeSp
            * @return This builder for chaining.
            */
           public Builder clearTypeSpecClass() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             typeSpecClass_ = 0;
             onChanged();
             return this;
           }
     
           private org.tensorflow.proto.Struct.StructuredValue typeState_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder> typeStateBuilder_;
           /**
            * 
    @@ -12134,7 +11817,7 @@ public Builder clearTypeSpecClass() {
            * @return Whether the typeState field is set.
            */
           public boolean hasTypeState() {
    -        return typeStateBuilder_ != null || typeState_ != null;
    +        return ((bitField0_ & 0x00000002) != 0);
           }
           /**
            * 
    @@ -12164,11 +11847,11 @@ public Builder setTypeState(org.tensorflow.proto.Struct.StructuredValue value) {
                 throw new NullPointerException();
               }
               typeState_ = value;
    -          onChanged();
             } else {
               typeStateBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -12182,11 +11865,11 @@ public Builder setTypeState(
               org.tensorflow.proto.Struct.StructuredValue.Builder builderForValue) {
             if (typeStateBuilder_ == null) {
               typeState_ = builderForValue.build();
    -          onChanged();
             } else {
               typeStateBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -12198,17 +11881,20 @@ public Builder setTypeState(
            */
           public Builder mergeTypeState(org.tensorflow.proto.Struct.StructuredValue value) {
             if (typeStateBuilder_ == null) {
    -          if (typeState_ != null) {
    -            typeState_ =
    -              org.tensorflow.proto.Struct.StructuredValue.newBuilder(typeState_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000002) != 0) &&
    +            typeState_ != null &&
    +            typeState_ != org.tensorflow.proto.Struct.StructuredValue.getDefaultInstance()) {
    +            getTypeStateBuilder().mergeFrom(value);
               } else {
                 typeState_ = value;
               }
    -          onChanged();
             } else {
               typeStateBuilder_.mergeFrom(value);
             }
    -
    +        if (typeState_ != null) {
    +          bitField0_ |= 0x00000002;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -12219,14 +11905,13 @@ public Builder mergeTypeState(org.tensorflow.proto.Struct.StructuredValue value)
            * .tensorflow.StructuredValue type_state = 2;
            */
           public Builder clearTypeState() {
    -        if (typeStateBuilder_ == null) {
    -          typeState_ = null;
    -          onChanged();
    -        } else {
    -          typeState_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000002);
    +        typeState_ = null;
    +        if (typeStateBuilder_ != null) {
    +          typeStateBuilder_.dispose();
               typeStateBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -12237,7 +11922,7 @@ public Builder clearTypeState() {
            * .tensorflow.StructuredValue type_state = 2;
            */
           public org.tensorflow.proto.Struct.StructuredValue.Builder getTypeStateBuilder() {
    -        
    +        bitField0_ |= 0x00000002;
             onChanged();
             return getTypeStateFieldBuilder().getBuilder();
           }
    @@ -12263,11 +11948,11 @@ public org.tensorflow.proto.Struct.StructuredValueOrBuilder getTypeStateOrBuilde
            *
            * .tensorflow.StructuredValue type_state = 2;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder> 
               getTypeStateFieldBuilder() {
             if (typeStateBuilder_ == null) {
    -          typeStateBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          typeStateBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.Struct.StructuredValue, org.tensorflow.proto.Struct.StructuredValue.Builder, org.tensorflow.proto.Struct.StructuredValueOrBuilder>(
                       getTypeState(),
                       getParentForChildren(),
    @@ -12281,13 +11966,13 @@ public org.tensorflow.proto.Struct.StructuredValueOrBuilder getTypeStateOrBuilde
           /**
            * 
            * The name of the TypeSpec class.
    -       *  * If type_spec_class == REGISTERED_TYPE_SPEC, the TypeSpec class is
    -       *    the one registered under this name. For types registered outside
    -       *    core TensorFlow by an add-on library, that library must be loaded
    -       *    before this value can be deserialized by nested_structure_coder.
    -       *  * If type_spec_class specifies a particular TypeSpec class, this field is
    -       *    redundant with the type_spec_class enum, and is only used for error
    -       *    reporting in older binaries that do not know the tupe_spec_class enum.
    +       * * If type_spec_class == REGISTERED_TYPE_SPEC, the TypeSpec class is
    +       * the one registered under this name. For types registered outside
    +       * core TensorFlow by an add-on library, that library must be loaded
    +       * before this value can be deserialized by nested_structure_coder.
    +       * * If type_spec_class specifies a particular TypeSpec class, this field is
    +       * redundant with the type_spec_class enum, and is only used for error
    +       * reporting in older binaries that do not know the tupe_spec_class enum.
            * 
    * * string type_spec_class_name = 3; @@ -12308,13 +11993,13 @@ public java.lang.String getTypeSpecClassName() { /** *
            * The name of the TypeSpec class.
    -       *  * If type_spec_class == REGISTERED_TYPE_SPEC, the TypeSpec class is
    -       *    the one registered under this name. For types registered outside
    -       *    core TensorFlow by an add-on library, that library must be loaded
    -       *    before this value can be deserialized by nested_structure_coder.
    -       *  * If type_spec_class specifies a particular TypeSpec class, this field is
    -       *    redundant with the type_spec_class enum, and is only used for error
    -       *    reporting in older binaries that do not know the tupe_spec_class enum.
    +       * * If type_spec_class == REGISTERED_TYPE_SPEC, the TypeSpec class is
    +       * the one registered under this name. For types registered outside
    +       * core TensorFlow by an add-on library, that library must be loaded
    +       * before this value can be deserialized by nested_structure_coder.
    +       * * If type_spec_class specifies a particular TypeSpec class, this field is
    +       * redundant with the type_spec_class enum, and is only used for error
    +       * reporting in older binaries that do not know the tupe_spec_class enum.
            * 
    * * string type_spec_class_name = 3; @@ -12336,13 +12021,13 @@ public java.lang.String getTypeSpecClassName() { /** *
            * The name of the TypeSpec class.
    -       *  * If type_spec_class == REGISTERED_TYPE_SPEC, the TypeSpec class is
    -       *    the one registered under this name. For types registered outside
    -       *    core TensorFlow by an add-on library, that library must be loaded
    -       *    before this value can be deserialized by nested_structure_coder.
    -       *  * If type_spec_class specifies a particular TypeSpec class, this field is
    -       *    redundant with the type_spec_class enum, and is only used for error
    -       *    reporting in older binaries that do not know the tupe_spec_class enum.
    +       * * If type_spec_class == REGISTERED_TYPE_SPEC, the TypeSpec class is
    +       * the one registered under this name. For types registered outside
    +       * core TensorFlow by an add-on library, that library must be loaded
    +       * before this value can be deserialized by nested_structure_coder.
    +       * * If type_spec_class specifies a particular TypeSpec class, this field is
    +       * redundant with the type_spec_class enum, and is only used for error
    +       * reporting in older binaries that do not know the tupe_spec_class enum.
            * 
    * * string type_spec_class_name = 3; @@ -12351,45 +12036,43 @@ public java.lang.String getTypeSpecClassName() { */ public Builder setTypeSpecClassName( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } typeSpecClassName_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } /** *
            * The name of the TypeSpec class.
    -       *  * If type_spec_class == REGISTERED_TYPE_SPEC, the TypeSpec class is
    -       *    the one registered under this name. For types registered outside
    -       *    core TensorFlow by an add-on library, that library must be loaded
    -       *    before this value can be deserialized by nested_structure_coder.
    -       *  * If type_spec_class specifies a particular TypeSpec class, this field is
    -       *    redundant with the type_spec_class enum, and is only used for error
    -       *    reporting in older binaries that do not know the tupe_spec_class enum.
    +       * * If type_spec_class == REGISTERED_TYPE_SPEC, the TypeSpec class is
    +       * the one registered under this name. For types registered outside
    +       * core TensorFlow by an add-on library, that library must be loaded
    +       * before this value can be deserialized by nested_structure_coder.
    +       * * If type_spec_class specifies a particular TypeSpec class, this field is
    +       * redundant with the type_spec_class enum, and is only used for error
    +       * reporting in older binaries that do not know the tupe_spec_class enum.
            * 
    * * string type_spec_class_name = 3; * @return This builder for chaining. */ public Builder clearTypeSpecClassName() { - typeSpecClassName_ = getDefaultInstance().getTypeSpecClassName(); + bitField0_ = (bitField0_ & ~0x00000004); onChanged(); return this; } /** *
            * The name of the TypeSpec class.
    -       *  * If type_spec_class == REGISTERED_TYPE_SPEC, the TypeSpec class is
    -       *    the one registered under this name. For types registered outside
    -       *    core TensorFlow by an add-on library, that library must be loaded
    -       *    before this value can be deserialized by nested_structure_coder.
    -       *  * If type_spec_class specifies a particular TypeSpec class, this field is
    -       *    redundant with the type_spec_class enum, and is only used for error
    -       *    reporting in older binaries that do not know the tupe_spec_class enum.
    +       * * If type_spec_class == REGISTERED_TYPE_SPEC, the TypeSpec class is
    +       * the one registered under this name. For types registered outside
    +       * core TensorFlow by an add-on library, that library must be loaded
    +       * before this value can be deserialized by nested_structure_coder.
    +       * * If type_spec_class specifies a particular TypeSpec class, this field is
    +       * redundant with the type_spec_class enum, and is only used for error
    +       * reporting in older binaries that do not know the tupe_spec_class enum.
            * 
    * * string type_spec_class_name = 3; @@ -12398,12 +12081,10 @@ public Builder clearTypeSpecClassName() { */ public Builder setTypeSpecClassNameBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); typeSpecClassName_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -12431,8 +12112,9 @@ public int getNumFlatComponents() { * @return This builder for chaining. */ public Builder setNumFlatComponents(int value) { - + numFlatComponents_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -12445,23 +12127,11 @@ public Builder setNumFlatComponents(int value) { * @return This builder for chaining. */ public Builder clearNumFlatComponents() { - + bitField0_ = (bitField0_ & ~0x00000008); numFlatComponents_ = 0; onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.TypeSpecProto) } @@ -12517,57 +12187,57 @@ public org.tensorflow.proto.Struct.TypeSpecProto getDefaultInstanceForType() { private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_StructuredValue_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_StructuredValue_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_NoneValue_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_NoneValue_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_ListValue_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_ListValue_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_TupleValue_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_TupleValue_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_DictValue_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_DictValue_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_DictValue_FieldsEntry_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_DictValue_FieldsEntry_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_PairValue_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_PairValue_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_NamedTupleValue_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_NamedTupleValue_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_TensorSpecProto_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_TensorSpecProto_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_BoundedTensorSpecProto_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_BoundedTensorSpecProto_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_TypeSpecProto_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_TypeSpecProto_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor @@ -12647,69 +12317,70 @@ public org.tensorflow.proto.Struct.TypeSpecProto getDefaultInstanceForType() { internal_static_tensorflow_StructuredValue_descriptor = getDescriptor().getMessageTypes().get(0); internal_static_tensorflow_StructuredValue_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_StructuredValue_descriptor, new java.lang.String[] { "NoneValue", "Float64Value", "Int64Value", "StringValue", "BoolValue", "TensorShapeValue", "TensorDtypeValue", "TensorSpecValue", "TypeSpecValue", "BoundedTensorSpecValue", "ListValue", "TupleValue", "DictValue", "NamedTupleValue", "TensorValue", "NumpyValue", "Kind", }); internal_static_tensorflow_NoneValue_descriptor = getDescriptor().getMessageTypes().get(1); internal_static_tensorflow_NoneValue_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_NoneValue_descriptor, new java.lang.String[] { }); internal_static_tensorflow_ListValue_descriptor = getDescriptor().getMessageTypes().get(2); internal_static_tensorflow_ListValue_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_ListValue_descriptor, new java.lang.String[] { "Values", }); internal_static_tensorflow_TupleValue_descriptor = getDescriptor().getMessageTypes().get(3); internal_static_tensorflow_TupleValue_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_TupleValue_descriptor, new java.lang.String[] { "Values", }); internal_static_tensorflow_DictValue_descriptor = getDescriptor().getMessageTypes().get(4); internal_static_tensorflow_DictValue_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_DictValue_descriptor, new java.lang.String[] { "Fields", }); internal_static_tensorflow_DictValue_FieldsEntry_descriptor = internal_static_tensorflow_DictValue_descriptor.getNestedTypes().get(0); internal_static_tensorflow_DictValue_FieldsEntry_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_DictValue_FieldsEntry_descriptor, new java.lang.String[] { "Key", "Value", }); internal_static_tensorflow_PairValue_descriptor = getDescriptor().getMessageTypes().get(5); internal_static_tensorflow_PairValue_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_PairValue_descriptor, new java.lang.String[] { "Key", "Value", }); internal_static_tensorflow_NamedTupleValue_descriptor = getDescriptor().getMessageTypes().get(6); internal_static_tensorflow_NamedTupleValue_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_NamedTupleValue_descriptor, new java.lang.String[] { "Name", "Values", }); internal_static_tensorflow_TensorSpecProto_descriptor = getDescriptor().getMessageTypes().get(7); internal_static_tensorflow_TensorSpecProto_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_TensorSpecProto_descriptor, new java.lang.String[] { "Name", "Shape", "Dtype", }); internal_static_tensorflow_BoundedTensorSpecProto_descriptor = getDescriptor().getMessageTypes().get(8); internal_static_tensorflow_BoundedTensorSpecProto_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_BoundedTensorSpecProto_descriptor, new java.lang.String[] { "Name", "Shape", "Dtype", "Minimum", "Maximum", }); internal_static_tensorflow_TypeSpecProto_descriptor = getDescriptor().getMessageTypes().get(9); internal_static_tensorflow_TypeSpecProto_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_TypeSpecProto_descriptor, new java.lang.String[] { "TypeSpecClass", "TypeState", "TypeSpecClassName", "NumFlatComponents", }); + descriptor.resolveAllFeaturesImmutable(); org.tensorflow.proto.TensorProtos.getDescriptor(); org.tensorflow.proto.TensorShapeProtos.getDescriptor(); org.tensorflow.proto.TypesProtos.getDescriptor(); diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Summary.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Summary.java index b0d93b6bf38..ee1bb65c4cd 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Summary.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/Summary.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/summary.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,6 +9,7 @@ *
      * A Summary is a set of named values to be displayed by the
      * visualizer.
    + *
      * Summaries are produced regularly during training, as controlled by
      * the "summary_interval_secs" attribute of the training operation.
      * Summaries are also produced at the end of an evaluation.
    @@ -15,37 +18,34 @@
      * Protobuf type {@code tensorflow.Summary}
      */
     public final class Summary extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.Summary)
         SummaryOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      Summary.class.getName());
    +  }
       // Use Summary.newBuilder() to construct.
    -  private Summary(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private Summary(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private Summary() {
         value_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new Summary();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_Summary_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_Summary_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -75,12 +75,12 @@ public interface ImageOrBuilder extends
         /**
          * 
          * Valid colorspace values are
    -     *   1 - grayscale
    -     *   2 - grayscale + alpha
    -     *   3 - RGB
    -     *   4 - RGBA
    -     *   5 - DIGITAL_YUV
    -     *   6 - BGRA
    +     * 1 - grayscale
    +     * 2 - grayscale + alpha
    +     * 3 - RGB
    +     * 4 - RGBA
    +     * 5 - DIGITAL_YUV
    +     * 6 - BGRA
          * 
    * * int32 colorspace = 3; @@ -103,37 +103,34 @@ public interface ImageOrBuilder extends * Protobuf type {@code tensorflow.Summary.Image} */ public static final class Image extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.Summary.Image) ImageOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + Image.class.getName()); + } // Use Image.newBuilder() to construct. - private Image(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private Image(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private Image() { encodedImageString_ = com.google.protobuf.ByteString.EMPTY; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new Image(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_Summary_Image_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_Summary_Image_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -141,7 +138,7 @@ protected java.lang.Object newInstance( } public static final int HEIGHT_FIELD_NUMBER = 1; - private int height_; + private int height_ = 0; /** *
          * Dimensions of the image.
    @@ -156,7 +153,7 @@ public int getHeight() {
         }
     
         public static final int WIDTH_FIELD_NUMBER = 2;
    -    private int width_;
    +    private int width_ = 0;
         /**
          * int32 width = 2;
          * @return The width.
    @@ -167,16 +164,16 @@ public int getWidth() {
         }
     
         public static final int COLORSPACE_FIELD_NUMBER = 3;
    -    private int colorspace_;
    +    private int colorspace_ = 0;
         /**
          * 
          * Valid colorspace values are
    -     *   1 - grayscale
    -     *   2 - grayscale + alpha
    -     *   3 - RGB
    -     *   4 - RGBA
    -     *   5 - DIGITAL_YUV
    -     *   6 - BGRA
    +     * 1 - grayscale
    +     * 2 - grayscale + alpha
    +     * 3 - RGB
    +     * 4 - RGBA
    +     * 5 - DIGITAL_YUV
    +     * 6 - BGRA
          * 
    * * int32 colorspace = 3; @@ -188,7 +185,7 @@ public int getColorspace() { } public static final int ENCODED_IMAGE_STRING_FIELD_NUMBER = 4; - private com.google.protobuf.ByteString encodedImageString_; + private com.google.protobuf.ByteString encodedImageString_ = com.google.protobuf.ByteString.EMPTY; /** *
          * Image data in encoded format.  All image formats supported by
    @@ -335,39 +332,41 @@ public static org.tensorflow.proto.Summary.Image parseFrom(
         }
         public static org.tensorflow.proto.Summary.Image parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Summary.Image parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.Summary.Image parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.Summary.Image parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.Summary.Image parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Summary.Image parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -387,7 +386,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -395,7 +394,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.Summary.Image}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.Summary.Image)
             org.tensorflow.proto.Summary.ImageOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -404,7 +403,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_Summary_Image_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -417,21 +416,18 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             height_ = 0;
    -
             width_ = 0;
    -
             colorspace_ = 0;
    -
             encodedImageString_ = com.google.protobuf.ByteString.EMPTY;
    -
             return this;
           }
     
    @@ -458,46 +454,27 @@ public org.tensorflow.proto.Summary.Image build() {
           @java.lang.Override
           public org.tensorflow.proto.Summary.Image buildPartial() {
             org.tensorflow.proto.Summary.Image result = new org.tensorflow.proto.Summary.Image(this);
    -        result.height_ = height_;
    -        result.width_ = width_;
    -        result.colorspace_ = colorspace_;
    -        result.encodedImageString_ = encodedImageString_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.Summary.Image result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.height_ = height_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.width_ = width_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.colorspace_ = colorspace_;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.encodedImageString_ = encodedImageString_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.Summary.Image) {
    @@ -550,22 +527,22 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     height_ = input.readInt32();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   case 16: {
                     width_ = input.readInt32();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 16
                   case 24: {
                     colorspace_ = input.readInt32();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 24
                   case 34: {
                     encodedImageString_ = input.readBytes();
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 34
                   default: {
    @@ -583,6 +560,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private int height_ ;
           /**
    @@ -607,8 +585,9 @@ public int getHeight() {
            * @return This builder for chaining.
            */
           public Builder setHeight(int value) {
    -        
    +
             height_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -621,7 +600,7 @@ public Builder setHeight(int value) {
            * @return This builder for chaining.
            */
           public Builder clearHeight() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             height_ = 0;
             onChanged();
             return this;
    @@ -642,8 +621,9 @@ public int getWidth() {
            * @return This builder for chaining.
            */
           public Builder setWidth(int value) {
    -        
    +
             width_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -652,7 +632,7 @@ public Builder setWidth(int value) {
            * @return This builder for chaining.
            */
           public Builder clearWidth() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000002);
             width_ = 0;
             onChanged();
             return this;
    @@ -662,12 +642,12 @@ public Builder clearWidth() {
           /**
            * 
            * Valid colorspace values are
    -       *   1 - grayscale
    -       *   2 - grayscale + alpha
    -       *   3 - RGB
    -       *   4 - RGBA
    -       *   5 - DIGITAL_YUV
    -       *   6 - BGRA
    +       * 1 - grayscale
    +       * 2 - grayscale + alpha
    +       * 3 - RGB
    +       * 4 - RGBA
    +       * 5 - DIGITAL_YUV
    +       * 6 - BGRA
            * 
    * * int32 colorspace = 3; @@ -680,12 +660,12 @@ public int getColorspace() { /** *
            * Valid colorspace values are
    -       *   1 - grayscale
    -       *   2 - grayscale + alpha
    -       *   3 - RGB
    -       *   4 - RGBA
    -       *   5 - DIGITAL_YUV
    -       *   6 - BGRA
    +       * 1 - grayscale
    +       * 2 - grayscale + alpha
    +       * 3 - RGB
    +       * 4 - RGBA
    +       * 5 - DIGITAL_YUV
    +       * 6 - BGRA
            * 
    * * int32 colorspace = 3; @@ -693,27 +673,28 @@ public int getColorspace() { * @return This builder for chaining. */ public Builder setColorspace(int value) { - + colorspace_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } /** *
            * Valid colorspace values are
    -       *   1 - grayscale
    -       *   2 - grayscale + alpha
    -       *   3 - RGB
    -       *   4 - RGBA
    -       *   5 - DIGITAL_YUV
    -       *   6 - BGRA
    +       * 1 - grayscale
    +       * 2 - grayscale + alpha
    +       * 3 - RGB
    +       * 4 - RGBA
    +       * 5 - DIGITAL_YUV
    +       * 6 - BGRA
            * 
    * * int32 colorspace = 3; * @return This builder for chaining. */ public Builder clearColorspace() { - + bitField0_ = (bitField0_ & ~0x00000004); colorspace_ = 0; onChanged(); return this; @@ -744,11 +725,9 @@ public com.google.protobuf.ByteString getEncodedImageString() { * @return This builder for chaining. */ public Builder setEncodedImageString(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } encodedImageString_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -762,23 +741,11 @@ public Builder setEncodedImageString(com.google.protobuf.ByteString value) { * @return This builder for chaining. */ public Builder clearEncodedImageString() { - + bitField0_ = (bitField0_ & ~0x00000008); encodedImageString_ = getDefaultInstance().getEncodedImageString(); onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.Summary.Image) } @@ -892,12 +859,21 @@ public interface AudioOrBuilder extends * Protobuf type {@code tensorflow.Summary.Audio} */ public static final class Audio extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.Summary.Audio) AudioOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + Audio.class.getName()); + } // Use Audio.newBuilder() to construct. - private Audio(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private Audio(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private Audio() { @@ -905,25 +881,13 @@ private Audio() { contentType_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new Audio(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_Summary_Audio_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_Summary_Audio_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -931,7 +895,7 @@ protected java.lang.Object newInstance( } public static final int SAMPLE_RATE_FIELD_NUMBER = 1; - private float sampleRate_; + private float sampleRate_ = 0F; /** *
          * Sample rate of the audio in Hz.
    @@ -946,7 +910,7 @@ public float getSampleRate() {
         }
     
         public static final int NUM_CHANNELS_FIELD_NUMBER = 2;
    -    private long numChannels_;
    +    private long numChannels_ = 0L;
         /**
          * 
          * Number of channels of audio.
    @@ -961,7 +925,7 @@ public long getNumChannels() {
         }
     
         public static final int LENGTH_FRAMES_FIELD_NUMBER = 3;
    -    private long lengthFrames_;
    +    private long lengthFrames_ = 0L;
         /**
          * 
          * Length of the audio in frames (samples per channel).
    @@ -976,7 +940,7 @@ public long getLengthFrames() {
         }
     
         public static final int ENCODED_AUDIO_STRING_FIELD_NUMBER = 4;
    -    private com.google.protobuf.ByteString encodedAudioString_;
    +    private com.google.protobuf.ByteString encodedAudioString_ = com.google.protobuf.ByteString.EMPTY;
         /**
          * 
          * Encoded audio data and its associated RFC 2045 content type (e.g.
    @@ -992,7 +956,8 @@ public com.google.protobuf.ByteString getEncodedAudioString() {
         }
     
         public static final int CONTENT_TYPE_FIELD_NUMBER = 5;
    -    private volatile java.lang.Object contentType_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object contentType_ = "";
         /**
          * string content_type = 5;
          * @return The contentType.
    @@ -1055,8 +1020,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (!encodedAudioString_.isEmpty()) {
             output.writeBytes(4, encodedAudioString_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(contentType_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, contentType_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(contentType_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 5, contentType_);
           }
           getUnknownFields().writeTo(output);
         }
    @@ -1083,8 +1048,8 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeBytesSize(4, encodedAudioString_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(contentType_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, contentType_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(contentType_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(5, contentType_);
           }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
    @@ -1175,39 +1140,41 @@ public static org.tensorflow.proto.Summary.Audio parseFrom(
         }
         public static org.tensorflow.proto.Summary.Audio parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Summary.Audio parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.Summary.Audio parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.Summary.Audio parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.Summary.Audio parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Summary.Audio parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -1227,7 +1194,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -1235,7 +1202,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.Summary.Audio}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.Summary.Audio)
             org.tensorflow.proto.Summary.AudioOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1244,7 +1211,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_Summary_Audio_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -1257,23 +1224,19 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             sampleRate_ = 0F;
    -
             numChannels_ = 0L;
    -
             lengthFrames_ = 0L;
    -
             encodedAudioString_ = com.google.protobuf.ByteString.EMPTY;
    -
             contentType_ = "";
    -
             return this;
           }
     
    @@ -1300,47 +1263,30 @@ public org.tensorflow.proto.Summary.Audio build() {
           @java.lang.Override
           public org.tensorflow.proto.Summary.Audio buildPartial() {
             org.tensorflow.proto.Summary.Audio result = new org.tensorflow.proto.Summary.Audio(this);
    -        result.sampleRate_ = sampleRate_;
    -        result.numChannels_ = numChannels_;
    -        result.lengthFrames_ = lengthFrames_;
    -        result.encodedAudioString_ = encodedAudioString_;
    -        result.contentType_ = contentType_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.Summary.Audio result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.sampleRate_ = sampleRate_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.numChannels_ = numChannels_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.lengthFrames_ = lengthFrames_;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.encodedAudioString_ = encodedAudioString_;
    +        }
    +        if (((from_bitField0_ & 0x00000010) != 0)) {
    +          result.contentType_ = contentType_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.Summary.Audio) {
    @@ -1367,6 +1313,7 @@ public Builder mergeFrom(org.tensorflow.proto.Summary.Audio other) {
             }
             if (!other.getContentType().isEmpty()) {
               contentType_ = other.contentType_;
    +          bitField0_ |= 0x00000010;
               onChanged();
             }
             this.mergeUnknownFields(other.getUnknownFields());
    @@ -1397,27 +1344,27 @@ public Builder mergeFrom(
                     break;
                   case 13: {
                     sampleRate_ = input.readFloat();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 13
                   case 16: {
                     numChannels_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 16
                   case 24: {
                     lengthFrames_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 24
                   case 34: {
                     encodedAudioString_ = input.readBytes();
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 34
                   case 42: {
                     contentType_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000010;
                     break;
                   } // case 42
                   default: {
    @@ -1435,6 +1382,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private float sampleRate_ ;
           /**
    @@ -1459,8 +1407,9 @@ public float getSampleRate() {
            * @return This builder for chaining.
            */
           public Builder setSampleRate(float value) {
    -        
    +
             sampleRate_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -1473,7 +1422,7 @@ public Builder setSampleRate(float value) {
            * @return This builder for chaining.
            */
           public Builder clearSampleRate() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             sampleRate_ = 0F;
             onChanged();
             return this;
    @@ -1502,8 +1451,9 @@ public long getNumChannels() {
            * @return This builder for chaining.
            */
           public Builder setNumChannels(long value) {
    -        
    +
             numChannels_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1516,7 +1466,7 @@ public Builder setNumChannels(long value) {
            * @return This builder for chaining.
            */
           public Builder clearNumChannels() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000002);
             numChannels_ = 0L;
             onChanged();
             return this;
    @@ -1545,8 +1495,9 @@ public long getLengthFrames() {
            * @return This builder for chaining.
            */
           public Builder setLengthFrames(long value) {
    -        
    +
             lengthFrames_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1559,7 +1510,7 @@ public Builder setLengthFrames(long value) {
            * @return This builder for chaining.
            */
           public Builder clearLengthFrames() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000004);
             lengthFrames_ = 0L;
             onChanged();
             return this;
    @@ -1590,11 +1541,9 @@ public com.google.protobuf.ByteString getEncodedAudioString() {
            * @return This builder for chaining.
            */
           public Builder setEncodedAudioString(com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             encodedAudioString_ = value;
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -1608,7 +1557,7 @@ public Builder setEncodedAudioString(com.google.protobuf.ByteString value) {
            * @return This builder for chaining.
            */
           public Builder clearEncodedAudioString() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000008);
             encodedAudioString_ = getDefaultInstance().getEncodedAudioString();
             onChanged();
             return this;
    @@ -1655,11 +1604,9 @@ public java.lang.String getContentType() {
            */
           public Builder setContentType(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             contentType_ = value;
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -1668,8 +1615,8 @@ public Builder setContentType(
            * @return This builder for chaining.
            */
           public Builder clearContentType() {
    -        
             contentType_ = getDefaultInstance().getContentType();
    +        bitField0_ = (bitField0_ & ~0x00000010);
             onChanged();
             return this;
           }
    @@ -1680,27 +1627,13 @@ public Builder clearContentType() {
            */
           public Builder setContentTypeBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             contentType_ = value;
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.Summary.Audio)
         }
    @@ -1922,18 +1855,27 @@ public interface ValueOrBuilder extends
          */
         org.tensorflow.proto.TensorProtoOrBuilder getTensorOrBuilder();
     
    -    public org.tensorflow.proto.Summary.Value.ValueCase getValueCase();
    +    org.tensorflow.proto.Summary.Value.ValueCase getValueCase();
       }
       /**
        * Protobuf type {@code tensorflow.Summary.Value}
        */
       public static final class Value extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.Summary.Value)
           ValueOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        Value.class.getName());
    +    }
         // Use Value.newBuilder() to construct.
    -    private Value(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private Value(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private Value() {
    @@ -1941,32 +1883,22 @@ private Value() {
           tag_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new Value();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_Summary_Value_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_Summary_Value_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
                   org.tensorflow.proto.Summary.Value.class, org.tensorflow.proto.Summary.Value.Builder.class);
         }
     
    +    private int bitField0_;
         private int valueCase_ = 0;
    +    @SuppressWarnings("serial")
         private java.lang.Object value_;
         public enum ValueCase
             implements com.google.protobuf.Internal.EnumLite,
    @@ -2016,7 +1948,8 @@ public int getNumber() {
         }
     
         public static final int NODE_NAME_FIELD_NUMBER = 7;
    -    private volatile java.lang.Object nodeName_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object nodeName_ = "";
         /**
          * 
          * This field is deprecated and will not be set.
    @@ -2062,7 +1995,8 @@ public java.lang.String getNodeName() {
         }
     
         public static final int TAG_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object tag_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object tag_ = "";
         /**
          * 
          * Tag name for the data. Used by TensorBoard plugins to organize data. Tags
    @@ -2127,7 +2061,7 @@ public java.lang.String getTag() {
          */
         @java.lang.Override
         public boolean hasMetadata() {
    -      return metadata_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -2158,7 +2092,7 @@ public org.tensorflow.proto.SummaryMetadata getMetadata() {
          */
         @java.lang.Override
         public org.tensorflow.proto.SummaryMetadataOrBuilder getMetadataOrBuilder() {
    -      return getMetadata();
    +      return metadata_ == null ? org.tensorflow.proto.SummaryMetadata.getDefaultInstance() : metadata_;
         }
     
         public static final int SIMPLE_VALUE_FIELD_NUMBER = 2;
    @@ -2341,8 +2275,8 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tag_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, tag_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(tag_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, tag_);
           }
           if (valueCase_ == 2) {
             output.writeFloat(
    @@ -2361,13 +2295,13 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (valueCase_ == 6) {
             output.writeMessage(6, (org.tensorflow.proto.Summary.Audio) value_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nodeName_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 7, nodeName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(nodeName_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 7, nodeName_);
           }
           if (valueCase_ == 8) {
             output.writeMessage(8, (org.tensorflow.proto.TensorProto) value_);
           }
    -      if (metadata_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(9, getMetadata());
           }
           getUnknownFields().writeTo(output);
    @@ -2379,8 +2313,8 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tag_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, tag_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(tag_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, tag_);
           }
           if (valueCase_ == 2) {
             size += com.google.protobuf.CodedOutputStream
    @@ -2404,14 +2338,14 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(6, (org.tensorflow.proto.Summary.Audio) value_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(nodeName_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, nodeName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(nodeName_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(7, nodeName_);
           }
           if (valueCase_ == 8) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(8, (org.tensorflow.proto.TensorProto) value_);
           }
    -      if (metadata_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(9, getMetadata());
           }
    @@ -2556,39 +2490,41 @@ public static org.tensorflow.proto.Summary.Value parseFrom(
         }
         public static org.tensorflow.proto.Summary.Value parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Summary.Value parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.Summary.Value parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.Summary.Value parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.Summary.Value parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.Summary.Value parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -2608,7 +2544,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -2616,7 +2552,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.Summary.Value}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.Summary.Value)
             org.tensorflow.proto.Summary.ValueOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -2625,7 +2561,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_Summary_Value_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -2634,25 +2570,29 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.Summary.Value.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getMetadataFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             nodeName_ = "";
    -
             tag_ = "";
    -
    -        if (metadataBuilder_ == null) {
    -          metadata_ = null;
    -        } else {
    -          metadata_ = null;
    +        metadata_ = null;
    +        if (metadataBuilder_ != null) {
    +          metadataBuilder_.dispose();
               metadataBuilder_ = null;
             }
             if (imageBuilder_ != null) {
    @@ -2695,84 +2635,51 @@ public org.tensorflow.proto.Summary.Value build() {
           @java.lang.Override
           public org.tensorflow.proto.Summary.Value buildPartial() {
             org.tensorflow.proto.Summary.Value result = new org.tensorflow.proto.Summary.Value(this);
    -        result.nodeName_ = nodeName_;
    -        result.tag_ = tag_;
    -        if (metadataBuilder_ == null) {
    -          result.metadata_ = metadata_;
    -        } else {
    -          result.metadata_ = metadataBuilder_.build();
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        buildPartialOneofs(result);
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartial0(org.tensorflow.proto.Summary.Value result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.nodeName_ = nodeName_;
             }
    -        if (valueCase_ == 2) {
    -          result.value_ = value_;
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.tag_ = tag_;
             }
    -        if (valueCase_ == 3) {
    -          result.value_ = value_;
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.metadata_ = metadataBuilder_ == null
    +              ? metadata_
    +              : metadataBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
             }
    -        if (valueCase_ == 4) {
    -          if (imageBuilder_ == null) {
    -            result.value_ = value_;
    -          } else {
    -            result.value_ = imageBuilder_.build();
    -          }
    +        result.bitField0_ |= to_bitField0_;
    +      }
    +
    +      private void buildPartialOneofs(org.tensorflow.proto.Summary.Value result) {
    +        result.valueCase_ = valueCase_;
    +        result.value_ = this.value_;
    +        if (valueCase_ == 4 &&
    +            imageBuilder_ != null) {
    +          result.value_ = imageBuilder_.build();
             }
    -        if (valueCase_ == 5) {
    -          if (histoBuilder_ == null) {
    -            result.value_ = value_;
    -          } else {
    -            result.value_ = histoBuilder_.build();
    -          }
    +        if (valueCase_ == 5 &&
    +            histoBuilder_ != null) {
    +          result.value_ = histoBuilder_.build();
             }
    -        if (valueCase_ == 6) {
    -          if (audioBuilder_ == null) {
    -            result.value_ = value_;
    -          } else {
    -            result.value_ = audioBuilder_.build();
    -          }
    +        if (valueCase_ == 6 &&
    +            audioBuilder_ != null) {
    +          result.value_ = audioBuilder_.build();
             }
    -        if (valueCase_ == 8) {
    -          if (tensorBuilder_ == null) {
    -            result.value_ = value_;
    -          } else {
    -            result.value_ = tensorBuilder_.build();
    -          }
    +        if (valueCase_ == 8 &&
    +            tensorBuilder_ != null) {
    +          result.value_ = tensorBuilder_.build();
             }
    -        result.valueCase_ = valueCase_;
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    -      }
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.Summary.Value) {
    @@ -2787,10 +2694,12 @@ public Builder mergeFrom(org.tensorflow.proto.Summary.Value other) {
             if (other == org.tensorflow.proto.Summary.Value.getDefaultInstance()) return this;
             if (!other.getNodeName().isEmpty()) {
               nodeName_ = other.nodeName_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (!other.getTag().isEmpty()) {
               tag_ = other.tag_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             if (other.hasMetadata()) {
    @@ -2853,7 +2762,7 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     tag_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 10
                   case 21: {
    @@ -2889,7 +2798,7 @@ public Builder mergeFrom(
                   } // case 50
                   case 58: {
                     nodeName_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 58
                   case 66: {
    @@ -2903,7 +2812,7 @@ public Builder mergeFrom(
                     input.readMessage(
                         getMetadataFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 74
                   default: {
    @@ -2936,6 +2845,7 @@ public Builder clearValue() {
             return this;
           }
     
    +      private int bitField0_;
     
           private java.lang.Object nodeName_ = "";
           /**
    @@ -2990,11 +2900,9 @@ public java.lang.String getNodeName() {
            */
           public Builder setNodeName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             nodeName_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -3007,8 +2915,8 @@ public Builder setNodeName(
            * @return This builder for chaining.
            */
           public Builder clearNodeName() {
    -        
             nodeName_ = getDefaultInstance().getNodeName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -3023,12 +2931,10 @@ public Builder clearNodeName() {
            */
           public Builder setNodeNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             nodeName_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -3092,11 +2998,9 @@ public java.lang.String getTag() {
            */
           public Builder setTag(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             tag_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -3111,8 +3015,8 @@ public Builder setTag(
            * @return This builder for chaining.
            */
           public Builder clearTag() {
    -        
             tag_ = getDefaultInstance().getTag();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -3129,18 +3033,16 @@ public Builder clearTag() {
            */
           public Builder setTagBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             tag_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
     
           private org.tensorflow.proto.SummaryMetadata metadata_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.SummaryMetadata, org.tensorflow.proto.SummaryMetadata.Builder, org.tensorflow.proto.SummaryMetadataOrBuilder> metadataBuilder_;
           /**
            * 
    @@ -3155,7 +3057,7 @@ public Builder setTagBytes(
            * @return Whether the metadata field is set.
            */
           public boolean hasMetadata() {
    -        return metadataBuilder_ != null || metadata_ != null;
    +        return ((bitField0_ & 0x00000004) != 0);
           }
           /**
            * 
    @@ -3193,11 +3095,11 @@ public Builder setMetadata(org.tensorflow.proto.SummaryMetadata value) {
                 throw new NullPointerException();
               }
               metadata_ = value;
    -          onChanged();
             } else {
               metadataBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000004;
    +        onChanged();
             return this;
           }
           /**
    @@ -3215,11 +3117,11 @@ public Builder setMetadata(
               org.tensorflow.proto.SummaryMetadata.Builder builderForValue) {
             if (metadataBuilder_ == null) {
               metadata_ = builderForValue.build();
    -          onChanged();
             } else {
               metadataBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000004;
    +        onChanged();
             return this;
           }
           /**
    @@ -3235,17 +3137,20 @@ public Builder setMetadata(
            */
           public Builder mergeMetadata(org.tensorflow.proto.SummaryMetadata value) {
             if (metadataBuilder_ == null) {
    -          if (metadata_ != null) {
    -            metadata_ =
    -              org.tensorflow.proto.SummaryMetadata.newBuilder(metadata_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000004) != 0) &&
    +            metadata_ != null &&
    +            metadata_ != org.tensorflow.proto.SummaryMetadata.getDefaultInstance()) {
    +            getMetadataBuilder().mergeFrom(value);
               } else {
                 metadata_ = value;
               }
    -          onChanged();
             } else {
               metadataBuilder_.mergeFrom(value);
             }
    -
    +        if (metadata_ != null) {
    +          bitField0_ |= 0x00000004;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -3260,14 +3165,13 @@ public Builder mergeMetadata(org.tensorflow.proto.SummaryMetadata value) {
            * .tensorflow.SummaryMetadata metadata = 9;
            */
           public Builder clearMetadata() {
    -        if (metadataBuilder_ == null) {
    -          metadata_ = null;
    -          onChanged();
    -        } else {
    -          metadata_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000004);
    +        metadata_ = null;
    +        if (metadataBuilder_ != null) {
    +          metadataBuilder_.dispose();
               metadataBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -3282,7 +3186,7 @@ public Builder clearMetadata() {
            * .tensorflow.SummaryMetadata metadata = 9;
            */
           public org.tensorflow.proto.SummaryMetadata.Builder getMetadataBuilder() {
    -        
    +        bitField0_ |= 0x00000004;
             onChanged();
             return getMetadataFieldBuilder().getBuilder();
           }
    @@ -3316,11 +3220,11 @@ public org.tensorflow.proto.SummaryMetadataOrBuilder getMetadataOrBuilder() {
            *
            * .tensorflow.SummaryMetadata metadata = 9;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.SummaryMetadata, org.tensorflow.proto.SummaryMetadata.Builder, org.tensorflow.proto.SummaryMetadataOrBuilder> 
               getMetadataFieldBuilder() {
             if (metadataBuilder_ == null) {
    -          metadataBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          metadataBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.SummaryMetadata, org.tensorflow.proto.SummaryMetadata.Builder, org.tensorflow.proto.SummaryMetadataOrBuilder>(
                       getMetadata(),
                       getParentForChildren(),
    @@ -3353,6 +3257,7 @@ public float getSimpleValue() {
            * @return This builder for chaining.
            */
           public Builder setSimpleValue(float value) {
    +
             valueCase_ = 2;
             value_ = value;
             onChanged();
    @@ -3394,10 +3299,8 @@ public com.google.protobuf.ByteString getObsoleteOldStyleHistogram() {
            * @return This builder for chaining.
            */
           public Builder setObsoleteOldStyleHistogram(com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  valueCase_ = 3;
    +        if (value == null) { throw new NullPointerException(); }
    +        valueCase_ = 3;
             value_ = value;
             onChanged();
             return this;
    @@ -3415,7 +3318,7 @@ public Builder clearObsoleteOldStyleHistogram() {
             return this;
           }
     
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Summary.Image, org.tensorflow.proto.Summary.Image.Builder, org.tensorflow.proto.Summary.ImageOrBuilder> imageBuilder_;
           /**
            * .tensorflow.Summary.Image image = 4;
    @@ -3538,14 +3441,14 @@ public org.tensorflow.proto.Summary.ImageOrBuilder getImageOrBuilder() {
           /**
            * .tensorflow.Summary.Image image = 4;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Summary.Image, org.tensorflow.proto.Summary.Image.Builder, org.tensorflow.proto.Summary.ImageOrBuilder> 
               getImageFieldBuilder() {
             if (imageBuilder_ == null) {
               if (!(valueCase_ == 4)) {
                 value_ = org.tensorflow.proto.Summary.Image.getDefaultInstance();
               }
    -          imageBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          imageBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.Summary.Image, org.tensorflow.proto.Summary.Image.Builder, org.tensorflow.proto.Summary.ImageOrBuilder>(
                       (org.tensorflow.proto.Summary.Image) value_,
                       getParentForChildren(),
    @@ -3553,11 +3456,11 @@ public org.tensorflow.proto.Summary.ImageOrBuilder getImageOrBuilder() {
               value_ = null;
             }
             valueCase_ = 4;
    -        onChanged();;
    +        onChanged();
             return imageBuilder_;
           }
     
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.HistogramProto, org.tensorflow.proto.HistogramProto.Builder, org.tensorflow.proto.HistogramProtoOrBuilder> histoBuilder_;
           /**
            * .tensorflow.HistogramProto histo = 5;
    @@ -3680,14 +3583,14 @@ public org.tensorflow.proto.HistogramProtoOrBuilder getHistoOrBuilder() {
           /**
            * .tensorflow.HistogramProto histo = 5;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.HistogramProto, org.tensorflow.proto.HistogramProto.Builder, org.tensorflow.proto.HistogramProtoOrBuilder> 
               getHistoFieldBuilder() {
             if (histoBuilder_ == null) {
               if (!(valueCase_ == 5)) {
                 value_ = org.tensorflow.proto.HistogramProto.getDefaultInstance();
               }
    -          histoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          histoBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.HistogramProto, org.tensorflow.proto.HistogramProto.Builder, org.tensorflow.proto.HistogramProtoOrBuilder>(
                       (org.tensorflow.proto.HistogramProto) value_,
                       getParentForChildren(),
    @@ -3695,11 +3598,11 @@ public org.tensorflow.proto.HistogramProtoOrBuilder getHistoOrBuilder() {
               value_ = null;
             }
             valueCase_ = 5;
    -        onChanged();;
    +        onChanged();
             return histoBuilder_;
           }
     
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Summary.Audio, org.tensorflow.proto.Summary.Audio.Builder, org.tensorflow.proto.Summary.AudioOrBuilder> audioBuilder_;
           /**
            * .tensorflow.Summary.Audio audio = 6;
    @@ -3822,14 +3725,14 @@ public org.tensorflow.proto.Summary.AudioOrBuilder getAudioOrBuilder() {
           /**
            * .tensorflow.Summary.Audio audio = 6;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Summary.Audio, org.tensorflow.proto.Summary.Audio.Builder, org.tensorflow.proto.Summary.AudioOrBuilder> 
               getAudioFieldBuilder() {
             if (audioBuilder_ == null) {
               if (!(valueCase_ == 6)) {
                 value_ = org.tensorflow.proto.Summary.Audio.getDefaultInstance();
               }
    -          audioBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          audioBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.Summary.Audio, org.tensorflow.proto.Summary.Audio.Builder, org.tensorflow.proto.Summary.AudioOrBuilder>(
                       (org.tensorflow.proto.Summary.Audio) value_,
                       getParentForChildren(),
    @@ -3837,11 +3740,11 @@ public org.tensorflow.proto.Summary.AudioOrBuilder getAudioOrBuilder() {
               value_ = null;
             }
             valueCase_ = 6;
    -        onChanged();;
    +        onChanged();
             return audioBuilder_;
           }
     
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> tensorBuilder_;
           /**
            * .tensorflow.TensorProto tensor = 8;
    @@ -3964,14 +3867,14 @@ public org.tensorflow.proto.TensorProtoOrBuilder getTensorOrBuilder() {
           /**
            * .tensorflow.TensorProto tensor = 8;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> 
               getTensorFieldBuilder() {
             if (tensorBuilder_ == null) {
               if (!(valueCase_ == 8)) {
                 value_ = org.tensorflow.proto.TensorProto.getDefaultInstance();
               }
    -          tensorBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          tensorBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder>(
                       (org.tensorflow.proto.TensorProto) value_,
                       getParentForChildren(),
    @@ -3979,21 +3882,9 @@ public org.tensorflow.proto.TensorProtoOrBuilder getTensorOrBuilder() {
               value_ = null;
             }
             valueCase_ = 8;
    -        onChanged();;
    +        onChanged();
             return tensorBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.Summary.Value)
         }
    @@ -4047,6 +3938,7 @@ public org.tensorflow.proto.Summary.Value getDefaultInstanceForType() {
       }
     
       public static final int VALUE_FIELD_NUMBER = 1;
    +  @SuppressWarnings("serial")
       private java.util.List value_;
       /**
        * 
    @@ -4207,39 +4099,41 @@ public static org.tensorflow.proto.Summary parseFrom(
       }
       public static org.tensorflow.proto.Summary parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.Summary parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.Summary parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.Summary parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.Summary parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.Summary parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -4259,7 +4153,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -4267,6 +4161,7 @@ protected Builder newBuilderForType(
        * 
        * A Summary is a set of named values to be displayed by the
        * visualizer.
    +   *
        * Summaries are produced regularly during training, as controlled by
        * the "summary_interval_secs" attribute of the training operation.
        * Summaries are also produced at the end of an evaluation.
    @@ -4275,7 +4170,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.Summary}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.Summary)
           org.tensorflow.proto.SummaryOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -4284,7 +4179,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_Summary_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -4297,13 +4192,14 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           if (valueBuilder_ == null) {
             value_ = java.util.Collections.emptyList();
           } else {
    @@ -4337,7 +4233,13 @@ public org.tensorflow.proto.Summary build() {
         @java.lang.Override
         public org.tensorflow.proto.Summary buildPartial() {
           org.tensorflow.proto.Summary result = new org.tensorflow.proto.Summary(this);
    -      int from_bitField0_ = bitField0_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.Summary result) {
           if (valueBuilder_ == null) {
             if (((bitField0_ & 0x00000001) != 0)) {
               value_ = java.util.Collections.unmodifiableList(value_);
    @@ -4347,42 +4249,12 @@ public org.tensorflow.proto.Summary buildPartial() {
           } else {
             result.value_ = valueBuilder_.build();
           }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.Summary result) {
    +      int from_bitField0_ = bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.Summary) {
    @@ -4414,7 +4286,7 @@ public Builder mergeFrom(org.tensorflow.proto.Summary other) {
                 value_ = other.value_;
                 bitField0_ = (bitField0_ & ~0x00000001);
                 valueBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getValueFieldBuilder() : null;
               } else {
                 valueBuilder_.addAllMessages(other.value_);
    @@ -4486,7 +4358,7 @@ private void ensureValueIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.Summary.Value, org.tensorflow.proto.Summary.Value.Builder, org.tensorflow.proto.Summary.ValueOrBuilder> valueBuilder_;
     
         /**
    @@ -4774,11 +4646,11 @@ public org.tensorflow.proto.Summary.Value.Builder addValueBuilder(
              getValueBuilderList() {
           return getValueFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.Summary.Value, org.tensorflow.proto.Summary.Value.Builder, org.tensorflow.proto.Summary.ValueOrBuilder> 
             getValueFieldBuilder() {
           if (valueBuilder_ == null) {
    -        valueBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        valueBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.Summary.Value, org.tensorflow.proto.Summary.Value.Builder, org.tensorflow.proto.Summary.ValueOrBuilder>(
                     value_,
                     ((bitField0_ & 0x00000001) != 0),
    @@ -4788,18 +4660,6 @@ public org.tensorflow.proto.Summary.Value.Builder addValueBuilder(
           }
           return valueBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.Summary)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryDescription.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryDescription.java
    index 1bb3209c70f..40843246261 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryDescription.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryDescription.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/summary.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,37 +13,34 @@
      * Protobuf type {@code tensorflow.SummaryDescription}
      */
     public final class SummaryDescription extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.SummaryDescription)
         SummaryDescriptionOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      SummaryDescription.class.getName());
    +  }
       // Use SummaryDescription.newBuilder() to construct.
    -  private SummaryDescription(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private SummaryDescription(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private SummaryDescription() {
         typeHint_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new SummaryDescription();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_SummaryDescription_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_SummaryDescription_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -49,7 +48,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int TYPE_HINT_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object typeHint_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object typeHint_ = "";
       /**
        * 
        * Hint on how plugins should process the data in this series.
    @@ -110,8 +110,8 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(typeHint_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, typeHint_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(typeHint_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, typeHint_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -122,8 +122,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(typeHint_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, typeHint_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(typeHint_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, typeHint_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -194,39 +194,41 @@ public static org.tensorflow.proto.SummaryDescription parseFrom(
       }
       public static org.tensorflow.proto.SummaryDescription parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SummaryDescription parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.SummaryDescription parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.SummaryDescription parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.SummaryDescription parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SummaryDescription parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -246,7 +248,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -258,7 +260,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.SummaryDescription}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.SummaryDescription)
           org.tensorflow.proto.SummaryDescriptionOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -267,7 +269,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_SummaryDescription_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -280,15 +282,15 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           typeHint_ = "";
    -
           return this;
         }
     
    @@ -315,43 +317,18 @@ public org.tensorflow.proto.SummaryDescription build() {
         @java.lang.Override
         public org.tensorflow.proto.SummaryDescription buildPartial() {
           org.tensorflow.proto.SummaryDescription result = new org.tensorflow.proto.SummaryDescription(this);
    -      result.typeHint_ = typeHint_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.SummaryDescription result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.typeHint_ = typeHint_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.SummaryDescription) {
    @@ -366,6 +343,7 @@ public Builder mergeFrom(org.tensorflow.proto.SummaryDescription other) {
           if (other == org.tensorflow.proto.SummaryDescription.getDefaultInstance()) return this;
           if (!other.getTypeHint().isEmpty()) {
             typeHint_ = other.typeHint_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -396,7 +374,7 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   typeHint_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 default: {
    @@ -414,6 +392,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object typeHint_ = "";
         /**
    @@ -471,11 +450,9 @@ public java.lang.String getTypeHint() {
          */
         public Builder setTypeHint(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           typeHint_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -489,8 +466,8 @@ public Builder setTypeHint(
          * @return This builder for chaining.
          */
         public Builder clearTypeHint() {
    -      
           typeHint_ = getDefaultInstance().getTypeHint();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -506,27 +483,13 @@ public Builder clearTypeHint() {
          */
         public Builder setTypeHintBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           typeHint_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.SummaryDescription)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryDescriptionOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryDescriptionOrBuilder.java
    index 59788a7aa57..d1b59f7cd9c 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryDescriptionOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryDescriptionOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/summary.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryMetadata.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryMetadata.java
    index d14b7533c9b..5991e77f41c 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryMetadata.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryMetadata.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/summary.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -12,12 +14,21 @@
      * Protobuf type {@code tensorflow.SummaryMetadata}
      */
     public final class SummaryMetadata extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.SummaryMetadata)
         SummaryMetadataOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      SummaryMetadata.class.getName());
    +  }
       // Use SummaryMetadata.newBuilder() to construct.
    -  private SummaryMetadata(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private SummaryMetadata(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private SummaryMetadata() {
    @@ -26,25 +37,13 @@ private SummaryMetadata() {
         dataClass_ = 0;
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new SummaryMetadata();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_SummaryMetadata_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_SummaryMetadata_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -90,12 +89,21 @@ public interface PluginDataOrBuilder extends
        * Protobuf type {@code tensorflow.SummaryMetadata.PluginData}
        */
       public static final class PluginData extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.SummaryMetadata.PluginData)
           PluginDataOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        PluginData.class.getName());
    +    }
         // Use PluginData.newBuilder() to construct.
    -    private PluginData(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private PluginData(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private PluginData() {
    @@ -103,25 +111,13 @@ private PluginData() {
           content_ = com.google.protobuf.ByteString.EMPTY;
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new PluginData();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_SummaryMetadata_PluginData_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_SummaryMetadata_PluginData_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -129,7 +125,8 @@ protected java.lang.Object newInstance(
         }
     
         public static final int PLUGIN_NAME_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object pluginName_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object pluginName_ = "";
         /**
          * 
          * The name of the plugin this data pertains to.
    @@ -175,7 +172,7 @@ public java.lang.String getPluginName() {
         }
     
         public static final int CONTENT_FIELD_NUMBER = 2;
    -    private com.google.protobuf.ByteString content_;
    +    private com.google.protobuf.ByteString content_ = com.google.protobuf.ByteString.EMPTY;
         /**
          * 
          * The content to store for the plugin. The best practice is for this to be
    @@ -204,8 +201,8 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pluginName_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, pluginName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pluginName_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, pluginName_);
           }
           if (!content_.isEmpty()) {
             output.writeBytes(2, content_);
    @@ -219,8 +216,8 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pluginName_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, pluginName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pluginName_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, pluginName_);
           }
           if (!content_.isEmpty()) {
             size += com.google.protobuf.CodedOutputStream
    @@ -299,39 +296,41 @@ public static org.tensorflow.proto.SummaryMetadata.PluginData parseFrom(
         }
         public static org.tensorflow.proto.SummaryMetadata.PluginData parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SummaryMetadata.PluginData parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.SummaryMetadata.PluginData parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.SummaryMetadata.PluginData parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.SummaryMetadata.PluginData parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.SummaryMetadata.PluginData parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -351,7 +350,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -359,7 +358,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.SummaryMetadata.PluginData}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.SummaryMetadata.PluginData)
             org.tensorflow.proto.SummaryMetadata.PluginDataOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -368,7 +367,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_SummaryMetadata_PluginData_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -381,17 +380,16 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             pluginName_ = "";
    -
             content_ = com.google.protobuf.ByteString.EMPTY;
    -
             return this;
           }
     
    @@ -418,44 +416,21 @@ public org.tensorflow.proto.SummaryMetadata.PluginData build() {
           @java.lang.Override
           public org.tensorflow.proto.SummaryMetadata.PluginData buildPartial() {
             org.tensorflow.proto.SummaryMetadata.PluginData result = new org.tensorflow.proto.SummaryMetadata.PluginData(this);
    -        result.pluginName_ = pluginName_;
    -        result.content_ = content_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.SummaryMetadata.PluginData result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.pluginName_ = pluginName_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.content_ = content_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.SummaryMetadata.PluginData) {
    @@ -470,6 +445,7 @@ public Builder mergeFrom(org.tensorflow.proto.SummaryMetadata.PluginData other)
             if (other == org.tensorflow.proto.SummaryMetadata.PluginData.getDefaultInstance()) return this;
             if (!other.getPluginName().isEmpty()) {
               pluginName_ = other.pluginName_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (other.getContent() != com.google.protobuf.ByteString.EMPTY) {
    @@ -503,12 +479,12 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     pluginName_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     content_ = input.readBytes();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   default: {
    @@ -526,6 +502,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private java.lang.Object pluginName_ = "";
           /**
    @@ -580,11 +557,9 @@ public java.lang.String getPluginName() {
            */
           public Builder setPluginName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             pluginName_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -597,8 +572,8 @@ public Builder setPluginName(
            * @return This builder for chaining.
            */
           public Builder clearPluginName() {
    -        
             pluginName_ = getDefaultInstance().getPluginName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -613,12 +588,10 @@ public Builder clearPluginName() {
            */
           public Builder setPluginNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             pluginName_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -648,11 +621,9 @@ public com.google.protobuf.ByteString getContent() {
            * @return This builder for chaining.
            */
           public Builder setContent(com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             content_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -666,23 +637,11 @@ public Builder setContent(com.google.protobuf.ByteString value) {
            * @return This builder for chaining.
            */
           public Builder clearContent() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000002);
             content_ = getDefaultInstance().getContent();
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.SummaryMetadata.PluginData)
         }
    @@ -735,6 +694,7 @@ public org.tensorflow.proto.SummaryMetadata.PluginData getDefaultInstanceForType
     
       }
     
    +  private int bitField0_;
       public static final int PLUGIN_DATA_FIELD_NUMBER = 1;
       private org.tensorflow.proto.SummaryMetadata.PluginData pluginData_;
       /**
    @@ -747,7 +707,7 @@ public org.tensorflow.proto.SummaryMetadata.PluginData getDefaultInstanceForType
        */
       @java.lang.Override
       public boolean hasPluginData() {
    -    return pluginData_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -770,11 +730,12 @@ public org.tensorflow.proto.SummaryMetadata.PluginData getPluginData() {
        */
       @java.lang.Override
       public org.tensorflow.proto.SummaryMetadata.PluginDataOrBuilder getPluginDataOrBuilder() {
    -    return getPluginData();
    +    return pluginData_ == null ? org.tensorflow.proto.SummaryMetadata.PluginData.getDefaultInstance() : pluginData_;
       }
     
       public static final int DISPLAY_NAME_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object displayName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object displayName_ = "";
       /**
        * 
        * Display name for viewing in TensorBoard.
    @@ -820,7 +781,8 @@ public java.lang.String getDisplayName() {
       }
     
       public static final int SUMMARY_DESCRIPTION_FIELD_NUMBER = 3;
    -  private volatile java.lang.Object summaryDescription_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object summaryDescription_ = "";
       /**
        * 
        * Longform readable description of the summary sequence. Markdown supported.
    @@ -866,7 +828,7 @@ public java.lang.String getSummaryDescription() {
       }
     
       public static final int DATA_CLASS_FIELD_NUMBER = 4;
    -  private int dataClass_;
    +  private int dataClass_ = 0;
       /**
        * 
        * Class of data stored in this time series. Required for compatibility with
    @@ -893,8 +855,7 @@ public java.lang.String getSummaryDescription() {
        * @return The dataClass.
        */
       @java.lang.Override public org.tensorflow.proto.DataClass getDataClass() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.DataClass result = org.tensorflow.proto.DataClass.valueOf(dataClass_);
    +    org.tensorflow.proto.DataClass result = org.tensorflow.proto.DataClass.forNumber(dataClass_);
         return result == null ? org.tensorflow.proto.DataClass.UNRECOGNIZED : result;
       }
     
    @@ -912,14 +873,14 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (pluginData_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(1, getPluginData());
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(displayName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, displayName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(displayName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, displayName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(summaryDescription_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, summaryDescription_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(summaryDescription_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, summaryDescription_);
         }
         if (dataClass_ != org.tensorflow.proto.DataClass.DATA_CLASS_UNKNOWN.getNumber()) {
           output.writeEnum(4, dataClass_);
    @@ -933,15 +894,15 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (pluginData_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(1, getPluginData());
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(displayName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, displayName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(displayName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, displayName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(summaryDescription_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, summaryDescription_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(summaryDescription_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, summaryDescription_);
         }
         if (dataClass_ != org.tensorflow.proto.DataClass.DATA_CLASS_UNKNOWN.getNumber()) {
           size += com.google.protobuf.CodedOutputStream
    @@ -1032,39 +993,41 @@ public static org.tensorflow.proto.SummaryMetadata parseFrom(
       }
       public static org.tensorflow.proto.SummaryMetadata parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SummaryMetadata parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.SummaryMetadata parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.SummaryMetadata parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.SummaryMetadata parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.SummaryMetadata parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -1084,7 +1047,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -1097,7 +1060,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.SummaryMetadata}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.SummaryMetadata)
           org.tensorflow.proto.SummaryMetadataOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1106,7 +1069,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.SummaryProtos.internal_static_tensorflow_SummaryMetadata_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -1115,29 +1078,32 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.SummaryMetadata.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getPluginDataFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    -      if (pluginDataBuilder_ == null) {
    -        pluginData_ = null;
    -      } else {
    -        pluginData_ = null;
    +      bitField0_ = 0;
    +      pluginData_ = null;
    +      if (pluginDataBuilder_ != null) {
    +        pluginDataBuilder_.dispose();
             pluginDataBuilder_ = null;
           }
           displayName_ = "";
    -
           summaryDescription_ = "";
    -
           dataClass_ = 0;
    -
           return this;
         }
     
    @@ -1164,50 +1130,32 @@ public org.tensorflow.proto.SummaryMetadata build() {
         @java.lang.Override
         public org.tensorflow.proto.SummaryMetadata buildPartial() {
           org.tensorflow.proto.SummaryMetadata result = new org.tensorflow.proto.SummaryMetadata(this);
    -      if (pluginDataBuilder_ == null) {
    -        result.pluginData_ = pluginData_;
    -      } else {
    -        result.pluginData_ = pluginDataBuilder_.build();
    -      }
    -      result.displayName_ = displayName_;
    -      result.summaryDescription_ = summaryDescription_;
    -      result.dataClass_ = dataClass_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.SummaryMetadata result) {
    +      int from_bitField0_ = bitField0_;
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.pluginData_ = pluginDataBuilder_ == null
    +            ? pluginData_
    +            : pluginDataBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.displayName_ = displayName_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.summaryDescription_ = summaryDescription_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.dataClass_ = dataClass_;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.SummaryMetadata) {
    @@ -1225,10 +1173,12 @@ public Builder mergeFrom(org.tensorflow.proto.SummaryMetadata other) {
           }
           if (!other.getDisplayName().isEmpty()) {
             displayName_ = other.displayName_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (!other.getSummaryDescription().isEmpty()) {
             summaryDescription_ = other.summaryDescription_;
    +        bitField0_ |= 0x00000004;
             onChanged();
           }
           if (other.dataClass_ != 0) {
    @@ -1264,22 +1214,22 @@ public Builder mergeFrom(
                   input.readMessage(
                       getPluginDataFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   displayName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
                   summaryDescription_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 case 32: {
                   dataClass_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 32
                 default: {
    @@ -1297,9 +1247,10 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private org.tensorflow.proto.SummaryMetadata.PluginData pluginData_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.SummaryMetadata.PluginData, org.tensorflow.proto.SummaryMetadata.PluginData.Builder, org.tensorflow.proto.SummaryMetadata.PluginDataOrBuilder> pluginDataBuilder_;
         /**
          * 
    @@ -1310,7 +1261,7 @@ public Builder mergeFrom(
          * @return Whether the pluginData field is set.
          */
         public boolean hasPluginData() {
    -      return pluginDataBuilder_ != null || pluginData_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -1340,11 +1291,11 @@ public Builder setPluginData(org.tensorflow.proto.SummaryMetadata.PluginData val
               throw new NullPointerException();
             }
             pluginData_ = value;
    -        onChanged();
           } else {
             pluginDataBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000001;
    +      onChanged();
           return this;
         }
         /**
    @@ -1358,11 +1309,11 @@ public Builder setPluginData(
             org.tensorflow.proto.SummaryMetadata.PluginData.Builder builderForValue) {
           if (pluginDataBuilder_ == null) {
             pluginData_ = builderForValue.build();
    -        onChanged();
           } else {
             pluginDataBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000001;
    +      onChanged();
           return this;
         }
         /**
    @@ -1374,17 +1325,20 @@ public Builder setPluginData(
          */
         public Builder mergePluginData(org.tensorflow.proto.SummaryMetadata.PluginData value) {
           if (pluginDataBuilder_ == null) {
    -        if (pluginData_ != null) {
    -          pluginData_ =
    -            org.tensorflow.proto.SummaryMetadata.PluginData.newBuilder(pluginData_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000001) != 0) &&
    +          pluginData_ != null &&
    +          pluginData_ != org.tensorflow.proto.SummaryMetadata.PluginData.getDefaultInstance()) {
    +          getPluginDataBuilder().mergeFrom(value);
             } else {
               pluginData_ = value;
             }
    -        onChanged();
           } else {
             pluginDataBuilder_.mergeFrom(value);
           }
    -
    +      if (pluginData_ != null) {
    +        bitField0_ |= 0x00000001;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -1395,14 +1349,13 @@ public Builder mergePluginData(org.tensorflow.proto.SummaryMetadata.PluginData v
          * .tensorflow.SummaryMetadata.PluginData plugin_data = 1;
          */
         public Builder clearPluginData() {
    -      if (pluginDataBuilder_ == null) {
    -        pluginData_ = null;
    -        onChanged();
    -      } else {
    -        pluginData_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000001);
    +      pluginData_ = null;
    +      if (pluginDataBuilder_ != null) {
    +        pluginDataBuilder_.dispose();
             pluginDataBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -1413,7 +1366,7 @@ public Builder clearPluginData() {
          * .tensorflow.SummaryMetadata.PluginData plugin_data = 1;
          */
         public org.tensorflow.proto.SummaryMetadata.PluginData.Builder getPluginDataBuilder() {
    -      
    +      bitField0_ |= 0x00000001;
           onChanged();
           return getPluginDataFieldBuilder().getBuilder();
         }
    @@ -1439,11 +1392,11 @@ public org.tensorflow.proto.SummaryMetadata.PluginDataOrBuilder getPluginDataOrB
          *
          * .tensorflow.SummaryMetadata.PluginData plugin_data = 1;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.SummaryMetadata.PluginData, org.tensorflow.proto.SummaryMetadata.PluginData.Builder, org.tensorflow.proto.SummaryMetadata.PluginDataOrBuilder> 
             getPluginDataFieldBuilder() {
           if (pluginDataBuilder_ == null) {
    -        pluginDataBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        pluginDataBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.SummaryMetadata.PluginData, org.tensorflow.proto.SummaryMetadata.PluginData.Builder, org.tensorflow.proto.SummaryMetadata.PluginDataOrBuilder>(
                     getPluginData(),
                     getParentForChildren(),
    @@ -1506,11 +1459,9 @@ public java.lang.String getDisplayName() {
          */
         public Builder setDisplayName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           displayName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1523,8 +1474,8 @@ public Builder setDisplayName(
          * @return This builder for chaining.
          */
         public Builder clearDisplayName() {
    -      
           displayName_ = getDefaultInstance().getDisplayName();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -1539,12 +1490,10 @@ public Builder clearDisplayName() {
          */
         public Builder setDisplayNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           displayName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1602,11 +1551,9 @@ public java.lang.String getSummaryDescription() {
          */
         public Builder setSummaryDescription(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           summaryDescription_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1619,8 +1566,8 @@ public Builder setSummaryDescription(
          * @return This builder for chaining.
          */
         public Builder clearSummaryDescription() {
    -      
           summaryDescription_ = getDefaultInstance().getSummaryDescription();
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -1635,12 +1582,10 @@ public Builder clearSummaryDescription() {
          */
         public Builder setSummaryDescriptionBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           summaryDescription_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1673,8 +1618,8 @@ public Builder setSummaryDescriptionBytes(
          * @return This builder for chaining.
          */
         public Builder setDataClassValue(int value) {
    -      
           dataClass_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1691,8 +1636,7 @@ public Builder setDataClassValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.DataClass getDataClass() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.DataClass result = org.tensorflow.proto.DataClass.valueOf(dataClass_);
    +      org.tensorflow.proto.DataClass result = org.tensorflow.proto.DataClass.forNumber(dataClass_);
           return result == null ? org.tensorflow.proto.DataClass.UNRECOGNIZED : result;
         }
         /**
    @@ -1711,7 +1655,7 @@ public Builder setDataClass(org.tensorflow.proto.DataClass value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000008;
           dataClass_ = value.getNumber();
           onChanged();
           return this;
    @@ -1728,23 +1672,11 @@ public Builder setDataClass(org.tensorflow.proto.DataClass value) {
          * @return This builder for chaining.
          */
         public Builder clearDataClass() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           dataClass_ = 0;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.SummaryMetadata)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryMetadataOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryMetadataOrBuilder.java
    index 32ad558348a..a7c7adb8253 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryMetadataOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryMetadataOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/summary.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryOrBuilder.java
    index 86541730107..1477e151a96 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/summary.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryProtos.java
    index bd717105f28..17ee633adc7 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/SummaryProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/summary.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class SummaryProtos {
       private SummaryProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      SummaryProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,37 +28,37 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SummaryDescription_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SummaryDescription_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SummaryMetadata_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SummaryMetadata_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SummaryMetadata_PluginData_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SummaryMetadata_PluginData_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_Summary_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_Summary_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_Summary_Image_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_Summary_Image_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_Summary_Audio_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_Summary_Audio_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_Summary_Value_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_Summary_Value_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -59,37 +70,37 @@ public static void registerAllExtensions(
       static {
         java.lang.String[] descriptorData = {
           "\n\'tensorflow/core/framework/summary.prot" +
    -      "o\022\ntensorflow\032\034tsl/protobuf/histogram.pr" +
    -      "oto\032&tensorflow/core/framework/tensor.pr" +
    -      "oto\"\'\n\022SummaryDescription\022\021\n\ttype_hint\030\001" +
    -      " \001(\t\"\340\001\n\017SummaryMetadata\022;\n\013plugin_data\030" +
    -      "\001 \001(\0132&.tensorflow.SummaryMetadata.Plugi" +
    -      "nData\022\024\n\014display_name\030\002 \001(\t\022\033\n\023summary_d" +
    -      "escription\030\003 \001(\t\022)\n\ndata_class\030\004 \001(\0162\025.t" +
    -      "ensorflow.DataClass\0322\n\nPluginData\022\023\n\013plu" +
    -      "gin_name\030\001 \001(\t\022\017\n\007content\030\002 \001(\014\"\336\004\n\007Summ" +
    -      "ary\022(\n\005value\030\001 \003(\0132\031.tensorflow.Summary." +
    -      "Value\032X\n\005Image\022\016\n\006height\030\001 \001(\005\022\r\n\005width\030" +
    -      "\002 \001(\005\022\022\n\ncolorspace\030\003 \001(\005\022\034\n\024encoded_ima" +
    -      "ge_string\030\004 \001(\014\032}\n\005Audio\022\023\n\013sample_rate\030" +
    -      "\001 \001(\002\022\024\n\014num_channels\030\002 \001(\003\022\025\n\rlength_fr" +
    -      "ames\030\003 \001(\003\022\034\n\024encoded_audio_string\030\004 \001(\014" +
    -      "\022\024\n\014content_type\030\005 \001(\t\032\317\002\n\005Value\022\021\n\tnode" +
    -      "_name\030\007 \001(\t\022\013\n\003tag\030\001 \001(\t\022-\n\010metadata\030\t \001" +
    -      "(\0132\033.tensorflow.SummaryMetadata\022\026\n\014simpl" +
    -      "e_value\030\002 \001(\002H\000\022&\n\034obsolete_old_style_hi" +
    -      "stogram\030\003 \001(\014H\000\022*\n\005image\030\004 \001(\0132\031.tensorf" +
    -      "low.Summary.ImageH\000\022+\n\005histo\030\005 \001(\0132\032.ten" +
    -      "sorflow.HistogramProtoH\000\022*\n\005audio\030\006 \001(\0132" +
    -      "\031.tensorflow.Summary.AudioH\000\022)\n\006tensor\030\010" +
    -      " \001(\0132\027.tensorflow.TensorProtoH\000B\007\n\005value" +
    -      "*o\n\tDataClass\022\026\n\022DATA_CLASS_UNKNOWN\020\000\022\025\n" +
    -      "\021DATA_CLASS_SCALAR\020\001\022\025\n\021DATA_CLASS_TENSO" +
    -      "R\020\002\022\034\n\030DATA_CLASS_BLOB_SEQUENCE\020\003Bz\n\024org" +
    -      ".tensorflow.protoB\rSummaryProtosP\001ZNgith" +
    -      "ub.com/tensorflow/tensorflow/tensorflow/" +
    -      "go/core/framework/summary_go_proto\370\001\001P\000b" +
    -      "\006proto3"
    +      "o\022\ntensorflow\032 xla/tsl/protobuf/histogra" +
    +      "m.proto\032&tensorflow/core/framework/tenso" +
    +      "r.proto\"\'\n\022SummaryDescription\022\021\n\ttype_hi" +
    +      "nt\030\001 \001(\t\"\340\001\n\017SummaryMetadata\022;\n\013plugin_d" +
    +      "ata\030\001 \001(\0132&.tensorflow.SummaryMetadata.P" +
    +      "luginData\022\024\n\014display_name\030\002 \001(\t\022\033\n\023summa" +
    +      "ry_description\030\003 \001(\t\022)\n\ndata_class\030\004 \001(\016" +
    +      "2\025.tensorflow.DataClass\0322\n\nPluginData\022\023\n" +
    +      "\013plugin_name\030\001 \001(\t\022\017\n\007content\030\002 \001(\014\"\336\004\n\007" +
    +      "Summary\022(\n\005value\030\001 \003(\0132\031.tensorflow.Summ" +
    +      "ary.Value\032X\n\005Image\022\016\n\006height\030\001 \001(\005\022\r\n\005wi" +
    +      "dth\030\002 \001(\005\022\022\n\ncolorspace\030\003 \001(\005\022\034\n\024encoded" +
    +      "_image_string\030\004 \001(\014\032}\n\005Audio\022\023\n\013sample_r" +
    +      "ate\030\001 \001(\002\022\024\n\014num_channels\030\002 \001(\003\022\025\n\rlengt" +
    +      "h_frames\030\003 \001(\003\022\034\n\024encoded_audio_string\030\004" +
    +      " \001(\014\022\024\n\014content_type\030\005 \001(\t\032\317\002\n\005Value\022\021\n\t" +
    +      "node_name\030\007 \001(\t\022\013\n\003tag\030\001 \001(\t\022-\n\010metadata" +
    +      "\030\t \001(\0132\033.tensorflow.SummaryMetadata\022\026\n\014s" +
    +      "imple_value\030\002 \001(\002H\000\022&\n\034obsolete_old_styl" +
    +      "e_histogram\030\003 \001(\014H\000\022*\n\005image\030\004 \001(\0132\031.ten" +
    +      "sorflow.Summary.ImageH\000\022+\n\005histo\030\005 \001(\0132\032" +
    +      ".tensorflow.HistogramProtoH\000\022*\n\005audio\030\006 " +
    +      "\001(\0132\031.tensorflow.Summary.AudioH\000\022)\n\006tens" +
    +      "or\030\010 \001(\0132\027.tensorflow.TensorProtoH\000B\007\n\005v" +
    +      "alue*o\n\tDataClass\022\026\n\022DATA_CLASS_UNKNOWN\020" +
    +      "\000\022\025\n\021DATA_CLASS_SCALAR\020\001\022\025\n\021DATA_CLASS_T" +
    +      "ENSOR\020\002\022\034\n\030DATA_CLASS_BLOB_SEQUENCE\020\003Bz\n" +
    +      "\024org.tensorflow.protoB\rSummaryProtosP\001ZN" +
    +      "github.com/tensorflow/tensorflow/tensorf" +
    +      "low/go/core/framework/summary_go_proto\370\001" +
    +      "\001P\000b\006proto3"
         };
         descriptor = com.google.protobuf.Descriptors.FileDescriptor
           .internalBuildGeneratedFileFrom(descriptorData,
    @@ -100,45 +111,46 @@ public static void registerAllExtensions(
         internal_static_tensorflow_SummaryDescription_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_SummaryDescription_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SummaryDescription_descriptor,
             new java.lang.String[] { "TypeHint", });
         internal_static_tensorflow_SummaryMetadata_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_SummaryMetadata_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SummaryMetadata_descriptor,
             new java.lang.String[] { "PluginData", "DisplayName", "SummaryDescription", "DataClass", });
         internal_static_tensorflow_SummaryMetadata_PluginData_descriptor =
           internal_static_tensorflow_SummaryMetadata_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_SummaryMetadata_PluginData_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SummaryMetadata_PluginData_descriptor,
             new java.lang.String[] { "PluginName", "Content", });
         internal_static_tensorflow_Summary_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_Summary_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_Summary_descriptor,
             new java.lang.String[] { "Value", });
         internal_static_tensorflow_Summary_Image_descriptor =
           internal_static_tensorflow_Summary_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_Summary_Image_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_Summary_Image_descriptor,
             new java.lang.String[] { "Height", "Width", "Colorspace", "EncodedImageString", });
         internal_static_tensorflow_Summary_Audio_descriptor =
           internal_static_tensorflow_Summary_descriptor.getNestedTypes().get(1);
         internal_static_tensorflow_Summary_Audio_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_Summary_Audio_descriptor,
             new java.lang.String[] { "SampleRate", "NumChannels", "LengthFrames", "EncodedAudioString", "ContentType", });
         internal_static_tensorflow_Summary_Value_descriptor =
           internal_static_tensorflow_Summary_descriptor.getNestedTypes().get(2);
         internal_static_tensorflow_Summary_Value_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_Summary_Value_descriptor,
             new java.lang.String[] { "NodeName", "Tag", "Metadata", "SimpleValue", "ObsoleteOldStyleHistogram", "Image", "Histo", "Audio", "Tensor", "Value", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.Histogram.getDescriptor();
         org.tensorflow.proto.TensorProtos.getDescriptor();
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TaggedRunMetadata.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TaggedRunMetadata.java
    index 8a93093963e..8fabbf0cbcf 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TaggedRunMetadata.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TaggedRunMetadata.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,12 +13,21 @@
      * Protobuf type {@code tensorflow.TaggedRunMetadata}
      */
     public final class TaggedRunMetadata extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.TaggedRunMetadata)
         TaggedRunMetadataOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      TaggedRunMetadata.class.getName());
    +  }
       // Use TaggedRunMetadata.newBuilder() to construct.
    -  private TaggedRunMetadata(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private TaggedRunMetadata(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private TaggedRunMetadata() {
    @@ -24,25 +35,13 @@ private TaggedRunMetadata() {
         runMetadata_ = com.google.protobuf.ByteString.EMPTY;
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new TaggedRunMetadata();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.EventProtos.internal_static_tensorflow_TaggedRunMetadata_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.EventProtos.internal_static_tensorflow_TaggedRunMetadata_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -50,7 +49,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int TAG_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object tag_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object tag_ = "";
       /**
        * 
        * Tag name associated with this metadata.
    @@ -96,7 +96,7 @@ public java.lang.String getTag() {
       }
     
       public static final int RUN_METADATA_FIELD_NUMBER = 2;
    -  private com.google.protobuf.ByteString runMetadata_;
    +  private com.google.protobuf.ByteString runMetadata_ = com.google.protobuf.ByteString.EMPTY;
       /**
        * 
        * Byte-encoded version of the `RunMetadata` proto in order to allow lazy
    @@ -125,8 +125,8 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tag_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, tag_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(tag_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, tag_);
         }
         if (!runMetadata_.isEmpty()) {
           output.writeBytes(2, runMetadata_);
    @@ -140,8 +140,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tag_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, tag_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(tag_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, tag_);
         }
         if (!runMetadata_.isEmpty()) {
           size += com.google.protobuf.CodedOutputStream
    @@ -220,39 +220,41 @@ public static org.tensorflow.proto.TaggedRunMetadata parseFrom(
       }
       public static org.tensorflow.proto.TaggedRunMetadata parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.TaggedRunMetadata parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.TaggedRunMetadata parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.TaggedRunMetadata parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.TaggedRunMetadata parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.TaggedRunMetadata parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -272,7 +274,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -284,7 +286,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.TaggedRunMetadata}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.TaggedRunMetadata)
           org.tensorflow.proto.TaggedRunMetadataOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -293,7 +295,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.EventProtos.internal_static_tensorflow_TaggedRunMetadata_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -306,17 +308,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           tag_ = "";
    -
           runMetadata_ = com.google.protobuf.ByteString.EMPTY;
    -
           return this;
         }
     
    @@ -343,44 +344,21 @@ public org.tensorflow.proto.TaggedRunMetadata build() {
         @java.lang.Override
         public org.tensorflow.proto.TaggedRunMetadata buildPartial() {
           org.tensorflow.proto.TaggedRunMetadata result = new org.tensorflow.proto.TaggedRunMetadata(this);
    -      result.tag_ = tag_;
    -      result.runMetadata_ = runMetadata_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.TaggedRunMetadata result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.tag_ = tag_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.runMetadata_ = runMetadata_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.TaggedRunMetadata) {
    @@ -395,6 +373,7 @@ public Builder mergeFrom(org.tensorflow.proto.TaggedRunMetadata other) {
           if (other == org.tensorflow.proto.TaggedRunMetadata.getDefaultInstance()) return this;
           if (!other.getTag().isEmpty()) {
             tag_ = other.tag_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (other.getRunMetadata() != com.google.protobuf.ByteString.EMPTY) {
    @@ -428,12 +407,12 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   tag_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   runMetadata_ = input.readBytes();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 default: {
    @@ -451,6 +430,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object tag_ = "";
         /**
    @@ -505,11 +485,9 @@ public java.lang.String getTag() {
          */
         public Builder setTag(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           tag_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -522,8 +500,8 @@ public Builder setTag(
          * @return This builder for chaining.
          */
         public Builder clearTag() {
    -      
           tag_ = getDefaultInstance().getTag();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -538,12 +516,10 @@ public Builder clearTag() {
          */
         public Builder setTagBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           tag_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -573,11 +549,9 @@ public com.google.protobuf.ByteString getRunMetadata() {
          * @return This builder for chaining.
          */
         public Builder setRunMetadata(com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           runMetadata_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -591,23 +565,11 @@ public Builder setRunMetadata(com.google.protobuf.ByteString value) {
          * @return This builder for chaining.
          */
         public Builder clearRunMetadata() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           runMetadata_ = getDefaultInstance().getRunMetadata();
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.TaggedRunMetadata)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TaggedRunMetadataOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TaggedRunMetadataOrBuilder.java
    index 00393483d2f..a1b394e2b14 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TaggedRunMetadataOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TaggedRunMetadataOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TaskDeviceFilters.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TaskDeviceFilters.java
    index f4669a0a0c0..cb5547127cc 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TaskDeviceFilters.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TaskDeviceFilters.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/device_filters.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,37 +13,35 @@
      * Protobuf type {@code tensorflow.TaskDeviceFilters}
      */
     public final class TaskDeviceFilters extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.TaskDeviceFilters)
         TaskDeviceFiltersOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      TaskDeviceFilters.class.getName());
    +  }
       // Use TaskDeviceFilters.newBuilder() to construct.
    -  private TaskDeviceFilters(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private TaskDeviceFilters(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private TaskDeviceFilters() {
    -    deviceFilters_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -  }
    -
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new TaskDeviceFilters();
    +    deviceFilters_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
       }
     
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.DeviceFiltersProtos.internal_static_tensorflow_TaskDeviceFilters_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.DeviceFiltersProtos.internal_static_tensorflow_TaskDeviceFilters_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -49,7 +49,9 @@ protected java.lang.Object newInstance(
       }
     
       public static final int DEVICE_FILTERS_FIELD_NUMBER = 1;
    -  private com.google.protobuf.LazyStringList deviceFilters_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList deviceFilters_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * repeated string device_filters = 1;
        * @return A list containing the deviceFilters.
    @@ -98,7 +100,7 @@ public final boolean isInitialized() {
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
         for (int i = 0; i < deviceFilters_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, deviceFilters_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, deviceFilters_.getRaw(i));
         }
         getUnknownFields().writeTo(output);
       }
    @@ -188,39 +190,41 @@ public static org.tensorflow.proto.TaskDeviceFilters parseFrom(
       }
       public static org.tensorflow.proto.TaskDeviceFilters parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.TaskDeviceFilters parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.TaskDeviceFilters parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.TaskDeviceFilters parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.TaskDeviceFilters parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.TaskDeviceFilters parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -240,7 +244,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -252,7 +256,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.TaskDeviceFilters}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.TaskDeviceFilters)
           org.tensorflow.proto.TaskDeviceFiltersOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -261,7 +265,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.DeviceFiltersProtos.internal_static_tensorflow_TaskDeviceFilters_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -274,15 +278,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    -      deviceFilters_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = 0;
    +      deviceFilters_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           return this;
         }
     
    @@ -309,48 +314,19 @@ public org.tensorflow.proto.TaskDeviceFilters build() {
         @java.lang.Override
         public org.tensorflow.proto.TaskDeviceFilters buildPartial() {
           org.tensorflow.proto.TaskDeviceFilters result = new org.tensorflow.proto.TaskDeviceFilters(this);
    -      int from_bitField0_ = bitField0_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        deviceFilters_ = deviceFilters_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.deviceFilters_ = deviceFilters_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.TaskDeviceFilters result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        deviceFilters_.makeImmutable();
    +        result.deviceFilters_ = deviceFilters_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.TaskDeviceFilters) {
    @@ -366,7 +342,7 @@ public Builder mergeFrom(org.tensorflow.proto.TaskDeviceFilters other) {
           if (!other.deviceFilters_.isEmpty()) {
             if (deviceFilters_.isEmpty()) {
               deviceFilters_ = other.deviceFilters_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ |= 0x00000001;
             } else {
               ensureDeviceFiltersIsMutable();
               deviceFilters_.addAll(other.deviceFilters_);
    @@ -422,12 +398,13 @@ public Builder mergeFrom(
         }
         private int bitField0_;
     
    -    private com.google.protobuf.LazyStringList deviceFilters_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList deviceFilters_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureDeviceFiltersIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!deviceFilters_.isModifiable()) {
             deviceFilters_ = new com.google.protobuf.LazyStringArrayList(deviceFilters_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      }
    +      bitField0_ |= 0x00000001;
         }
         /**
          * repeated string device_filters = 1;
    @@ -435,7 +412,8 @@ private void ensureDeviceFiltersIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getDeviceFiltersList() {
    -      return deviceFilters_.getUnmodifiableView();
    +      deviceFilters_.makeImmutable();
    +      return deviceFilters_;
         }
         /**
          * repeated string device_filters = 1;
    @@ -469,11 +447,10 @@ public java.lang.String getDeviceFilters(int index) {
          */
         public Builder setDeviceFilters(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureDeviceFiltersIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureDeviceFiltersIsMutable();
           deviceFilters_.set(index, value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -484,11 +461,10 @@ public Builder setDeviceFilters(
          */
         public Builder addDeviceFilters(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureDeviceFiltersIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureDeviceFiltersIsMutable();
           deviceFilters_.add(value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -502,6 +478,7 @@ public Builder addAllDeviceFilters(
           ensureDeviceFiltersIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, deviceFilters_);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -510,8 +487,9 @@ public Builder addAllDeviceFilters(
          * @return This builder for chaining.
          */
         public Builder clearDeviceFilters() {
    -      deviceFilters_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      deviceFilters_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000001);;
           onChanged();
           return this;
         }
    @@ -522,27 +500,14 @@ public Builder clearDeviceFilters() {
          */
         public Builder addDeviceFiltersBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureDeviceFiltersIsMutable();
           deviceFilters_.add(value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.TaskDeviceFilters)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TaskDeviceFiltersOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TaskDeviceFiltersOrBuilder.java
    index 2c1c746f142..abc76e76f7a 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TaskDeviceFiltersOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TaskDeviceFiltersOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/device_filters.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorBundleProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorBundleProtos.java
    index 8330500c8f0..ccdfaa8353b 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorBundleProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorBundleProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/tensor_bundle.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class TensorBundleProtos {
       private TensorBundleProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      TensorBundleProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,12 +28,12 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_BundleHeaderProto_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_BundleHeaderProto_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_BundleEntryProto_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_BundleEntryProto_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -65,15 +76,16 @@ public static void registerAllExtensions(
         internal_static_tensorflow_BundleHeaderProto_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_BundleHeaderProto_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_BundleHeaderProto_descriptor,
             new java.lang.String[] { "NumShards", "Endianness", "Version", });
         internal_static_tensorflow_BundleEntryProto_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_BundleEntryProto_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_BundleEntryProto_descriptor,
             new java.lang.String[] { "Dtype", "Shape", "ShardId", "Offset", "Size", "Crc32C", "Slices", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.TensorShapeProtos.getDescriptor();
         org.tensorflow.proto.TensorSliceProtos.getDescriptor();
         org.tensorflow.proto.TypesProtos.getDescriptor();
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorConnection.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorConnection.java
    index a2a09620a94..56f3100ea90 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorConnection.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorConnection.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,12 +13,21 @@
      * Protobuf type {@code tensorflow.TensorConnection}
      */
     public final class TensorConnection extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.TensorConnection)
         TensorConnectionOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      TensorConnection.class.getName());
    +  }
       // Use TensorConnection.newBuilder() to construct.
    -  private TensorConnection(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private TensorConnection(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private TensorConnection() {
    @@ -24,25 +35,13 @@ private TensorConnection() {
         toTensor_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new TensorConnection();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_TensorConnection_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_TensorConnection_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -50,7 +49,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int FROM_TENSOR_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object fromTensor_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object fromTensor_ = "";
       /**
        * 
        * A tensor name. The value of this tensor will be substituted for
    @@ -98,7 +98,8 @@ public java.lang.String getFromTensor() {
       }
     
       public static final int TO_TENSOR_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object toTensor_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object toTensor_ = "";
       /**
        * 
        * A tensor name. The value of this tensor will be bound to the
    @@ -159,11 +160,11 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(fromTensor_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, fromTensor_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(fromTensor_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, fromTensor_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(toTensor_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, toTensor_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(toTensor_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, toTensor_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -174,11 +175,11 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(fromTensor_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, fromTensor_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(fromTensor_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, fromTensor_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(toTensor_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, toTensor_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(toTensor_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, toTensor_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -253,39 +254,41 @@ public static org.tensorflow.proto.TensorConnection parseFrom(
       }
       public static org.tensorflow.proto.TensorConnection parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.TensorConnection parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.TensorConnection parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.TensorConnection parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.TensorConnection parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.TensorConnection parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -305,7 +308,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -317,7 +320,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.TensorConnection}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.TensorConnection)
           org.tensorflow.proto.TensorConnectionOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -326,7 +329,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_TensorConnection_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -339,17 +342,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           fromTensor_ = "";
    -
           toTensor_ = "";
    -
           return this;
         }
     
    @@ -376,44 +378,21 @@ public org.tensorflow.proto.TensorConnection build() {
         @java.lang.Override
         public org.tensorflow.proto.TensorConnection buildPartial() {
           org.tensorflow.proto.TensorConnection result = new org.tensorflow.proto.TensorConnection(this);
    -      result.fromTensor_ = fromTensor_;
    -      result.toTensor_ = toTensor_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.TensorConnection result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.fromTensor_ = fromTensor_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.toTensor_ = toTensor_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.TensorConnection) {
    @@ -428,10 +407,12 @@ public Builder mergeFrom(org.tensorflow.proto.TensorConnection other) {
           if (other == org.tensorflow.proto.TensorConnection.getDefaultInstance()) return this;
           if (!other.getFromTensor().isEmpty()) {
             fromTensor_ = other.fromTensor_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getToTensor().isEmpty()) {
             toTensor_ = other.toTensor_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -462,12 +443,12 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   fromTensor_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   toTensor_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 default: {
    @@ -485,6 +466,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object fromTensor_ = "";
         /**
    @@ -542,11 +524,9 @@ public java.lang.String getFromTensor() {
          */
         public Builder setFromTensor(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           fromTensor_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -560,8 +540,8 @@ public Builder setFromTensor(
          * @return This builder for chaining.
          */
         public Builder clearFromTensor() {
    -      
           fromTensor_ = getDefaultInstance().getFromTensor();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -577,12 +557,10 @@ public Builder clearFromTensor() {
          */
         public Builder setFromTensorBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           fromTensor_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -643,11 +621,9 @@ public java.lang.String getToTensor() {
          */
         public Builder setToTensor(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           toTensor_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -661,8 +637,8 @@ public Builder setToTensor(
          * @return This builder for chaining.
          */
         public Builder clearToTensor() {
    -      
           toTensor_ = getDefaultInstance().getToTensor();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -678,27 +654,13 @@ public Builder clearToTensor() {
          */
         public Builder setToTensorBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           toTensor_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.TensorConnection)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorConnectionOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorConnectionOrBuilder.java
    index 843a560f3e1..a13b5780996 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorConnectionOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorConnectionOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorDebugMode.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorDebugMode.java
    index 15fa58ef89b..982460ab7de 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorDebugMode.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorDebugMode.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/debug_event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -95,11 +97,11 @@ public enum TensorDebugMode
        * 
        * Reduce the elements of a tensor to a rank-1 tensor of shape [3], in which
        * - the 1st element is -inf if any element of the tensor is -inf,
    -   *   or zero otherwise.
    +   * or zero otherwise.
        * - the 2nd element is +inf if any element of the tensor is +inf,
    -   *   or zero otherwise.
    +   * or zero otherwise.
        * - the 3rd element is nan if any element of the tensor is nan, or zero
    -   *   otherwise.
    +   * otherwise.
        * 
    * * REDUCE_INF_NAN_THREE_SLOTS = 8; @@ -108,6 +110,15 @@ public enum TensorDebugMode UNRECOGNIZED(-1), ; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + TensorDebugMode.class.getName()); + } /** * UNSPECIFIED = 0; */ @@ -189,11 +200,11 @@ public enum TensorDebugMode *
        * Reduce the elements of a tensor to a rank-1 tensor of shape [3], in which
        * - the 1st element is -inf if any element of the tensor is -inf,
    -   *   or zero otherwise.
    +   * or zero otherwise.
        * - the 2nd element is +inf if any element of the tensor is +inf,
    -   *   or zero otherwise.
    +   * or zero otherwise.
        * - the 3rd element is nan if any element of the tensor is nan, or zero
    -   *   otherwise.
    +   * otherwise.
        * 
    * * REDUCE_INF_NAN_THREE_SLOTS = 8; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorDescription.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorDescription.java index da0e946af16..b91793b6788 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorDescription.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorDescription.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/tensor_description.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,45 +9,43 @@ * Protobuf type {@code tensorflow.TensorDescription} */ public final class TensorDescription extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.TensorDescription) TensorDescriptionOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + TensorDescription.class.getName()); + } // Use TensorDescription.newBuilder() to construct. - private TensorDescription(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private TensorDescription(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private TensorDescription() { dtype_ = 0; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new TensorDescription(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.TensorDescriptionProtos.internal_static_tensorflow_TensorDescription_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.TensorDescriptionProtos.internal_static_tensorflow_TensorDescription_fieldAccessorTable .ensureFieldAccessorsInitialized( org.tensorflow.proto.TensorDescription.class, org.tensorflow.proto.TensorDescription.Builder.class); } + private int bitField0_; public static final int DTYPE_FIELD_NUMBER = 1; - private int dtype_; + private int dtype_ = 0; /** *
        * Data type of tensor elements
    @@ -66,8 +66,7 @@ protected java.lang.Object newInstance(
        * @return The dtype.
        */
       @java.lang.Override public org.tensorflow.proto.DataType getDtype() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
         return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
       }
     
    @@ -83,7 +82,7 @@ protected java.lang.Object newInstance(
        */
       @java.lang.Override
       public boolean hasShape() {
    -    return shape_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -106,7 +105,7 @@ public org.tensorflow.proto.TensorShapeProto getShape() {
        */
       @java.lang.Override
       public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
    -    return getShape();
    +    return shape_ == null ? org.tensorflow.proto.TensorShapeProto.getDefaultInstance() : shape_;
       }
     
       public static final int ALLOCATION_DESCRIPTION_FIELD_NUMBER = 4;
    @@ -121,7 +120,7 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
        */
       @java.lang.Override
       public boolean hasAllocationDescription() {
    -    return allocationDescription_ != null;
    +    return ((bitField0_ & 0x00000002) != 0);
       }
       /**
        * 
    @@ -144,7 +143,7 @@ public org.tensorflow.proto.AllocationDescription getAllocationDescription() {
        */
       @java.lang.Override
       public org.tensorflow.proto.AllocationDescriptionOrBuilder getAllocationDescriptionOrBuilder() {
    -    return getAllocationDescription();
    +    return allocationDescription_ == null ? org.tensorflow.proto.AllocationDescription.getDefaultInstance() : allocationDescription_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -164,10 +163,10 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (dtype_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) {
           output.writeEnum(1, dtype_);
         }
    -    if (shape_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(2, getShape());
         }
    -    if (allocationDescription_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           output.writeMessage(4, getAllocationDescription());
         }
         getUnknownFields().writeTo(output);
    @@ -183,11 +182,11 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeEnumSize(1, dtype_);
         }
    -    if (shape_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(2, getShape());
         }
    -    if (allocationDescription_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(4, getAllocationDescription());
         }
    @@ -277,39 +276,41 @@ public static org.tensorflow.proto.TensorDescription parseFrom(
       }
       public static org.tensorflow.proto.TensorDescription parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.TensorDescription parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.TensorDescription parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.TensorDescription parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.TensorDescription parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.TensorDescription parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -329,7 +330,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -337,7 +338,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.TensorDescription}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.TensorDescription)
           org.tensorflow.proto.TensorDescriptionOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -346,7 +347,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TensorDescriptionProtos.internal_static_tensorflow_TensorDescription_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -355,29 +356,34 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.TensorDescription.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getShapeFieldBuilder();
    +        getAllocationDescriptionFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           dtype_ = 0;
    -
    -      if (shapeBuilder_ == null) {
    -        shape_ = null;
    -      } else {
    -        shape_ = null;
    +      shape_ = null;
    +      if (shapeBuilder_ != null) {
    +        shapeBuilder_.dispose();
             shapeBuilder_ = null;
           }
    -      if (allocationDescriptionBuilder_ == null) {
    -        allocationDescription_ = null;
    -      } else {
    -        allocationDescription_ = null;
    +      allocationDescription_ = null;
    +      if (allocationDescriptionBuilder_ != null) {
    +        allocationDescriptionBuilder_.dispose();
             allocationDescriptionBuilder_ = null;
           }
           return this;
    @@ -406,53 +412,32 @@ public org.tensorflow.proto.TensorDescription build() {
         @java.lang.Override
         public org.tensorflow.proto.TensorDescription buildPartial() {
           org.tensorflow.proto.TensorDescription result = new org.tensorflow.proto.TensorDescription(this);
    -      result.dtype_ = dtype_;
    -      if (shapeBuilder_ == null) {
    -        result.shape_ = shape_;
    -      } else {
    -        result.shape_ = shapeBuilder_.build();
    -      }
    -      if (allocationDescriptionBuilder_ == null) {
    -        result.allocationDescription_ = allocationDescription_;
    -      } else {
    -        result.allocationDescription_ = allocationDescriptionBuilder_.build();
    -      }
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.TensorDescription result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.dtype_ = dtype_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.shape_ = shapeBuilder_ == null
    +            ? shape_
    +            : shapeBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.allocationDescription_ = allocationDescriptionBuilder_ == null
    +            ? allocationDescription_
    +            : allocationDescriptionBuilder_.build();
    +        to_bitField0_ |= 0x00000002;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.TensorDescription) {
    @@ -502,21 +487,21 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   dtype_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 18: {
                   input.readMessage(
                       getShapeFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 34: {
                   input.readMessage(
                       getAllocationDescriptionFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 34
                 default: {
    @@ -534,6 +519,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private int dtype_ = 0;
         /**
    @@ -557,8 +543,8 @@ public Builder mergeFrom(
          * @return This builder for chaining.
          */
         public Builder setDtypeValue(int value) {
    -      
           dtype_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -572,8 +558,7 @@ public Builder setDtypeValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.DataType getDtype() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
           return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
         }
         /**
    @@ -589,7 +574,7 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000001;
           dtype_ = value.getNumber();
           onChanged();
           return this;
    @@ -603,14 +588,14 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
          * @return This builder for chaining.
          */
         public Builder clearDtype() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           dtype_ = 0;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.TensorShapeProto shape_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> shapeBuilder_;
         /**
          * 
    @@ -621,7 +606,7 @@ public Builder clearDtype() {
          * @return Whether the shape field is set.
          */
         public boolean hasShape() {
    -      return shapeBuilder_ != null || shape_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -651,11 +636,11 @@ public Builder setShape(org.tensorflow.proto.TensorShapeProto value) {
               throw new NullPointerException();
             }
             shape_ = value;
    -        onChanged();
           } else {
             shapeBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -669,11 +654,11 @@ public Builder setShape(
             org.tensorflow.proto.TensorShapeProto.Builder builderForValue) {
           if (shapeBuilder_ == null) {
             shape_ = builderForValue.build();
    -        onChanged();
           } else {
             shapeBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -685,17 +670,20 @@ public Builder setShape(
          */
         public Builder mergeShape(org.tensorflow.proto.TensorShapeProto value) {
           if (shapeBuilder_ == null) {
    -        if (shape_ != null) {
    -          shape_ =
    -            org.tensorflow.proto.TensorShapeProto.newBuilder(shape_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000002) != 0) &&
    +          shape_ != null &&
    +          shape_ != org.tensorflow.proto.TensorShapeProto.getDefaultInstance()) {
    +          getShapeBuilder().mergeFrom(value);
             } else {
               shape_ = value;
             }
    -        onChanged();
           } else {
             shapeBuilder_.mergeFrom(value);
           }
    -
    +      if (shape_ != null) {
    +        bitField0_ |= 0x00000002;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -706,14 +694,13 @@ public Builder mergeShape(org.tensorflow.proto.TensorShapeProto value) {
          * .tensorflow.TensorShapeProto shape = 2;
          */
         public Builder clearShape() {
    -      if (shapeBuilder_ == null) {
    -        shape_ = null;
    -        onChanged();
    -      } else {
    -        shape_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      shape_ = null;
    +      if (shapeBuilder_ != null) {
    +        shapeBuilder_.dispose();
             shapeBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -724,7 +711,7 @@ public Builder clearShape() {
          * .tensorflow.TensorShapeProto shape = 2;
          */
         public org.tensorflow.proto.TensorShapeProto.Builder getShapeBuilder() {
    -      
    +      bitField0_ |= 0x00000002;
           onChanged();
           return getShapeFieldBuilder().getBuilder();
         }
    @@ -750,11 +737,11 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
          *
          * .tensorflow.TensorShapeProto shape = 2;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> 
             getShapeFieldBuilder() {
           if (shapeBuilder_ == null) {
    -        shapeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        shapeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>(
                     getShape(),
                     getParentForChildren(),
    @@ -765,7 +752,7 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
         }
     
         private org.tensorflow.proto.AllocationDescription allocationDescription_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.AllocationDescription, org.tensorflow.proto.AllocationDescription.Builder, org.tensorflow.proto.AllocationDescriptionOrBuilder> allocationDescriptionBuilder_;
         /**
          * 
    @@ -776,7 +763,7 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
          * @return Whether the allocationDescription field is set.
          */
         public boolean hasAllocationDescription() {
    -      return allocationDescriptionBuilder_ != null || allocationDescription_ != null;
    +      return ((bitField0_ & 0x00000004) != 0);
         }
         /**
          * 
    @@ -806,11 +793,11 @@ public Builder setAllocationDescription(org.tensorflow.proto.AllocationDescripti
               throw new NullPointerException();
             }
             allocationDescription_ = value;
    -        onChanged();
           } else {
             allocationDescriptionBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -824,11 +811,11 @@ public Builder setAllocationDescription(
             org.tensorflow.proto.AllocationDescription.Builder builderForValue) {
           if (allocationDescriptionBuilder_ == null) {
             allocationDescription_ = builderForValue.build();
    -        onChanged();
           } else {
             allocationDescriptionBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -840,17 +827,20 @@ public Builder setAllocationDescription(
          */
         public Builder mergeAllocationDescription(org.tensorflow.proto.AllocationDescription value) {
           if (allocationDescriptionBuilder_ == null) {
    -        if (allocationDescription_ != null) {
    -          allocationDescription_ =
    -            org.tensorflow.proto.AllocationDescription.newBuilder(allocationDescription_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000004) != 0) &&
    +          allocationDescription_ != null &&
    +          allocationDescription_ != org.tensorflow.proto.AllocationDescription.getDefaultInstance()) {
    +          getAllocationDescriptionBuilder().mergeFrom(value);
             } else {
               allocationDescription_ = value;
             }
    -        onChanged();
           } else {
             allocationDescriptionBuilder_.mergeFrom(value);
           }
    -
    +      if (allocationDescription_ != null) {
    +        bitField0_ |= 0x00000004;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -861,14 +851,13 @@ public Builder mergeAllocationDescription(org.tensorflow.proto.AllocationDescrip
          * .tensorflow.AllocationDescription allocation_description = 4;
          */
         public Builder clearAllocationDescription() {
    -      if (allocationDescriptionBuilder_ == null) {
    -        allocationDescription_ = null;
    -        onChanged();
    -      } else {
    -        allocationDescription_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000004);
    +      allocationDescription_ = null;
    +      if (allocationDescriptionBuilder_ != null) {
    +        allocationDescriptionBuilder_.dispose();
             allocationDescriptionBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -879,7 +868,7 @@ public Builder clearAllocationDescription() {
          * .tensorflow.AllocationDescription allocation_description = 4;
          */
         public org.tensorflow.proto.AllocationDescription.Builder getAllocationDescriptionBuilder() {
    -      
    +      bitField0_ |= 0x00000004;
           onChanged();
           return getAllocationDescriptionFieldBuilder().getBuilder();
         }
    @@ -905,11 +894,11 @@ public org.tensorflow.proto.AllocationDescriptionOrBuilder getAllocationDescript
          *
          * .tensorflow.AllocationDescription allocation_description = 4;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.AllocationDescription, org.tensorflow.proto.AllocationDescription.Builder, org.tensorflow.proto.AllocationDescriptionOrBuilder> 
             getAllocationDescriptionFieldBuilder() {
           if (allocationDescriptionBuilder_ == null) {
    -        allocationDescriptionBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        allocationDescriptionBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.AllocationDescription, org.tensorflow.proto.AllocationDescription.Builder, org.tensorflow.proto.AllocationDescriptionOrBuilder>(
                     getAllocationDescription(),
                     getParentForChildren(),
    @@ -918,18 +907,6 @@ public org.tensorflow.proto.AllocationDescriptionOrBuilder getAllocationDescript
           }
           return allocationDescriptionBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.TensorDescription)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorDescriptionOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorDescriptionOrBuilder.java
    index 4becd9e8d58..42e8478aab8 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorDescriptionOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorDescriptionOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/tensor_description.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorDescriptionProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorDescriptionProtos.java
    index c3d5f3020f0..52dfca9d9b3 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorDescriptionProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorDescriptionProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/tensor_description.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class TensorDescriptionProtos {
       private TensorDescriptionProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      TensorDescriptionProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,7 +28,7 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_TensorDescription_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_TensorDescription_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -53,9 +64,10 @@ public static void registerAllExtensions(
         internal_static_tensorflow_TensorDescription_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_TensorDescription_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_TensorDescription_descriptor,
             new java.lang.String[] { "Dtype", "Shape", "AllocationDescription", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.AllocationDescriptionProtos.getDescriptor();
         org.tensorflow.proto.TensorShapeProtos.getDescriptor();
         org.tensorflow.proto.TypesProtos.getDescriptor();
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorInfo.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorInfo.java
    index dafe4a8a92f..1c2f1251ff7 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorInfo.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorInfo.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/meta_graph.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,37 +13,34 @@
      * Protobuf type {@code tensorflow.TensorInfo}
      */
     public final class TensorInfo extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.TensorInfo)
         TensorInfoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      TensorInfo.class.getName());
    +  }
       // Use TensorInfo.newBuilder() to construct.
    -  private TensorInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private TensorInfo(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private TensorInfo() {
         dtype_ = 0;
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new TensorInfo();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_TensorInfo_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_TensorInfo_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -125,12 +124,21 @@ public interface CooSparseOrBuilder extends
        * Protobuf type {@code tensorflow.TensorInfo.CooSparse}
        */
       public static final class CooSparse extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.TensorInfo.CooSparse)
           CooSparseOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        CooSparse.class.getName());
    +    }
         // Use CooSparse.newBuilder() to construct.
    -    private CooSparse(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private CooSparse(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private CooSparse() {
    @@ -139,25 +147,13 @@ private CooSparse() {
           denseShapeTensorName_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new CooSparse();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_TensorInfo_CooSparse_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_TensorInfo_CooSparse_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -165,7 +161,8 @@ protected java.lang.Object newInstance(
         }
     
         public static final int VALUES_TENSOR_NAME_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object valuesTensorName_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object valuesTensorName_ = "";
         /**
          * 
          * The shape of the values Tensor is [?].  Its dtype must be the dtype of
    @@ -213,7 +210,8 @@ public java.lang.String getValuesTensorName() {
         }
     
         public static final int INDICES_TENSOR_NAME_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object indicesTensorName_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object indicesTensorName_ = "";
         /**
          * 
          * The indices Tensor must have dtype int64 and shape [?, ?].
    @@ -259,7 +257,8 @@ public java.lang.String getIndicesTensorName() {
         }
     
         public static final int DENSE_SHAPE_TENSOR_NAME_FIELD_NUMBER = 3;
    -    private volatile java.lang.Object denseShapeTensorName_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object denseShapeTensorName_ = "";
         /**
          * 
          * The dynamic logical shape represented by the SparseTensor is recorded in
    @@ -320,14 +319,14 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(valuesTensorName_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, valuesTensorName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(valuesTensorName_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, valuesTensorName_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(indicesTensorName_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, indicesTensorName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(indicesTensorName_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, indicesTensorName_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(denseShapeTensorName_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, denseShapeTensorName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(denseShapeTensorName_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 3, denseShapeTensorName_);
           }
           getUnknownFields().writeTo(output);
         }
    @@ -338,14 +337,14 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(valuesTensorName_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, valuesTensorName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(valuesTensorName_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, valuesTensorName_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(indicesTensorName_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, indicesTensorName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(indicesTensorName_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, indicesTensorName_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(denseShapeTensorName_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, denseShapeTensorName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(denseShapeTensorName_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(3, denseShapeTensorName_);
           }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
    @@ -424,39 +423,41 @@ public static org.tensorflow.proto.TensorInfo.CooSparse parseFrom(
         }
         public static org.tensorflow.proto.TensorInfo.CooSparse parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.TensorInfo.CooSparse parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.TensorInfo.CooSparse parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.TensorInfo.CooSparse parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.TensorInfo.CooSparse parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.TensorInfo.CooSparse parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -476,7 +477,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -489,7 +490,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.TensorInfo.CooSparse}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.TensorInfo.CooSparse)
             org.tensorflow.proto.TensorInfo.CooSparseOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -498,7 +499,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_TensorInfo_CooSparse_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -511,19 +512,17 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             valuesTensorName_ = "";
    -
             indicesTensorName_ = "";
    -
             denseShapeTensorName_ = "";
    -
             return this;
           }
     
    @@ -550,45 +549,24 @@ public org.tensorflow.proto.TensorInfo.CooSparse build() {
           @java.lang.Override
           public org.tensorflow.proto.TensorInfo.CooSparse buildPartial() {
             org.tensorflow.proto.TensorInfo.CooSparse result = new org.tensorflow.proto.TensorInfo.CooSparse(this);
    -        result.valuesTensorName_ = valuesTensorName_;
    -        result.indicesTensorName_ = indicesTensorName_;
    -        result.denseShapeTensorName_ = denseShapeTensorName_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.TensorInfo.CooSparse result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.valuesTensorName_ = valuesTensorName_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.indicesTensorName_ = indicesTensorName_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.denseShapeTensorName_ = denseShapeTensorName_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.TensorInfo.CooSparse) {
    @@ -603,14 +581,17 @@ public Builder mergeFrom(org.tensorflow.proto.TensorInfo.CooSparse other) {
             if (other == org.tensorflow.proto.TensorInfo.CooSparse.getDefaultInstance()) return this;
             if (!other.getValuesTensorName().isEmpty()) {
               valuesTensorName_ = other.valuesTensorName_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (!other.getIndicesTensorName().isEmpty()) {
               indicesTensorName_ = other.indicesTensorName_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             if (!other.getDenseShapeTensorName().isEmpty()) {
               denseShapeTensorName_ = other.denseShapeTensorName_;
    +          bitField0_ |= 0x00000004;
               onChanged();
             }
             this.mergeUnknownFields(other.getUnknownFields());
    @@ -641,17 +622,17 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     valuesTensorName_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     indicesTensorName_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 26: {
                     denseShapeTensorName_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 26
                   default: {
    @@ -669,6 +650,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private java.lang.Object valuesTensorName_ = "";
           /**
    @@ -726,11 +708,9 @@ public java.lang.String getValuesTensorName() {
            */
           public Builder setValuesTensorName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             valuesTensorName_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -744,8 +724,8 @@ public Builder setValuesTensorName(
            * @return This builder for chaining.
            */
           public Builder clearValuesTensorName() {
    -        
             valuesTensorName_ = getDefaultInstance().getValuesTensorName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -761,12 +741,10 @@ public Builder clearValuesTensorName() {
            */
           public Builder setValuesTensorNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             valuesTensorName_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -824,11 +802,9 @@ public java.lang.String getIndicesTensorName() {
            */
           public Builder setIndicesTensorName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             indicesTensorName_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -841,8 +817,8 @@ public Builder setIndicesTensorName(
            * @return This builder for chaining.
            */
           public Builder clearIndicesTensorName() {
    -        
             indicesTensorName_ = getDefaultInstance().getIndicesTensorName();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -857,12 +833,10 @@ public Builder clearIndicesTensorName() {
            */
           public Builder setIndicesTensorNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             indicesTensorName_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -923,11 +897,9 @@ public java.lang.String getDenseShapeTensorName() {
            */
           public Builder setDenseShapeTensorName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             denseShapeTensorName_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -941,8 +913,8 @@ public Builder setDenseShapeTensorName(
            * @return This builder for chaining.
            */
           public Builder clearDenseShapeTensorName() {
    -        
             denseShapeTensorName_ = getDefaultInstance().getDenseShapeTensorName();
    +        bitField0_ = (bitField0_ & ~0x00000004);
             onChanged();
             return this;
           }
    @@ -958,27 +930,13 @@ public Builder clearDenseShapeTensorName() {
            */
           public Builder setDenseShapeTensorNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             denseShapeTensorName_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.TensorInfo.CooSparse)
         }
    @@ -1114,43 +1072,41 @@ org.tensorflow.proto.TensorInfoOrBuilder getComponentsOrBuilder(
        * Protobuf type {@code tensorflow.TensorInfo.CompositeTensor}
        */
       public static final class CompositeTensor extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.TensorInfo.CompositeTensor)
           CompositeTensorOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        CompositeTensor.class.getName());
    +    }
         // Use CompositeTensor.newBuilder() to construct.
    -    private CompositeTensor(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private CompositeTensor(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private CompositeTensor() {
           components_ = java.util.Collections.emptyList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new CompositeTensor();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_TensorInfo_CompositeTensor_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_TensorInfo_CompositeTensor_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
                   org.tensorflow.proto.TensorInfo.CompositeTensor.class, org.tensorflow.proto.TensorInfo.CompositeTensor.Builder.class);
         }
     
    +    private int bitField0_;
         public static final int TYPE_SPEC_FIELD_NUMBER = 1;
         private org.tensorflow.proto.Struct.TypeSpecProto typeSpec_;
         /**
    @@ -1163,7 +1119,7 @@ protected java.lang.Object newInstance(
          */
         @java.lang.Override
         public boolean hasTypeSpec() {
    -      return typeSpec_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -1186,10 +1142,11 @@ public org.tensorflow.proto.Struct.TypeSpecProto getTypeSpec() {
          */
         @java.lang.Override
         public org.tensorflow.proto.Struct.TypeSpecProtoOrBuilder getTypeSpecOrBuilder() {
    -      return getTypeSpec();
    +      return typeSpec_ == null ? org.tensorflow.proto.Struct.TypeSpecProto.getDefaultInstance() : typeSpec_;
         }
     
         public static final int COMPONENTS_FIELD_NUMBER = 2;
    +    @SuppressWarnings("serial")
         private java.util.List components_;
         /**
          * 
    @@ -1263,7 +1220,7 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (typeSpec_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(1, getTypeSpec());
           }
           for (int i = 0; i < components_.size(); i++) {
    @@ -1278,7 +1235,7 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (typeSpec_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(1, getTypeSpec());
           }
    @@ -1366,39 +1323,41 @@ public static org.tensorflow.proto.TensorInfo.CompositeTensor parseFrom(
         }
         public static org.tensorflow.proto.TensorInfo.CompositeTensor parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.TensorInfo.CompositeTensor parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.TensorInfo.CompositeTensor parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.TensorInfo.CompositeTensor parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.TensorInfo.CompositeTensor parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.TensorInfo.CompositeTensor parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -1418,7 +1377,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -1430,7 +1389,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.TensorInfo.CompositeTensor}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.TensorInfo.CompositeTensor)
             org.tensorflow.proto.TensorInfo.CompositeTensorOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1439,7 +1398,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_TensorInfo_CompositeTensor_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -1448,21 +1407,28 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.TensorInfo.CompositeTensor.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getTypeSpecFieldBuilder();
    +          getComponentsFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    -        if (typeSpecBuilder_ == null) {
    -          typeSpec_ = null;
    -        } else {
    -          typeSpec_ = null;
    +        bitField0_ = 0;
    +        typeSpec_ = null;
    +        if (typeSpecBuilder_ != null) {
    +          typeSpecBuilder_.dispose();
               typeSpecBuilder_ = null;
             }
             if (componentsBuilder_ == null) {
    @@ -1471,7 +1437,7 @@ public Builder clear() {
               components_ = null;
               componentsBuilder_.clear();
             }
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000002);
             return this;
           }
     
    @@ -1498,57 +1464,36 @@ public org.tensorflow.proto.TensorInfo.CompositeTensor build() {
           @java.lang.Override
           public org.tensorflow.proto.TensorInfo.CompositeTensor buildPartial() {
             org.tensorflow.proto.TensorInfo.CompositeTensor result = new org.tensorflow.proto.TensorInfo.CompositeTensor(this);
    -        int from_bitField0_ = bitField0_;
    -        if (typeSpecBuilder_ == null) {
    -          result.typeSpec_ = typeSpec_;
    -        } else {
    -          result.typeSpec_ = typeSpecBuilder_.build();
    -        }
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.TensorInfo.CompositeTensor result) {
             if (componentsBuilder_ == null) {
    -          if (((bitField0_ & 0x00000001) != 0)) {
    +          if (((bitField0_ & 0x00000002) != 0)) {
                 components_ = java.util.Collections.unmodifiableList(components_);
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000002);
               }
               result.components_ = components_;
             } else {
               result.components_ = componentsBuilder_.build();
             }
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.TensorInfo.CompositeTensor result) {
    +        int from_bitField0_ = bitField0_;
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.typeSpec_ = typeSpecBuilder_ == null
    +              ? typeSpec_
    +              : typeSpecBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.TensorInfo.CompositeTensor) {
    @@ -1568,7 +1513,7 @@ public Builder mergeFrom(org.tensorflow.proto.TensorInfo.CompositeTensor other)
               if (!other.components_.isEmpty()) {
                 if (components_.isEmpty()) {
                   components_ = other.components_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000002);
                 } else {
                   ensureComponentsIsMutable();
                   components_.addAll(other.components_);
    @@ -1581,9 +1526,9 @@ public Builder mergeFrom(org.tensorflow.proto.TensorInfo.CompositeTensor other)
                   componentsBuilder_.dispose();
                   componentsBuilder_ = null;
                   components_ = other.components_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000002);
                   componentsBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getComponentsFieldBuilder() : null;
                 } else {
                   componentsBuilder_.addAllMessages(other.components_);
    @@ -1620,7 +1565,7 @@ public Builder mergeFrom(
                     input.readMessage(
                         getTypeSpecFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
    @@ -1654,7 +1599,7 @@ public Builder mergeFrom(
           private int bitField0_;
     
           private org.tensorflow.proto.Struct.TypeSpecProto typeSpec_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.TypeSpecProto, org.tensorflow.proto.Struct.TypeSpecProto.Builder, org.tensorflow.proto.Struct.TypeSpecProtoOrBuilder> typeSpecBuilder_;
           /**
            * 
    @@ -1665,7 +1610,7 @@ public Builder mergeFrom(
            * @return Whether the typeSpec field is set.
            */
           public boolean hasTypeSpec() {
    -        return typeSpecBuilder_ != null || typeSpec_ != null;
    +        return ((bitField0_ & 0x00000001) != 0);
           }
           /**
            * 
    @@ -1695,11 +1640,11 @@ public Builder setTypeSpec(org.tensorflow.proto.Struct.TypeSpecProto value) {
                 throw new NullPointerException();
               }
               typeSpec_ = value;
    -          onChanged();
             } else {
               typeSpecBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000001;
    +        onChanged();
             return this;
           }
           /**
    @@ -1713,11 +1658,11 @@ public Builder setTypeSpec(
               org.tensorflow.proto.Struct.TypeSpecProto.Builder builderForValue) {
             if (typeSpecBuilder_ == null) {
               typeSpec_ = builderForValue.build();
    -          onChanged();
             } else {
               typeSpecBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000001;
    +        onChanged();
             return this;
           }
           /**
    @@ -1729,17 +1674,20 @@ public Builder setTypeSpec(
            */
           public Builder mergeTypeSpec(org.tensorflow.proto.Struct.TypeSpecProto value) {
             if (typeSpecBuilder_ == null) {
    -          if (typeSpec_ != null) {
    -            typeSpec_ =
    -              org.tensorflow.proto.Struct.TypeSpecProto.newBuilder(typeSpec_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000001) != 0) &&
    +            typeSpec_ != null &&
    +            typeSpec_ != org.tensorflow.proto.Struct.TypeSpecProto.getDefaultInstance()) {
    +            getTypeSpecBuilder().mergeFrom(value);
               } else {
                 typeSpec_ = value;
               }
    -          onChanged();
             } else {
               typeSpecBuilder_.mergeFrom(value);
             }
    -
    +        if (typeSpec_ != null) {
    +          bitField0_ |= 0x00000001;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -1750,14 +1698,13 @@ public Builder mergeTypeSpec(org.tensorflow.proto.Struct.TypeSpecProto value) {
            * .tensorflow.TypeSpecProto type_spec = 1;
            */
           public Builder clearTypeSpec() {
    -        if (typeSpecBuilder_ == null) {
    -          typeSpec_ = null;
    -          onChanged();
    -        } else {
    -          typeSpec_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000001);
    +        typeSpec_ = null;
    +        if (typeSpecBuilder_ != null) {
    +          typeSpecBuilder_.dispose();
               typeSpecBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -1768,7 +1715,7 @@ public Builder clearTypeSpec() {
            * .tensorflow.TypeSpecProto type_spec = 1;
            */
           public org.tensorflow.proto.Struct.TypeSpecProto.Builder getTypeSpecBuilder() {
    -        
    +        bitField0_ |= 0x00000001;
             onChanged();
             return getTypeSpecFieldBuilder().getBuilder();
           }
    @@ -1794,11 +1741,11 @@ public org.tensorflow.proto.Struct.TypeSpecProtoOrBuilder getTypeSpecOrBuilder()
            *
            * .tensorflow.TypeSpecProto type_spec = 1;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.Struct.TypeSpecProto, org.tensorflow.proto.Struct.TypeSpecProto.Builder, org.tensorflow.proto.Struct.TypeSpecProtoOrBuilder> 
               getTypeSpecFieldBuilder() {
             if (typeSpecBuilder_ == null) {
    -          typeSpecBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          typeSpecBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.Struct.TypeSpecProto, org.tensorflow.proto.Struct.TypeSpecProto.Builder, org.tensorflow.proto.Struct.TypeSpecProtoOrBuilder>(
                       getTypeSpec(),
                       getParentForChildren(),
    @@ -1811,13 +1758,13 @@ public org.tensorflow.proto.Struct.TypeSpecProtoOrBuilder getTypeSpecOrBuilder()
           private java.util.List components_ =
             java.util.Collections.emptyList();
           private void ensureComponentsIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    +        if (!((bitField0_ & 0x00000002) != 0)) {
               components_ = new java.util.ArrayList(components_);
    -          bitField0_ |= 0x00000001;
    +          bitField0_ |= 0x00000002;
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.TensorInfo, org.tensorflow.proto.TensorInfo.Builder, org.tensorflow.proto.TensorInfoOrBuilder> componentsBuilder_;
     
           /**
    @@ -2007,7 +1954,7 @@ public Builder addAllComponents(
           public Builder clearComponents() {
             if (componentsBuilder_ == null) {
               components_ = java.util.Collections.emptyList();
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000002);
               onChanged();
             } else {
               componentsBuilder_.clear();
    @@ -2105,32 +2052,20 @@ public org.tensorflow.proto.TensorInfo.Builder addComponentsBuilder(
                getComponentsBuilderList() {
             return getComponentsFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.TensorInfo, org.tensorflow.proto.TensorInfo.Builder, org.tensorflow.proto.TensorInfoOrBuilder> 
               getComponentsFieldBuilder() {
             if (componentsBuilder_ == null) {
    -          componentsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          componentsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.TensorInfo, org.tensorflow.proto.TensorInfo.Builder, org.tensorflow.proto.TensorInfoOrBuilder>(
                       components_,
    -                  ((bitField0_ & 0x00000001) != 0),
    +                  ((bitField0_ & 0x00000002) != 0),
                       getParentForChildren(),
                       isClean());
               components_ = null;
             }
             return componentsBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.TensorInfo.CompositeTensor)
         }
    @@ -2183,7 +2118,9 @@ public org.tensorflow.proto.TensorInfo.CompositeTensor getDefaultInstanceForType
     
       }
     
    +  private int bitField0_;
       private int encodingCase_ = 0;
    +  @SuppressWarnings("serial")
       private java.lang.Object encoding_;
       public enum EncodingCase
           implements com.google.protobuf.Internal.EnumLite,
    @@ -2386,7 +2323,7 @@ public org.tensorflow.proto.TensorInfo.CompositeTensorOrBuilder getCompositeTens
       }
     
       public static final int DTYPE_FIELD_NUMBER = 2;
    -  private int dtype_;
    +  private int dtype_ = 0;
       /**
        * .tensorflow.DataType dtype = 2;
        * @return The enum numeric value on the wire for dtype.
    @@ -2399,8 +2336,7 @@ public org.tensorflow.proto.TensorInfo.CompositeTensorOrBuilder getCompositeTens
        * @return The dtype.
        */
       @java.lang.Override public org.tensorflow.proto.DataType getDtype() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
         return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
       }
     
    @@ -2418,7 +2354,7 @@ public org.tensorflow.proto.TensorInfo.CompositeTensorOrBuilder getCompositeTens
        */
       @java.lang.Override
       public boolean hasTensorShape() {
    -    return tensorShape_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -2445,7 +2381,7 @@ public org.tensorflow.proto.TensorShapeProto getTensorShape() {
        */
       @java.lang.Override
       public org.tensorflow.proto.TensorShapeProtoOrBuilder getTensorShapeOrBuilder() {
    -    return getTensorShape();
    +    return tensorShape_ == null ? org.tensorflow.proto.TensorShapeProto.getDefaultInstance() : tensorShape_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -2463,12 +2399,12 @@ public final boolean isInitialized() {
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
         if (encodingCase_ == 1) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, encoding_);
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, encoding_);
         }
         if (dtype_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) {
           output.writeEnum(2, dtype_);
         }
    -    if (tensorShape_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(3, getTensorShape());
         }
         if (encodingCase_ == 4) {
    @@ -2487,13 +2423,13 @@ public int getSerializedSize() {
     
         size = 0;
         if (encodingCase_ == 1) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, encoding_);
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, encoding_);
         }
         if (dtype_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) {
           size += com.google.protobuf.CodedOutputStream
             .computeEnumSize(2, dtype_);
         }
    -    if (tensorShape_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(3, getTensorShape());
         }
    @@ -2615,39 +2551,41 @@ public static org.tensorflow.proto.TensorInfo parseFrom(
       }
       public static org.tensorflow.proto.TensorInfo parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.TensorInfo parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.TensorInfo parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.TensorInfo parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.TensorInfo parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.TensorInfo parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -2667,7 +2605,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -2679,7 +2617,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.TensorInfo}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.TensorInfo)
           org.tensorflow.proto.TensorInfoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -2688,7 +2626,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.MetaGraphProtos.internal_static_tensorflow_TensorInfo_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -2697,17 +2635,24 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.TensorInfo.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getTensorShapeFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           if (cooSparseBuilder_ != null) {
             cooSparseBuilder_.clear();
           }
    @@ -2715,11 +2660,9 @@ public Builder clear() {
             compositeTensorBuilder_.clear();
           }
           dtype_ = 0;
    -
    -      if (tensorShapeBuilder_ == null) {
    -        tensorShape_ = null;
    -      } else {
    -        tensorShape_ = null;
    +      tensorShape_ = null;
    +      if (tensorShapeBuilder_ != null) {
    +        tensorShapeBuilder_.dispose();
             tensorShapeBuilder_ = null;
           }
           encodingCase_ = 0;
    @@ -2750,66 +2693,40 @@ public org.tensorflow.proto.TensorInfo build() {
         @java.lang.Override
         public org.tensorflow.proto.TensorInfo buildPartial() {
           org.tensorflow.proto.TensorInfo result = new org.tensorflow.proto.TensorInfo(this);
    -      if (encodingCase_ == 1) {
    -        result.encoding_ = encoding_;
    -      }
    -      if (encodingCase_ == 4) {
    -        if (cooSparseBuilder_ == null) {
    -          result.encoding_ = encoding_;
    -        } else {
    -          result.encoding_ = cooSparseBuilder_.build();
    -        }
    -      }
    -      if (encodingCase_ == 5) {
    -        if (compositeTensorBuilder_ == null) {
    -          result.encoding_ = encoding_;
    -        } else {
    -          result.encoding_ = compositeTensorBuilder_.build();
    -        }
    -      }
    -      result.dtype_ = dtype_;
    -      if (tensorShapeBuilder_ == null) {
    -        result.tensorShape_ = tensorShape_;
    -      } else {
    -        result.tensorShape_ = tensorShapeBuilder_.build();
    -      }
    -      result.encodingCase_ = encodingCase_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      buildPartialOneofs(result);
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    +    private void buildPartial0(org.tensorflow.proto.TensorInfo result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.dtype_ = dtype_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.tensorShape_ = tensorShapeBuilder_ == null
    +            ? tensorShape_
    +            : tensorShapeBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +
    +    private void buildPartialOneofs(org.tensorflow.proto.TensorInfo result) {
    +      result.encodingCase_ = encodingCase_;
    +      result.encoding_ = this.encoding_;
    +      if (encodingCase_ == 4 &&
    +          cooSparseBuilder_ != null) {
    +        result.encoding_ = cooSparseBuilder_.build();
    +      }
    +      if (encodingCase_ == 5 &&
    +          compositeTensorBuilder_ != null) {
    +        result.encoding_ = compositeTensorBuilder_.build();
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.TensorInfo) {
    @@ -2881,14 +2798,14 @@ public Builder mergeFrom(
                 } // case 10
                 case 16: {
                   dtype_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 16
                 case 26: {
                   input.readMessage(
                       getTensorShapeFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 26
                 case 34: {
    @@ -2935,6 +2852,7 @@ public Builder clearEncoding() {
           return this;
         }
     
    +    private int bitField0_;
     
         /**
          * 
    @@ -3012,10 +2930,8 @@ public java.lang.String getName() {
          */
         public Builder setName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  encodingCase_ = 1;
    +      if (value == null) { throw new NullPointerException(); }
    +      encodingCase_ = 1;
           encoding_ = value;
           onChanged();
           return this;
    @@ -3047,17 +2963,15 @@ public Builder clearName() {
          */
         public Builder setNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           encodingCase_ = 1;
           encoding_ = value;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorInfo.CooSparse, org.tensorflow.proto.TensorInfo.CooSparse.Builder, org.tensorflow.proto.TensorInfo.CooSparseOrBuilder> cooSparseBuilder_;
         /**
          * 
    @@ -3243,14 +3157,14 @@ public org.tensorflow.proto.TensorInfo.CooSparseOrBuilder getCooSparseOrBuilder(
          *
          * .tensorflow.TensorInfo.CooSparse coo_sparse = 4;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorInfo.CooSparse, org.tensorflow.proto.TensorInfo.CooSparse.Builder, org.tensorflow.proto.TensorInfo.CooSparseOrBuilder> 
             getCooSparseFieldBuilder() {
           if (cooSparseBuilder_ == null) {
             if (!(encodingCase_ == 4)) {
               encoding_ = org.tensorflow.proto.TensorInfo.CooSparse.getDefaultInstance();
             }
    -        cooSparseBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        cooSparseBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorInfo.CooSparse, org.tensorflow.proto.TensorInfo.CooSparse.Builder, org.tensorflow.proto.TensorInfo.CooSparseOrBuilder>(
                     (org.tensorflow.proto.TensorInfo.CooSparse) encoding_,
                     getParentForChildren(),
    @@ -3258,11 +3172,11 @@ public org.tensorflow.proto.TensorInfo.CooSparseOrBuilder getCooSparseOrBuilder(
             encoding_ = null;
           }
           encodingCase_ = 4;
    -      onChanged();;
    +      onChanged();
           return cooSparseBuilder_;
         }
     
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorInfo.CompositeTensor, org.tensorflow.proto.TensorInfo.CompositeTensor.Builder, org.tensorflow.proto.TensorInfo.CompositeTensorOrBuilder> compositeTensorBuilder_;
         /**
          * 
    @@ -3421,14 +3335,14 @@ public org.tensorflow.proto.TensorInfo.CompositeTensorOrBuilder getCompositeTens
          *
          * .tensorflow.TensorInfo.CompositeTensor composite_tensor = 5;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorInfo.CompositeTensor, org.tensorflow.proto.TensorInfo.CompositeTensor.Builder, org.tensorflow.proto.TensorInfo.CompositeTensorOrBuilder> 
             getCompositeTensorFieldBuilder() {
           if (compositeTensorBuilder_ == null) {
             if (!(encodingCase_ == 5)) {
               encoding_ = org.tensorflow.proto.TensorInfo.CompositeTensor.getDefaultInstance();
             }
    -        compositeTensorBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        compositeTensorBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorInfo.CompositeTensor, org.tensorflow.proto.TensorInfo.CompositeTensor.Builder, org.tensorflow.proto.TensorInfo.CompositeTensorOrBuilder>(
                     (org.tensorflow.proto.TensorInfo.CompositeTensor) encoding_,
                     getParentForChildren(),
    @@ -3436,7 +3350,7 @@ public org.tensorflow.proto.TensorInfo.CompositeTensorOrBuilder getCompositeTens
             encoding_ = null;
           }
           encodingCase_ = 5;
    -      onChanged();;
    +      onChanged();
           return compositeTensorBuilder_;
         }
     
    @@ -3454,8 +3368,8 @@ public org.tensorflow.proto.TensorInfo.CompositeTensorOrBuilder getCompositeTens
          * @return This builder for chaining.
          */
         public Builder setDtypeValue(int value) {
    -      
           dtype_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -3465,8 +3379,7 @@ public Builder setDtypeValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.DataType getDtype() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
           return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
         }
         /**
    @@ -3478,7 +3391,7 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000008;
           dtype_ = value.getNumber();
           onChanged();
           return this;
    @@ -3488,14 +3401,14 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
          * @return This builder for chaining.
          */
         public Builder clearDtype() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           dtype_ = 0;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.TensorShapeProto tensorShape_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> tensorShapeBuilder_;
         /**
          * 
    @@ -3508,7 +3421,7 @@ public Builder clearDtype() {
          * @return Whether the tensorShape field is set.
          */
         public boolean hasTensorShape() {
    -      return tensorShapeBuilder_ != null || tensorShape_ != null;
    +      return ((bitField0_ & 0x00000010) != 0);
         }
         /**
          * 
    @@ -3542,11 +3455,11 @@ public Builder setTensorShape(org.tensorflow.proto.TensorShapeProto value) {
               throw new NullPointerException();
             }
             tensorShape_ = value;
    -        onChanged();
           } else {
             tensorShapeBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000010;
    +      onChanged();
           return this;
         }
         /**
    @@ -3562,11 +3475,11 @@ public Builder setTensorShape(
             org.tensorflow.proto.TensorShapeProto.Builder builderForValue) {
           if (tensorShapeBuilder_ == null) {
             tensorShape_ = builderForValue.build();
    -        onChanged();
           } else {
             tensorShapeBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000010;
    +      onChanged();
           return this;
         }
         /**
    @@ -3580,17 +3493,20 @@ public Builder setTensorShape(
          */
         public Builder mergeTensorShape(org.tensorflow.proto.TensorShapeProto value) {
           if (tensorShapeBuilder_ == null) {
    -        if (tensorShape_ != null) {
    -          tensorShape_ =
    -            org.tensorflow.proto.TensorShapeProto.newBuilder(tensorShape_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000010) != 0) &&
    +          tensorShape_ != null &&
    +          tensorShape_ != org.tensorflow.proto.TensorShapeProto.getDefaultInstance()) {
    +          getTensorShapeBuilder().mergeFrom(value);
             } else {
               tensorShape_ = value;
             }
    -        onChanged();
           } else {
             tensorShapeBuilder_.mergeFrom(value);
           }
    -
    +      if (tensorShape_ != null) {
    +        bitField0_ |= 0x00000010;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -3603,14 +3519,13 @@ public Builder mergeTensorShape(org.tensorflow.proto.TensorShapeProto value) {
          * .tensorflow.TensorShapeProto tensor_shape = 3;
          */
         public Builder clearTensorShape() {
    -      if (tensorShapeBuilder_ == null) {
    -        tensorShape_ = null;
    -        onChanged();
    -      } else {
    -        tensorShape_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000010);
    +      tensorShape_ = null;
    +      if (tensorShapeBuilder_ != null) {
    +        tensorShapeBuilder_.dispose();
             tensorShapeBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -3623,7 +3538,7 @@ public Builder clearTensorShape() {
          * .tensorflow.TensorShapeProto tensor_shape = 3;
          */
         public org.tensorflow.proto.TensorShapeProto.Builder getTensorShapeBuilder() {
    -      
    +      bitField0_ |= 0x00000010;
           onChanged();
           return getTensorShapeFieldBuilder().getBuilder();
         }
    @@ -3653,11 +3568,11 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getTensorShapeOrBuilder()
          *
          * .tensorflow.TensorShapeProto tensor_shape = 3;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> 
             getTensorShapeFieldBuilder() {
           if (tensorShapeBuilder_ == null) {
    -        tensorShapeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        tensorShapeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>(
                     getTensorShape(),
                     getParentForChildren(),
    @@ -3666,18 +3581,6 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getTensorShapeOrBuilder()
           }
           return tensorShapeBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.TensorInfo)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorInfoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorInfoOrBuilder.java
    index 704d81f874e..e6f8bc5266b 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorInfoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorInfoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/meta_graph.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -143,5 +145,5 @@ public interface TensorInfoOrBuilder extends
        */
       org.tensorflow.proto.TensorShapeProtoOrBuilder getTensorShapeOrBuilder();
     
    -  public org.tensorflow.proto.TensorInfo.EncodingCase getEncodingCase();
    +  org.tensorflow.proto.TensorInfo.EncodingCase getEncodingCase();
     }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorProto.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorProto.java
    index 0440777955e..16963543fb5 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorProto.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorProto.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/tensor.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,12 +13,21 @@
      * Protobuf type {@code tensorflow.TensorProto}
      */
     public final class TensorProto extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.TensorProto)
         TensorProtoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      TensorProto.class.getName());
    +  }
       // Use TensorProto.newBuilder() to construct.
    -  private TensorProto(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private TensorProto(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private TensorProto() {
    @@ -26,7 +37,7 @@ private TensorProto() {
         floatVal_ = emptyFloatList();
         doubleVal_ = emptyDoubleList();
         intVal_ = emptyIntList();
    -    stringVal_ = java.util.Collections.emptyList();
    +    stringVal_ = emptyList(com.google.protobuf.ByteString.class);
         scomplexVal_ = emptyFloatList();
         int64Val_ = emptyLongList();
         boolVal_ = emptyBooleanList();
    @@ -38,34 +49,27 @@ private TensorProto() {
         float8Val_ = com.google.protobuf.ByteString.EMPTY;
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new TensorProto();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.TensorProtos.internal_static_tensorflow_TensorProto_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.TensorProtos.internal_static_tensorflow_TensorProto_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.TensorProto.class, org.tensorflow.proto.TensorProto.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int DTYPE_FIELD_NUMBER = 1;
    -  private int dtype_;
    +  private int dtype_ = 0;
       /**
    +   * 
    +   * Data type of the tensor.
    +   * 
    + * * .tensorflow.DataType dtype = 1; * @return The enum numeric value on the wire for dtype. */ @@ -73,12 +77,15 @@ protected java.lang.Object newInstance( return dtype_; } /** + *
    +   * Data type of the tensor.
    +   * 
    + * * .tensorflow.DataType dtype = 1; * @return The dtype. */ @java.lang.Override public org.tensorflow.proto.DataType getDtype() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_); + org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_); return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result; } @@ -94,7 +101,7 @@ protected java.lang.Object newInstance( */ @java.lang.Override public boolean hasTensorShape() { - return tensorShape_ != null; + return ((bitField0_ & 0x00000001) != 0); } /** *
    @@ -117,14 +124,15 @@ public org.tensorflow.proto.TensorShapeProto getTensorShape() {
        */
       @java.lang.Override
       public org.tensorflow.proto.TensorShapeProtoOrBuilder getTensorShapeOrBuilder() {
    -    return getTensorShape();
    +    return tensorShape_ == null ? org.tensorflow.proto.TensorShapeProto.getDefaultInstance() : tensorShape_;
       }
     
       public static final int VERSION_NUMBER_FIELD_NUMBER = 3;
    -  private int versionNumber_;
    +  private int versionNumber_ = 0;
       /**
        * 
        * Version number.
    +   *
        * In version 0, if the "repeated xxx" representations contain only one
        * element, that element is repeated to fill the shape.  This makes it easy
        * to represent a constant Tensor with a single value.
    @@ -139,7 +147,7 @@ public int getVersionNumber() {
       }
     
       public static final int TENSOR_CONTENT_FIELD_NUMBER = 4;
    -  private com.google.protobuf.ByteString tensorContent_;
    +  private com.google.protobuf.ByteString tensorContent_ = com.google.protobuf.ByteString.EMPTY;
       /**
        * 
        * Serialized raw tensor content from either Tensor::AsProtoTensorContent or
    @@ -158,7 +166,9 @@ public com.google.protobuf.ByteString getTensorContent() {
       }
     
       public static final int HALF_VAL_FIELD_NUMBER = 13;
    -  private com.google.protobuf.Internal.IntList halfVal_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.IntList halfVal_ =
    +      emptyIntList();
       /**
        * 
        * DT_HALF, DT_BFLOAT16. Note that since protobuf has no int16 type, we'll
    @@ -201,7 +211,9 @@ public int getHalfVal(int index) {
       private int halfValMemoizedSerializedSize = -1;
     
       public static final int FLOAT_VAL_FIELD_NUMBER = 5;
    -  private com.google.protobuf.Internal.FloatList floatVal_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.FloatList floatVal_ =
    +      emptyFloatList();
       /**
        * 
        * DT_FLOAT.
    @@ -241,7 +253,9 @@ public float getFloatVal(int index) {
       private int floatValMemoizedSerializedSize = -1;
     
       public static final int DOUBLE_VAL_FIELD_NUMBER = 6;
    -  private com.google.protobuf.Internal.DoubleList doubleVal_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.DoubleList doubleVal_ =
    +      emptyDoubleList();
       /**
        * 
        * DT_DOUBLE.
    @@ -281,7 +295,9 @@ public double getDoubleVal(int index) {
       private int doubleValMemoizedSerializedSize = -1;
     
       public static final int INT_VAL_FIELD_NUMBER = 7;
    -  private com.google.protobuf.Internal.IntList intVal_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.IntList intVal_ =
    +      emptyIntList();
       /**
        * 
        * DT_INT32, DT_INT16, DT_UINT16, DT_INT8, DT_UINT8.
    @@ -321,7 +337,9 @@ public int getIntVal(int index) {
       private int intValMemoizedSerializedSize = -1;
     
       public static final int STRING_VAL_FIELD_NUMBER = 8;
    -  private java.util.List stringVal_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.ProtobufList stringVal_ =
    +      emptyList(com.google.protobuf.ByteString.class);
       /**
        * 
        * DT_STRING
    @@ -360,7 +378,9 @@ public com.google.protobuf.ByteString getStringVal(int index) {
       }
     
       public static final int SCOMPLEX_VAL_FIELD_NUMBER = 9;
    -  private com.google.protobuf.Internal.FloatList scomplexVal_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.FloatList scomplexVal_ =
    +      emptyFloatList();
       /**
        * 
        * DT_COMPLEX64. scomplex_val(2*i) and scomplex_val(2*i+1) are real
    @@ -403,7 +423,9 @@ public float getScomplexVal(int index) {
       private int scomplexValMemoizedSerializedSize = -1;
     
       public static final int INT64_VAL_FIELD_NUMBER = 10;
    -  private com.google.protobuf.Internal.LongList int64Val_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.LongList int64Val_ =
    +      emptyLongList();
       /**
        * 
        * DT_INT64
    @@ -443,7 +465,9 @@ public long getInt64Val(int index) {
       private int int64ValMemoizedSerializedSize = -1;
     
       public static final int BOOL_VAL_FIELD_NUMBER = 11;
    -  private com.google.protobuf.Internal.BooleanList boolVal_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.BooleanList boolVal_ =
    +      emptyBooleanList();
       /**
        * 
        * DT_BOOL
    @@ -483,7 +507,9 @@ public boolean getBoolVal(int index) {
       private int boolValMemoizedSerializedSize = -1;
     
       public static final int DCOMPLEX_VAL_FIELD_NUMBER = 12;
    -  private com.google.protobuf.Internal.DoubleList dcomplexVal_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.DoubleList dcomplexVal_ =
    +      emptyDoubleList();
       /**
        * 
        * DT_COMPLEX128. dcomplex_val(2*i) and dcomplex_val(2*i+1) are real
    @@ -526,6 +552,7 @@ public double getDcomplexVal(int index) {
       private int dcomplexValMemoizedSerializedSize = -1;
     
       public static final int RESOURCE_HANDLE_VAL_FIELD_NUMBER = 14;
    +  @SuppressWarnings("serial")
       private java.util.List resourceHandleVal_;
       /**
        * 
    @@ -586,6 +613,7 @@ public org.tensorflow.proto.ResourceHandleProtoOrBuilder getResourceHandleValOrB
       }
     
       public static final int VARIANT_VAL_FIELD_NUMBER = 15;
    +  @SuppressWarnings("serial")
       private java.util.List variantVal_;
       /**
        * 
    @@ -646,7 +674,9 @@ public org.tensorflow.proto.VariantTensorDataProtoOrBuilder getVariantValOrBuild
       }
     
       public static final int UINT32_VAL_FIELD_NUMBER = 16;
    -  private com.google.protobuf.Internal.IntList uint32Val_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.IntList uint32Val_ =
    +      emptyIntList();
       /**
        * 
        * DT_UINT32
    @@ -686,7 +716,9 @@ public int getUint32Val(int index) {
       private int uint32ValMemoizedSerializedSize = -1;
     
       public static final int UINT64_VAL_FIELD_NUMBER = 17;
    -  private com.google.protobuf.Internal.LongList uint64Val_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.LongList uint64Val_ =
    +      emptyLongList();
       /**
        * 
        * DT_UINT64
    @@ -726,7 +758,7 @@ public long getUint64Val(int index) {
       private int uint64ValMemoizedSerializedSize = -1;
     
       public static final int FLOAT8_VAL_FIELD_NUMBER = 18;
    -  private com.google.protobuf.ByteString float8Val_;
    +  private com.google.protobuf.ByteString float8Val_ = com.google.protobuf.ByteString.EMPTY;
       /**
        * 
        * DT_FLOAT8_*, use variable-sized set of bytes
    @@ -759,7 +791,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (dtype_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) {
           output.writeEnum(1, dtype_);
         }
    -    if (tensorShape_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(2, getTensorShape());
         }
         if (versionNumber_ != 0) {
    @@ -863,7 +895,7 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeEnumSize(1, dtype_);
         }
    -    if (tensorShape_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(2, getTensorShape());
         }
    @@ -1188,39 +1220,41 @@ public static org.tensorflow.proto.TensorProto parseFrom(
       }
       public static org.tensorflow.proto.TensorProto parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.TensorProto parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.TensorProto parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.TensorProto parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.TensorProto parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.TensorProto parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -1240,7 +1274,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -1252,7 +1286,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.TensorProto}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.TensorProto)
           org.tensorflow.proto.TensorProtoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1261,7 +1295,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TensorProtos.internal_static_tensorflow_TensorProto_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -1270,67 +1304,60 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.TensorProto.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getTensorShapeFieldBuilder();
    +        getResourceHandleValFieldBuilder();
    +        getVariantValFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           dtype_ = 0;
    -
    -      if (tensorShapeBuilder_ == null) {
    -        tensorShape_ = null;
    -      } else {
    -        tensorShape_ = null;
    +      tensorShape_ = null;
    +      if (tensorShapeBuilder_ != null) {
    +        tensorShapeBuilder_.dispose();
             tensorShapeBuilder_ = null;
           }
           versionNumber_ = 0;
    -
           tensorContent_ = com.google.protobuf.ByteString.EMPTY;
    -
           halfVal_ = emptyIntList();
    -      bitField0_ = (bitField0_ & ~0x00000001);
           floatVal_ = emptyFloatList();
    -      bitField0_ = (bitField0_ & ~0x00000002);
           doubleVal_ = emptyDoubleList();
    -      bitField0_ = (bitField0_ & ~0x00000004);
           intVal_ = emptyIntList();
    -      bitField0_ = (bitField0_ & ~0x00000008);
    -      stringVal_ = java.util.Collections.emptyList();
    -      bitField0_ = (bitField0_ & ~0x00000010);
    +      stringVal_ = emptyList(com.google.protobuf.ByteString.class);
           scomplexVal_ = emptyFloatList();
    -      bitField0_ = (bitField0_ & ~0x00000020);
           int64Val_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000040);
           boolVal_ = emptyBooleanList();
    -      bitField0_ = (bitField0_ & ~0x00000080);
           dcomplexVal_ = emptyDoubleList();
    -      bitField0_ = (bitField0_ & ~0x00000100);
           if (resourceHandleValBuilder_ == null) {
             resourceHandleVal_ = java.util.Collections.emptyList();
           } else {
             resourceHandleVal_ = null;
             resourceHandleValBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000200);
    +      bitField0_ = (bitField0_ & ~0x00002000);
           if (variantValBuilder_ == null) {
             variantVal_ = java.util.Collections.emptyList();
           } else {
             variantVal_ = null;
             variantValBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000400);
    +      bitField0_ = (bitField0_ & ~0x00004000);
           uint32Val_ = emptyIntList();
    -      bitField0_ = (bitField0_ & ~0x00000800);
           uint64Val_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00001000);
           float8Val_ = com.google.protobuf.ByteString.EMPTY;
    -
           return this;
         }
     
    @@ -1357,125 +1384,101 @@ public org.tensorflow.proto.TensorProto build() {
         @java.lang.Override
         public org.tensorflow.proto.TensorProto buildPartial() {
           org.tensorflow.proto.TensorProto result = new org.tensorflow.proto.TensorProto(this);
    -      int from_bitField0_ = bitField0_;
    -      result.dtype_ = dtype_;
    -      if (tensorShapeBuilder_ == null) {
    -        result.tensorShape_ = tensorShape_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.TensorProto result) {
    +      if (resourceHandleValBuilder_ == null) {
    +        if (((bitField0_ & 0x00002000) != 0)) {
    +          resourceHandleVal_ = java.util.Collections.unmodifiableList(resourceHandleVal_);
    +          bitField0_ = (bitField0_ & ~0x00002000);
    +        }
    +        result.resourceHandleVal_ = resourceHandleVal_;
           } else {
    -        result.tensorShape_ = tensorShapeBuilder_.build();
    +        result.resourceHandleVal_ = resourceHandleValBuilder_.build();
    +      }
    +      if (variantValBuilder_ == null) {
    +        if (((bitField0_ & 0x00004000) != 0)) {
    +          variantVal_ = java.util.Collections.unmodifiableList(variantVal_);
    +          bitField0_ = (bitField0_ & ~0x00004000);
    +        }
    +        result.variantVal_ = variantVal_;
    +      } else {
    +        result.variantVal_ = variantValBuilder_.build();
           }
    -      result.versionNumber_ = versionNumber_;
    -      result.tensorContent_ = tensorContent_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    +    }
    +
    +    private void buildPartial0(org.tensorflow.proto.TensorProto result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.dtype_ = dtype_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.tensorShape_ = tensorShapeBuilder_ == null
    +            ? tensorShape_
    +            : tensorShapeBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.versionNumber_ = versionNumber_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.tensorContent_ = tensorContent_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
             halfVal_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        result.halfVal_ = halfVal_;
           }
    -      result.halfVal_ = halfVal_;
    -      if (((bitField0_ & 0x00000002) != 0)) {
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
             floatVal_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        result.floatVal_ = floatVal_;
           }
    -      result.floatVal_ = floatVal_;
    -      if (((bitField0_ & 0x00000004) != 0)) {
    +      if (((from_bitField0_ & 0x00000040) != 0)) {
             doubleVal_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000004);
    +        result.doubleVal_ = doubleVal_;
           }
    -      result.doubleVal_ = doubleVal_;
    -      if (((bitField0_ & 0x00000008) != 0)) {
    +      if (((from_bitField0_ & 0x00000080) != 0)) {
             intVal_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000008);
    +        result.intVal_ = intVal_;
           }
    -      result.intVal_ = intVal_;
    -      if (((bitField0_ & 0x00000010) != 0)) {
    -        stringVal_ = java.util.Collections.unmodifiableList(stringVal_);
    -        bitField0_ = (bitField0_ & ~0x00000010);
    +      if (((from_bitField0_ & 0x00000100) != 0)) {
    +        stringVal_.makeImmutable();
    +        result.stringVal_ = stringVal_;
           }
    -      result.stringVal_ = stringVal_;
    -      if (((bitField0_ & 0x00000020) != 0)) {
    +      if (((from_bitField0_ & 0x00000200) != 0)) {
             scomplexVal_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000020);
    +        result.scomplexVal_ = scomplexVal_;
           }
    -      result.scomplexVal_ = scomplexVal_;
    -      if (((bitField0_ & 0x00000040) != 0)) {
    +      if (((from_bitField0_ & 0x00000400) != 0)) {
             int64Val_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000040);
    +        result.int64Val_ = int64Val_;
           }
    -      result.int64Val_ = int64Val_;
    -      if (((bitField0_ & 0x00000080) != 0)) {
    +      if (((from_bitField0_ & 0x00000800) != 0)) {
             boolVal_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000080);
    +        result.boolVal_ = boolVal_;
           }
    -      result.boolVal_ = boolVal_;
    -      if (((bitField0_ & 0x00000100) != 0)) {
    +      if (((from_bitField0_ & 0x00001000) != 0)) {
             dcomplexVal_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000100);
    -      }
    -      result.dcomplexVal_ = dcomplexVal_;
    -      if (resourceHandleValBuilder_ == null) {
    -        if (((bitField0_ & 0x00000200) != 0)) {
    -          resourceHandleVal_ = java.util.Collections.unmodifiableList(resourceHandleVal_);
    -          bitField0_ = (bitField0_ & ~0x00000200);
    -        }
    -        result.resourceHandleVal_ = resourceHandleVal_;
    -      } else {
    -        result.resourceHandleVal_ = resourceHandleValBuilder_.build();
    -      }
    -      if (variantValBuilder_ == null) {
    -        if (((bitField0_ & 0x00000400) != 0)) {
    -          variantVal_ = java.util.Collections.unmodifiableList(variantVal_);
    -          bitField0_ = (bitField0_ & ~0x00000400);
    -        }
    -        result.variantVal_ = variantVal_;
    -      } else {
    -        result.variantVal_ = variantValBuilder_.build();
    +        result.dcomplexVal_ = dcomplexVal_;
           }
    -      if (((bitField0_ & 0x00000800) != 0)) {
    +      if (((from_bitField0_ & 0x00008000) != 0)) {
             uint32Val_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00000800);
    +        result.uint32Val_ = uint32Val_;
           }
    -      result.uint32Val_ = uint32Val_;
    -      if (((bitField0_ & 0x00001000) != 0)) {
    +      if (((from_bitField0_ & 0x00010000) != 0)) {
             uint64Val_.makeImmutable();
    -        bitField0_ = (bitField0_ & ~0x00001000);
    +        result.uint64Val_ = uint64Val_;
           }
    -      result.uint64Val_ = uint64Val_;
    -      result.float8Val_ = float8Val_;
    -      onBuilt();
    -      return result;
    +      if (((from_bitField0_ & 0x00020000) != 0)) {
    +        result.float8Val_ = float8Val_;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    -    }
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.TensorProto) {
    @@ -1503,7 +1506,8 @@ public Builder mergeFrom(org.tensorflow.proto.TensorProto other) {
           if (!other.halfVal_.isEmpty()) {
             if (halfVal_.isEmpty()) {
               halfVal_ = other.halfVal_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          halfVal_.makeImmutable();
    +          bitField0_ |= 0x00000010;
             } else {
               ensureHalfValIsMutable();
               halfVal_.addAll(other.halfVal_);
    @@ -1513,7 +1517,8 @@ public Builder mergeFrom(org.tensorflow.proto.TensorProto other) {
           if (!other.floatVal_.isEmpty()) {
             if (floatVal_.isEmpty()) {
               floatVal_ = other.floatVal_;
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          floatVal_.makeImmutable();
    +          bitField0_ |= 0x00000020;
             } else {
               ensureFloatValIsMutable();
               floatVal_.addAll(other.floatVal_);
    @@ -1523,7 +1528,8 @@ public Builder mergeFrom(org.tensorflow.proto.TensorProto other) {
           if (!other.doubleVal_.isEmpty()) {
             if (doubleVal_.isEmpty()) {
               doubleVal_ = other.doubleVal_;
    -          bitField0_ = (bitField0_ & ~0x00000004);
    +          doubleVal_.makeImmutable();
    +          bitField0_ |= 0x00000040;
             } else {
               ensureDoubleValIsMutable();
               doubleVal_.addAll(other.doubleVal_);
    @@ -1533,7 +1539,8 @@ public Builder mergeFrom(org.tensorflow.proto.TensorProto other) {
           if (!other.intVal_.isEmpty()) {
             if (intVal_.isEmpty()) {
               intVal_ = other.intVal_;
    -          bitField0_ = (bitField0_ & ~0x00000008);
    +          intVal_.makeImmutable();
    +          bitField0_ |= 0x00000080;
             } else {
               ensureIntValIsMutable();
               intVal_.addAll(other.intVal_);
    @@ -1543,7 +1550,8 @@ public Builder mergeFrom(org.tensorflow.proto.TensorProto other) {
           if (!other.stringVal_.isEmpty()) {
             if (stringVal_.isEmpty()) {
               stringVal_ = other.stringVal_;
    -          bitField0_ = (bitField0_ & ~0x00000010);
    +          stringVal_.makeImmutable();
    +          bitField0_ |= 0x00000100;
             } else {
               ensureStringValIsMutable();
               stringVal_.addAll(other.stringVal_);
    @@ -1553,7 +1561,8 @@ public Builder mergeFrom(org.tensorflow.proto.TensorProto other) {
           if (!other.scomplexVal_.isEmpty()) {
             if (scomplexVal_.isEmpty()) {
               scomplexVal_ = other.scomplexVal_;
    -          bitField0_ = (bitField0_ & ~0x00000020);
    +          scomplexVal_.makeImmutable();
    +          bitField0_ |= 0x00000200;
             } else {
               ensureScomplexValIsMutable();
               scomplexVal_.addAll(other.scomplexVal_);
    @@ -1563,7 +1572,8 @@ public Builder mergeFrom(org.tensorflow.proto.TensorProto other) {
           if (!other.int64Val_.isEmpty()) {
             if (int64Val_.isEmpty()) {
               int64Val_ = other.int64Val_;
    -          bitField0_ = (bitField0_ & ~0x00000040);
    +          int64Val_.makeImmutable();
    +          bitField0_ |= 0x00000400;
             } else {
               ensureInt64ValIsMutable();
               int64Val_.addAll(other.int64Val_);
    @@ -1573,7 +1583,8 @@ public Builder mergeFrom(org.tensorflow.proto.TensorProto other) {
           if (!other.boolVal_.isEmpty()) {
             if (boolVal_.isEmpty()) {
               boolVal_ = other.boolVal_;
    -          bitField0_ = (bitField0_ & ~0x00000080);
    +          boolVal_.makeImmutable();
    +          bitField0_ |= 0x00000800;
             } else {
               ensureBoolValIsMutable();
               boolVal_.addAll(other.boolVal_);
    @@ -1583,7 +1594,8 @@ public Builder mergeFrom(org.tensorflow.proto.TensorProto other) {
           if (!other.dcomplexVal_.isEmpty()) {
             if (dcomplexVal_.isEmpty()) {
               dcomplexVal_ = other.dcomplexVal_;
    -          bitField0_ = (bitField0_ & ~0x00000100);
    +          dcomplexVal_.makeImmutable();
    +          bitField0_ |= 0x00001000;
             } else {
               ensureDcomplexValIsMutable();
               dcomplexVal_.addAll(other.dcomplexVal_);
    @@ -1594,7 +1606,7 @@ public Builder mergeFrom(org.tensorflow.proto.TensorProto other) {
             if (!other.resourceHandleVal_.isEmpty()) {
               if (resourceHandleVal_.isEmpty()) {
                 resourceHandleVal_ = other.resourceHandleVal_;
    -            bitField0_ = (bitField0_ & ~0x00000200);
    +            bitField0_ = (bitField0_ & ~0x00002000);
               } else {
                 ensureResourceHandleValIsMutable();
                 resourceHandleVal_.addAll(other.resourceHandleVal_);
    @@ -1607,9 +1619,9 @@ public Builder mergeFrom(org.tensorflow.proto.TensorProto other) {
                 resourceHandleValBuilder_.dispose();
                 resourceHandleValBuilder_ = null;
                 resourceHandleVal_ = other.resourceHandleVal_;
    -            bitField0_ = (bitField0_ & ~0x00000200);
    +            bitField0_ = (bitField0_ & ~0x00002000);
                 resourceHandleValBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getResourceHandleValFieldBuilder() : null;
               } else {
                 resourceHandleValBuilder_.addAllMessages(other.resourceHandleVal_);
    @@ -1620,7 +1632,7 @@ public Builder mergeFrom(org.tensorflow.proto.TensorProto other) {
             if (!other.variantVal_.isEmpty()) {
               if (variantVal_.isEmpty()) {
                 variantVal_ = other.variantVal_;
    -            bitField0_ = (bitField0_ & ~0x00000400);
    +            bitField0_ = (bitField0_ & ~0x00004000);
               } else {
                 ensureVariantValIsMutable();
                 variantVal_.addAll(other.variantVal_);
    @@ -1633,9 +1645,9 @@ public Builder mergeFrom(org.tensorflow.proto.TensorProto other) {
                 variantValBuilder_.dispose();
                 variantValBuilder_ = null;
                 variantVal_ = other.variantVal_;
    -            bitField0_ = (bitField0_ & ~0x00000400);
    +            bitField0_ = (bitField0_ & ~0x00004000);
                 variantValBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getVariantValFieldBuilder() : null;
               } else {
                 variantValBuilder_.addAllMessages(other.variantVal_);
    @@ -1645,7 +1657,8 @@ public Builder mergeFrom(org.tensorflow.proto.TensorProto other) {
           if (!other.uint32Val_.isEmpty()) {
             if (uint32Val_.isEmpty()) {
               uint32Val_ = other.uint32Val_;
    -          bitField0_ = (bitField0_ & ~0x00000800);
    +          uint32Val_.makeImmutable();
    +          bitField0_ |= 0x00008000;
             } else {
               ensureUint32ValIsMutable();
               uint32Val_.addAll(other.uint32Val_);
    @@ -1655,7 +1668,8 @@ public Builder mergeFrom(org.tensorflow.proto.TensorProto other) {
           if (!other.uint64Val_.isEmpty()) {
             if (uint64Val_.isEmpty()) {
               uint64Val_ = other.uint64Val_;
    -          bitField0_ = (bitField0_ & ~0x00001000);
    +          uint64Val_.makeImmutable();
    +          bitField0_ |= 0x00010000;
             } else {
               ensureUint64ValIsMutable();
               uint64Val_.addAll(other.uint64Val_);
    @@ -1693,24 +1707,24 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   dtype_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 18: {
                   input.readMessage(
                       getTensorShapeFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 24: {
                   versionNumber_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 24
                 case 34: {
                   tensorContent_ = input.readBytes();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 34
                 case 45: {
    @@ -1722,7 +1736,8 @@ public Builder mergeFrom(
                 case 42: {
                   int length = input.readRawVarint32();
                   int limit = input.pushLimit(length);
    -              ensureFloatValIsMutable();
    +              int alloc = length > 4096 ? 4096 : length;
    +              ensureFloatValIsMutable(alloc / 4);
                   while (input.getBytesUntilLimit() > 0) {
                     floatVal_.addFloat(input.readFloat());
                   }
    @@ -1738,7 +1753,8 @@ public Builder mergeFrom(
                 case 50: {
                   int length = input.readRawVarint32();
                   int limit = input.pushLimit(length);
    -              ensureDoubleValIsMutable();
    +              int alloc = length > 4096 ? 4096 : length;
    +              ensureDoubleValIsMutable(alloc / 8);
                   while (input.getBytesUntilLimit() > 0) {
                     doubleVal_.addDouble(input.readDouble());
                   }
    @@ -1776,7 +1792,8 @@ public Builder mergeFrom(
                 case 74: {
                   int length = input.readRawVarint32();
                   int limit = input.pushLimit(length);
    -              ensureScomplexValIsMutable();
    +              int alloc = length > 4096 ? 4096 : length;
    +              ensureScomplexValIsMutable(alloc / 4);
                   while (input.getBytesUntilLimit() > 0) {
                     scomplexVal_.addFloat(input.readFloat());
                   }
    @@ -1808,7 +1825,8 @@ public Builder mergeFrom(
                 case 90: {
                   int length = input.readRawVarint32();
                   int limit = input.pushLimit(length);
    -              ensureBoolValIsMutable();
    +              int alloc = length > 4096 ? 4096 : length;
    +              ensureBoolValIsMutable(alloc / 1);
                   while (input.getBytesUntilLimit() > 0) {
                     boolVal_.addBoolean(input.readBool());
                   }
    @@ -1824,7 +1842,8 @@ public Builder mergeFrom(
                 case 98: {
                   int length = input.readRawVarint32();
                   int limit = input.pushLimit(length);
    -              ensureDcomplexValIsMutable();
    +              int alloc = length > 4096 ? 4096 : length;
    +              ensureDcomplexValIsMutable(alloc / 8);
                   while (input.getBytesUntilLimit() > 0) {
                     dcomplexVal_.addDouble(input.readDouble());
                   }
    @@ -1907,7 +1926,7 @@ public Builder mergeFrom(
                 } // case 138
                 case 146: {
                   float8Val_ = input.readBytes();
    -
    +              bitField0_ |= 0x00020000;
                   break;
                 } // case 146
                 default: {
    @@ -1929,6 +1948,10 @@ public Builder mergeFrom(
     
         private int dtype_ = 0;
         /**
    +     * 
    +     * Data type of the tensor.
    +     * 
    + * * .tensorflow.DataType dtype = 1; * @return The enum numeric value on the wire for dtype. */ @@ -1936,27 +1959,38 @@ public Builder mergeFrom( return dtype_; } /** + *
    +     * Data type of the tensor.
    +     * 
    + * * .tensorflow.DataType dtype = 1; * @param value The enum numeric value on the wire for dtype to set. * @return This builder for chaining. */ public Builder setDtypeValue(int value) { - dtype_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } /** + *
    +     * Data type of the tensor.
    +     * 
    + * * .tensorflow.DataType dtype = 1; * @return The dtype. */ @java.lang.Override public org.tensorflow.proto.DataType getDtype() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_); + org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_); return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result; } /** + *
    +     * Data type of the tensor.
    +     * 
    + * * .tensorflow.DataType dtype = 1; * @param value The dtype to set. * @return This builder for chaining. @@ -1965,24 +1999,28 @@ public Builder setDtype(org.tensorflow.proto.DataType value) { if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00000001; dtype_ = value.getNumber(); onChanged(); return this; } /** + *
    +     * Data type of the tensor.
    +     * 
    + * * .tensorflow.DataType dtype = 1; * @return This builder for chaining. */ public Builder clearDtype() { - + bitField0_ = (bitField0_ & ~0x00000001); dtype_ = 0; onChanged(); return this; } private org.tensorflow.proto.TensorShapeProto tensorShape_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> tensorShapeBuilder_; /** *
    @@ -1993,7 +2031,7 @@ public Builder clearDtype() {
          * @return Whether the tensorShape field is set.
          */
         public boolean hasTensorShape() {
    -      return tensorShapeBuilder_ != null || tensorShape_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -2023,11 +2061,11 @@ public Builder setTensorShape(org.tensorflow.proto.TensorShapeProto value) {
               throw new NullPointerException();
             }
             tensorShape_ = value;
    -        onChanged();
           } else {
             tensorShapeBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -2041,11 +2079,11 @@ public Builder setTensorShape(
             org.tensorflow.proto.TensorShapeProto.Builder builderForValue) {
           if (tensorShapeBuilder_ == null) {
             tensorShape_ = builderForValue.build();
    -        onChanged();
           } else {
             tensorShapeBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -2057,17 +2095,20 @@ public Builder setTensorShape(
          */
         public Builder mergeTensorShape(org.tensorflow.proto.TensorShapeProto value) {
           if (tensorShapeBuilder_ == null) {
    -        if (tensorShape_ != null) {
    -          tensorShape_ =
    -            org.tensorflow.proto.TensorShapeProto.newBuilder(tensorShape_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000002) != 0) &&
    +          tensorShape_ != null &&
    +          tensorShape_ != org.tensorflow.proto.TensorShapeProto.getDefaultInstance()) {
    +          getTensorShapeBuilder().mergeFrom(value);
             } else {
               tensorShape_ = value;
             }
    -        onChanged();
           } else {
             tensorShapeBuilder_.mergeFrom(value);
           }
    -
    +      if (tensorShape_ != null) {
    +        bitField0_ |= 0x00000002;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -2078,14 +2119,13 @@ public Builder mergeTensorShape(org.tensorflow.proto.TensorShapeProto value) {
          * .tensorflow.TensorShapeProto tensor_shape = 2;
          */
         public Builder clearTensorShape() {
    -      if (tensorShapeBuilder_ == null) {
    -        tensorShape_ = null;
    -        onChanged();
    -      } else {
    -        tensorShape_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      tensorShape_ = null;
    +      if (tensorShapeBuilder_ != null) {
    +        tensorShapeBuilder_.dispose();
             tensorShapeBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -2096,7 +2136,7 @@ public Builder clearTensorShape() {
          * .tensorflow.TensorShapeProto tensor_shape = 2;
          */
         public org.tensorflow.proto.TensorShapeProto.Builder getTensorShapeBuilder() {
    -      
    +      bitField0_ |= 0x00000002;
           onChanged();
           return getTensorShapeFieldBuilder().getBuilder();
         }
    @@ -2122,11 +2162,11 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getTensorShapeOrBuilder()
          *
          * .tensorflow.TensorShapeProto tensor_shape = 2;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> 
             getTensorShapeFieldBuilder() {
           if (tensorShapeBuilder_ == null) {
    -        tensorShapeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        tensorShapeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>(
                     getTensorShape(),
                     getParentForChildren(),
    @@ -2140,6 +2180,7 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getTensorShapeOrBuilder()
         /**
          * 
          * Version number.
    +     *
          * In version 0, if the "repeated xxx" representations contain only one
          * element, that element is repeated to fill the shape.  This makes it easy
          * to represent a constant Tensor with a single value.
    @@ -2155,6 +2196,7 @@ public int getVersionNumber() {
         /**
          * 
          * Version number.
    +     *
          * In version 0, if the "repeated xxx" representations contain only one
          * element, that element is repeated to fill the shape.  This makes it easy
          * to represent a constant Tensor with a single value.
    @@ -2165,14 +2207,16 @@ public int getVersionNumber() {
          * @return This builder for chaining.
          */
         public Builder setVersionNumber(int value) {
    -      
    +
           versionNumber_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
         /**
          * 
          * Version number.
    +     *
          * In version 0, if the "repeated xxx" representations contain only one
          * element, that element is repeated to fill the shape.  This makes it easy
          * to represent a constant Tensor with a single value.
    @@ -2182,7 +2226,7 @@ public Builder setVersionNumber(int value) {
          * @return This builder for chaining.
          */
         public Builder clearVersionNumber() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           versionNumber_ = 0;
           onChanged();
           return this;
    @@ -2219,11 +2263,9 @@ public com.google.protobuf.ByteString getTensorContent() {
          * @return This builder for chaining.
          */
         public Builder setTensorContent(com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           tensorContent_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -2240,7 +2282,7 @@ public Builder setTensorContent(com.google.protobuf.ByteString value) {
          * @return This builder for chaining.
          */
         public Builder clearTensorContent() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           tensorContent_ = getDefaultInstance().getTensorContent();
           onChanged();
           return this;
    @@ -2248,10 +2290,10 @@ public Builder clearTensorContent() {
     
         private com.google.protobuf.Internal.IntList halfVal_ = emptyIntList();
         private void ensureHalfValIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    -        halfVal_ = mutableCopy(halfVal_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      if (!halfVal_.isModifiable()) {
    +        halfVal_ = makeMutableCopy(halfVal_);
    +      }
    +      bitField0_ |= 0x00000010;
         }
         /**
          * 
    @@ -2264,8 +2306,8 @@ private void ensureHalfValIsMutable() {
          */
         public java.util.List
             getHalfValList() {
    -      return ((bitField0_ & 0x00000001) != 0) ?
    -               java.util.Collections.unmodifiableList(halfVal_) : halfVal_;
    +      halfVal_.makeImmutable();
    +      return halfVal_;
         }
         /**
          * 
    @@ -2305,8 +2347,10 @@ public int getHalfVal(int index) {
          */
         public Builder setHalfVal(
             int index, int value) {
    +
           ensureHalfValIsMutable();
           halfVal_.setInt(index, value);
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -2321,8 +2365,10 @@ public Builder setHalfVal(
          * @return This builder for chaining.
          */
         public Builder addHalfVal(int value) {
    +
           ensureHalfValIsMutable();
           halfVal_.addInt(value);
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -2341,6 +2387,7 @@ public Builder addAllHalfVal(
           ensureHalfValIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, halfVal_);
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -2355,17 +2402,23 @@ public Builder addAllHalfVal(
          */
         public Builder clearHalfVal() {
           halfVal_ = emptyIntList();
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000010);
           onChanged();
           return this;
         }
     
         private com.google.protobuf.Internal.FloatList floatVal_ = emptyFloatList();
         private void ensureFloatValIsMutable() {
    -      if (!((bitField0_ & 0x00000002) != 0)) {
    -        floatVal_ = mutableCopy(floatVal_);
    -        bitField0_ |= 0x00000002;
    -       }
    +      if (!floatVal_.isModifiable()) {
    +        floatVal_ = makeMutableCopy(floatVal_);
    +      }
    +      bitField0_ |= 0x00000020;
    +    }
    +    private void ensureFloatValIsMutable(int capacity) {
    +      if (!floatVal_.isModifiable()) {
    +        floatVal_ = makeMutableCopy(floatVal_, capacity);
    +      }
    +      bitField0_ |= 0x00000020;
         }
         /**
          * 
    @@ -2377,8 +2430,8 @@ private void ensureFloatValIsMutable() {
          */
         public java.util.List
             getFloatValList() {
    -      return ((bitField0_ & 0x00000002) != 0) ?
    -               java.util.Collections.unmodifiableList(floatVal_) : floatVal_;
    +      floatVal_.makeImmutable();
    +      return floatVal_;
         }
         /**
          * 
    @@ -2415,8 +2468,10 @@ public float getFloatVal(int index) {
          */
         public Builder setFloatVal(
             int index, float value) {
    +
           ensureFloatValIsMutable();
           floatVal_.setFloat(index, value);
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -2430,8 +2485,10 @@ public Builder setFloatVal(
          * @return This builder for chaining.
          */
         public Builder addFloatVal(float value) {
    +
           ensureFloatValIsMutable();
           floatVal_.addFloat(value);
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -2449,6 +2506,7 @@ public Builder addAllFloatVal(
           ensureFloatValIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, floatVal_);
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -2462,17 +2520,23 @@ public Builder addAllFloatVal(
          */
         public Builder clearFloatVal() {
           floatVal_ = emptyFloatList();
    -      bitField0_ = (bitField0_ & ~0x00000002);
    +      bitField0_ = (bitField0_ & ~0x00000020);
           onChanged();
           return this;
         }
     
         private com.google.protobuf.Internal.DoubleList doubleVal_ = emptyDoubleList();
         private void ensureDoubleValIsMutable() {
    -      if (!((bitField0_ & 0x00000004) != 0)) {
    -        doubleVal_ = mutableCopy(doubleVal_);
    -        bitField0_ |= 0x00000004;
    -       }
    +      if (!doubleVal_.isModifiable()) {
    +        doubleVal_ = makeMutableCopy(doubleVal_);
    +      }
    +      bitField0_ |= 0x00000040;
    +    }
    +    private void ensureDoubleValIsMutable(int capacity) {
    +      if (!doubleVal_.isModifiable()) {
    +        doubleVal_ = makeMutableCopy(doubleVal_, capacity);
    +      }
    +      bitField0_ |= 0x00000040;
         }
         /**
          * 
    @@ -2484,8 +2548,8 @@ private void ensureDoubleValIsMutable() {
          */
         public java.util.List
             getDoubleValList() {
    -      return ((bitField0_ & 0x00000004) != 0) ?
    -               java.util.Collections.unmodifiableList(doubleVal_) : doubleVal_;
    +      doubleVal_.makeImmutable();
    +      return doubleVal_;
         }
         /**
          * 
    @@ -2522,8 +2586,10 @@ public double getDoubleVal(int index) {
          */
         public Builder setDoubleVal(
             int index, double value) {
    +
           ensureDoubleValIsMutable();
           doubleVal_.setDouble(index, value);
    +      bitField0_ |= 0x00000040;
           onChanged();
           return this;
         }
    @@ -2537,8 +2603,10 @@ public Builder setDoubleVal(
          * @return This builder for chaining.
          */
         public Builder addDoubleVal(double value) {
    +
           ensureDoubleValIsMutable();
           doubleVal_.addDouble(value);
    +      bitField0_ |= 0x00000040;
           onChanged();
           return this;
         }
    @@ -2556,6 +2624,7 @@ public Builder addAllDoubleVal(
           ensureDoubleValIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, doubleVal_);
    +      bitField0_ |= 0x00000040;
           onChanged();
           return this;
         }
    @@ -2569,17 +2638,17 @@ public Builder addAllDoubleVal(
          */
         public Builder clearDoubleVal() {
           doubleVal_ = emptyDoubleList();
    -      bitField0_ = (bitField0_ & ~0x00000004);
    +      bitField0_ = (bitField0_ & ~0x00000040);
           onChanged();
           return this;
         }
     
         private com.google.protobuf.Internal.IntList intVal_ = emptyIntList();
         private void ensureIntValIsMutable() {
    -      if (!((bitField0_ & 0x00000008) != 0)) {
    -        intVal_ = mutableCopy(intVal_);
    -        bitField0_ |= 0x00000008;
    -       }
    +      if (!intVal_.isModifiable()) {
    +        intVal_ = makeMutableCopy(intVal_);
    +      }
    +      bitField0_ |= 0x00000080;
         }
         /**
          * 
    @@ -2591,8 +2660,8 @@ private void ensureIntValIsMutable() {
          */
         public java.util.List
             getIntValList() {
    -      return ((bitField0_ & 0x00000008) != 0) ?
    -               java.util.Collections.unmodifiableList(intVal_) : intVal_;
    +      intVal_.makeImmutable();
    +      return intVal_;
         }
         /**
          * 
    @@ -2629,8 +2698,10 @@ public int getIntVal(int index) {
          */
         public Builder setIntVal(
             int index, int value) {
    +
           ensureIntValIsMutable();
           intVal_.setInt(index, value);
    +      bitField0_ |= 0x00000080;
           onChanged();
           return this;
         }
    @@ -2644,8 +2715,10 @@ public Builder setIntVal(
          * @return This builder for chaining.
          */
         public Builder addIntVal(int value) {
    +
           ensureIntValIsMutable();
           intVal_.addInt(value);
    +      bitField0_ |= 0x00000080;
           onChanged();
           return this;
         }
    @@ -2663,6 +2736,7 @@ public Builder addAllIntVal(
           ensureIntValIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, intVal_);
    +      bitField0_ |= 0x00000080;
           onChanged();
           return this;
         }
    @@ -2676,17 +2750,17 @@ public Builder addAllIntVal(
          */
         public Builder clearIntVal() {
           intVal_ = emptyIntList();
    -      bitField0_ = (bitField0_ & ~0x00000008);
    +      bitField0_ = (bitField0_ & ~0x00000080);
           onChanged();
           return this;
         }
     
    -    private java.util.List stringVal_ = java.util.Collections.emptyList();
    +    private com.google.protobuf.Internal.ProtobufList stringVal_ = emptyList(com.google.protobuf.ByteString.class);
         private void ensureStringValIsMutable() {
    -      if (!((bitField0_ & 0x00000010) != 0)) {
    -        stringVal_ = new java.util.ArrayList(stringVal_);
    -        bitField0_ |= 0x00000010;
    -       }
    +      if (!stringVal_.isModifiable()) {
    +        stringVal_ = makeMutableCopy(stringVal_);
    +      }
    +      bitField0_ |= 0x00000100;
         }
         /**
          * 
    @@ -2698,8 +2772,8 @@ private void ensureStringValIsMutable() {
          */
         public java.util.List
             getStringValList() {
    -      return ((bitField0_ & 0x00000010) != 0) ?
    -               java.util.Collections.unmodifiableList(stringVal_) : stringVal_;
    +      stringVal_.makeImmutable();
    +      return stringVal_;
         }
         /**
          * 
    @@ -2736,11 +2810,10 @@ public com.google.protobuf.ByteString getStringVal(int index) {
          */
         public Builder setStringVal(
             int index, com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureStringValIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureStringValIsMutable();
           stringVal_.set(index, value);
    +      bitField0_ |= 0x00000100;
           onChanged();
           return this;
         }
    @@ -2754,11 +2827,10 @@ public Builder setStringVal(
          * @return This builder for chaining.
          */
         public Builder addStringVal(com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureStringValIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureStringValIsMutable();
           stringVal_.add(value);
    +      bitField0_ |= 0x00000100;
           onChanged();
           return this;
         }
    @@ -2776,6 +2848,7 @@ public Builder addAllStringVal(
           ensureStringValIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, stringVal_);
    +      bitField0_ |= 0x00000100;
           onChanged();
           return this;
         }
    @@ -2788,18 +2861,24 @@ public Builder addAllStringVal(
          * @return This builder for chaining.
          */
         public Builder clearStringVal() {
    -      stringVal_ = java.util.Collections.emptyList();
    -      bitField0_ = (bitField0_ & ~0x00000010);
    +      stringVal_ = emptyList(com.google.protobuf.ByteString.class);
    +      bitField0_ = (bitField0_ & ~0x00000100);
           onChanged();
           return this;
         }
     
         private com.google.protobuf.Internal.FloatList scomplexVal_ = emptyFloatList();
         private void ensureScomplexValIsMutable() {
    -      if (!((bitField0_ & 0x00000020) != 0)) {
    -        scomplexVal_ = mutableCopy(scomplexVal_);
    -        bitField0_ |= 0x00000020;
    -       }
    +      if (!scomplexVal_.isModifiable()) {
    +        scomplexVal_ = makeMutableCopy(scomplexVal_);
    +      }
    +      bitField0_ |= 0x00000200;
    +    }
    +    private void ensureScomplexValIsMutable(int capacity) {
    +      if (!scomplexVal_.isModifiable()) {
    +        scomplexVal_ = makeMutableCopy(scomplexVal_, capacity);
    +      }
    +      bitField0_ |= 0x00000200;
         }
         /**
          * 
    @@ -2812,8 +2891,8 @@ private void ensureScomplexValIsMutable() {
          */
         public java.util.List
             getScomplexValList() {
    -      return ((bitField0_ & 0x00000020) != 0) ?
    -               java.util.Collections.unmodifiableList(scomplexVal_) : scomplexVal_;
    +      scomplexVal_.makeImmutable();
    +      return scomplexVal_;
         }
         /**
          * 
    @@ -2853,8 +2932,10 @@ public float getScomplexVal(int index) {
          */
         public Builder setScomplexVal(
             int index, float value) {
    +
           ensureScomplexValIsMutable();
           scomplexVal_.setFloat(index, value);
    +      bitField0_ |= 0x00000200;
           onChanged();
           return this;
         }
    @@ -2869,8 +2950,10 @@ public Builder setScomplexVal(
          * @return This builder for chaining.
          */
         public Builder addScomplexVal(float value) {
    +
           ensureScomplexValIsMutable();
           scomplexVal_.addFloat(value);
    +      bitField0_ |= 0x00000200;
           onChanged();
           return this;
         }
    @@ -2889,6 +2972,7 @@ public Builder addAllScomplexVal(
           ensureScomplexValIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, scomplexVal_);
    +      bitField0_ |= 0x00000200;
           onChanged();
           return this;
         }
    @@ -2903,17 +2987,17 @@ public Builder addAllScomplexVal(
          */
         public Builder clearScomplexVal() {
           scomplexVal_ = emptyFloatList();
    -      bitField0_ = (bitField0_ & ~0x00000020);
    +      bitField0_ = (bitField0_ & ~0x00000200);
           onChanged();
           return this;
         }
     
         private com.google.protobuf.Internal.LongList int64Val_ = emptyLongList();
         private void ensureInt64ValIsMutable() {
    -      if (!((bitField0_ & 0x00000040) != 0)) {
    -        int64Val_ = mutableCopy(int64Val_);
    -        bitField0_ |= 0x00000040;
    -       }
    +      if (!int64Val_.isModifiable()) {
    +        int64Val_ = makeMutableCopy(int64Val_);
    +      }
    +      bitField0_ |= 0x00000400;
         }
         /**
          * 
    @@ -2925,8 +3009,8 @@ private void ensureInt64ValIsMutable() {
          */
         public java.util.List
             getInt64ValList() {
    -      return ((bitField0_ & 0x00000040) != 0) ?
    -               java.util.Collections.unmodifiableList(int64Val_) : int64Val_;
    +      int64Val_.makeImmutable();
    +      return int64Val_;
         }
         /**
          * 
    @@ -2963,8 +3047,10 @@ public long getInt64Val(int index) {
          */
         public Builder setInt64Val(
             int index, long value) {
    +
           ensureInt64ValIsMutable();
           int64Val_.setLong(index, value);
    +      bitField0_ |= 0x00000400;
           onChanged();
           return this;
         }
    @@ -2978,8 +3064,10 @@ public Builder setInt64Val(
          * @return This builder for chaining.
          */
         public Builder addInt64Val(long value) {
    +
           ensureInt64ValIsMutable();
           int64Val_.addLong(value);
    +      bitField0_ |= 0x00000400;
           onChanged();
           return this;
         }
    @@ -2997,6 +3085,7 @@ public Builder addAllInt64Val(
           ensureInt64ValIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, int64Val_);
    +      bitField0_ |= 0x00000400;
           onChanged();
           return this;
         }
    @@ -3010,17 +3099,23 @@ public Builder addAllInt64Val(
          */
         public Builder clearInt64Val() {
           int64Val_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00000040);
    +      bitField0_ = (bitField0_ & ~0x00000400);
           onChanged();
           return this;
         }
     
         private com.google.protobuf.Internal.BooleanList boolVal_ = emptyBooleanList();
         private void ensureBoolValIsMutable() {
    -      if (!((bitField0_ & 0x00000080) != 0)) {
    -        boolVal_ = mutableCopy(boolVal_);
    -        bitField0_ |= 0x00000080;
    -       }
    +      if (!boolVal_.isModifiable()) {
    +        boolVal_ = makeMutableCopy(boolVal_);
    +      }
    +      bitField0_ |= 0x00000800;
    +    }
    +    private void ensureBoolValIsMutable(int capacity) {
    +      if (!boolVal_.isModifiable()) {
    +        boolVal_ = makeMutableCopy(boolVal_, capacity);
    +      }
    +      bitField0_ |= 0x00000800;
         }
         /**
          * 
    @@ -3032,8 +3127,8 @@ private void ensureBoolValIsMutable() {
          */
         public java.util.List
             getBoolValList() {
    -      return ((bitField0_ & 0x00000080) != 0) ?
    -               java.util.Collections.unmodifiableList(boolVal_) : boolVal_;
    +      boolVal_.makeImmutable();
    +      return boolVal_;
         }
         /**
          * 
    @@ -3070,8 +3165,10 @@ public boolean getBoolVal(int index) {
          */
         public Builder setBoolVal(
             int index, boolean value) {
    +
           ensureBoolValIsMutable();
           boolVal_.setBoolean(index, value);
    +      bitField0_ |= 0x00000800;
           onChanged();
           return this;
         }
    @@ -3085,8 +3182,10 @@ public Builder setBoolVal(
          * @return This builder for chaining.
          */
         public Builder addBoolVal(boolean value) {
    +
           ensureBoolValIsMutable();
           boolVal_.addBoolean(value);
    +      bitField0_ |= 0x00000800;
           onChanged();
           return this;
         }
    @@ -3104,6 +3203,7 @@ public Builder addAllBoolVal(
           ensureBoolValIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, boolVal_);
    +      bitField0_ |= 0x00000800;
           onChanged();
           return this;
         }
    @@ -3117,17 +3217,23 @@ public Builder addAllBoolVal(
          */
         public Builder clearBoolVal() {
           boolVal_ = emptyBooleanList();
    -      bitField0_ = (bitField0_ & ~0x00000080);
    +      bitField0_ = (bitField0_ & ~0x00000800);
           onChanged();
           return this;
         }
     
         private com.google.protobuf.Internal.DoubleList dcomplexVal_ = emptyDoubleList();
         private void ensureDcomplexValIsMutable() {
    -      if (!((bitField0_ & 0x00000100) != 0)) {
    -        dcomplexVal_ = mutableCopy(dcomplexVal_);
    -        bitField0_ |= 0x00000100;
    -       }
    +      if (!dcomplexVal_.isModifiable()) {
    +        dcomplexVal_ = makeMutableCopy(dcomplexVal_);
    +      }
    +      bitField0_ |= 0x00001000;
    +    }
    +    private void ensureDcomplexValIsMutable(int capacity) {
    +      if (!dcomplexVal_.isModifiable()) {
    +        dcomplexVal_ = makeMutableCopy(dcomplexVal_, capacity);
    +      }
    +      bitField0_ |= 0x00001000;
         }
         /**
          * 
    @@ -3140,8 +3246,8 @@ private void ensureDcomplexValIsMutable() {
          */
         public java.util.List
             getDcomplexValList() {
    -      return ((bitField0_ & 0x00000100) != 0) ?
    -               java.util.Collections.unmodifiableList(dcomplexVal_) : dcomplexVal_;
    +      dcomplexVal_.makeImmutable();
    +      return dcomplexVal_;
         }
         /**
          * 
    @@ -3181,8 +3287,10 @@ public double getDcomplexVal(int index) {
          */
         public Builder setDcomplexVal(
             int index, double value) {
    +
           ensureDcomplexValIsMutable();
           dcomplexVal_.setDouble(index, value);
    +      bitField0_ |= 0x00001000;
           onChanged();
           return this;
         }
    @@ -3197,8 +3305,10 @@ public Builder setDcomplexVal(
          * @return This builder for chaining.
          */
         public Builder addDcomplexVal(double value) {
    +
           ensureDcomplexValIsMutable();
           dcomplexVal_.addDouble(value);
    +      bitField0_ |= 0x00001000;
           onChanged();
           return this;
         }
    @@ -3217,6 +3327,7 @@ public Builder addAllDcomplexVal(
           ensureDcomplexValIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, dcomplexVal_);
    +      bitField0_ |= 0x00001000;
           onChanged();
           return this;
         }
    @@ -3231,7 +3342,7 @@ public Builder addAllDcomplexVal(
          */
         public Builder clearDcomplexVal() {
           dcomplexVal_ = emptyDoubleList();
    -      bitField0_ = (bitField0_ & ~0x00000100);
    +      bitField0_ = (bitField0_ & ~0x00001000);
           onChanged();
           return this;
         }
    @@ -3239,13 +3350,13 @@ public Builder clearDcomplexVal() {
         private java.util.List resourceHandleVal_ =
           java.util.Collections.emptyList();
         private void ensureResourceHandleValIsMutable() {
    -      if (!((bitField0_ & 0x00000200) != 0)) {
    +      if (!((bitField0_ & 0x00002000) != 0)) {
             resourceHandleVal_ = new java.util.ArrayList(resourceHandleVal_);
    -        bitField0_ |= 0x00000200;
    +        bitField0_ |= 0x00002000;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ResourceHandleProto, org.tensorflow.proto.ResourceHandleProto.Builder, org.tensorflow.proto.ResourceHandleProtoOrBuilder> resourceHandleValBuilder_;
     
         /**
    @@ -3435,7 +3546,7 @@ public Builder addAllResourceHandleVal(
         public Builder clearResourceHandleVal() {
           if (resourceHandleValBuilder_ == null) {
             resourceHandleVal_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000200);
    +        bitField0_ = (bitField0_ & ~0x00002000);
             onChanged();
           } else {
             resourceHandleValBuilder_.clear();
    @@ -3533,14 +3644,14 @@ public org.tensorflow.proto.ResourceHandleProto.Builder addResourceHandleValBuil
              getResourceHandleValBuilderList() {
           return getResourceHandleValFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ResourceHandleProto, org.tensorflow.proto.ResourceHandleProto.Builder, org.tensorflow.proto.ResourceHandleProtoOrBuilder> 
             getResourceHandleValFieldBuilder() {
           if (resourceHandleValBuilder_ == null) {
    -        resourceHandleValBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        resourceHandleValBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.ResourceHandleProto, org.tensorflow.proto.ResourceHandleProto.Builder, org.tensorflow.proto.ResourceHandleProtoOrBuilder>(
                     resourceHandleVal_,
    -                ((bitField0_ & 0x00000200) != 0),
    +                ((bitField0_ & 0x00002000) != 0),
                     getParentForChildren(),
                     isClean());
             resourceHandleVal_ = null;
    @@ -3551,13 +3662,13 @@ public org.tensorflow.proto.ResourceHandleProto.Builder addResourceHandleValBuil
         private java.util.List variantVal_ =
           java.util.Collections.emptyList();
         private void ensureVariantValIsMutable() {
    -      if (!((bitField0_ & 0x00000400) != 0)) {
    +      if (!((bitField0_ & 0x00004000) != 0)) {
             variantVal_ = new java.util.ArrayList(variantVal_);
    -        bitField0_ |= 0x00000400;
    +        bitField0_ |= 0x00004000;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.VariantTensorDataProto, org.tensorflow.proto.VariantTensorDataProto.Builder, org.tensorflow.proto.VariantTensorDataProtoOrBuilder> variantValBuilder_;
     
         /**
    @@ -3747,7 +3858,7 @@ public Builder addAllVariantVal(
         public Builder clearVariantVal() {
           if (variantValBuilder_ == null) {
             variantVal_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000400);
    +        bitField0_ = (bitField0_ & ~0x00004000);
             onChanged();
           } else {
             variantValBuilder_.clear();
    @@ -3845,14 +3956,14 @@ public org.tensorflow.proto.VariantTensorDataProto.Builder addVariantValBuilder(
              getVariantValBuilderList() {
           return getVariantValFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.VariantTensorDataProto, org.tensorflow.proto.VariantTensorDataProto.Builder, org.tensorflow.proto.VariantTensorDataProtoOrBuilder> 
             getVariantValFieldBuilder() {
           if (variantValBuilder_ == null) {
    -        variantValBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        variantValBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.VariantTensorDataProto, org.tensorflow.proto.VariantTensorDataProto.Builder, org.tensorflow.proto.VariantTensorDataProtoOrBuilder>(
                     variantVal_,
    -                ((bitField0_ & 0x00000400) != 0),
    +                ((bitField0_ & 0x00004000) != 0),
                     getParentForChildren(),
                     isClean());
             variantVal_ = null;
    @@ -3862,10 +3973,10 @@ public org.tensorflow.proto.VariantTensorDataProto.Builder addVariantValBuilder(
     
         private com.google.protobuf.Internal.IntList uint32Val_ = emptyIntList();
         private void ensureUint32ValIsMutable() {
    -      if (!((bitField0_ & 0x00000800) != 0)) {
    -        uint32Val_ = mutableCopy(uint32Val_);
    -        bitField0_ |= 0x00000800;
    -       }
    +      if (!uint32Val_.isModifiable()) {
    +        uint32Val_ = makeMutableCopy(uint32Val_);
    +      }
    +      bitField0_ |= 0x00008000;
         }
         /**
          * 
    @@ -3877,8 +3988,8 @@ private void ensureUint32ValIsMutable() {
          */
         public java.util.List
             getUint32ValList() {
    -      return ((bitField0_ & 0x00000800) != 0) ?
    -               java.util.Collections.unmodifiableList(uint32Val_) : uint32Val_;
    +      uint32Val_.makeImmutable();
    +      return uint32Val_;
         }
         /**
          * 
    @@ -3915,8 +4026,10 @@ public int getUint32Val(int index) {
          */
         public Builder setUint32Val(
             int index, int value) {
    +
           ensureUint32ValIsMutable();
           uint32Val_.setInt(index, value);
    +      bitField0_ |= 0x00008000;
           onChanged();
           return this;
         }
    @@ -3930,8 +4043,10 @@ public Builder setUint32Val(
          * @return This builder for chaining.
          */
         public Builder addUint32Val(int value) {
    +
           ensureUint32ValIsMutable();
           uint32Val_.addInt(value);
    +      bitField0_ |= 0x00008000;
           onChanged();
           return this;
         }
    @@ -3949,6 +4064,7 @@ public Builder addAllUint32Val(
           ensureUint32ValIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, uint32Val_);
    +      bitField0_ |= 0x00008000;
           onChanged();
           return this;
         }
    @@ -3962,17 +4078,17 @@ public Builder addAllUint32Val(
          */
         public Builder clearUint32Val() {
           uint32Val_ = emptyIntList();
    -      bitField0_ = (bitField0_ & ~0x00000800);
    +      bitField0_ = (bitField0_ & ~0x00008000);
           onChanged();
           return this;
         }
     
         private com.google.protobuf.Internal.LongList uint64Val_ = emptyLongList();
         private void ensureUint64ValIsMutable() {
    -      if (!((bitField0_ & 0x00001000) != 0)) {
    -        uint64Val_ = mutableCopy(uint64Val_);
    -        bitField0_ |= 0x00001000;
    -       }
    +      if (!uint64Val_.isModifiable()) {
    +        uint64Val_ = makeMutableCopy(uint64Val_);
    +      }
    +      bitField0_ |= 0x00010000;
         }
         /**
          * 
    @@ -3984,8 +4100,8 @@ private void ensureUint64ValIsMutable() {
          */
         public java.util.List
             getUint64ValList() {
    -      return ((bitField0_ & 0x00001000) != 0) ?
    -               java.util.Collections.unmodifiableList(uint64Val_) : uint64Val_;
    +      uint64Val_.makeImmutable();
    +      return uint64Val_;
         }
         /**
          * 
    @@ -4022,8 +4138,10 @@ public long getUint64Val(int index) {
          */
         public Builder setUint64Val(
             int index, long value) {
    +
           ensureUint64ValIsMutable();
           uint64Val_.setLong(index, value);
    +      bitField0_ |= 0x00010000;
           onChanged();
           return this;
         }
    @@ -4037,8 +4155,10 @@ public Builder setUint64Val(
          * @return This builder for chaining.
          */
         public Builder addUint64Val(long value) {
    +
           ensureUint64ValIsMutable();
           uint64Val_.addLong(value);
    +      bitField0_ |= 0x00010000;
           onChanged();
           return this;
         }
    @@ -4056,6 +4176,7 @@ public Builder addAllUint64Val(
           ensureUint64ValIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, uint64Val_);
    +      bitField0_ |= 0x00010000;
           onChanged();
           return this;
         }
    @@ -4069,7 +4190,7 @@ public Builder addAllUint64Val(
          */
         public Builder clearUint64Val() {
           uint64Val_ = emptyLongList();
    -      bitField0_ = (bitField0_ & ~0x00001000);
    +      bitField0_ = (bitField0_ & ~0x00010000);
           onChanged();
           return this;
         }
    @@ -4099,11 +4220,9 @@ public com.google.protobuf.ByteString getFloat8Val() {
          * @return This builder for chaining.
          */
         public Builder setFloat8Val(com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           float8Val_ = value;
    +      bitField0_ |= 0x00020000;
           onChanged();
           return this;
         }
    @@ -4117,23 +4236,11 @@ public Builder setFloat8Val(com.google.protobuf.ByteString value) {
          * @return This builder for chaining.
          */
         public Builder clearFloat8Val() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00020000);
           float8Val_ = getDefaultInstance().getFloat8Val();
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.TensorProto)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorProtoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorProtoOrBuilder.java
    index fe901586e8c..193c60a945a 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorProtoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorProtoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/tensor.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -8,11 +10,19 @@ public interface TensorProtoOrBuilder extends
         com.google.protobuf.MessageOrBuilder {
     
       /**
    +   * 
    +   * Data type of the tensor.
    +   * 
    + * * .tensorflow.DataType dtype = 1; * @return The enum numeric value on the wire for dtype. */ int getDtypeValue(); /** + *
    +   * Data type of the tensor.
    +   * 
    + * * .tensorflow.DataType dtype = 1; * @return The dtype. */ @@ -48,6 +58,7 @@ public interface TensorProtoOrBuilder extends /** *
        * Version number.
    +   *
        * In version 0, if the "repeated xxx" representations contain only one
        * element, that element is repeated to fill the shape.  This makes it easy
        * to represent a constant Tensor with a single value.
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorProtos.java
    index 4644f5795ca..5641fea4fdc 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/tensor.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class TensorProtos {
       private TensorProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      TensorProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,12 +28,12 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_TensorProto_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_TensorProto_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_VariantTensorDataProto_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_VariantTensorDataProto_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -69,15 +80,16 @@ public static void registerAllExtensions(
         internal_static_tensorflow_TensorProto_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_TensorProto_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_TensorProto_descriptor,
             new java.lang.String[] { "Dtype", "TensorShape", "VersionNumber", "TensorContent", "HalfVal", "FloatVal", "DoubleVal", "IntVal", "StringVal", "ScomplexVal", "Int64Val", "BoolVal", "DcomplexVal", "ResourceHandleVal", "VariantVal", "Uint32Val", "Uint64Val", "Float8Val", });
         internal_static_tensorflow_VariantTensorDataProto_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_VariantTensorDataProto_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_VariantTensorDataProto_descriptor,
             new java.lang.String[] { "TypeName", "Metadata", "Tensors", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.ResourceHandle.getDescriptor();
         org.tensorflow.proto.TensorShapeProtos.getDescriptor();
         org.tensorflow.proto.TypesProtos.getDescriptor();
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorShapeProto.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorShapeProto.java
    index 97452f6c4a5..3e0f3a3387c 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorShapeProto.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorShapeProto.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/tensor_shape.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,37 +13,34 @@
      * Protobuf type {@code tensorflow.TensorShapeProto}
      */
     public final class TensorShapeProto extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.TensorShapeProto)
         TensorShapeProtoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      TensorShapeProto.class.getName());
    +  }
       // Use TensorShapeProto.newBuilder() to construct.
    -  private TensorShapeProto(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private TensorShapeProto(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private TensorShapeProto() {
         dim_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new TensorShapeProto();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.TensorShapeProtos.internal_static_tensorflow_TensorShapeProto_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.TensorShapeProtos.internal_static_tensorflow_TensorShapeProto_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -94,37 +93,34 @@ public interface DimOrBuilder extends
        * Protobuf type {@code tensorflow.TensorShapeProto.Dim}
        */
       public static final class Dim extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.TensorShapeProto.Dim)
           DimOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        Dim.class.getName());
    +    }
         // Use Dim.newBuilder() to construct.
    -    private Dim(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private Dim(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private Dim() {
           name_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new Dim();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.TensorShapeProtos.internal_static_tensorflow_TensorShapeProto_Dim_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TensorShapeProtos.internal_static_tensorflow_TensorShapeProto_Dim_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -132,7 +128,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int SIZE_FIELD_NUMBER = 1;
    -    private long size_;
    +    private long size_ = 0L;
         /**
          * 
          * Size of the tensor in that dimension.
    @@ -151,7 +147,8 @@ public long getSize() {
         }
     
         public static final int NAME_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object name_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object name_ = "";
         /**
          * 
          * Optional name of the tensor dimension.
    @@ -213,8 +210,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (size_ != 0L) {
             output.writeInt64(1, size_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, name_);
           }
           getUnknownFields().writeTo(output);
         }
    @@ -229,8 +226,8 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeInt64Size(1, size_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, name_);
           }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
    @@ -306,39 +303,41 @@ public static org.tensorflow.proto.TensorShapeProto.Dim parseFrom(
         }
         public static org.tensorflow.proto.TensorShapeProto.Dim parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.TensorShapeProto.Dim parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.TensorShapeProto.Dim parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.TensorShapeProto.Dim parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.TensorShapeProto.Dim parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.TensorShapeProto.Dim parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -358,7 +357,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -370,7 +369,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.TensorShapeProto.Dim}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.TensorShapeProto.Dim)
             org.tensorflow.proto.TensorShapeProto.DimOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -379,7 +378,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.TensorShapeProtos.internal_static_tensorflow_TensorShapeProto_Dim_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -392,17 +391,16 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             size_ = 0L;
    -
             name_ = "";
    -
             return this;
           }
     
    @@ -429,44 +427,21 @@ public org.tensorflow.proto.TensorShapeProto.Dim build() {
           @java.lang.Override
           public org.tensorflow.proto.TensorShapeProto.Dim buildPartial() {
             org.tensorflow.proto.TensorShapeProto.Dim result = new org.tensorflow.proto.TensorShapeProto.Dim(this);
    -        result.size_ = size_;
    -        result.name_ = name_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.TensorShapeProto.Dim result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.size_ = size_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.name_ = name_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.TensorShapeProto.Dim) {
    @@ -484,6 +459,7 @@ public Builder mergeFrom(org.tensorflow.proto.TensorShapeProto.Dim other) {
             }
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             this.mergeUnknownFields(other.getUnknownFields());
    @@ -514,12 +490,12 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     size_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   case 18: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   default: {
    @@ -537,6 +513,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private long size_ ;
           /**
    @@ -569,8 +546,9 @@ public long getSize() {
            * @return This builder for chaining.
            */
           public Builder setSize(long value) {
    -        
    +
             size_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -587,7 +565,7 @@ public Builder setSize(long value) {
            * @return This builder for chaining.
            */
           public Builder clearSize() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             size_ = 0L;
             onChanged();
             return this;
    @@ -646,11 +624,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -663,8 +639,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -679,27 +655,13 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.TensorShapeProto.Dim)
         }
    @@ -753,6 +715,7 @@ public org.tensorflow.proto.TensorShapeProto.Dim getDefaultInstanceForType() {
       }
     
       public static final int DIM_FIELD_NUMBER = 2;
    +  @SuppressWarnings("serial")
       private java.util.List dim_;
       /**
        * 
    @@ -760,11 +723,14 @@ public org.tensorflow.proto.TensorShapeProto.Dim getDefaultInstanceForType() {
        * for a 30 x 40 2D tensor.  If an entry has size -1, this
        * corresponds to a dimension of unknown size. The names are
        * optional.
    +   *
        * The order of entries in "dim" matters: It indicates the layout of the
        * values in the tensor in-memory representation.
    +   *
        * The first entry in "dim" is the outermost dimension used to layout the
        * values, the last entry is the innermost dimension.  This matches the
        * in-memory layout of RowMajor Eigen tensors.
    +   *
        * If "dim.size()" > 0, "unknown_rank" must be false.
        * 
    * @@ -780,11 +746,14 @@ public java.util.List getDimList() { * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -801,11 +770,14 @@ public java.util.List getDimList() { * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -821,11 +793,14 @@ public int getDimCount() { * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -841,11 +816,14 @@ public org.tensorflow.proto.TensorShapeProto.Dim getDim(int index) { * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -858,10 +836,11 @@ public org.tensorflow.proto.TensorShapeProto.DimOrBuilder getDimOrBuilder( } public static final int UNKNOWN_RANK_FIELD_NUMBER = 3; - private boolean unknownRank_; + private boolean unknownRank_ = false; /** *
        * If true, the number of dimensions in the shape is unknown.
    +   *
        * If true, "dim.size()" must be 0.
        * 
    * @@ -986,39 +965,41 @@ public static org.tensorflow.proto.TensorShapeProto parseFrom( } public static org.tensorflow.proto.TensorShapeProto parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.TensorShapeProto parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.TensorShapeProto parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.TensorShapeProto parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.TensorShapeProto parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.TensorShapeProto parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -1038,7 +1019,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -1050,7 +1031,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.TensorShapeProto} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.TensorShapeProto) org.tensorflow.proto.TensorShapeProtoOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -1059,7 +1040,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.TensorShapeProtos.internal_static_tensorflow_TensorShapeProto_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -1072,13 +1053,14 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; if (dimBuilder_ == null) { dim_ = java.util.Collections.emptyList(); } else { @@ -1087,7 +1069,6 @@ public Builder clear() { } bitField0_ = (bitField0_ & ~0x00000001); unknownRank_ = false; - return this; } @@ -1114,7 +1095,13 @@ public org.tensorflow.proto.TensorShapeProto build() { @java.lang.Override public org.tensorflow.proto.TensorShapeProto buildPartial() { org.tensorflow.proto.TensorShapeProto result = new org.tensorflow.proto.TensorShapeProto(this); - int from_bitField0_ = bitField0_; + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(org.tensorflow.proto.TensorShapeProto result) { if (dimBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { dim_ = java.util.Collections.unmodifiableList(dim_); @@ -1124,43 +1111,15 @@ public org.tensorflow.proto.TensorShapeProto buildPartial() { } else { result.dim_ = dimBuilder_.build(); } - result.unknownRank_ = unknownRank_; - onBuilt(); - return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.TensorShapeProto result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.unknownRank_ = unknownRank_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.TensorShapeProto) { @@ -1192,7 +1151,7 @@ public Builder mergeFrom(org.tensorflow.proto.TensorShapeProto other) { dim_ = other.dim_; bitField0_ = (bitField0_ & ~0x00000001); dimBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getDimFieldBuilder() : null; } else { dimBuilder_.addAllMessages(other.dim_); @@ -1243,7 +1202,7 @@ public Builder mergeFrom( } // case 18 case 24: { unknownRank_ = input.readBool(); - + bitField0_ |= 0x00000002; break; } // case 24 default: { @@ -1272,7 +1231,7 @@ private void ensureDimIsMutable() { } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.TensorShapeProto.Dim, org.tensorflow.proto.TensorShapeProto.Dim.Builder, org.tensorflow.proto.TensorShapeProto.DimOrBuilder> dimBuilder_; /** @@ -1281,11 +1240,14 @@ private void ensureDimIsMutable() { * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -1304,11 +1266,14 @@ public java.util.List getDimList() { * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -1327,11 +1292,14 @@ public int getDimCount() { * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -1350,11 +1318,14 @@ public org.tensorflow.proto.TensorShapeProto.Dim getDim(int index) { * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -1380,11 +1351,14 @@ public Builder setDim( * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -1407,11 +1381,14 @@ public Builder setDim( * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -1436,11 +1413,14 @@ public Builder addDim(org.tensorflow.proto.TensorShapeProto.Dim value) { * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -1466,11 +1446,14 @@ public Builder addDim( * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -1493,11 +1476,14 @@ public Builder addDim( * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -1520,11 +1506,14 @@ public Builder addDim( * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -1548,11 +1537,14 @@ public Builder addAllDim( * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -1574,11 +1566,14 @@ public Builder clearDim() { * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -1600,11 +1595,14 @@ public Builder removeDim(int index) { * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -1620,11 +1618,14 @@ public org.tensorflow.proto.TensorShapeProto.Dim.Builder getDimBuilder( * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -1643,11 +1644,14 @@ public org.tensorflow.proto.TensorShapeProto.DimOrBuilder getDimOrBuilder( * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -1667,11 +1671,14 @@ public org.tensorflow.proto.TensorShapeProto.DimOrBuilder getDimOrBuilder( * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -1687,11 +1694,14 @@ public org.tensorflow.proto.TensorShapeProto.Dim.Builder addDimBuilder() { * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -1708,11 +1718,14 @@ public org.tensorflow.proto.TensorShapeProto.Dim.Builder addDimBuilder( * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -1722,11 +1735,11 @@ public org.tensorflow.proto.TensorShapeProto.Dim.Builder addDimBuilder( getDimBuilderList() { return getDimFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.TensorShapeProto.Dim, org.tensorflow.proto.TensorShapeProto.Dim.Builder, org.tensorflow.proto.TensorShapeProto.DimOrBuilder> getDimFieldBuilder() { if (dimBuilder_ == null) { - dimBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + dimBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.TensorShapeProto.Dim, org.tensorflow.proto.TensorShapeProto.Dim.Builder, org.tensorflow.proto.TensorShapeProto.DimOrBuilder>( dim_, ((bitField0_ & 0x00000001) != 0), @@ -1741,6 +1754,7 @@ public org.tensorflow.proto.TensorShapeProto.Dim.Builder addDimBuilder( /** *
          * If true, the number of dimensions in the shape is unknown.
    +     *
          * If true, "dim.size()" must be 0.
          * 
    * @@ -1754,6 +1768,7 @@ public boolean getUnknownRank() { /** *
          * If true, the number of dimensions in the shape is unknown.
    +     *
          * If true, "dim.size()" must be 0.
          * 
    * @@ -1762,14 +1777,16 @@ public boolean getUnknownRank() { * @return This builder for chaining. */ public Builder setUnknownRank(boolean value) { - + unknownRank_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } /** *
          * If true, the number of dimensions in the shape is unknown.
    +     *
          * If true, "dim.size()" must be 0.
          * 
    * @@ -1777,23 +1794,11 @@ public Builder setUnknownRank(boolean value) { * @return This builder for chaining. */ public Builder clearUnknownRank() { - + bitField0_ = (bitField0_ & ~0x00000002); unknownRank_ = false; onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.TensorShapeProto) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorShapeProtoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorShapeProtoOrBuilder.java index 9c5ef351c57..abdb7c2a2dc 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorShapeProtoOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorShapeProtoOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/tensor_shape.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -13,11 +15,14 @@ public interface TensorShapeProtoOrBuilder extends * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -31,11 +36,14 @@ public interface TensorShapeProtoOrBuilder extends * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -48,11 +56,14 @@ public interface TensorShapeProtoOrBuilder extends * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -65,11 +76,14 @@ public interface TensorShapeProtoOrBuilder extends * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -83,11 +97,14 @@ public interface TensorShapeProtoOrBuilder extends * for a 30 x 40 2D tensor. If an entry has size -1, this * corresponds to a dimension of unknown size. The names are * optional. + * * The order of entries in "dim" matters: It indicates the layout of the * values in the tensor in-memory representation. + * * The first entry in "dim" is the outermost dimension used to layout the * values, the last entry is the innermost dimension. This matches the * in-memory layout of RowMajor Eigen tensors. + * * If "dim.size()" > 0, "unknown_rank" must be false. *
    * @@ -99,6 +116,7 @@ org.tensorflow.proto.TensorShapeProto.DimOrBuilder getDimOrBuilder( /** *
        * If true, the number of dimensions in the shape is unknown.
    +   *
        * If true, "dim.size()" must be 0.
        * 
    * diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorShapeProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorShapeProtos.java index 045a0a6da4c..0d6cdfd8d58 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorShapeProtos.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorShapeProtos.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/tensor_shape.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; public final class TensorShapeProtos { private TensorShapeProtos() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + TensorShapeProtos.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -17,12 +28,12 @@ public static void registerAllExtensions( static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_TensorShapeProto_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_TensorShapeProto_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_TensorShapeProto_Dim_descriptor; static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_TensorShapeProto_Dim_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor @@ -50,15 +61,16 @@ public static void registerAllExtensions( internal_static_tensorflow_TensorShapeProto_descriptor = getDescriptor().getMessageTypes().get(0); internal_static_tensorflow_TensorShapeProto_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_TensorShapeProto_descriptor, new java.lang.String[] { "Dim", "UnknownRank", }); internal_static_tensorflow_TensorShapeProto_Dim_descriptor = internal_static_tensorflow_TensorShapeProto_descriptor.getNestedTypes().get(0); internal_static_tensorflow_TensorShapeProto_Dim_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_TensorShapeProto_Dim_descriptor, new java.lang.String[] { "Size", "Name", }); + descriptor.resolveAllFeaturesImmutable(); } // @@protoc_insertion_point(outer_class_scope) diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorSliceProto.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorSliceProto.java index 0d6cb86e44e..dde6d3207de 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorSliceProto.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorSliceProto.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/tensor_slice.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -11,37 +13,34 @@ * Protobuf type {@code tensorflow.TensorSliceProto} */ public final class TensorSliceProto extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.TensorSliceProto) TensorSliceProtoOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + TensorSliceProto.class.getName()); + } // Use TensorSliceProto.newBuilder() to construct. - private TensorSliceProto(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private TensorSliceProto(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private TensorSliceProto() { extent_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new TensorSliceProto(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.TensorSliceProtos.internal_static_tensorflow_TensorSliceProto_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.TensorSliceProtos.internal_static_tensorflow_TensorSliceProto_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -73,7 +72,7 @@ public interface ExtentOrBuilder extends */ long getLength(); - public org.tensorflow.proto.TensorSliceProto.Extent.HasLengthCase getHasLengthCase(); + org.tensorflow.proto.TensorSliceProto.Extent.HasLengthCase getHasLengthCase(); } /** *
    @@ -83,36 +82,33 @@ public interface ExtentOrBuilder extends
        * Protobuf type {@code tensorflow.TensorSliceProto.Extent}
        */
       public static final class Extent extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.TensorSliceProto.Extent)
           ExtentOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        Extent.class.getName());
    +    }
         // Use Extent.newBuilder() to construct.
    -    private Extent(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private Extent(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private Extent() {
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new Extent();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.TensorSliceProtos.internal_static_tensorflow_TensorSliceProto_Extent_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TensorSliceProtos.internal_static_tensorflow_TensorSliceProto_Extent_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -120,6 +116,7 @@ protected java.lang.Object newInstance(
         }
     
         private int hasLengthCase_ = 0;
    +    @SuppressWarnings("serial")
         private java.lang.Object hasLength_;
         public enum HasLengthCase
             implements com.google.protobuf.Internal.EnumLite,
    @@ -159,7 +156,7 @@ public int getNumber() {
         }
     
         public static final int START_FIELD_NUMBER = 1;
    -    private long start_;
    +    private long start_ = 0L;
         /**
          * 
          * Start index of the slice, starting at 0.
    @@ -321,39 +318,41 @@ public static org.tensorflow.proto.TensorSliceProto.Extent parseFrom(
         }
         public static org.tensorflow.proto.TensorSliceProto.Extent parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.TensorSliceProto.Extent parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.TensorSliceProto.Extent parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.TensorSliceProto.Extent parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.TensorSliceProto.Extent parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.TensorSliceProto.Extent parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -373,7 +372,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -385,7 +384,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.TensorSliceProto.Extent}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.TensorSliceProto.Extent)
             org.tensorflow.proto.TensorSliceProto.ExtentOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -394,7 +393,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.TensorSliceProtos.internal_static_tensorflow_TensorSliceProto_Extent_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -407,15 +406,15 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             start_ = 0L;
    -
             hasLengthCase_ = 0;
             hasLength_ = null;
             return this;
    @@ -444,47 +443,24 @@ public org.tensorflow.proto.TensorSliceProto.Extent build() {
           @java.lang.Override
           public org.tensorflow.proto.TensorSliceProto.Extent buildPartial() {
             org.tensorflow.proto.TensorSliceProto.Extent result = new org.tensorflow.proto.TensorSliceProto.Extent(this);
    -        result.start_ = start_;
    -        if (hasLengthCase_ == 2) {
    -          result.hasLength_ = hasLength_;
    -        }
    -        result.hasLengthCase_ = hasLengthCase_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        buildPartialOneofs(result);
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    +      private void buildPartial0(org.tensorflow.proto.TensorSliceProto.Extent result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.start_ = start_;
    +        }
           }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +
    +      private void buildPartialOneofs(org.tensorflow.proto.TensorSliceProto.Extent result) {
    +        result.hasLengthCase_ = hasLengthCase_;
    +        result.hasLength_ = this.hasLength_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.TensorSliceProto.Extent) {
    @@ -537,7 +513,7 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     start_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   case 16: {
    @@ -575,6 +551,7 @@ public Builder clearHasLength() {
             return this;
           }
     
    +      private int bitField0_;
     
           private long start_ ;
           /**
    @@ -599,8 +576,9 @@ public long getStart() {
            * @return This builder for chaining.
            */
           public Builder setStart(long value) {
    -        
    +
             start_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -613,7 +591,7 @@ public Builder setStart(long value) {
            * @return This builder for chaining.
            */
           public Builder clearStart() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             start_ = 0L;
             onChanged();
             return this;
    @@ -642,6 +620,7 @@ public long getLength() {
            * @return This builder for chaining.
            */
           public Builder setLength(long value) {
    +
             hasLengthCase_ = 2;
             hasLength_ = value;
             onChanged();
    @@ -659,18 +638,6 @@ public Builder clearLength() {
             }
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.TensorSliceProto.Extent)
         }
    @@ -724,10 +691,12 @@ public org.tensorflow.proto.TensorSliceProto.Extent getDefaultInstanceForType()
       }
     
       public static final int EXTENT_FIELD_NUMBER = 1;
    +  @SuppressWarnings("serial")
       private java.util.List extent_;
       /**
        * 
        * Extent of the slice in all tensor dimensions.
    +   *
        * Must have one entry for each of the dimension of the tensor that this
        * slice belongs to.  The order of sizes is the same as the order of
        * dimensions in the TensorShape.
    @@ -742,6 +711,7 @@ public java.util.List getExtentLis
       /**
        * 
        * Extent of the slice in all tensor dimensions.
    +   *
        * Must have one entry for each of the dimension of the tensor that this
        * slice belongs to.  The order of sizes is the same as the order of
        * dimensions in the TensorShape.
    @@ -757,6 +727,7 @@ public java.util.List getExtentLis
       /**
        * 
        * Extent of the slice in all tensor dimensions.
    +   *
        * Must have one entry for each of the dimension of the tensor that this
        * slice belongs to.  The order of sizes is the same as the order of
        * dimensions in the TensorShape.
    @@ -771,6 +742,7 @@ public int getExtentCount() {
       /**
        * 
        * Extent of the slice in all tensor dimensions.
    +   *
        * Must have one entry for each of the dimension of the tensor that this
        * slice belongs to.  The order of sizes is the same as the order of
        * dimensions in the TensorShape.
    @@ -785,6 +757,7 @@ public org.tensorflow.proto.TensorSliceProto.Extent getExtent(int index) {
       /**
        * 
        * Extent of the slice in all tensor dimensions.
    +   *
        * Must have one entry for each of the dimension of the tensor that this
        * slice belongs to.  The order of sizes is the same as the order of
        * dimensions in the TensorShape.
    @@ -899,39 +872,41 @@ public static org.tensorflow.proto.TensorSliceProto parseFrom(
       }
       public static org.tensorflow.proto.TensorSliceProto parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.TensorSliceProto parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.TensorSliceProto parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.TensorSliceProto parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.TensorSliceProto parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.TensorSliceProto parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -951,7 +926,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -963,7 +938,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.TensorSliceProto}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.TensorSliceProto)
           org.tensorflow.proto.TensorSliceProtoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -972,7 +947,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TensorSliceProtos.internal_static_tensorflow_TensorSliceProto_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -985,13 +960,14 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           if (extentBuilder_ == null) {
             extent_ = java.util.Collections.emptyList();
           } else {
    @@ -1025,7 +1001,13 @@ public org.tensorflow.proto.TensorSliceProto build() {
         @java.lang.Override
         public org.tensorflow.proto.TensorSliceProto buildPartial() {
           org.tensorflow.proto.TensorSliceProto result = new org.tensorflow.proto.TensorSliceProto(this);
    -      int from_bitField0_ = bitField0_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.TensorSliceProto result) {
           if (extentBuilder_ == null) {
             if (((bitField0_ & 0x00000001) != 0)) {
               extent_ = java.util.Collections.unmodifiableList(extent_);
    @@ -1035,42 +1017,12 @@ public org.tensorflow.proto.TensorSliceProto buildPartial() {
           } else {
             result.extent_ = extentBuilder_.build();
           }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.TensorSliceProto result) {
    +      int from_bitField0_ = bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.TensorSliceProto) {
    @@ -1102,7 +1054,7 @@ public Builder mergeFrom(org.tensorflow.proto.TensorSliceProto other) {
                 extent_ = other.extent_;
                 bitField0_ = (bitField0_ & ~0x00000001);
                 extentBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getExtentFieldBuilder() : null;
               } else {
                 extentBuilder_.addAllMessages(other.extent_);
    @@ -1174,12 +1126,13 @@ private void ensureExtentIsMutable() {
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.TensorSliceProto.Extent, org.tensorflow.proto.TensorSliceProto.Extent.Builder, org.tensorflow.proto.TensorSliceProto.ExtentOrBuilder> extentBuilder_;
     
         /**
          * 
          * Extent of the slice in all tensor dimensions.
    +     *
          * Must have one entry for each of the dimension of the tensor that this
          * slice belongs to.  The order of sizes is the same as the order of
          * dimensions in the TensorShape.
    @@ -1197,6 +1150,7 @@ public java.util.List getExtentLis
         /**
          * 
          * Extent of the slice in all tensor dimensions.
    +     *
          * Must have one entry for each of the dimension of the tensor that this
          * slice belongs to.  The order of sizes is the same as the order of
          * dimensions in the TensorShape.
    @@ -1214,6 +1168,7 @@ public int getExtentCount() {
         /**
          * 
          * Extent of the slice in all tensor dimensions.
    +     *
          * Must have one entry for each of the dimension of the tensor that this
          * slice belongs to.  The order of sizes is the same as the order of
          * dimensions in the TensorShape.
    @@ -1231,6 +1186,7 @@ public org.tensorflow.proto.TensorSliceProto.Extent getExtent(int index) {
         /**
          * 
          * Extent of the slice in all tensor dimensions.
    +     *
          * Must have one entry for each of the dimension of the tensor that this
          * slice belongs to.  The order of sizes is the same as the order of
          * dimensions in the TensorShape.
    @@ -1255,6 +1211,7 @@ public Builder setExtent(
         /**
          * 
          * Extent of the slice in all tensor dimensions.
    +     *
          * Must have one entry for each of the dimension of the tensor that this
          * slice belongs to.  The order of sizes is the same as the order of
          * dimensions in the TensorShape.
    @@ -1276,6 +1233,7 @@ public Builder setExtent(
         /**
          * 
          * Extent of the slice in all tensor dimensions.
    +     *
          * Must have one entry for each of the dimension of the tensor that this
          * slice belongs to.  The order of sizes is the same as the order of
          * dimensions in the TensorShape.
    @@ -1299,6 +1257,7 @@ public Builder addExtent(org.tensorflow.proto.TensorSliceProto.Extent value) {
         /**
          * 
          * Extent of the slice in all tensor dimensions.
    +     *
          * Must have one entry for each of the dimension of the tensor that this
          * slice belongs to.  The order of sizes is the same as the order of
          * dimensions in the TensorShape.
    @@ -1323,6 +1282,7 @@ public Builder addExtent(
         /**
          * 
          * Extent of the slice in all tensor dimensions.
    +     *
          * Must have one entry for each of the dimension of the tensor that this
          * slice belongs to.  The order of sizes is the same as the order of
          * dimensions in the TensorShape.
    @@ -1344,6 +1304,7 @@ public Builder addExtent(
         /**
          * 
          * Extent of the slice in all tensor dimensions.
    +     *
          * Must have one entry for each of the dimension of the tensor that this
          * slice belongs to.  The order of sizes is the same as the order of
          * dimensions in the TensorShape.
    @@ -1365,6 +1326,7 @@ public Builder addExtent(
         /**
          * 
          * Extent of the slice in all tensor dimensions.
    +     *
          * Must have one entry for each of the dimension of the tensor that this
          * slice belongs to.  The order of sizes is the same as the order of
          * dimensions in the TensorShape.
    @@ -1387,6 +1349,7 @@ public Builder addAllExtent(
         /**
          * 
          * Extent of the slice in all tensor dimensions.
    +     *
          * Must have one entry for each of the dimension of the tensor that this
          * slice belongs to.  The order of sizes is the same as the order of
          * dimensions in the TensorShape.
    @@ -1407,6 +1370,7 @@ public Builder clearExtent() {
         /**
          * 
          * Extent of the slice in all tensor dimensions.
    +     *
          * Must have one entry for each of the dimension of the tensor that this
          * slice belongs to.  The order of sizes is the same as the order of
          * dimensions in the TensorShape.
    @@ -1427,6 +1391,7 @@ public Builder removeExtent(int index) {
         /**
          * 
          * Extent of the slice in all tensor dimensions.
    +     *
          * Must have one entry for each of the dimension of the tensor that this
          * slice belongs to.  The order of sizes is the same as the order of
          * dimensions in the TensorShape.
    @@ -1441,6 +1406,7 @@ public org.tensorflow.proto.TensorSliceProto.Extent.Builder getExtentBuilder(
         /**
          * 
          * Extent of the slice in all tensor dimensions.
    +     *
          * Must have one entry for each of the dimension of the tensor that this
          * slice belongs to.  The order of sizes is the same as the order of
          * dimensions in the TensorShape.
    @@ -1458,6 +1424,7 @@ public org.tensorflow.proto.TensorSliceProto.ExtentOrBuilder getExtentOrBuilder(
         /**
          * 
          * Extent of the slice in all tensor dimensions.
    +     *
          * Must have one entry for each of the dimension of the tensor that this
          * slice belongs to.  The order of sizes is the same as the order of
          * dimensions in the TensorShape.
    @@ -1476,6 +1443,7 @@ public org.tensorflow.proto.TensorSliceProto.ExtentOrBuilder getExtentOrBuilder(
         /**
          * 
          * Extent of the slice in all tensor dimensions.
    +     *
          * Must have one entry for each of the dimension of the tensor that this
          * slice belongs to.  The order of sizes is the same as the order of
          * dimensions in the TensorShape.
    @@ -1490,6 +1458,7 @@ public org.tensorflow.proto.TensorSliceProto.Extent.Builder addExtentBuilder() {
         /**
          * 
          * Extent of the slice in all tensor dimensions.
    +     *
          * Must have one entry for each of the dimension of the tensor that this
          * slice belongs to.  The order of sizes is the same as the order of
          * dimensions in the TensorShape.
    @@ -1505,6 +1474,7 @@ public org.tensorflow.proto.TensorSliceProto.Extent.Builder addExtentBuilder(
         /**
          * 
          * Extent of the slice in all tensor dimensions.
    +     *
          * Must have one entry for each of the dimension of the tensor that this
          * slice belongs to.  The order of sizes is the same as the order of
          * dimensions in the TensorShape.
    @@ -1516,11 +1486,11 @@ public org.tensorflow.proto.TensorSliceProto.Extent.Builder addExtentBuilder(
              getExtentBuilderList() {
           return getExtentFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.TensorSliceProto.Extent, org.tensorflow.proto.TensorSliceProto.Extent.Builder, org.tensorflow.proto.TensorSliceProto.ExtentOrBuilder> 
             getExtentFieldBuilder() {
           if (extentBuilder_ == null) {
    -        extentBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        extentBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.TensorSliceProto.Extent, org.tensorflow.proto.TensorSliceProto.Extent.Builder, org.tensorflow.proto.TensorSliceProto.ExtentOrBuilder>(
                     extent_,
                     ((bitField0_ & 0x00000001) != 0),
    @@ -1530,18 +1500,6 @@ public org.tensorflow.proto.TensorSliceProto.Extent.Builder addExtentBuilder(
           }
           return extentBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.TensorSliceProto)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorSliceProtoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorSliceProtoOrBuilder.java
    index d57f4ac0244..c288cadbbf0 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorSliceProtoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorSliceProtoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/tensor_slice.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -10,6 +12,7 @@ public interface TensorSliceProtoOrBuilder extends
       /**
        * 
        * Extent of the slice in all tensor dimensions.
    +   *
        * Must have one entry for each of the dimension of the tensor that this
        * slice belongs to.  The order of sizes is the same as the order of
        * dimensions in the TensorShape.
    @@ -22,6 +25,7 @@ public interface TensorSliceProtoOrBuilder extends
       /**
        * 
        * Extent of the slice in all tensor dimensions.
    +   *
        * Must have one entry for each of the dimension of the tensor that this
        * slice belongs to.  The order of sizes is the same as the order of
        * dimensions in the TensorShape.
    @@ -33,6 +37,7 @@ public interface TensorSliceProtoOrBuilder extends
       /**
        * 
        * Extent of the slice in all tensor dimensions.
    +   *
        * Must have one entry for each of the dimension of the tensor that this
        * slice belongs to.  The order of sizes is the same as the order of
        * dimensions in the TensorShape.
    @@ -44,6 +49,7 @@ public interface TensorSliceProtoOrBuilder extends
       /**
        * 
        * Extent of the slice in all tensor dimensions.
    +   *
        * Must have one entry for each of the dimension of the tensor that this
        * slice belongs to.  The order of sizes is the same as the order of
        * dimensions in the TensorShape.
    @@ -56,6 +62,7 @@ public interface TensorSliceProtoOrBuilder extends
       /**
        * 
        * Extent of the slice in all tensor dimensions.
    +   *
        * Must have one entry for each of the dimension of the tensor that this
        * slice belongs to.  The order of sizes is the same as the order of
        * dimensions in the TensorShape.
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorSliceProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorSliceProtos.java
    index f12f6a141cc..fbbde962a98 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorSliceProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TensorSliceProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/tensor_slice.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class TensorSliceProtos {
       private TensorSliceProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      TensorSliceProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,12 +28,12 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_TensorSliceProto_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_TensorSliceProto_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_TensorSliceProto_Extent_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_TensorSliceProto_Extent_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -50,15 +61,16 @@ public static void registerAllExtensions(
         internal_static_tensorflow_TensorSliceProto_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_TensorSliceProto_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_TensorSliceProto_descriptor,
             new java.lang.String[] { "Extent", });
         internal_static_tensorflow_TensorSliceProto_Extent_descriptor =
           internal_static_tensorflow_TensorSliceProto_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_TensorSliceProto_Extent_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_TensorSliceProto_Extent_descriptor,
             new java.lang.String[] { "Start", "Length", "HasLength", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TestLogProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TestLogProtos.java
    index fb587acc9e8..4e6ef7c4896 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TestLogProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TestLogProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class TestLogProtos {
       private TestLogProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      TestLogProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,87 +28,87 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_EntryValue_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_EntryValue_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_MetricEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_MetricEntry_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_BenchmarkEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_BenchmarkEntry_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_BenchmarkEntry_ExtrasEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_BenchmarkEntry_ExtrasEntry_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_BenchmarkEntries_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_BenchmarkEntries_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_BuildConfiguration_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_BuildConfiguration_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_CommitId_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_CommitId_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_CPUInfo_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_CPUInfo_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_CPUInfo_CacheSizeEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_CPUInfo_CacheSizeEntry_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_MemoryInfo_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_MemoryInfo_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_GPUInfo_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_GPUInfo_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_PlatformInfo_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_PlatformInfo_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_AvailableDeviceInfo_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_AvailableDeviceInfo_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_MachineConfiguration_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_MachineConfiguration_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_RunConfiguration_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_RunConfiguration_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_RunConfiguration_EnvVarsEntry_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_RunConfiguration_EnvVarsEntry_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_TestResults_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_TestResults_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -108,68 +119,68 @@ public static void registerAllExtensions(
           descriptor;
       static {
         java.lang.String[] descriptorData = {
    -      "\n\033tsl/protobuf/test_log.proto\022\ntensorflo" +
    -      "w\032\031google/protobuf/any.proto\032\036google/pro" +
    -      "tobuf/wrappers.proto\"D\n\nEntryValue\022\026\n\014do" +
    -      "uble_value\030\001 \001(\001H\000\022\026\n\014string_value\030\002 \001(\t" +
    -      "H\000B\006\n\004kind\"\214\001\n\013MetricEntry\022\014\n\004name\030\001 \001(\t" +
    -      "\022\r\n\005value\030\002 \001(\001\022/\n\tmin_value\030\003 \001(\0132\034.goo" +
    -      "gle.protobuf.DoubleValue\022/\n\tmax_value\030\004 " +
    -      "\001(\0132\034.google.protobuf.DoubleValue\"\217\002\n\016Be" +
    -      "nchmarkEntry\022\014\n\004name\030\001 \001(\t\022\r\n\005iters\030\002 \001(" +
    -      "\003\022\020\n\010cpu_time\030\003 \001(\001\022\021\n\twall_time\030\004 \001(\001\022\022" +
    -      "\n\nthroughput\030\005 \001(\001\0226\n\006extras\030\006 \003(\0132&.ten" +
    -      "sorflow.BenchmarkEntry.ExtrasEntry\022(\n\007me" +
    -      "trics\030\007 \003(\0132\027.tensorflow.MetricEntry\032E\n\013" +
    -      "ExtrasEntry\022\013\n\003key\030\001 \001(\t\022%\n\005value\030\002 \001(\0132" +
    -      "\026.tensorflow.EntryValue:\0028\001\"=\n\020Benchmark" +
    -      "Entries\022)\n\005entry\030\001 \003(\0132\032.tensorflow.Benc" +
    -      "hmarkEntry\"B\n\022BuildConfiguration\022\014\n\004mode" +
    -      "\030\001 \001(\t\022\020\n\010cc_flags\030\002 \003(\t\022\014\n\004opts\030\003 \003(\t\"f" +
    -      "\n\010CommitId\022\024\n\nchangelist\030\001 \001(\003H\000\022\016\n\004hash" +
    -      "\030\002 \001(\tH\000\022\020\n\010snapshot\030\003 \001(\t\022\032\n\022pending_ch" +
    -      "angelist\030\004 \001(\003B\006\n\004kind\"\336\001\n\007CPUInfo\022\021\n\tnu" +
    -      "m_cores\030\001 \001(\003\022\031\n\021num_cores_allowed\030\002 \001(\003" +
    -      "\022\023\n\013mhz_per_cpu\030\003 \001(\001\022\020\n\010cpu_info\030\004 \001(\t\022" +
    -      "\024\n\014cpu_governor\030\005 \001(\t\0226\n\ncache_size\030\006 \003(" +
    -      "\0132\".tensorflow.CPUInfo.CacheSizeEntry\0320\n" +
    -      "\016CacheSizeEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 " +
    -      "\001(\003:\0028\001\".\n\nMemoryInfo\022\r\n\005total\030\001 \001(\003\022\021\n\t" +
    -      "available\030\002 \001(\003\"6\n\007GPUInfo\022\r\n\005model\030\001 \001(" +
    -      "\t\022\014\n\004uuid\030\002 \001(\t\022\016\n\006bus_id\030\003 \001(\t\"p\n\014Platf" +
    -      "ormInfo\022\014\n\004bits\030\001 \001(\t\022\017\n\007linkage\030\002 \001(\t\022\017" +
    -      "\n\007machine\030\003 \001(\t\022\017\n\007release\030\004 \001(\t\022\016\n\006syst" +
    -      "em\030\005 \001(\t\022\017\n\007version\030\006 \001(\t\"e\n\023AvailableDe" +
    -      "viceInfo\022\014\n\004name\030\001 \001(\t\022\014\n\004type\030\002 \001(\t\022\024\n\014" +
    -      "memory_limit\030\003 \001(\003\022\034\n\024physical_descripti" +
    -      "on\030\004 \001(\t\"\263\002\n\024MachineConfiguration\022\020\n\010hos" +
    -      "tname\030\001 \001(\t\022\031\n\021serial_identifier\030\007 \001(\t\022/" +
    -      "\n\rplatform_info\030\002 \001(\0132\030.tensorflow.Platf" +
    -      "ormInfo\022%\n\010cpu_info\030\003 \001(\0132\023.tensorflow.C" +
    -      "PUInfo\022)\n\013device_info\030\004 \003(\0132\024.google.pro" +
    -      "tobuf.Any\022>\n\025available_device_info\030\005 \003(\013" +
    -      "2\037.tensorflow.AvailableDeviceInfo\022+\n\013mem" +
    -      "ory_info\030\006 \001(\0132\026.tensorflow.MemoryInfo\"\221" +
    -      "\001\n\020RunConfiguration\022\020\n\010argument\030\001 \003(\t\022;\n" +
    -      "\010env_vars\030\002 \003(\0132).tensorflow.RunConfigur" +
    -      "ation.EnvVarsEntry\032.\n\014EnvVarsEntry\022\013\n\003ke" +
    -      "y\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"\320\004\n\013TestResul" +
    -      "ts\022\016\n\006target\030\001 \001(\t\022-\n\007entries\030\002 \001(\0132\034.te" +
    -      "nsorflow.BenchmarkEntries\022;\n\023build_confi" +
    -      "guration\030\003 \001(\0132\036.tensorflow.BuildConfigu" +
    -      "ration\022\'\n\tcommit_id\030\004 \001(\0132\024.tensorflow.C" +
    -      "ommitId\022\022\n\nstart_time\030\005 \001(\003\022\020\n\010run_time\030" +
    -      "\006 \001(\001\022?\n\025machine_configuration\030\007 \001(\0132 .t" +
    -      "ensorflow.MachineConfiguration\0227\n\021run_co" +
    -      "nfiguration\030\010 \001(\0132\034.tensorflow.RunConfig" +
    -      "uration\022\014\n\004name\030\t \001(\t\022=\n\016benchmark_type\030" +
    -      "\n \001(\0162%.tensorflow.TestResults.Benchmark" +
    -      "Type\022\020\n\010run_mode\030\013 \001(\t\022\022\n\ntf_version\030\014 \001" +
    -      "(\t\"\210\001\n\rBenchmarkType\022\013\n\007UNKNOWN\020\000\022\026\n\022CPP" +
    -      "_MICROBENCHMARK\020\001\022\024\n\020PYTHON_BENCHMARK\020\002\022" +
    -      "\025\n\021ANDROID_BENCHMARK\020\003\022\022\n\016EDGE_BENCHMARK" +
    -      "\020\004\022\021\n\rIOS_BENCHMARK\020\005B*\n\024org.tensorflow." +
    -      "protoB\rTestLogProtosP\001\370\001\001b\006proto3"
    +      "\n\037xla/tsl/protobuf/test_log.proto\022\ntenso" +
    +      "rflow\032\031google/protobuf/any.proto\032\036google" +
    +      "/protobuf/wrappers.proto\"D\n\nEntryValue\022\026" +
    +      "\n\014double_value\030\001 \001(\001H\000\022\026\n\014string_value\030\002" +
    +      " \001(\tH\000B\006\n\004kind\"\214\001\n\013MetricEntry\022\014\n\004name\030\001" +
    +      " \001(\t\022\r\n\005value\030\002 \001(\001\022/\n\tmin_value\030\003 \001(\0132\034" +
    +      ".google.protobuf.DoubleValue\022/\n\tmax_valu" +
    +      "e\030\004 \001(\0132\034.google.protobuf.DoubleValue\"\217\002" +
    +      "\n\016BenchmarkEntry\022\014\n\004name\030\001 \001(\t\022\r\n\005iters\030" +
    +      "\002 \001(\003\022\020\n\010cpu_time\030\003 \001(\001\022\021\n\twall_time\030\004 \001" +
    +      "(\001\022\022\n\nthroughput\030\005 \001(\001\0226\n\006extras\030\006 \003(\0132&" +
    +      ".tensorflow.BenchmarkEntry.ExtrasEntry\022(" +
    +      "\n\007metrics\030\007 \003(\0132\027.tensorflow.MetricEntry" +
    +      "\032E\n\013ExtrasEntry\022\013\n\003key\030\001 \001(\t\022%\n\005value\030\002 " +
    +      "\001(\0132\026.tensorflow.EntryValue:\0028\001\"=\n\020Bench" +
    +      "markEntries\022)\n\005entry\030\001 \003(\0132\032.tensorflow." +
    +      "BenchmarkEntry\"B\n\022BuildConfiguration\022\014\n\004" +
    +      "mode\030\001 \001(\t\022\020\n\010cc_flags\030\002 \003(\t\022\014\n\004opts\030\003 \003" +
    +      "(\t\"f\n\010CommitId\022\024\n\nchangelist\030\001 \001(\003H\000\022\016\n\004" +
    +      "hash\030\002 \001(\tH\000\022\020\n\010snapshot\030\003 \001(\t\022\032\n\022pendin" +
    +      "g_changelist\030\004 \001(\003B\006\n\004kind\"\336\001\n\007CPUInfo\022\021" +
    +      "\n\tnum_cores\030\001 \001(\003\022\031\n\021num_cores_allowed\030\002" +
    +      " \001(\003\022\023\n\013mhz_per_cpu\030\003 \001(\001\022\020\n\010cpu_info\030\004 " +
    +      "\001(\t\022\024\n\014cpu_governor\030\005 \001(\t\0226\n\ncache_size\030" +
    +      "\006 \003(\0132\".tensorflow.CPUInfo.CacheSizeEntr" +
    +      "y\0320\n\016CacheSizeEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005valu" +
    +      "e\030\002 \001(\003:\0028\001\".\n\nMemoryInfo\022\r\n\005total\030\001 \001(\003" +
    +      "\022\021\n\tavailable\030\002 \001(\003\"6\n\007GPUInfo\022\r\n\005model\030" +
    +      "\001 \001(\t\022\014\n\004uuid\030\002 \001(\t\022\016\n\006bus_id\030\003 \001(\t\"p\n\014P" +
    +      "latformInfo\022\014\n\004bits\030\001 \001(\t\022\017\n\007linkage\030\002 \001" +
    +      "(\t\022\017\n\007machine\030\003 \001(\t\022\017\n\007release\030\004 \001(\t\022\016\n\006" +
    +      "system\030\005 \001(\t\022\017\n\007version\030\006 \001(\t\"e\n\023Availab" +
    +      "leDeviceInfo\022\014\n\004name\030\001 \001(\t\022\014\n\004type\030\002 \001(\t" +
    +      "\022\024\n\014memory_limit\030\003 \001(\003\022\034\n\024physical_descr" +
    +      "iption\030\004 \001(\t\"\263\002\n\024MachineConfiguration\022\020\n" +
    +      "\010hostname\030\001 \001(\t\022\031\n\021serial_identifier\030\007 \001" +
    +      "(\t\022/\n\rplatform_info\030\002 \001(\0132\030.tensorflow.P" +
    +      "latformInfo\022%\n\010cpu_info\030\003 \001(\0132\023.tensorfl" +
    +      "ow.CPUInfo\022)\n\013device_info\030\004 \003(\0132\024.google" +
    +      ".protobuf.Any\022>\n\025available_device_info\030\005" +
    +      " \003(\0132\037.tensorflow.AvailableDeviceInfo\022+\n" +
    +      "\013memory_info\030\006 \001(\0132\026.tensorflow.MemoryIn" +
    +      "fo\"\221\001\n\020RunConfiguration\022\020\n\010argument\030\001 \003(" +
    +      "\t\022;\n\010env_vars\030\002 \003(\0132).tensorflow.RunConf" +
    +      "iguration.EnvVarsEntry\032.\n\014EnvVarsEntry\022\013" +
    +      "\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"\320\004\n\013TestR" +
    +      "esults\022\016\n\006target\030\001 \001(\t\022-\n\007entries\030\002 \001(\0132" +
    +      "\034.tensorflow.BenchmarkEntries\022;\n\023build_c" +
    +      "onfiguration\030\003 \001(\0132\036.tensorflow.BuildCon" +
    +      "figuration\022\'\n\tcommit_id\030\004 \001(\0132\024.tensorfl" +
    +      "ow.CommitId\022\022\n\nstart_time\030\005 \001(\003\022\020\n\010run_t" +
    +      "ime\030\006 \001(\001\022?\n\025machine_configuration\030\007 \001(\013" +
    +      "2 .tensorflow.MachineConfiguration\0227\n\021ru" +
    +      "n_configuration\030\010 \001(\0132\034.tensorflow.RunCo" +
    +      "nfiguration\022\014\n\004name\030\t \001(\t\022=\n\016benchmark_t" +
    +      "ype\030\n \001(\0162%.tensorflow.TestResults.Bench" +
    +      "markType\022\020\n\010run_mode\030\013 \001(\t\022\022\n\ntf_version" +
    +      "\030\014 \001(\t\"\210\001\n\rBenchmarkType\022\013\n\007UNKNOWN\020\000\022\026\n" +
    +      "\022CPP_MICROBENCHMARK\020\001\022\024\n\020PYTHON_BENCHMAR" +
    +      "K\020\002\022\025\n\021ANDROID_BENCHMARK\020\003\022\022\n\016EDGE_BENCH" +
    +      "MARK\020\004\022\021\n\rIOS_BENCHMARK\020\005B*\n\024org.tensorf" +
    +      "low.protoB\rTestLogProtosP\001\370\001\001b\006proto3"
         };
         descriptor = com.google.protobuf.Descriptors.FileDescriptor
           .internalBuildGeneratedFileFrom(descriptorData,
    @@ -180,105 +191,106 @@ public static void registerAllExtensions(
         internal_static_tensorflow_EntryValue_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_EntryValue_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_EntryValue_descriptor,
             new java.lang.String[] { "DoubleValue", "StringValue", "Kind", });
         internal_static_tensorflow_MetricEntry_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_MetricEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_MetricEntry_descriptor,
             new java.lang.String[] { "Name", "Value", "MinValue", "MaxValue", });
         internal_static_tensorflow_BenchmarkEntry_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_BenchmarkEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_BenchmarkEntry_descriptor,
             new java.lang.String[] { "Name", "Iters", "CpuTime", "WallTime", "Throughput", "Extras", "Metrics", });
         internal_static_tensorflow_BenchmarkEntry_ExtrasEntry_descriptor =
           internal_static_tensorflow_BenchmarkEntry_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_BenchmarkEntry_ExtrasEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_BenchmarkEntry_ExtrasEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_BenchmarkEntries_descriptor =
           getDescriptor().getMessageTypes().get(3);
         internal_static_tensorflow_BenchmarkEntries_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_BenchmarkEntries_descriptor,
             new java.lang.String[] { "Entry", });
         internal_static_tensorflow_BuildConfiguration_descriptor =
           getDescriptor().getMessageTypes().get(4);
         internal_static_tensorflow_BuildConfiguration_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_BuildConfiguration_descriptor,
             new java.lang.String[] { "Mode", "CcFlags", "Opts", });
         internal_static_tensorflow_CommitId_descriptor =
           getDescriptor().getMessageTypes().get(5);
         internal_static_tensorflow_CommitId_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_CommitId_descriptor,
             new java.lang.String[] { "Changelist", "Hash", "Snapshot", "PendingChangelist", "Kind", });
         internal_static_tensorflow_CPUInfo_descriptor =
           getDescriptor().getMessageTypes().get(6);
         internal_static_tensorflow_CPUInfo_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_CPUInfo_descriptor,
             new java.lang.String[] { "NumCores", "NumCoresAllowed", "MhzPerCpu", "CpuInfo", "CpuGovernor", "CacheSize", });
         internal_static_tensorflow_CPUInfo_CacheSizeEntry_descriptor =
           internal_static_tensorflow_CPUInfo_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_CPUInfo_CacheSizeEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_CPUInfo_CacheSizeEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_MemoryInfo_descriptor =
           getDescriptor().getMessageTypes().get(7);
         internal_static_tensorflow_MemoryInfo_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_MemoryInfo_descriptor,
             new java.lang.String[] { "Total", "Available", });
         internal_static_tensorflow_GPUInfo_descriptor =
           getDescriptor().getMessageTypes().get(8);
         internal_static_tensorflow_GPUInfo_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_GPUInfo_descriptor,
             new java.lang.String[] { "Model", "Uuid", "BusId", });
         internal_static_tensorflow_PlatformInfo_descriptor =
           getDescriptor().getMessageTypes().get(9);
         internal_static_tensorflow_PlatformInfo_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_PlatformInfo_descriptor,
             new java.lang.String[] { "Bits", "Linkage", "Machine", "Release", "System", "Version", });
         internal_static_tensorflow_AvailableDeviceInfo_descriptor =
           getDescriptor().getMessageTypes().get(10);
         internal_static_tensorflow_AvailableDeviceInfo_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_AvailableDeviceInfo_descriptor,
             new java.lang.String[] { "Name", "Type", "MemoryLimit", "PhysicalDescription", });
         internal_static_tensorflow_MachineConfiguration_descriptor =
           getDescriptor().getMessageTypes().get(11);
         internal_static_tensorflow_MachineConfiguration_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_MachineConfiguration_descriptor,
             new java.lang.String[] { "Hostname", "SerialIdentifier", "PlatformInfo", "CpuInfo", "DeviceInfo", "AvailableDeviceInfo", "MemoryInfo", });
         internal_static_tensorflow_RunConfiguration_descriptor =
           getDescriptor().getMessageTypes().get(12);
         internal_static_tensorflow_RunConfiguration_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_RunConfiguration_descriptor,
             new java.lang.String[] { "Argument", "EnvVars", });
         internal_static_tensorflow_RunConfiguration_EnvVarsEntry_descriptor =
           internal_static_tensorflow_RunConfiguration_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_RunConfiguration_EnvVarsEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_RunConfiguration_EnvVarsEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_TestResults_descriptor =
           getDescriptor().getMessageTypes().get(13);
         internal_static_tensorflow_TestResults_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_TestResults_descriptor,
             new java.lang.String[] { "Target", "Entries", "BuildConfiguration", "CommitId", "StartTime", "RunTime", "MachineConfiguration", "RunConfiguration", "Name", "BenchmarkType", "RunMode", "TfVersion", });
    +    descriptor.resolveAllFeaturesImmutable();
         com.google.protobuf.AnyProto.getDescriptor();
         com.google.protobuf.WrappersProto.getDescriptor();
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TestResults.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TestResults.java
    index 09ed588ef20..673f570f56a 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TestResults.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TestResults.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,6 +9,7 @@
      * 
      * The output of one benchmark / test run.  Each run contains a list of
      * tests or benchmarks, stored as BenchmarkEntry messages.
    + *
      * This message should be emitted by the reporter (which runs the
      * test / BM in a subprocess and then reads the emitted BenchmarkEntry messages;
      * usually from a serialized json file, finally collecting them along
    @@ -16,12 +19,21 @@
      * Protobuf type {@code tensorflow.TestResults}
      */
     public final class TestResults extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.TestResults)
         TestResultsOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      TestResults.class.getName());
    +  }
       // Use TestResults.newBuilder() to construct.
    -  private TestResults(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private TestResults(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private TestResults() {
    @@ -32,25 +44,13 @@ private TestResults() {
         tfVersion_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new TestResults();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_TestResults_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_TestResults_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -97,6 +97,15 @@ public enum BenchmarkType
         UNRECOGNIZED(-1),
         ;
     
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        BenchmarkType.class.getName());
    +    }
         /**
          * 
          * Fallback for protos written before Type was introduced.
    @@ -213,12 +222,14 @@ private BenchmarkType(int value) {
         // @@protoc_insertion_point(enum_scope:tensorflow.TestResults.BenchmarkType)
       }
     
    +  private int bitField0_;
       public static final int TARGET_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object target_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object target_ = "";
       /**
        * 
        * The target of the run, e.g.:
    -   *  //tensorflow/core:kernels_adjust_contrast_op_benchmark_test
    +   * //tensorflow/core:kernels_adjust_contrast_op_benchmark_test
        * 
    * * string target = 1; @@ -240,7 +251,7 @@ public java.lang.String getTarget() { /** *
        * The target of the run, e.g.:
    -   *  //tensorflow/core:kernels_adjust_contrast_op_benchmark_test
    +   * //tensorflow/core:kernels_adjust_contrast_op_benchmark_test
        * 
    * * string target = 1; @@ -273,7 +284,7 @@ public java.lang.String getTarget() { */ @java.lang.Override public boolean hasEntries() { - return entries_ != null; + return ((bitField0_ & 0x00000001) != 0); } /** *
    @@ -296,7 +307,7 @@ public org.tensorflow.proto.BenchmarkEntries getEntries() {
        */
       @java.lang.Override
       public org.tensorflow.proto.BenchmarkEntriesOrBuilder getEntriesOrBuilder() {
    -    return getEntries();
    +    return entries_ == null ? org.tensorflow.proto.BenchmarkEntries.getDefaultInstance() : entries_;
       }
     
       public static final int BUILD_CONFIGURATION_FIELD_NUMBER = 3;
    @@ -311,7 +322,7 @@ public org.tensorflow.proto.BenchmarkEntriesOrBuilder getEntriesOrBuilder() {
        */
       @java.lang.Override
       public boolean hasBuildConfiguration() {
    -    return buildConfiguration_ != null;
    +    return ((bitField0_ & 0x00000002) != 0);
       }
       /**
        * 
    @@ -334,7 +345,7 @@ public org.tensorflow.proto.BuildConfiguration getBuildConfiguration() {
        */
       @java.lang.Override
       public org.tensorflow.proto.BuildConfigurationOrBuilder getBuildConfigurationOrBuilder() {
    -    return getBuildConfiguration();
    +    return buildConfiguration_ == null ? org.tensorflow.proto.BuildConfiguration.getDefaultInstance() : buildConfiguration_;
       }
     
       public static final int COMMIT_ID_FIELD_NUMBER = 4;
    @@ -349,7 +360,7 @@ public org.tensorflow.proto.BuildConfigurationOrBuilder getBuildConfigurationOrB
        */
       @java.lang.Override
       public boolean hasCommitId() {
    -    return commitId_ != null;
    +    return ((bitField0_ & 0x00000004) != 0);
       }
       /**
        * 
    @@ -372,11 +383,11 @@ public org.tensorflow.proto.CommitId getCommitId() {
        */
       @java.lang.Override
       public org.tensorflow.proto.CommitIdOrBuilder getCommitIdOrBuilder() {
    -    return getCommitId();
    +    return commitId_ == null ? org.tensorflow.proto.CommitId.getDefaultInstance() : commitId_;
       }
     
       public static final int START_TIME_FIELD_NUMBER = 5;
    -  private long startTime_;
    +  private long startTime_ = 0L;
       /**
        * 
        * The time the run started (in seconds of UTC time since Unix epoch)
    @@ -391,7 +402,7 @@ public long getStartTime() {
       }
     
       public static final int RUN_TIME_FIELD_NUMBER = 6;
    -  private double runTime_;
    +  private double runTime_ = 0D;
       /**
        * 
        * The amount of time the total run took (wall time in seconds)
    @@ -417,7 +428,7 @@ public double getRunTime() {
        */
       @java.lang.Override
       public boolean hasMachineConfiguration() {
    -    return machineConfiguration_ != null;
    +    return ((bitField0_ & 0x00000008) != 0);
       }
       /**
        * 
    @@ -440,7 +451,7 @@ public org.tensorflow.proto.MachineConfiguration getMachineConfiguration() {
        */
       @java.lang.Override
       public org.tensorflow.proto.MachineConfigurationOrBuilder getMachineConfigurationOrBuilder() {
    -    return getMachineConfiguration();
    +    return machineConfiguration_ == null ? org.tensorflow.proto.MachineConfiguration.getDefaultInstance() : machineConfiguration_;
       }
     
       public static final int RUN_CONFIGURATION_FIELD_NUMBER = 8;
    @@ -455,7 +466,7 @@ public org.tensorflow.proto.MachineConfigurationOrBuilder getMachineConfiguratio
        */
       @java.lang.Override
       public boolean hasRunConfiguration() {
    -    return runConfiguration_ != null;
    +    return ((bitField0_ & 0x00000010) != 0);
       }
       /**
        * 
    @@ -478,11 +489,12 @@ public org.tensorflow.proto.RunConfiguration getRunConfiguration() {
        */
       @java.lang.Override
       public org.tensorflow.proto.RunConfigurationOrBuilder getRunConfigurationOrBuilder() {
    -    return getRunConfiguration();
    +    return runConfiguration_ == null ? org.tensorflow.proto.RunConfiguration.getDefaultInstance() : runConfiguration_;
       }
     
       public static final int NAME_FIELD_NUMBER = 9;
    -  private volatile java.lang.Object name_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object name_ = "";
       /**
        * 
        * Benchmark target identifier.
    @@ -528,7 +540,7 @@ public java.lang.String getName() {
       }
     
       public static final int BENCHMARK_TYPE_FIELD_NUMBER = 10;
    -  private int benchmarkType_;
    +  private int benchmarkType_ = 0;
       /**
        * .tensorflow.TestResults.BenchmarkType benchmark_type = 10;
        * @return The enum numeric value on the wire for benchmarkType.
    @@ -541,13 +553,13 @@ public java.lang.String getName() {
        * @return The benchmarkType.
        */
       @java.lang.Override public org.tensorflow.proto.TestResults.BenchmarkType getBenchmarkType() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.TestResults.BenchmarkType result = org.tensorflow.proto.TestResults.BenchmarkType.valueOf(benchmarkType_);
    +    org.tensorflow.proto.TestResults.BenchmarkType result = org.tensorflow.proto.TestResults.BenchmarkType.forNumber(benchmarkType_);
         return result == null ? org.tensorflow.proto.TestResults.BenchmarkType.UNRECOGNIZED : result;
       }
     
       public static final int RUN_MODE_FIELD_NUMBER = 11;
    -  private volatile java.lang.Object runMode_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object runMode_ = "";
       /**
        * 
        * Used for differentiating between continuous and debug builds.
    @@ -601,7 +613,8 @@ public java.lang.String getRunMode() {
       }
     
       public static final int TF_VERSION_FIELD_NUMBER = 12;
    -  private volatile java.lang.Object tfVersion_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object tfVersion_ = "";
       /**
        * 
        * TensorFlow version this benchmark runs against.
    @@ -662,16 +675,16 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(target_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, target_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(target_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, target_);
         }
    -    if (entries_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(2, getEntries());
         }
    -    if (buildConfiguration_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           output.writeMessage(3, getBuildConfiguration());
         }
    -    if (commitId_ != null) {
    +    if (((bitField0_ & 0x00000004) != 0)) {
           output.writeMessage(4, getCommitId());
         }
         if (startTime_ != 0L) {
    @@ -680,23 +693,23 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (java.lang.Double.doubleToRawLongBits(runTime_) != 0) {
           output.writeDouble(6, runTime_);
         }
    -    if (machineConfiguration_ != null) {
    +    if (((bitField0_ & 0x00000008) != 0)) {
           output.writeMessage(7, getMachineConfiguration());
         }
    -    if (runConfiguration_ != null) {
    +    if (((bitField0_ & 0x00000010) != 0)) {
           output.writeMessage(8, getRunConfiguration());
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 9, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 9, name_);
         }
         if (benchmarkType_ != org.tensorflow.proto.TestResults.BenchmarkType.UNKNOWN.getNumber()) {
           output.writeEnum(10, benchmarkType_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(runMode_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 11, runMode_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(runMode_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 11, runMode_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tfVersion_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 12, tfVersion_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(tfVersion_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 12, tfVersion_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -707,18 +720,18 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(target_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, target_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(target_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, target_);
         }
    -    if (entries_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(2, getEntries());
         }
    -    if (buildConfiguration_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(3, getBuildConfiguration());
         }
    -    if (commitId_ != null) {
    +    if (((bitField0_ & 0x00000004) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(4, getCommitId());
         }
    @@ -730,26 +743,26 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeDoubleSize(6, runTime_);
         }
    -    if (machineConfiguration_ != null) {
    +    if (((bitField0_ & 0x00000008) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(7, getMachineConfiguration());
         }
    -    if (runConfiguration_ != null) {
    +    if (((bitField0_ & 0x00000010) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(8, getRunConfiguration());
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(9, name_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(9, name_);
         }
         if (benchmarkType_ != org.tensorflow.proto.TestResults.BenchmarkType.UNKNOWN.getNumber()) {
           size += com.google.protobuf.CodedOutputStream
             .computeEnumSize(10, benchmarkType_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(runMode_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(11, runMode_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(runMode_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(11, runMode_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(tfVersion_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(12, tfVersion_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(tfVersion_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(12, tfVersion_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -891,39 +904,41 @@ public static org.tensorflow.proto.TestResults parseFrom(
       }
       public static org.tensorflow.proto.TestResults parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.TestResults parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.TestResults parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.TestResults parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.TestResults parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.TestResults parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -943,7 +958,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -951,6 +966,7 @@ protected Builder newBuilderForType(
        * 
        * The output of one benchmark / test run.  Each run contains a list of
        * tests or benchmarks, stored as BenchmarkEntry messages.
    +   *
        * This message should be emitted by the reporter (which runs the
        * test / BM in a subprocess and then reads the emitted BenchmarkEntry messages;
        * usually from a serialized json file, finally collecting them along
    @@ -960,7 +976,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.TestResults}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.TestResults)
           org.tensorflow.proto.TestResultsOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -969,7 +985,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TestLogProtos.internal_static_tensorflow_TestResults_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -978,61 +994,60 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.TestResults.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getEntriesFieldBuilder();
    +        getBuildConfigurationFieldBuilder();
    +        getCommitIdFieldBuilder();
    +        getMachineConfigurationFieldBuilder();
    +        getRunConfigurationFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           target_ = "";
    -
    -      if (entriesBuilder_ == null) {
    -        entries_ = null;
    -      } else {
    -        entries_ = null;
    +      entries_ = null;
    +      if (entriesBuilder_ != null) {
    +        entriesBuilder_.dispose();
             entriesBuilder_ = null;
           }
    -      if (buildConfigurationBuilder_ == null) {
    -        buildConfiguration_ = null;
    -      } else {
    -        buildConfiguration_ = null;
    +      buildConfiguration_ = null;
    +      if (buildConfigurationBuilder_ != null) {
    +        buildConfigurationBuilder_.dispose();
             buildConfigurationBuilder_ = null;
           }
    -      if (commitIdBuilder_ == null) {
    -        commitId_ = null;
    -      } else {
    -        commitId_ = null;
    +      commitId_ = null;
    +      if (commitIdBuilder_ != null) {
    +        commitIdBuilder_.dispose();
             commitIdBuilder_ = null;
           }
           startTime_ = 0L;
    -
           runTime_ = 0D;
    -
    -      if (machineConfigurationBuilder_ == null) {
    -        machineConfiguration_ = null;
    -      } else {
    -        machineConfiguration_ = null;
    +      machineConfiguration_ = null;
    +      if (machineConfigurationBuilder_ != null) {
    +        machineConfigurationBuilder_.dispose();
             machineConfigurationBuilder_ = null;
           }
    -      if (runConfigurationBuilder_ == null) {
    -        runConfiguration_ = null;
    -      } else {
    -        runConfiguration_ = null;
    +      runConfiguration_ = null;
    +      if (runConfigurationBuilder_ != null) {
    +        runConfigurationBuilder_.dispose();
             runConfigurationBuilder_ = null;
           }
           name_ = "";
    -
           benchmarkType_ = 0;
    -
           runMode_ = "";
    -
           tfVersion_ = "";
    -
           return this;
         }
     
    @@ -1059,74 +1074,68 @@ public org.tensorflow.proto.TestResults build() {
         @java.lang.Override
         public org.tensorflow.proto.TestResults buildPartial() {
           org.tensorflow.proto.TestResults result = new org.tensorflow.proto.TestResults(this);
    -      result.target_ = target_;
    -      if (entriesBuilder_ == null) {
    -        result.entries_ = entries_;
    -      } else {
    -        result.entries_ = entriesBuilder_.build();
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartial0(org.tensorflow.proto.TestResults result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.target_ = target_;
           }
    -      if (buildConfigurationBuilder_ == null) {
    -        result.buildConfiguration_ = buildConfiguration_;
    -      } else {
    -        result.buildConfiguration_ = buildConfigurationBuilder_.build();
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.entries_ = entriesBuilder_ == null
    +            ? entries_
    +            : entriesBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
           }
    -      if (commitIdBuilder_ == null) {
    -        result.commitId_ = commitId_;
    -      } else {
    -        result.commitId_ = commitIdBuilder_.build();
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.buildConfiguration_ = buildConfigurationBuilder_ == null
    +            ? buildConfiguration_
    +            : buildConfigurationBuilder_.build();
    +        to_bitField0_ |= 0x00000002;
           }
    -      result.startTime_ = startTime_;
    -      result.runTime_ = runTime_;
    -      if (machineConfigurationBuilder_ == null) {
    -        result.machineConfiguration_ = machineConfiguration_;
    -      } else {
    -        result.machineConfiguration_ = machineConfigurationBuilder_.build();
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.commitId_ = commitIdBuilder_ == null
    +            ? commitId_
    +            : commitIdBuilder_.build();
    +        to_bitField0_ |= 0x00000004;
           }
    -      if (runConfigurationBuilder_ == null) {
    -        result.runConfiguration_ = runConfiguration_;
    -      } else {
    -        result.runConfiguration_ = runConfigurationBuilder_.build();
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.startTime_ = startTime_;
           }
    -      result.name_ = name_;
    -      result.benchmarkType_ = benchmarkType_;
    -      result.runMode_ = runMode_;
    -      result.tfVersion_ = tfVersion_;
    -      onBuilt();
    -      return result;
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.runTime_ = runTime_;
    +      }
    +      if (((from_bitField0_ & 0x00000040) != 0)) {
    +        result.machineConfiguration_ = machineConfigurationBuilder_ == null
    +            ? machineConfiguration_
    +            : machineConfigurationBuilder_.build();
    +        to_bitField0_ |= 0x00000008;
    +      }
    +      if (((from_bitField0_ & 0x00000080) != 0)) {
    +        result.runConfiguration_ = runConfigurationBuilder_ == null
    +            ? runConfiguration_
    +            : runConfigurationBuilder_.build();
    +        to_bitField0_ |= 0x00000010;
    +      }
    +      if (((from_bitField0_ & 0x00000100) != 0)) {
    +        result.name_ = name_;
    +      }
    +      if (((from_bitField0_ & 0x00000200) != 0)) {
    +        result.benchmarkType_ = benchmarkType_;
    +      }
    +      if (((from_bitField0_ & 0x00000400) != 0)) {
    +        result.runMode_ = runMode_;
    +      }
    +      if (((from_bitField0_ & 0x00000800) != 0)) {
    +        result.tfVersion_ = tfVersion_;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    -    }
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.TestResults) {
    @@ -1141,6 +1150,7 @@ public Builder mergeFrom(org.tensorflow.proto.TestResults other) {
           if (other == org.tensorflow.proto.TestResults.getDefaultInstance()) return this;
           if (!other.getTarget().isEmpty()) {
             target_ = other.target_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (other.hasEntries()) {
    @@ -1166,6 +1176,7 @@ public Builder mergeFrom(org.tensorflow.proto.TestResults other) {
           }
           if (!other.getName().isEmpty()) {
             name_ = other.name_;
    +        bitField0_ |= 0x00000100;
             onChanged();
           }
           if (other.benchmarkType_ != 0) {
    @@ -1173,10 +1184,12 @@ public Builder mergeFrom(org.tensorflow.proto.TestResults other) {
           }
           if (!other.getRunMode().isEmpty()) {
             runMode_ = other.runMode_;
    +        bitField0_ |= 0x00000400;
             onChanged();
           }
           if (!other.getTfVersion().isEmpty()) {
             tfVersion_ = other.tfVersion_;
    +        bitField0_ |= 0x00000800;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -1207,72 +1220,72 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   target_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   input.readMessage(
                       getEntriesFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
                   input.readMessage(
                       getBuildConfigurationFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 case 34: {
                   input.readMessage(
                       getCommitIdFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 34
                 case 40: {
                   startTime_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 40
                 case 49: {
                   runTime_ = input.readDouble();
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 49
                 case 58: {
                   input.readMessage(
                       getMachineConfigurationFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000040;
                   break;
                 } // case 58
                 case 66: {
                   input.readMessage(
                       getRunConfigurationFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000080;
                   break;
                 } // case 66
                 case 74: {
                   name_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000100;
                   break;
                 } // case 74
                 case 80: {
                   benchmarkType_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000200;
                   break;
                 } // case 80
                 case 90: {
                   runMode_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000400;
                   break;
                 } // case 90
                 case 98: {
                   tfVersion_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000800;
                   break;
                 } // case 98
                 default: {
    @@ -1290,12 +1303,13 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object target_ = "";
         /**
          * 
          * The target of the run, e.g.:
    -     *  //tensorflow/core:kernels_adjust_contrast_op_benchmark_test
    +     * //tensorflow/core:kernels_adjust_contrast_op_benchmark_test
          * 
    * * string target = 1; @@ -1316,7 +1330,7 @@ public java.lang.String getTarget() { /** *
          * The target of the run, e.g.:
    -     *  //tensorflow/core:kernels_adjust_contrast_op_benchmark_test
    +     * //tensorflow/core:kernels_adjust_contrast_op_benchmark_test
          * 
    * * string target = 1; @@ -1338,7 +1352,7 @@ public java.lang.String getTarget() { /** *
          * The target of the run, e.g.:
    -     *  //tensorflow/core:kernels_adjust_contrast_op_benchmark_test
    +     * //tensorflow/core:kernels_adjust_contrast_op_benchmark_test
          * 
    * * string target = 1; @@ -1347,33 +1361,31 @@ public java.lang.String getTarget() { */ public Builder setTarget( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } target_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } /** *
          * The target of the run, e.g.:
    -     *  //tensorflow/core:kernels_adjust_contrast_op_benchmark_test
    +     * //tensorflow/core:kernels_adjust_contrast_op_benchmark_test
          * 
    * * string target = 1; * @return This builder for chaining. */ public Builder clearTarget() { - target_ = getDefaultInstance().getTarget(); + bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } /** *
          * The target of the run, e.g.:
    -     *  //tensorflow/core:kernels_adjust_contrast_op_benchmark_test
    +     * //tensorflow/core:kernels_adjust_contrast_op_benchmark_test
          * 
    * * string target = 1; @@ -1382,18 +1394,16 @@ public Builder clearTarget() { */ public Builder setTargetBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); target_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } private org.tensorflow.proto.BenchmarkEntries entries_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.BenchmarkEntries, org.tensorflow.proto.BenchmarkEntries.Builder, org.tensorflow.proto.BenchmarkEntriesOrBuilder> entriesBuilder_; /** *
    @@ -1404,7 +1414,7 @@ public Builder setTargetBytes(
          * @return Whether the entries field is set.
          */
         public boolean hasEntries() {
    -      return entriesBuilder_ != null || entries_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -1434,11 +1444,11 @@ public Builder setEntries(org.tensorflow.proto.BenchmarkEntries value) {
               throw new NullPointerException();
             }
             entries_ = value;
    -        onChanged();
           } else {
             entriesBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -1452,11 +1462,11 @@ public Builder setEntries(
             org.tensorflow.proto.BenchmarkEntries.Builder builderForValue) {
           if (entriesBuilder_ == null) {
             entries_ = builderForValue.build();
    -        onChanged();
           } else {
             entriesBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -1468,17 +1478,20 @@ public Builder setEntries(
          */
         public Builder mergeEntries(org.tensorflow.proto.BenchmarkEntries value) {
           if (entriesBuilder_ == null) {
    -        if (entries_ != null) {
    -          entries_ =
    -            org.tensorflow.proto.BenchmarkEntries.newBuilder(entries_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000002) != 0) &&
    +          entries_ != null &&
    +          entries_ != org.tensorflow.proto.BenchmarkEntries.getDefaultInstance()) {
    +          getEntriesBuilder().mergeFrom(value);
             } else {
               entries_ = value;
             }
    -        onChanged();
           } else {
             entriesBuilder_.mergeFrom(value);
           }
    -
    +      if (entries_ != null) {
    +        bitField0_ |= 0x00000002;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -1489,14 +1502,13 @@ public Builder mergeEntries(org.tensorflow.proto.BenchmarkEntries value) {
          * .tensorflow.BenchmarkEntries entries = 2;
          */
         public Builder clearEntries() {
    -      if (entriesBuilder_ == null) {
    -        entries_ = null;
    -        onChanged();
    -      } else {
    -        entries_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      entries_ = null;
    +      if (entriesBuilder_ != null) {
    +        entriesBuilder_.dispose();
             entriesBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -1507,7 +1519,7 @@ public Builder clearEntries() {
          * .tensorflow.BenchmarkEntries entries = 2;
          */
         public org.tensorflow.proto.BenchmarkEntries.Builder getEntriesBuilder() {
    -      
    +      bitField0_ |= 0x00000002;
           onChanged();
           return getEntriesFieldBuilder().getBuilder();
         }
    @@ -1533,11 +1545,11 @@ public org.tensorflow.proto.BenchmarkEntriesOrBuilder getEntriesOrBuilder() {
          *
          * .tensorflow.BenchmarkEntries entries = 2;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.BenchmarkEntries, org.tensorflow.proto.BenchmarkEntries.Builder, org.tensorflow.proto.BenchmarkEntriesOrBuilder> 
             getEntriesFieldBuilder() {
           if (entriesBuilder_ == null) {
    -        entriesBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        entriesBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.BenchmarkEntries, org.tensorflow.proto.BenchmarkEntries.Builder, org.tensorflow.proto.BenchmarkEntriesOrBuilder>(
                     getEntries(),
                     getParentForChildren(),
    @@ -1548,7 +1560,7 @@ public org.tensorflow.proto.BenchmarkEntriesOrBuilder getEntriesOrBuilder() {
         }
     
         private org.tensorflow.proto.BuildConfiguration buildConfiguration_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.BuildConfiguration, org.tensorflow.proto.BuildConfiguration.Builder, org.tensorflow.proto.BuildConfigurationOrBuilder> buildConfigurationBuilder_;
         /**
          * 
    @@ -1559,7 +1571,7 @@ public org.tensorflow.proto.BenchmarkEntriesOrBuilder getEntriesOrBuilder() {
          * @return Whether the buildConfiguration field is set.
          */
         public boolean hasBuildConfiguration() {
    -      return buildConfigurationBuilder_ != null || buildConfiguration_ != null;
    +      return ((bitField0_ & 0x00000004) != 0);
         }
         /**
          * 
    @@ -1589,11 +1601,11 @@ public Builder setBuildConfiguration(org.tensorflow.proto.BuildConfiguration val
               throw new NullPointerException();
             }
             buildConfiguration_ = value;
    -        onChanged();
           } else {
             buildConfigurationBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -1607,11 +1619,11 @@ public Builder setBuildConfiguration(
             org.tensorflow.proto.BuildConfiguration.Builder builderForValue) {
           if (buildConfigurationBuilder_ == null) {
             buildConfiguration_ = builderForValue.build();
    -        onChanged();
           } else {
             buildConfigurationBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -1623,17 +1635,20 @@ public Builder setBuildConfiguration(
          */
         public Builder mergeBuildConfiguration(org.tensorflow.proto.BuildConfiguration value) {
           if (buildConfigurationBuilder_ == null) {
    -        if (buildConfiguration_ != null) {
    -          buildConfiguration_ =
    -            org.tensorflow.proto.BuildConfiguration.newBuilder(buildConfiguration_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000004) != 0) &&
    +          buildConfiguration_ != null &&
    +          buildConfiguration_ != org.tensorflow.proto.BuildConfiguration.getDefaultInstance()) {
    +          getBuildConfigurationBuilder().mergeFrom(value);
             } else {
               buildConfiguration_ = value;
             }
    -        onChanged();
           } else {
             buildConfigurationBuilder_.mergeFrom(value);
           }
    -
    +      if (buildConfiguration_ != null) {
    +        bitField0_ |= 0x00000004;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -1644,14 +1659,13 @@ public Builder mergeBuildConfiguration(org.tensorflow.proto.BuildConfiguration v
          * .tensorflow.BuildConfiguration build_configuration = 3;
          */
         public Builder clearBuildConfiguration() {
    -      if (buildConfigurationBuilder_ == null) {
    -        buildConfiguration_ = null;
    -        onChanged();
    -      } else {
    -        buildConfiguration_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000004);
    +      buildConfiguration_ = null;
    +      if (buildConfigurationBuilder_ != null) {
    +        buildConfigurationBuilder_.dispose();
             buildConfigurationBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -1662,7 +1676,7 @@ public Builder clearBuildConfiguration() {
          * .tensorflow.BuildConfiguration build_configuration = 3;
          */
         public org.tensorflow.proto.BuildConfiguration.Builder getBuildConfigurationBuilder() {
    -      
    +      bitField0_ |= 0x00000004;
           onChanged();
           return getBuildConfigurationFieldBuilder().getBuilder();
         }
    @@ -1688,11 +1702,11 @@ public org.tensorflow.proto.BuildConfigurationOrBuilder getBuildConfigurationOrB
          *
          * .tensorflow.BuildConfiguration build_configuration = 3;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.BuildConfiguration, org.tensorflow.proto.BuildConfiguration.Builder, org.tensorflow.proto.BuildConfigurationOrBuilder> 
             getBuildConfigurationFieldBuilder() {
           if (buildConfigurationBuilder_ == null) {
    -        buildConfigurationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        buildConfigurationBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.BuildConfiguration, org.tensorflow.proto.BuildConfiguration.Builder, org.tensorflow.proto.BuildConfigurationOrBuilder>(
                     getBuildConfiguration(),
                     getParentForChildren(),
    @@ -1703,7 +1717,7 @@ public org.tensorflow.proto.BuildConfigurationOrBuilder getBuildConfigurationOrB
         }
     
         private org.tensorflow.proto.CommitId commitId_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.CommitId, org.tensorflow.proto.CommitId.Builder, org.tensorflow.proto.CommitIdOrBuilder> commitIdBuilder_;
         /**
          * 
    @@ -1714,7 +1728,7 @@ public org.tensorflow.proto.BuildConfigurationOrBuilder getBuildConfigurationOrB
          * @return Whether the commitId field is set.
          */
         public boolean hasCommitId() {
    -      return commitIdBuilder_ != null || commitId_ != null;
    +      return ((bitField0_ & 0x00000008) != 0);
         }
         /**
          * 
    @@ -1744,11 +1758,11 @@ public Builder setCommitId(org.tensorflow.proto.CommitId value) {
               throw new NullPointerException();
             }
             commitId_ = value;
    -        onChanged();
           } else {
             commitIdBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000008;
    +      onChanged();
           return this;
         }
         /**
    @@ -1762,11 +1776,11 @@ public Builder setCommitId(
             org.tensorflow.proto.CommitId.Builder builderForValue) {
           if (commitIdBuilder_ == null) {
             commitId_ = builderForValue.build();
    -        onChanged();
           } else {
             commitIdBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000008;
    +      onChanged();
           return this;
         }
         /**
    @@ -1778,17 +1792,20 @@ public Builder setCommitId(
          */
         public Builder mergeCommitId(org.tensorflow.proto.CommitId value) {
           if (commitIdBuilder_ == null) {
    -        if (commitId_ != null) {
    -          commitId_ =
    -            org.tensorflow.proto.CommitId.newBuilder(commitId_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000008) != 0) &&
    +          commitId_ != null &&
    +          commitId_ != org.tensorflow.proto.CommitId.getDefaultInstance()) {
    +          getCommitIdBuilder().mergeFrom(value);
             } else {
               commitId_ = value;
             }
    -        onChanged();
           } else {
             commitIdBuilder_.mergeFrom(value);
           }
    -
    +      if (commitId_ != null) {
    +        bitField0_ |= 0x00000008;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -1799,14 +1816,13 @@ public Builder mergeCommitId(org.tensorflow.proto.CommitId value) {
          * .tensorflow.CommitId commit_id = 4;
          */
         public Builder clearCommitId() {
    -      if (commitIdBuilder_ == null) {
    -        commitId_ = null;
    -        onChanged();
    -      } else {
    -        commitId_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000008);
    +      commitId_ = null;
    +      if (commitIdBuilder_ != null) {
    +        commitIdBuilder_.dispose();
             commitIdBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -1817,7 +1833,7 @@ public Builder clearCommitId() {
          * .tensorflow.CommitId commit_id = 4;
          */
         public org.tensorflow.proto.CommitId.Builder getCommitIdBuilder() {
    -      
    +      bitField0_ |= 0x00000008;
           onChanged();
           return getCommitIdFieldBuilder().getBuilder();
         }
    @@ -1843,11 +1859,11 @@ public org.tensorflow.proto.CommitIdOrBuilder getCommitIdOrBuilder() {
          *
          * .tensorflow.CommitId commit_id = 4;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.CommitId, org.tensorflow.proto.CommitId.Builder, org.tensorflow.proto.CommitIdOrBuilder> 
             getCommitIdFieldBuilder() {
           if (commitIdBuilder_ == null) {
    -        commitIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        commitIdBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.CommitId, org.tensorflow.proto.CommitId.Builder, org.tensorflow.proto.CommitIdOrBuilder>(
                     getCommitId(),
                     getParentForChildren(),
    @@ -1880,8 +1896,9 @@ public long getStartTime() {
          * @return This builder for chaining.
          */
         public Builder setStartTime(long value) {
    -      
    +
           startTime_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1894,7 +1911,7 @@ public Builder setStartTime(long value) {
          * @return This builder for chaining.
          */
         public Builder clearStartTime() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000010);
           startTime_ = 0L;
           onChanged();
           return this;
    @@ -1923,8 +1940,9 @@ public double getRunTime() {
          * @return This builder for chaining.
          */
         public Builder setRunTime(double value) {
    -      
    +
           runTime_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -1937,14 +1955,14 @@ public Builder setRunTime(double value) {
          * @return This builder for chaining.
          */
         public Builder clearRunTime() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000020);
           runTime_ = 0D;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.MachineConfiguration machineConfiguration_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.MachineConfiguration, org.tensorflow.proto.MachineConfiguration.Builder, org.tensorflow.proto.MachineConfigurationOrBuilder> machineConfigurationBuilder_;
         /**
          * 
    @@ -1955,7 +1973,7 @@ public Builder clearRunTime() {
          * @return Whether the machineConfiguration field is set.
          */
         public boolean hasMachineConfiguration() {
    -      return machineConfigurationBuilder_ != null || machineConfiguration_ != null;
    +      return ((bitField0_ & 0x00000040) != 0);
         }
         /**
          * 
    @@ -1985,11 +2003,11 @@ public Builder setMachineConfiguration(org.tensorflow.proto.MachineConfiguration
               throw new NullPointerException();
             }
             machineConfiguration_ = value;
    -        onChanged();
           } else {
             machineConfigurationBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000040;
    +      onChanged();
           return this;
         }
         /**
    @@ -2003,11 +2021,11 @@ public Builder setMachineConfiguration(
             org.tensorflow.proto.MachineConfiguration.Builder builderForValue) {
           if (machineConfigurationBuilder_ == null) {
             machineConfiguration_ = builderForValue.build();
    -        onChanged();
           } else {
             machineConfigurationBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000040;
    +      onChanged();
           return this;
         }
         /**
    @@ -2019,17 +2037,20 @@ public Builder setMachineConfiguration(
          */
         public Builder mergeMachineConfiguration(org.tensorflow.proto.MachineConfiguration value) {
           if (machineConfigurationBuilder_ == null) {
    -        if (machineConfiguration_ != null) {
    -          machineConfiguration_ =
    -            org.tensorflow.proto.MachineConfiguration.newBuilder(machineConfiguration_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000040) != 0) &&
    +          machineConfiguration_ != null &&
    +          machineConfiguration_ != org.tensorflow.proto.MachineConfiguration.getDefaultInstance()) {
    +          getMachineConfigurationBuilder().mergeFrom(value);
             } else {
               machineConfiguration_ = value;
             }
    -        onChanged();
           } else {
             machineConfigurationBuilder_.mergeFrom(value);
           }
    -
    +      if (machineConfiguration_ != null) {
    +        bitField0_ |= 0x00000040;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -2040,14 +2061,13 @@ public Builder mergeMachineConfiguration(org.tensorflow.proto.MachineConfigurati
          * .tensorflow.MachineConfiguration machine_configuration = 7;
          */
         public Builder clearMachineConfiguration() {
    -      if (machineConfigurationBuilder_ == null) {
    -        machineConfiguration_ = null;
    -        onChanged();
    -      } else {
    -        machineConfiguration_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000040);
    +      machineConfiguration_ = null;
    +      if (machineConfigurationBuilder_ != null) {
    +        machineConfigurationBuilder_.dispose();
             machineConfigurationBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -2058,7 +2078,7 @@ public Builder clearMachineConfiguration() {
          * .tensorflow.MachineConfiguration machine_configuration = 7;
          */
         public org.tensorflow.proto.MachineConfiguration.Builder getMachineConfigurationBuilder() {
    -      
    +      bitField0_ |= 0x00000040;
           onChanged();
           return getMachineConfigurationFieldBuilder().getBuilder();
         }
    @@ -2084,11 +2104,11 @@ public org.tensorflow.proto.MachineConfigurationOrBuilder getMachineConfiguratio
          *
          * .tensorflow.MachineConfiguration machine_configuration = 7;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.MachineConfiguration, org.tensorflow.proto.MachineConfiguration.Builder, org.tensorflow.proto.MachineConfigurationOrBuilder> 
             getMachineConfigurationFieldBuilder() {
           if (machineConfigurationBuilder_ == null) {
    -        machineConfigurationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        machineConfigurationBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.MachineConfiguration, org.tensorflow.proto.MachineConfiguration.Builder, org.tensorflow.proto.MachineConfigurationOrBuilder>(
                     getMachineConfiguration(),
                     getParentForChildren(),
    @@ -2099,7 +2119,7 @@ public org.tensorflow.proto.MachineConfigurationOrBuilder getMachineConfiguratio
         }
     
         private org.tensorflow.proto.RunConfiguration runConfiguration_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.RunConfiguration, org.tensorflow.proto.RunConfiguration.Builder, org.tensorflow.proto.RunConfigurationOrBuilder> runConfigurationBuilder_;
         /**
          * 
    @@ -2110,7 +2130,7 @@ public org.tensorflow.proto.MachineConfigurationOrBuilder getMachineConfiguratio
          * @return Whether the runConfiguration field is set.
          */
         public boolean hasRunConfiguration() {
    -      return runConfigurationBuilder_ != null || runConfiguration_ != null;
    +      return ((bitField0_ & 0x00000080) != 0);
         }
         /**
          * 
    @@ -2140,11 +2160,11 @@ public Builder setRunConfiguration(org.tensorflow.proto.RunConfiguration value)
               throw new NullPointerException();
             }
             runConfiguration_ = value;
    -        onChanged();
           } else {
             runConfigurationBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000080;
    +      onChanged();
           return this;
         }
         /**
    @@ -2158,11 +2178,11 @@ public Builder setRunConfiguration(
             org.tensorflow.proto.RunConfiguration.Builder builderForValue) {
           if (runConfigurationBuilder_ == null) {
             runConfiguration_ = builderForValue.build();
    -        onChanged();
           } else {
             runConfigurationBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000080;
    +      onChanged();
           return this;
         }
         /**
    @@ -2174,17 +2194,20 @@ public Builder setRunConfiguration(
          */
         public Builder mergeRunConfiguration(org.tensorflow.proto.RunConfiguration value) {
           if (runConfigurationBuilder_ == null) {
    -        if (runConfiguration_ != null) {
    -          runConfiguration_ =
    -            org.tensorflow.proto.RunConfiguration.newBuilder(runConfiguration_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000080) != 0) &&
    +          runConfiguration_ != null &&
    +          runConfiguration_ != org.tensorflow.proto.RunConfiguration.getDefaultInstance()) {
    +          getRunConfigurationBuilder().mergeFrom(value);
             } else {
               runConfiguration_ = value;
             }
    -        onChanged();
           } else {
             runConfigurationBuilder_.mergeFrom(value);
           }
    -
    +      if (runConfiguration_ != null) {
    +        bitField0_ |= 0x00000080;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -2195,14 +2218,13 @@ public Builder mergeRunConfiguration(org.tensorflow.proto.RunConfiguration value
          * .tensorflow.RunConfiguration run_configuration = 8;
          */
         public Builder clearRunConfiguration() {
    -      if (runConfigurationBuilder_ == null) {
    -        runConfiguration_ = null;
    -        onChanged();
    -      } else {
    -        runConfiguration_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000080);
    +      runConfiguration_ = null;
    +      if (runConfigurationBuilder_ != null) {
    +        runConfigurationBuilder_.dispose();
             runConfigurationBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -2213,7 +2235,7 @@ public Builder clearRunConfiguration() {
          * .tensorflow.RunConfiguration run_configuration = 8;
          */
         public org.tensorflow.proto.RunConfiguration.Builder getRunConfigurationBuilder() {
    -      
    +      bitField0_ |= 0x00000080;
           onChanged();
           return getRunConfigurationFieldBuilder().getBuilder();
         }
    @@ -2239,11 +2261,11 @@ public org.tensorflow.proto.RunConfigurationOrBuilder getRunConfigurationOrBuild
          *
          * .tensorflow.RunConfiguration run_configuration = 8;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.RunConfiguration, org.tensorflow.proto.RunConfiguration.Builder, org.tensorflow.proto.RunConfigurationOrBuilder> 
             getRunConfigurationFieldBuilder() {
           if (runConfigurationBuilder_ == null) {
    -        runConfigurationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        runConfigurationBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.RunConfiguration, org.tensorflow.proto.RunConfiguration.Builder, org.tensorflow.proto.RunConfigurationOrBuilder>(
                     getRunConfiguration(),
                     getParentForChildren(),
    @@ -2306,11 +2328,9 @@ public java.lang.String getName() {
          */
         public Builder setName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           name_ = value;
    +      bitField0_ |= 0x00000100;
           onChanged();
           return this;
         }
    @@ -2323,8 +2343,8 @@ public Builder setName(
          * @return This builder for chaining.
          */
         public Builder clearName() {
    -      
           name_ = getDefaultInstance().getName();
    +      bitField0_ = (bitField0_ & ~0x00000100);
           onChanged();
           return this;
         }
    @@ -2339,12 +2359,10 @@ public Builder clearName() {
          */
         public Builder setNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           name_ = value;
    +      bitField0_ |= 0x00000100;
           onChanged();
           return this;
         }
    @@ -2363,8 +2381,8 @@ public Builder setNameBytes(
          * @return This builder for chaining.
          */
         public Builder setBenchmarkTypeValue(int value) {
    -      
           benchmarkType_ = value;
    +      bitField0_ |= 0x00000200;
           onChanged();
           return this;
         }
    @@ -2374,8 +2392,7 @@ public Builder setBenchmarkTypeValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.TestResults.BenchmarkType getBenchmarkType() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.TestResults.BenchmarkType result = org.tensorflow.proto.TestResults.BenchmarkType.valueOf(benchmarkType_);
    +      org.tensorflow.proto.TestResults.BenchmarkType result = org.tensorflow.proto.TestResults.BenchmarkType.forNumber(benchmarkType_);
           return result == null ? org.tensorflow.proto.TestResults.BenchmarkType.UNRECOGNIZED : result;
         }
         /**
    @@ -2387,7 +2404,7 @@ public Builder setBenchmarkType(org.tensorflow.proto.TestResults.BenchmarkType v
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000200;
           benchmarkType_ = value.getNumber();
           onChanged();
           return this;
    @@ -2397,7 +2414,7 @@ public Builder setBenchmarkType(org.tensorflow.proto.TestResults.BenchmarkType v
          * @return This builder for chaining.
          */
         public Builder clearBenchmarkType() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000200);
           benchmarkType_ = 0;
           onChanged();
           return this;
    @@ -2468,11 +2485,9 @@ public java.lang.String getRunMode() {
          */
         public Builder setRunMode(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           runMode_ = value;
    +      bitField0_ |= 0x00000400;
           onChanged();
           return this;
         }
    @@ -2489,8 +2504,8 @@ public Builder setRunMode(
          * @return This builder for chaining.
          */
         public Builder clearRunMode() {
    -      
           runMode_ = getDefaultInstance().getRunMode();
    +      bitField0_ = (bitField0_ & ~0x00000400);
           onChanged();
           return this;
         }
    @@ -2509,12 +2524,10 @@ public Builder clearRunMode() {
          */
         public Builder setRunModeBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           runMode_ = value;
    +      bitField0_ |= 0x00000400;
           onChanged();
           return this;
         }
    @@ -2575,11 +2588,9 @@ public java.lang.String getTfVersion() {
          */
         public Builder setTfVersion(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           tfVersion_ = value;
    +      bitField0_ |= 0x00000800;
           onChanged();
           return this;
         }
    @@ -2593,8 +2604,8 @@ public Builder setTfVersion(
          * @return This builder for chaining.
          */
         public Builder clearTfVersion() {
    -      
           tfVersion_ = getDefaultInstance().getTfVersion();
    +      bitField0_ = (bitField0_ & ~0x00000800);
           onChanged();
           return this;
         }
    @@ -2610,27 +2621,13 @@ public Builder clearTfVersion() {
          */
         public Builder setTfVersionBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           tfVersion_ = value;
    +      bitField0_ |= 0x00000800;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.TestResults)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TestResultsOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TestResultsOrBuilder.java
    index 3afd736b478..ec051f94716 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TestResultsOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TestResultsOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/test_log.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/test_log.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -10,7 +12,7 @@ public interface TestResultsOrBuilder extends
       /**
        * 
        * The target of the run, e.g.:
    -   *  //tensorflow/core:kernels_adjust_contrast_op_benchmark_test
    +   * //tensorflow/core:kernels_adjust_contrast_op_benchmark_test
        * 
    * * string target = 1; @@ -20,7 +22,7 @@ public interface TestResultsOrBuilder extends /** *
        * The target of the run, e.g.:
    -   *  //tensorflow/core:kernels_adjust_contrast_op_benchmark_test
    +   * //tensorflow/core:kernels_adjust_contrast_op_benchmark_test
        * 
    * * string target = 1; diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ThreadPoolOptionProto.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ThreadPoolOptionProto.java index c9f888e9706..b5618ce9bed 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ThreadPoolOptionProto.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ThreadPoolOptionProto.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/config.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -7,37 +9,34 @@ * Protobuf type {@code tensorflow.ThreadPoolOptionProto} */ public final class ThreadPoolOptionProto extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.ThreadPoolOptionProto) ThreadPoolOptionProtoOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + ThreadPoolOptionProto.class.getName()); + } // Use ThreadPoolOptionProto.newBuilder() to construct. - private ThreadPoolOptionProto(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private ThreadPoolOptionProto(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private ThreadPoolOptionProto() { globalName_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new ThreadPoolOptionProto(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_ThreadPoolOptionProto_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_ThreadPoolOptionProto_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -45,10 +44,11 @@ protected java.lang.Object newInstance( } public static final int NUM_THREADS_FIELD_NUMBER = 1; - private int numThreads_; + private int numThreads_ = 0; /** *
        * The number of threads in the pool.
    +   *
        * 0 means the system picks a value based on where this option proto is used
        * (see the declaration of the specific field for more info).
        * 
    @@ -62,21 +62,24 @@ public int getNumThreads() { } public static final int GLOBAL_NAME_FIELD_NUMBER = 2; - private volatile java.lang.Object globalName_; + @SuppressWarnings("serial") + private volatile java.lang.Object globalName_ = ""; /** *
        * The global name of the threadpool.
    +   *
        * If empty, then the threadpool is made and used according to the scope it's
        * in - e.g., for a session threadpool, it is used by that session only.
    +   *
        * If non-empty, then:
        * - a global threadpool associated with this name is looked
    -   *   up or created. This allows, for example, sharing one threadpool across
    -   *   many sessions (e.g., like the default behavior, if
    -   *   inter_op_parallelism_threads is not configured), but still partitioning
    -   *   into a large and small pool.
    +   * up or created. This allows, for example, sharing one threadpool across
    +   * many sessions (e.g., like the default behavior, if
    +   * inter_op_parallelism_threads is not configured), but still partitioning
    +   * into a large and small pool.
        * - if the threadpool for this global_name already exists, then it is an
    -   *   error if the existing pool was created using a different num_threads
    -   *   value as is specified on this call.
    +   * error if the existing pool was created using a different num_threads
    +   * value as is specified on this call.
        * - threadpools created this way are never garbage collected.
        * 
    * @@ -99,17 +102,19 @@ public java.lang.String getGlobalName() { /** *
        * The global name of the threadpool.
    +   *
        * If empty, then the threadpool is made and used according to the scope it's
        * in - e.g., for a session threadpool, it is used by that session only.
    +   *
        * If non-empty, then:
        * - a global threadpool associated with this name is looked
    -   *   up or created. This allows, for example, sharing one threadpool across
    -   *   many sessions (e.g., like the default behavior, if
    -   *   inter_op_parallelism_threads is not configured), but still partitioning
    -   *   into a large and small pool.
    +   * up or created. This allows, for example, sharing one threadpool across
    +   * many sessions (e.g., like the default behavior, if
    +   * inter_op_parallelism_threads is not configured), but still partitioning
    +   * into a large and small pool.
        * - if the threadpool for this global_name already exists, then it is an
    -   *   error if the existing pool was created using a different num_threads
    -   *   value as is specified on this call.
    +   * error if the existing pool was created using a different num_threads
    +   * value as is specified on this call.
        * - threadpools created this way are never garbage collected.
        * 
    * @@ -148,8 +153,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (numThreads_ != 0) { output.writeInt32(1, numThreads_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(globalName_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, globalName_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(globalName_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, globalName_); } getUnknownFields().writeTo(output); } @@ -164,8 +169,8 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeInt32Size(1, numThreads_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(globalName_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, globalName_); + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(globalName_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, globalName_); } size += getUnknownFields().getSerializedSize(); memoizedSize = size; @@ -240,39 +245,41 @@ public static org.tensorflow.proto.ThreadPoolOptionProto parseFrom( } public static org.tensorflow.proto.ThreadPoolOptionProto parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.ThreadPoolOptionProto parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.ThreadPoolOptionProto parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.ThreadPoolOptionProto parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.ThreadPoolOptionProto parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.ThreadPoolOptionProto parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -292,7 +299,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -300,7 +307,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.ThreadPoolOptionProto} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.ThreadPoolOptionProto) org.tensorflow.proto.ThreadPoolOptionProtoOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -309,7 +316,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.ConfigProtos.internal_static_tensorflow_ThreadPoolOptionProto_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -322,17 +329,16 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; numThreads_ = 0; - globalName_ = ""; - return this; } @@ -359,44 +365,21 @@ public org.tensorflow.proto.ThreadPoolOptionProto build() { @java.lang.Override public org.tensorflow.proto.ThreadPoolOptionProto buildPartial() { org.tensorflow.proto.ThreadPoolOptionProto result = new org.tensorflow.proto.ThreadPoolOptionProto(this); - result.numThreads_ = numThreads_; - result.globalName_ = globalName_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.ThreadPoolOptionProto result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.numThreads_ = numThreads_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.globalName_ = globalName_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.ThreadPoolOptionProto) { @@ -414,6 +397,7 @@ public Builder mergeFrom(org.tensorflow.proto.ThreadPoolOptionProto other) { } if (!other.getGlobalName().isEmpty()) { globalName_ = other.globalName_; + bitField0_ |= 0x00000002; onChanged(); } this.mergeUnknownFields(other.getUnknownFields()); @@ -444,12 +428,12 @@ public Builder mergeFrom( break; case 8: { numThreads_ = input.readInt32(); - + bitField0_ |= 0x00000001; break; } // case 8 case 18: { globalName_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000002; break; } // case 18 default: { @@ -467,11 +451,13 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private int numThreads_ ; /** *
          * The number of threads in the pool.
    +     *
          * 0 means the system picks a value based on where this option proto is used
          * (see the declaration of the specific field for more info).
          * 
    @@ -486,6 +472,7 @@ public int getNumThreads() { /** *
          * The number of threads in the pool.
    +     *
          * 0 means the system picks a value based on where this option proto is used
          * (see the declaration of the specific field for more info).
          * 
    @@ -495,14 +482,16 @@ public int getNumThreads() { * @return This builder for chaining. */ public Builder setNumThreads(int value) { - + numThreads_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } /** *
          * The number of threads in the pool.
    +     *
          * 0 means the system picks a value based on where this option proto is used
          * (see the declaration of the specific field for more info).
          * 
    @@ -511,7 +500,7 @@ public Builder setNumThreads(int value) { * @return This builder for chaining. */ public Builder clearNumThreads() { - + bitField0_ = (bitField0_ & ~0x00000001); numThreads_ = 0; onChanged(); return this; @@ -521,17 +510,19 @@ public Builder clearNumThreads() { /** *
          * The global name of the threadpool.
    +     *
          * If empty, then the threadpool is made and used according to the scope it's
          * in - e.g., for a session threadpool, it is used by that session only.
    +     *
          * If non-empty, then:
          * - a global threadpool associated with this name is looked
    -     *   up or created. This allows, for example, sharing one threadpool across
    -     *   many sessions (e.g., like the default behavior, if
    -     *   inter_op_parallelism_threads is not configured), but still partitioning
    -     *   into a large and small pool.
    +     * up or created. This allows, for example, sharing one threadpool across
    +     * many sessions (e.g., like the default behavior, if
    +     * inter_op_parallelism_threads is not configured), but still partitioning
    +     * into a large and small pool.
          * - if the threadpool for this global_name already exists, then it is an
    -     *   error if the existing pool was created using a different num_threads
    -     *   value as is specified on this call.
    +     * error if the existing pool was created using a different num_threads
    +     * value as is specified on this call.
          * - threadpools created this way are never garbage collected.
          * 
    * @@ -553,17 +544,19 @@ public java.lang.String getGlobalName() { /** *
          * The global name of the threadpool.
    +     *
          * If empty, then the threadpool is made and used according to the scope it's
          * in - e.g., for a session threadpool, it is used by that session only.
    +     *
          * If non-empty, then:
          * - a global threadpool associated with this name is looked
    -     *   up or created. This allows, for example, sharing one threadpool across
    -     *   many sessions (e.g., like the default behavior, if
    -     *   inter_op_parallelism_threads is not configured), but still partitioning
    -     *   into a large and small pool.
    +     * up or created. This allows, for example, sharing one threadpool across
    +     * many sessions (e.g., like the default behavior, if
    +     * inter_op_parallelism_threads is not configured), but still partitioning
    +     * into a large and small pool.
          * - if the threadpool for this global_name already exists, then it is an
    -     *   error if the existing pool was created using a different num_threads
    -     *   value as is specified on this call.
    +     * error if the existing pool was created using a different num_threads
    +     * value as is specified on this call.
          * - threadpools created this way are never garbage collected.
          * 
    * @@ -586,17 +579,19 @@ public java.lang.String getGlobalName() { /** *
          * The global name of the threadpool.
    +     *
          * If empty, then the threadpool is made and used according to the scope it's
          * in - e.g., for a session threadpool, it is used by that session only.
    +     *
          * If non-empty, then:
          * - a global threadpool associated with this name is looked
    -     *   up or created. This allows, for example, sharing one threadpool across
    -     *   many sessions (e.g., like the default behavior, if
    -     *   inter_op_parallelism_threads is not configured), but still partitioning
    -     *   into a large and small pool.
    +     * up or created. This allows, for example, sharing one threadpool across
    +     * many sessions (e.g., like the default behavior, if
    +     * inter_op_parallelism_threads is not configured), but still partitioning
    +     * into a large and small pool.
          * - if the threadpool for this global_name already exists, then it is an
    -     *   error if the existing pool was created using a different num_threads
    -     *   value as is specified on this call.
    +     * error if the existing pool was created using a different num_threads
    +     * value as is specified on this call.
          * - threadpools created this way are never garbage collected.
          * 
    * @@ -606,28 +601,28 @@ public java.lang.String getGlobalName() { */ public Builder setGlobalName( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } globalName_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } /** *
          * The global name of the threadpool.
    +     *
          * If empty, then the threadpool is made and used according to the scope it's
          * in - e.g., for a session threadpool, it is used by that session only.
    +     *
          * If non-empty, then:
          * - a global threadpool associated with this name is looked
    -     *   up or created. This allows, for example, sharing one threadpool across
    -     *   many sessions (e.g., like the default behavior, if
    -     *   inter_op_parallelism_threads is not configured), but still partitioning
    -     *   into a large and small pool.
    +     * up or created. This allows, for example, sharing one threadpool across
    +     * many sessions (e.g., like the default behavior, if
    +     * inter_op_parallelism_threads is not configured), but still partitioning
    +     * into a large and small pool.
          * - if the threadpool for this global_name already exists, then it is an
    -     *   error if the existing pool was created using a different num_threads
    -     *   value as is specified on this call.
    +     * error if the existing pool was created using a different num_threads
    +     * value as is specified on this call.
          * - threadpools created this way are never garbage collected.
          * 
    * @@ -635,25 +630,27 @@ public Builder setGlobalName( * @return This builder for chaining. */ public Builder clearGlobalName() { - globalName_ = getDefaultInstance().getGlobalName(); + bitField0_ = (bitField0_ & ~0x00000002); onChanged(); return this; } /** *
          * The global name of the threadpool.
    +     *
          * If empty, then the threadpool is made and used according to the scope it's
          * in - e.g., for a session threadpool, it is used by that session only.
    +     *
          * If non-empty, then:
          * - a global threadpool associated with this name is looked
    -     *   up or created. This allows, for example, sharing one threadpool across
    -     *   many sessions (e.g., like the default behavior, if
    -     *   inter_op_parallelism_threads is not configured), but still partitioning
    -     *   into a large and small pool.
    +     * up or created. This allows, for example, sharing one threadpool across
    +     * many sessions (e.g., like the default behavior, if
    +     * inter_op_parallelism_threads is not configured), but still partitioning
    +     * into a large and small pool.
          * - if the threadpool for this global_name already exists, then it is an
    -     *   error if the existing pool was created using a different num_threads
    -     *   value as is specified on this call.
    +     * error if the existing pool was created using a different num_threads
    +     * value as is specified on this call.
          * - threadpools created this way are never garbage collected.
          * 
    * @@ -663,27 +660,13 @@ public Builder clearGlobalName() { */ public Builder setGlobalNameBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); globalName_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.ThreadPoolOptionProto) } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ThreadPoolOptionProtoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ThreadPoolOptionProtoOrBuilder.java index 7d1e168a64f..293e6914f9f 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ThreadPoolOptionProtoOrBuilder.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ThreadPoolOptionProtoOrBuilder.java @@ -1,5 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/config.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; @@ -10,6 +12,7 @@ public interface ThreadPoolOptionProtoOrBuilder extends /** *
        * The number of threads in the pool.
    +   *
        * 0 means the system picks a value based on where this option proto is used
        * (see the declaration of the specific field for more info).
        * 
    @@ -22,17 +25,19 @@ public interface ThreadPoolOptionProtoOrBuilder extends /** *
        * The global name of the threadpool.
    +   *
        * If empty, then the threadpool is made and used according to the scope it's
        * in - e.g., for a session threadpool, it is used by that session only.
    +   *
        * If non-empty, then:
        * - a global threadpool associated with this name is looked
    -   *   up or created. This allows, for example, sharing one threadpool across
    -   *   many sessions (e.g., like the default behavior, if
    -   *   inter_op_parallelism_threads is not configured), but still partitioning
    -   *   into a large and small pool.
    +   * up or created. This allows, for example, sharing one threadpool across
    +   * many sessions (e.g., like the default behavior, if
    +   * inter_op_parallelism_threads is not configured), but still partitioning
    +   * into a large and small pool.
        * - if the threadpool for this global_name already exists, then it is an
    -   *   error if the existing pool was created using a different num_threads
    -   *   value as is specified on this call.
    +   * error if the existing pool was created using a different num_threads
    +   * value as is specified on this call.
        * - threadpools created this way are never garbage collected.
        * 
    * @@ -43,17 +48,19 @@ public interface ThreadPoolOptionProtoOrBuilder extends /** *
        * The global name of the threadpool.
    +   *
        * If empty, then the threadpool is made and used according to the scope it's
        * in - e.g., for a session threadpool, it is used by that session only.
    +   *
        * If non-empty, then:
        * - a global threadpool associated with this name is looked
    -   *   up or created. This allows, for example, sharing one threadpool across
    -   *   many sessions (e.g., like the default behavior, if
    -   *   inter_op_parallelism_threads is not configured), but still partitioning
    -   *   into a large and small pool.
    +   * up or created. This allows, for example, sharing one threadpool across
    +   * many sessions (e.g., like the default behavior, if
    +   * inter_op_parallelism_threads is not configured), but still partitioning
    +   * into a large and small pool.
        * - if the threadpool for this global_name already exists, then it is an
    -   *   error if the existing pool was created using a different num_threads
    -   *   value as is specified on this call.
    +   * error if the existing pool was created using a different num_threads
    +   * value as is specified on this call.
        * - threadpools created this way are never garbage collected.
        * 
    * diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TrackableObjectGraphOuterClass.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TrackableObjectGraphOuterClass.java index ecc07ac2de0..4ab6b3965d8 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TrackableObjectGraphOuterClass.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TrackableObjectGraphOuterClass.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/trackable_object_graph.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto; public final class TrackableObjectGraphOuterClass { private TrackableObjectGraphOuterClass() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + TrackableObjectGraphOuterClass.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -46,37 +57,34 @@ org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.Trackab * Protobuf type {@code tensorflow.TrackableObjectGraph} */ public static final class TrackableObjectGraph extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.TrackableObjectGraph) TrackableObjectGraphOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + TrackableObjectGraph.class.getName()); + } // Use TrackableObjectGraph.newBuilder() to construct. - private TrackableObjectGraph(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private TrackableObjectGraph(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private TrackableObjectGraph() { nodes_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new TrackableObjectGraph(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.TrackableObjectGraphOuterClass.internal_static_tensorflow_TrackableObjectGraph_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.TrackableObjectGraphOuterClass.internal_static_tensorflow_TrackableObjectGraph_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -289,12 +297,21 @@ org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.Trackab * Protobuf type {@code tensorflow.TrackableObjectGraph.TrackableObject} */ public static final class TrackableObject extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.TrackableObjectGraph.TrackableObject) TrackableObjectOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + TrackableObject.class.getName()); + } // Use TrackableObject.newBuilder() to construct. - private TrackableObject(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private TrackableObject(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private TrackableObject() { @@ -303,25 +320,13 @@ private TrackableObject() { slotVariables_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new TrackableObject(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.TrackableObjectGraphOuterClass.internal_static_tensorflow_TrackableObjectGraph_TrackableObject_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.TrackableObjectGraphOuterClass.internal_static_tensorflow_TrackableObjectGraph_TrackableObject_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -367,37 +372,34 @@ public interface ObjectReferenceOrBuilder extends * Protobuf type {@code tensorflow.TrackableObjectGraph.TrackableObject.ObjectReference} */ public static final class ObjectReference extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.TrackableObjectGraph.TrackableObject.ObjectReference) ObjectReferenceOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + ObjectReference.class.getName()); + } // Use ObjectReference.newBuilder() to construct. - private ObjectReference(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private ObjectReference(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private ObjectReference() { localName_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new ObjectReference(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.TrackableObjectGraphOuterClass.internal_static_tensorflow_TrackableObjectGraph_TrackableObject_ObjectReference_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.TrackableObjectGraphOuterClass.internal_static_tensorflow_TrackableObjectGraph_TrackableObject_ObjectReference_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -405,7 +407,7 @@ protected java.lang.Object newInstance( } public static final int NODE_ID_FIELD_NUMBER = 1; - private int nodeId_; + private int nodeId_ = 0; /** *
              * An index into `TrackableObjectGraph.nodes`, indicating the object
    @@ -421,7 +423,8 @@ public int getNodeId() {
             }
     
             public static final int LOCAL_NAME_FIELD_NUMBER = 2;
    -        private volatile java.lang.Object localName_;
    +        @SuppressWarnings("serial")
    +        private volatile java.lang.Object localName_ = "";
             /**
              * 
              * A user-provided name for the edge.
    @@ -483,8 +486,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
               if (nodeId_ != 0) {
                 output.writeInt32(1, nodeId_);
               }
    -          if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(localName_)) {
    -            com.google.protobuf.GeneratedMessageV3.writeString(output, 2, localName_);
    +          if (!com.google.protobuf.GeneratedMessage.isStringEmpty(localName_)) {
    +            com.google.protobuf.GeneratedMessage.writeString(output, 2, localName_);
               }
               getUnknownFields().writeTo(output);
             }
    @@ -499,8 +502,8 @@ public int getSerializedSize() {
                 size += com.google.protobuf.CodedOutputStream
                   .computeInt32Size(1, nodeId_);
               }
    -          if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(localName_)) {
    -            size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, localName_);
    +          if (!com.google.protobuf.GeneratedMessage.isStringEmpty(localName_)) {
    +            size += com.google.protobuf.GeneratedMessage.computeStringSize(2, localName_);
               }
               size += getUnknownFields().getSerializedSize();
               memoizedSize = size;
    @@ -575,39 +578,41 @@ public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjec
             }
             public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference parseFrom(java.io.InputStream input)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseWithIOException(PARSER, input);
             }
             public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference parseFrom(
                 java.io.InputStream input,
                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseWithIOException(PARSER, input, extensionRegistry);
             }
    +
             public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference parseDelimitedFrom(java.io.InputStream input)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseDelimitedWithIOException(PARSER, input);
             }
    +
             public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference parseDelimitedFrom(
                 java.io.InputStream input,
                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
             }
             public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference parseFrom(
                 com.google.protobuf.CodedInputStream input)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseWithIOException(PARSER, input);
             }
             public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference parseFrom(
                 com.google.protobuf.CodedInputStream input,
                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseWithIOException(PARSER, input, extensionRegistry);
             }
     
    @@ -627,7 +632,7 @@ public Builder toBuilder() {
     
             @java.lang.Override
             protected Builder newBuilderForType(
    -            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
               Builder builder = new Builder(parent);
               return builder;
             }
    @@ -635,7 +640,7 @@ protected Builder newBuilderForType(
              * Protobuf type {@code tensorflow.TrackableObjectGraph.TrackableObject.ObjectReference}
              */
             public static final class Builder extends
    -            com.google.protobuf.GeneratedMessageV3.Builder implements
    +            com.google.protobuf.GeneratedMessage.Builder implements
                 // @@protoc_insertion_point(builder_implements:tensorflow.TrackableObjectGraph.TrackableObject.ObjectReference)
                 org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReferenceOrBuilder {
               public static final com.google.protobuf.Descriptors.Descriptor
    @@ -644,7 +649,7 @@ public static final class Builder extends
               }
     
               @java.lang.Override
    -          protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +          protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
                   internalGetFieldAccessorTable() {
                 return org.tensorflow.proto.TrackableObjectGraphOuterClass.internal_static_tensorflow_TrackableObjectGraph_TrackableObject_ObjectReference_fieldAccessorTable
                     .ensureFieldAccessorsInitialized(
    @@ -657,17 +662,16 @@ private Builder() {
               }
     
               private Builder(
    -              com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +              com.google.protobuf.GeneratedMessage.BuilderParent parent) {
                 super(parent);
     
               }
               @java.lang.Override
               public Builder clear() {
                 super.clear();
    +            bitField0_ = 0;
                 nodeId_ = 0;
    -
                 localName_ = "";
    -
                 return this;
               }
     
    @@ -694,44 +698,21 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.
               @java.lang.Override
               public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference buildPartial() {
                 org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference result = new org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference(this);
    -            result.nodeId_ = nodeId_;
    -            result.localName_ = localName_;
    +            if (bitField0_ != 0) { buildPartial0(result); }
                 onBuilt();
                 return result;
               }
     
    -          @java.lang.Override
    -          public Builder clone() {
    -            return super.clone();
    -          }
    -          @java.lang.Override
    -          public Builder setField(
    -              com.google.protobuf.Descriptors.FieldDescriptor field,
    -              java.lang.Object value) {
    -            return super.setField(field, value);
    -          }
    -          @java.lang.Override
    -          public Builder clearField(
    -              com.google.protobuf.Descriptors.FieldDescriptor field) {
    -            return super.clearField(field);
    -          }
    -          @java.lang.Override
    -          public Builder clearOneof(
    -              com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -            return super.clearOneof(oneof);
    -          }
    -          @java.lang.Override
    -          public Builder setRepeatedField(
    -              com.google.protobuf.Descriptors.FieldDescriptor field,
    -              int index, java.lang.Object value) {
    -            return super.setRepeatedField(field, index, value);
    -          }
    -          @java.lang.Override
    -          public Builder addRepeatedField(
    -              com.google.protobuf.Descriptors.FieldDescriptor field,
    -              java.lang.Object value) {
    -            return super.addRepeatedField(field, value);
    +          private void buildPartial0(org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference result) {
    +            int from_bitField0_ = bitField0_;
    +            if (((from_bitField0_ & 0x00000001) != 0)) {
    +              result.nodeId_ = nodeId_;
    +            }
    +            if (((from_bitField0_ & 0x00000002) != 0)) {
    +              result.localName_ = localName_;
    +            }
               }
    +
               @java.lang.Override
               public Builder mergeFrom(com.google.protobuf.Message other) {
                 if (other instanceof org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference) {
    @@ -749,6 +730,7 @@ public Builder mergeFrom(org.tensorflow.proto.TrackableObjectGraphOuterClass.Tra
                 }
                 if (!other.getLocalName().isEmpty()) {
                   localName_ = other.localName_;
    +              bitField0_ |= 0x00000002;
                   onChanged();
                 }
                 this.mergeUnknownFields(other.getUnknownFields());
    @@ -779,12 +761,12 @@ public Builder mergeFrom(
                         break;
                       case 8: {
                         nodeId_ = input.readInt32();
    -
    +                    bitField0_ |= 0x00000001;
                         break;
                       } // case 8
                       case 18: {
                         localName_ = input.readStringRequireUtf8();
    -
    +                    bitField0_ |= 0x00000002;
                         break;
                       } // case 18
                       default: {
    @@ -802,6 +784,7 @@ public Builder mergeFrom(
                 } // finally
                 return this;
               }
    +          private int bitField0_;
     
               private int nodeId_ ;
               /**
    @@ -828,8 +811,9 @@ public int getNodeId() {
                * @return This builder for chaining.
                */
               public Builder setNodeId(int value) {
    -            
    +
                 nodeId_ = value;
    +            bitField0_ |= 0x00000001;
                 onChanged();
                 return this;
               }
    @@ -843,7 +827,7 @@ public Builder setNodeId(int value) {
                * @return This builder for chaining.
                */
               public Builder clearNodeId() {
    -            
    +            bitField0_ = (bitField0_ & ~0x00000001);
                 nodeId_ = 0;
                 onChanged();
                 return this;
    @@ -902,11 +886,9 @@ public java.lang.String getLocalName() {
                */
               public Builder setLocalName(
                   java.lang.String value) {
    -            if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +            if (value == null) { throw new NullPointerException(); }
                 localName_ = value;
    +            bitField0_ |= 0x00000002;
                 onChanged();
                 return this;
               }
    @@ -919,8 +901,8 @@ public Builder setLocalName(
                * @return This builder for chaining.
                */
               public Builder clearLocalName() {
    -            
                 localName_ = getDefaultInstance().getLocalName();
    +            bitField0_ = (bitField0_ & ~0x00000002);
                 onChanged();
                 return this;
               }
    @@ -935,27 +917,13 @@ public Builder clearLocalName() {
                */
               public Builder setLocalNameBytes(
                   com.google.protobuf.ByteString value) {
    -            if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -            
    +            if (value == null) { throw new NullPointerException(); }
    +            checkByteStringIsUtf8(value);
                 localName_ = value;
    +            bitField0_ |= 0x00000002;
                 onChanged();
                 return this;
               }
    -          @java.lang.Override
    -          public final Builder setUnknownFields(
    -              final com.google.protobuf.UnknownFieldSet unknownFields) {
    -            return super.setUnknownFields(unknownFields);
    -          }
    -
    -          @java.lang.Override
    -          public final Builder mergeUnknownFields(
    -              final com.google.protobuf.UnknownFieldSet unknownFields) {
    -            return super.mergeUnknownFields(unknownFields);
    -          }
    -
     
               // @@protoc_insertion_point(builder_scope:tensorflow.TrackableObjectGraph.TrackableObject.ObjectReference)
             }
    @@ -1086,12 +1054,21 @@ public interface SerializedTensorOrBuilder extends
            * Protobuf type {@code tensorflow.TrackableObjectGraph.TrackableObject.SerializedTensor}
            */
           public static final class SerializedTensor extends
    -          com.google.protobuf.GeneratedMessageV3 implements
    +          com.google.protobuf.GeneratedMessage implements
               // @@protoc_insertion_point(message_implements:tensorflow.TrackableObjectGraph.TrackableObject.SerializedTensor)
               SerializedTensorOrBuilder {
           private static final long serialVersionUID = 0L;
    +        static {
    +          com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +            com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +            /* major= */ 4,
    +            /* minor= */ 28,
    +            /* patch= */ 3,
    +            /* suffix= */ "",
    +            SerializedTensor.class.getName());
    +        }
             // Use SerializedTensor.newBuilder() to construct.
    -        private SerializedTensor(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +        private SerializedTensor(com.google.protobuf.GeneratedMessage.Builder builder) {
               super(builder);
             }
             private SerializedTensor() {
    @@ -1100,25 +1077,13 @@ private SerializedTensor() {
               checkpointKey_ = "";
             }
     
    -        @java.lang.Override
    -        @SuppressWarnings({"unused"})
    -        protected java.lang.Object newInstance(
    -            UnusedPrivateParameter unused) {
    -          return new SerializedTensor();
    -        }
    -
    -        @java.lang.Override
    -        public final com.google.protobuf.UnknownFieldSet
    -        getUnknownFields() {
    -          return this.unknownFields;
    -        }
             public static final com.google.protobuf.Descriptors.Descriptor
                 getDescriptor() {
               return org.tensorflow.proto.TrackableObjectGraphOuterClass.internal_static_tensorflow_TrackableObjectGraph_TrackableObject_SerializedTensor_descriptor;
             }
     
             @java.lang.Override
    -        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
                 internalGetFieldAccessorTable() {
               return org.tensorflow.proto.TrackableObjectGraphOuterClass.internal_static_tensorflow_TrackableObjectGraph_TrackableObject_SerializedTensor_fieldAccessorTable
                   .ensureFieldAccessorsInitialized(
    @@ -1126,7 +1091,8 @@ protected java.lang.Object newInstance(
             }
     
             public static final int NAME_FIELD_NUMBER = 1;
    -        private volatile java.lang.Object name_;
    +        @SuppressWarnings("serial")
    +        private volatile java.lang.Object name_ = "";
             /**
              * 
              * A name for the Tensor. Simple variables have only one
    @@ -1176,7 +1142,8 @@ public java.lang.String getName() {
             }
     
             public static final int FULL_NAME_FIELD_NUMBER = 2;
    -        private volatile java.lang.Object fullName_;
    +        @SuppressWarnings("serial")
    +        private volatile java.lang.Object fullName_ = "";
             /**
              * 
              * The full name of the variable/tensor, if applicable. Used to allow
    @@ -1228,7 +1195,8 @@ public java.lang.String getFullName() {
             }
     
             public static final int CHECKPOINT_KEY_FIELD_NUMBER = 3;
    -        private volatile java.lang.Object checkpointKey_;
    +        @SuppressWarnings("serial")
    +        private volatile java.lang.Object checkpointKey_ = "";
             /**
              * 
              * The generated name of the Tensor in the checkpoint.
    @@ -1287,14 +1255,14 @@ public final boolean isInitialized() {
             @java.lang.Override
             public void writeTo(com.google.protobuf.CodedOutputStream output)
                                 throws java.io.IOException {
    -          if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -            com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +          if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +            com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
               }
    -          if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(fullName_)) {
    -            com.google.protobuf.GeneratedMessageV3.writeString(output, 2, fullName_);
    +          if (!com.google.protobuf.GeneratedMessage.isStringEmpty(fullName_)) {
    +            com.google.protobuf.GeneratedMessage.writeString(output, 2, fullName_);
               }
    -          if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(checkpointKey_)) {
    -            com.google.protobuf.GeneratedMessageV3.writeString(output, 3, checkpointKey_);
    +          if (!com.google.protobuf.GeneratedMessage.isStringEmpty(checkpointKey_)) {
    +            com.google.protobuf.GeneratedMessage.writeString(output, 3, checkpointKey_);
               }
               getUnknownFields().writeTo(output);
             }
    @@ -1305,14 +1273,14 @@ public int getSerializedSize() {
               if (size != -1) return size;
     
               size = 0;
    -          if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -            size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +          if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +            size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
               }
    -          if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(fullName_)) {
    -            size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, fullName_);
    +          if (!com.google.protobuf.GeneratedMessage.isStringEmpty(fullName_)) {
    +            size += com.google.protobuf.GeneratedMessage.computeStringSize(2, fullName_);
               }
    -          if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(checkpointKey_)) {
    -            size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, checkpointKey_);
    +          if (!com.google.protobuf.GeneratedMessage.isStringEmpty(checkpointKey_)) {
    +            size += com.google.protobuf.GeneratedMessage.computeStringSize(3, checkpointKey_);
               }
               size += getUnknownFields().getSerializedSize();
               memoizedSize = size;
    @@ -1391,39 +1359,41 @@ public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjec
             }
             public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensor parseFrom(java.io.InputStream input)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseWithIOException(PARSER, input);
             }
             public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensor parseFrom(
                 java.io.InputStream input,
                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseWithIOException(PARSER, input, extensionRegistry);
             }
    +
             public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensor parseDelimitedFrom(java.io.InputStream input)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseDelimitedWithIOException(PARSER, input);
             }
    +
             public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensor parseDelimitedFrom(
                 java.io.InputStream input,
                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
             }
             public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensor parseFrom(
                 com.google.protobuf.CodedInputStream input)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseWithIOException(PARSER, input);
             }
             public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensor parseFrom(
                 com.google.protobuf.CodedInputStream input,
                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseWithIOException(PARSER, input, extensionRegistry);
             }
     
    @@ -1443,7 +1413,7 @@ public Builder toBuilder() {
     
             @java.lang.Override
             protected Builder newBuilderForType(
    -            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
               Builder builder = new Builder(parent);
               return builder;
             }
    @@ -1451,7 +1421,7 @@ protected Builder newBuilderForType(
              * Protobuf type {@code tensorflow.TrackableObjectGraph.TrackableObject.SerializedTensor}
              */
             public static final class Builder extends
    -            com.google.protobuf.GeneratedMessageV3.Builder implements
    +            com.google.protobuf.GeneratedMessage.Builder implements
                 // @@protoc_insertion_point(builder_implements:tensorflow.TrackableObjectGraph.TrackableObject.SerializedTensor)
                 org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensorOrBuilder {
               public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1460,7 +1430,7 @@ public static final class Builder extends
               }
     
               @java.lang.Override
    -          protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +          protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
                   internalGetFieldAccessorTable() {
                 return org.tensorflow.proto.TrackableObjectGraphOuterClass.internal_static_tensorflow_TrackableObjectGraph_TrackableObject_SerializedTensor_fieldAccessorTable
                     .ensureFieldAccessorsInitialized(
    @@ -1473,19 +1443,17 @@ private Builder() {
               }
     
               private Builder(
    -              com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +              com.google.protobuf.GeneratedMessage.BuilderParent parent) {
                 super(parent);
     
               }
               @java.lang.Override
               public Builder clear() {
                 super.clear();
    +            bitField0_ = 0;
                 name_ = "";
    -
                 fullName_ = "";
    -
                 checkpointKey_ = "";
    -
                 return this;
               }
     
    @@ -1512,45 +1480,24 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.
               @java.lang.Override
               public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensor buildPartial() {
                 org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensor result = new org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensor(this);
    -            result.name_ = name_;
    -            result.fullName_ = fullName_;
    -            result.checkpointKey_ = checkpointKey_;
    +            if (bitField0_ != 0) { buildPartial0(result); }
                 onBuilt();
                 return result;
               }
     
    -          @java.lang.Override
    -          public Builder clone() {
    -            return super.clone();
    -          }
    -          @java.lang.Override
    -          public Builder setField(
    -              com.google.protobuf.Descriptors.FieldDescriptor field,
    -              java.lang.Object value) {
    -            return super.setField(field, value);
    -          }
    -          @java.lang.Override
    -          public Builder clearField(
    -              com.google.protobuf.Descriptors.FieldDescriptor field) {
    -            return super.clearField(field);
    -          }
    -          @java.lang.Override
    -          public Builder clearOneof(
    -              com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -            return super.clearOneof(oneof);
    -          }
    -          @java.lang.Override
    -          public Builder setRepeatedField(
    -              com.google.protobuf.Descriptors.FieldDescriptor field,
    -              int index, java.lang.Object value) {
    -            return super.setRepeatedField(field, index, value);
    -          }
    -          @java.lang.Override
    -          public Builder addRepeatedField(
    -              com.google.protobuf.Descriptors.FieldDescriptor field,
    -              java.lang.Object value) {
    -            return super.addRepeatedField(field, value);
    +          private void buildPartial0(org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensor result) {
    +            int from_bitField0_ = bitField0_;
    +            if (((from_bitField0_ & 0x00000001) != 0)) {
    +              result.name_ = name_;
    +            }
    +            if (((from_bitField0_ & 0x00000002) != 0)) {
    +              result.fullName_ = fullName_;
    +            }
    +            if (((from_bitField0_ & 0x00000004) != 0)) {
    +              result.checkpointKey_ = checkpointKey_;
    +            }
               }
    +
               @java.lang.Override
               public Builder mergeFrom(com.google.protobuf.Message other) {
                 if (other instanceof org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensor) {
    @@ -1565,14 +1512,17 @@ public Builder mergeFrom(org.tensorflow.proto.TrackableObjectGraphOuterClass.Tra
                 if (other == org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensor.getDefaultInstance()) return this;
                 if (!other.getName().isEmpty()) {
                   name_ = other.name_;
    +              bitField0_ |= 0x00000001;
                   onChanged();
                 }
                 if (!other.getFullName().isEmpty()) {
                   fullName_ = other.fullName_;
    +              bitField0_ |= 0x00000002;
                   onChanged();
                 }
                 if (!other.getCheckpointKey().isEmpty()) {
                   checkpointKey_ = other.checkpointKey_;
    +              bitField0_ |= 0x00000004;
                   onChanged();
                 }
                 this.mergeUnknownFields(other.getUnknownFields());
    @@ -1603,17 +1553,17 @@ public Builder mergeFrom(
                         break;
                       case 10: {
                         name_ = input.readStringRequireUtf8();
    -
    +                    bitField0_ |= 0x00000001;
                         break;
                       } // case 10
                       case 18: {
                         fullName_ = input.readStringRequireUtf8();
    -
    +                    bitField0_ |= 0x00000002;
                         break;
                       } // case 18
                       case 26: {
                         checkpointKey_ = input.readStringRequireUtf8();
    -
    +                    bitField0_ |= 0x00000004;
                         break;
                       } // case 26
                       default: {
    @@ -1631,6 +1581,7 @@ public Builder mergeFrom(
                 } // finally
                 return this;
               }
    +          private int bitField0_;
     
               private java.lang.Object name_ = "";
               /**
    @@ -1691,11 +1642,9 @@ public java.lang.String getName() {
                */
               public Builder setName(
                   java.lang.String value) {
    -            if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +            if (value == null) { throw new NullPointerException(); }
                 name_ = value;
    +            bitField0_ |= 0x00000001;
                 onChanged();
                 return this;
               }
    @@ -1710,8 +1659,8 @@ public Builder setName(
                * @return This builder for chaining.
                */
               public Builder clearName() {
    -            
                 name_ = getDefaultInstance().getName();
    +            bitField0_ = (bitField0_ & ~0x00000001);
                 onChanged();
                 return this;
               }
    @@ -1728,12 +1677,10 @@ public Builder clearName() {
                */
               public Builder setNameBytes(
                   com.google.protobuf.ByteString value) {
    -            if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -            
    +            if (value == null) { throw new NullPointerException(); }
    +            checkByteStringIsUtf8(value);
                 name_ = value;
    +            bitField0_ |= 0x00000001;
                 onChanged();
                 return this;
               }
    @@ -1800,11 +1747,9 @@ public java.lang.String getFullName() {
                */
               public Builder setFullName(
                   java.lang.String value) {
    -            if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +            if (value == null) { throw new NullPointerException(); }
                 fullName_ = value;
    +            bitField0_ |= 0x00000002;
                 onChanged();
                 return this;
               }
    @@ -1820,8 +1765,8 @@ public Builder setFullName(
                * @return This builder for chaining.
                */
               public Builder clearFullName() {
    -            
                 fullName_ = getDefaultInstance().getFullName();
    +            bitField0_ = (bitField0_ & ~0x00000002);
                 onChanged();
                 return this;
               }
    @@ -1839,12 +1784,10 @@ public Builder clearFullName() {
                */
               public Builder setFullNameBytes(
                   com.google.protobuf.ByteString value) {
    -            if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -            
    +            if (value == null) { throw new NullPointerException(); }
    +            checkByteStringIsUtf8(value);
                 fullName_ = value;
    +            bitField0_ |= 0x00000002;
                 onChanged();
                 return this;
               }
    @@ -1902,11 +1845,9 @@ public java.lang.String getCheckpointKey() {
                */
               public Builder setCheckpointKey(
                   java.lang.String value) {
    -            if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +            if (value == null) { throw new NullPointerException(); }
                 checkpointKey_ = value;
    +            bitField0_ |= 0x00000004;
                 onChanged();
                 return this;
               }
    @@ -1919,8 +1860,8 @@ public Builder setCheckpointKey(
                * @return This builder for chaining.
                */
               public Builder clearCheckpointKey() {
    -            
                 checkpointKey_ = getDefaultInstance().getCheckpointKey();
    +            bitField0_ = (bitField0_ & ~0x00000004);
                 onChanged();
                 return this;
               }
    @@ -1935,27 +1876,13 @@ public Builder clearCheckpointKey() {
                */
               public Builder setCheckpointKeyBytes(
                   com.google.protobuf.ByteString value) {
    -            if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -            
    +            if (value == null) { throw new NullPointerException(); }
    +            checkByteStringIsUtf8(value);
                 checkpointKey_ = value;
    +            bitField0_ |= 0x00000004;
                 onChanged();
                 return this;
               }
    -          @java.lang.Override
    -          public final Builder setUnknownFields(
    -              final com.google.protobuf.UnknownFieldSet unknownFields) {
    -            return super.setUnknownFields(unknownFields);
    -          }
    -
    -          @java.lang.Override
    -          public final Builder mergeUnknownFields(
    -              final com.google.protobuf.UnknownFieldSet unknownFields) {
    -            return super.mergeUnknownFields(unknownFields);
    -          }
    -
     
               // @@protoc_insertion_point(builder_scope:tensorflow.TrackableObjectGraph.TrackableObject.SerializedTensor)
             }
    @@ -2058,37 +1985,34 @@ public interface SlotVariableReferenceOrBuilder extends
            * Protobuf type {@code tensorflow.TrackableObjectGraph.TrackableObject.SlotVariableReference}
            */
           public static final class SlotVariableReference extends
    -          com.google.protobuf.GeneratedMessageV3 implements
    +          com.google.protobuf.GeneratedMessage implements
               // @@protoc_insertion_point(message_implements:tensorflow.TrackableObjectGraph.TrackableObject.SlotVariableReference)
               SlotVariableReferenceOrBuilder {
           private static final long serialVersionUID = 0L;
    +        static {
    +          com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +            com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +            /* major= */ 4,
    +            /* minor= */ 28,
    +            /* patch= */ 3,
    +            /* suffix= */ "",
    +            SlotVariableReference.class.getName());
    +        }
             // Use SlotVariableReference.newBuilder() to construct.
    -        private SlotVariableReference(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +        private SlotVariableReference(com.google.protobuf.GeneratedMessage.Builder builder) {
               super(builder);
             }
             private SlotVariableReference() {
               slotName_ = "";
             }
     
    -        @java.lang.Override
    -        @SuppressWarnings({"unused"})
    -        protected java.lang.Object newInstance(
    -            UnusedPrivateParameter unused) {
    -          return new SlotVariableReference();
    -        }
    -
    -        @java.lang.Override
    -        public final com.google.protobuf.UnknownFieldSet
    -        getUnknownFields() {
    -          return this.unknownFields;
    -        }
             public static final com.google.protobuf.Descriptors.Descriptor
                 getDescriptor() {
               return org.tensorflow.proto.TrackableObjectGraphOuterClass.internal_static_tensorflow_TrackableObjectGraph_TrackableObject_SlotVariableReference_descriptor;
             }
     
             @java.lang.Override
    -        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
                 internalGetFieldAccessorTable() {
               return org.tensorflow.proto.TrackableObjectGraphOuterClass.internal_static_tensorflow_TrackableObjectGraph_TrackableObject_SlotVariableReference_fieldAccessorTable
                   .ensureFieldAccessorsInitialized(
    @@ -2096,7 +2020,7 @@ protected java.lang.Object newInstance(
             }
     
             public static final int ORIGINAL_VARIABLE_NODE_ID_FIELD_NUMBER = 1;
    -        private int originalVariableNodeId_;
    +        private int originalVariableNodeId_ = 0;
             /**
              * 
              * An index into `TrackableObjectGraph.nodes`, indicating the
    @@ -2112,7 +2036,8 @@ public int getOriginalVariableNodeId() {
             }
     
             public static final int SLOT_NAME_FIELD_NUMBER = 2;
    -        private volatile java.lang.Object slotName_;
    +        @SuppressWarnings("serial")
    +        private volatile java.lang.Object slotName_ = "";
             /**
              * 
              * The name of the slot (e.g. "m"/"v").
    @@ -2158,7 +2083,7 @@ public java.lang.String getSlotName() {
             }
     
             public static final int SLOT_VARIABLE_NODE_ID_FIELD_NUMBER = 3;
    -        private int slotVariableNodeId_;
    +        private int slotVariableNodeId_ = 0;
             /**
              * 
              * An index into `TrackableObjectGraph.nodes`, indicating the
    @@ -2190,8 +2115,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
               if (originalVariableNodeId_ != 0) {
                 output.writeInt32(1, originalVariableNodeId_);
               }
    -          if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(slotName_)) {
    -            com.google.protobuf.GeneratedMessageV3.writeString(output, 2, slotName_);
    +          if (!com.google.protobuf.GeneratedMessage.isStringEmpty(slotName_)) {
    +            com.google.protobuf.GeneratedMessage.writeString(output, 2, slotName_);
               }
               if (slotVariableNodeId_ != 0) {
                 output.writeInt32(3, slotVariableNodeId_);
    @@ -2209,8 +2134,8 @@ public int getSerializedSize() {
                 size += com.google.protobuf.CodedOutputStream
                   .computeInt32Size(1, originalVariableNodeId_);
               }
    -          if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(slotName_)) {
    -            size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, slotName_);
    +          if (!com.google.protobuf.GeneratedMessage.isStringEmpty(slotName_)) {
    +            size += com.google.protobuf.GeneratedMessage.computeStringSize(2, slotName_);
               }
               if (slotVariableNodeId_ != 0) {
                 size += com.google.protobuf.CodedOutputStream
    @@ -2293,39 +2218,41 @@ public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjec
             }
             public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference parseFrom(java.io.InputStream input)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseWithIOException(PARSER, input);
             }
             public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference parseFrom(
                 java.io.InputStream input,
                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseWithIOException(PARSER, input, extensionRegistry);
             }
    +
             public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference parseDelimitedFrom(java.io.InputStream input)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseDelimitedWithIOException(PARSER, input);
             }
    +
             public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference parseDelimitedFrom(
                 java.io.InputStream input,
                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
             }
             public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference parseFrom(
                 com.google.protobuf.CodedInputStream input)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseWithIOException(PARSER, input);
             }
             public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference parseFrom(
                 com.google.protobuf.CodedInputStream input,
                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseWithIOException(PARSER, input, extensionRegistry);
             }
     
    @@ -2345,7 +2272,7 @@ public Builder toBuilder() {
     
             @java.lang.Override
             protected Builder newBuilderForType(
    -            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
               Builder builder = new Builder(parent);
               return builder;
             }
    @@ -2353,7 +2280,7 @@ protected Builder newBuilderForType(
              * Protobuf type {@code tensorflow.TrackableObjectGraph.TrackableObject.SlotVariableReference}
              */
             public static final class Builder extends
    -            com.google.protobuf.GeneratedMessageV3.Builder implements
    +            com.google.protobuf.GeneratedMessage.Builder implements
                 // @@protoc_insertion_point(builder_implements:tensorflow.TrackableObjectGraph.TrackableObject.SlotVariableReference)
                 org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReferenceOrBuilder {
               public static final com.google.protobuf.Descriptors.Descriptor
    @@ -2362,7 +2289,7 @@ public static final class Builder extends
               }
     
               @java.lang.Override
    -          protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +          protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
                   internalGetFieldAccessorTable() {
                 return org.tensorflow.proto.TrackableObjectGraphOuterClass.internal_static_tensorflow_TrackableObjectGraph_TrackableObject_SlotVariableReference_fieldAccessorTable
                     .ensureFieldAccessorsInitialized(
    @@ -2375,19 +2302,17 @@ private Builder() {
               }
     
               private Builder(
    -              com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +              com.google.protobuf.GeneratedMessage.BuilderParent parent) {
                 super(parent);
     
               }
               @java.lang.Override
               public Builder clear() {
                 super.clear();
    +            bitField0_ = 0;
                 originalVariableNodeId_ = 0;
    -
                 slotName_ = "";
    -
                 slotVariableNodeId_ = 0;
    -
                 return this;
               }
     
    @@ -2414,45 +2339,24 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.
               @java.lang.Override
               public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference buildPartial() {
                 org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference result = new org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference(this);
    -            result.originalVariableNodeId_ = originalVariableNodeId_;
    -            result.slotName_ = slotName_;
    -            result.slotVariableNodeId_ = slotVariableNodeId_;
    +            if (bitField0_ != 0) { buildPartial0(result); }
                 onBuilt();
                 return result;
               }
     
    -          @java.lang.Override
    -          public Builder clone() {
    -            return super.clone();
    -          }
    -          @java.lang.Override
    -          public Builder setField(
    -              com.google.protobuf.Descriptors.FieldDescriptor field,
    -              java.lang.Object value) {
    -            return super.setField(field, value);
    -          }
    -          @java.lang.Override
    -          public Builder clearField(
    -              com.google.protobuf.Descriptors.FieldDescriptor field) {
    -            return super.clearField(field);
    -          }
    -          @java.lang.Override
    -          public Builder clearOneof(
    -              com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -            return super.clearOneof(oneof);
    -          }
    -          @java.lang.Override
    -          public Builder setRepeatedField(
    -              com.google.protobuf.Descriptors.FieldDescriptor field,
    -              int index, java.lang.Object value) {
    -            return super.setRepeatedField(field, index, value);
    -          }
    -          @java.lang.Override
    -          public Builder addRepeatedField(
    -              com.google.protobuf.Descriptors.FieldDescriptor field,
    -              java.lang.Object value) {
    -            return super.addRepeatedField(field, value);
    +          private void buildPartial0(org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference result) {
    +            int from_bitField0_ = bitField0_;
    +            if (((from_bitField0_ & 0x00000001) != 0)) {
    +              result.originalVariableNodeId_ = originalVariableNodeId_;
    +            }
    +            if (((from_bitField0_ & 0x00000002) != 0)) {
    +              result.slotName_ = slotName_;
    +            }
    +            if (((from_bitField0_ & 0x00000004) != 0)) {
    +              result.slotVariableNodeId_ = slotVariableNodeId_;
    +            }
               }
    +
               @java.lang.Override
               public Builder mergeFrom(com.google.protobuf.Message other) {
                 if (other instanceof org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference) {
    @@ -2470,6 +2374,7 @@ public Builder mergeFrom(org.tensorflow.proto.TrackableObjectGraphOuterClass.Tra
                 }
                 if (!other.getSlotName().isEmpty()) {
                   slotName_ = other.slotName_;
    +              bitField0_ |= 0x00000002;
                   onChanged();
                 }
                 if (other.getSlotVariableNodeId() != 0) {
    @@ -2503,17 +2408,17 @@ public Builder mergeFrom(
                         break;
                       case 8: {
                         originalVariableNodeId_ = input.readInt32();
    -
    +                    bitField0_ |= 0x00000001;
                         break;
                       } // case 8
                       case 18: {
                         slotName_ = input.readStringRequireUtf8();
    -
    +                    bitField0_ |= 0x00000002;
                         break;
                       } // case 18
                       case 24: {
                         slotVariableNodeId_ = input.readInt32();
    -
    +                    bitField0_ |= 0x00000004;
                         break;
                       } // case 24
                       default: {
    @@ -2531,6 +2436,7 @@ public Builder mergeFrom(
                 } // finally
                 return this;
               }
    +          private int bitField0_;
     
               private int originalVariableNodeId_ ;
               /**
    @@ -2557,8 +2463,9 @@ public int getOriginalVariableNodeId() {
                * @return This builder for chaining.
                */
               public Builder setOriginalVariableNodeId(int value) {
    -            
    +
                 originalVariableNodeId_ = value;
    +            bitField0_ |= 0x00000001;
                 onChanged();
                 return this;
               }
    @@ -2572,7 +2479,7 @@ public Builder setOriginalVariableNodeId(int value) {
                * @return This builder for chaining.
                */
               public Builder clearOriginalVariableNodeId() {
    -            
    +            bitField0_ = (bitField0_ & ~0x00000001);
                 originalVariableNodeId_ = 0;
                 onChanged();
                 return this;
    @@ -2631,11 +2538,9 @@ public java.lang.String getSlotName() {
                */
               public Builder setSlotName(
                   java.lang.String value) {
    -            if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +            if (value == null) { throw new NullPointerException(); }
                 slotName_ = value;
    +            bitField0_ |= 0x00000002;
                 onChanged();
                 return this;
               }
    @@ -2648,8 +2553,8 @@ public Builder setSlotName(
                * @return This builder for chaining.
                */
               public Builder clearSlotName() {
    -            
                 slotName_ = getDefaultInstance().getSlotName();
    +            bitField0_ = (bitField0_ & ~0x00000002);
                 onChanged();
                 return this;
               }
    @@ -2664,12 +2569,10 @@ public Builder clearSlotName() {
                */
               public Builder setSlotNameBytes(
                   com.google.protobuf.ByteString value) {
    -            if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -            
    +            if (value == null) { throw new NullPointerException(); }
    +            checkByteStringIsUtf8(value);
                 slotName_ = value;
    +            bitField0_ |= 0x00000002;
                 onChanged();
                 return this;
               }
    @@ -2699,8 +2602,9 @@ public int getSlotVariableNodeId() {
                * @return This builder for chaining.
                */
               public Builder setSlotVariableNodeId(int value) {
    -            
    +
                 slotVariableNodeId_ = value;
    +            bitField0_ |= 0x00000004;
                 onChanged();
                 return this;
               }
    @@ -2714,23 +2618,11 @@ public Builder setSlotVariableNodeId(int value) {
                * @return This builder for chaining.
                */
               public Builder clearSlotVariableNodeId() {
    -            
    +            bitField0_ = (bitField0_ & ~0x00000004);
                 slotVariableNodeId_ = 0;
                 onChanged();
                 return this;
               }
    -          @java.lang.Override
    -          public final Builder setUnknownFields(
    -              final com.google.protobuf.UnknownFieldSet unknownFields) {
    -            return super.setUnknownFields(unknownFields);
    -          }
    -
    -          @java.lang.Override
    -          public final Builder mergeUnknownFields(
    -              final com.google.protobuf.UnknownFieldSet unknownFields) {
    -            return super.mergeUnknownFields(unknownFields);
    -          }
    -
     
               // @@protoc_insertion_point(builder_scope:tensorflow.TrackableObjectGraph.TrackableObject.SlotVariableReference)
             }
    @@ -2783,7 +2675,9 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.
     
           }
     
    +      private int bitField0_;
           public static final int CHILDREN_FIELD_NUMBER = 1;
    +      @SuppressWarnings("serial")
           private java.util.List children_;
           /**
            * 
    @@ -2844,6 +2738,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.
           }
     
           public static final int ATTRIBUTES_FIELD_NUMBER = 2;
    +      @SuppressWarnings("serial")
           private java.util.List attributes_;
           /**
            * 
    @@ -2904,6 +2799,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.
           }
     
           public static final int SLOT_VARIABLES_FIELD_NUMBER = 3;
    +      @SuppressWarnings("serial")
           private java.util.List slotVariables_;
           /**
            * 
    @@ -2976,7 +2872,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.
            */
           @java.lang.Override
           public boolean hasRegisteredSaver() {
    -        return registeredSaver_ != null;
    +        return ((bitField0_ & 0x00000001) != 0);
           }
           /**
            * 
    @@ -3001,7 +2897,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver getRe
            */
           @java.lang.Override
           public org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaverOrBuilder getRegisteredSaverOrBuilder() {
    -        return getRegisteredSaver();
    +        return registeredSaver_ == null ? org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver.getDefaultInstance() : registeredSaver_;
           }
     
           public static final int HAS_CHECKPOINT_VALUES_FIELD_NUMBER = 5;
    @@ -3019,7 +2915,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaverOrBuil
            */
           @java.lang.Override
           public boolean hasHasCheckpointValues() {
    -        return hasCheckpointValues_ != null;
    +        return ((bitField0_ & 0x00000002) != 0);
           }
           /**
            * 
    @@ -3048,7 +2944,7 @@ public com.google.protobuf.BoolValue getHasCheckpointValues() {
            */
           @java.lang.Override
           public com.google.protobuf.BoolValueOrBuilder getHasCheckpointValuesOrBuilder() {
    -        return getHasCheckpointValues();
    +        return hasCheckpointValues_ == null ? com.google.protobuf.BoolValue.getDefaultInstance() : hasCheckpointValues_;
           }
     
           private byte memoizedIsInitialized = -1;
    @@ -3074,10 +2970,10 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
             for (int i = 0; i < slotVariables_.size(); i++) {
               output.writeMessage(3, slotVariables_.get(i));
             }
    -        if (registeredSaver_ != null) {
    +        if (((bitField0_ & 0x00000001) != 0)) {
               output.writeMessage(4, getRegisteredSaver());
             }
    -        if (hasCheckpointValues_ != null) {
    +        if (((bitField0_ & 0x00000002) != 0)) {
               output.writeMessage(5, getHasCheckpointValues());
             }
             getUnknownFields().writeTo(output);
    @@ -3101,11 +2997,11 @@ public int getSerializedSize() {
               size += com.google.protobuf.CodedOutputStream
                 .computeMessageSize(3, slotVariables_.get(i));
             }
    -        if (registeredSaver_ != null) {
    +        if (((bitField0_ & 0x00000001) != 0)) {
               size += com.google.protobuf.CodedOutputStream
                 .computeMessageSize(4, getRegisteredSaver());
             }
    -        if (hasCheckpointValues_ != null) {
    +        if (((bitField0_ & 0x00000002) != 0)) {
               size += com.google.protobuf.CodedOutputStream
                 .computeMessageSize(5, getHasCheckpointValues());
             }
    @@ -3210,39 +3106,41 @@ public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjec
           }
           public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject parseFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject parseFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
    +
           public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject parseDelimitedFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input);
           }
    +
           public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject parseDelimitedFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
           }
           public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject parseFrom(
               com.google.protobuf.CodedInputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject parseFrom(
               com.google.protobuf.CodedInputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
     
    @@ -3262,7 +3160,7 @@ public Builder toBuilder() {
     
           @java.lang.Override
           protected Builder newBuilderForType(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             Builder builder = new Builder(parent);
             return builder;
           }
    @@ -3270,7 +3168,7 @@ protected Builder newBuilderForType(
            * Protobuf type {@code tensorflow.TrackableObjectGraph.TrackableObject}
            */
           public static final class Builder extends
    -          com.google.protobuf.GeneratedMessageV3.Builder implements
    +          com.google.protobuf.GeneratedMessage.Builder implements
               // @@protoc_insertion_point(builder_implements:tensorflow.TrackableObjectGraph.TrackableObject)
               org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObjectOrBuilder {
             public static final com.google.protobuf.Descriptors.Descriptor
    @@ -3279,7 +3177,7 @@ public static final class Builder extends
             }
     
             @java.lang.Override
    -        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
                 internalGetFieldAccessorTable() {
               return org.tensorflow.proto.TrackableObjectGraphOuterClass.internal_static_tensorflow_TrackableObjectGraph_TrackableObject_fieldAccessorTable
                   .ensureFieldAccessorsInitialized(
    @@ -3288,17 +3186,28 @@ public static final class Builder extends
     
             // Construct using org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.newBuilder()
             private Builder() {
    -
    +          maybeForceBuilderInitialization();
             }
     
             private Builder(
    -            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
               super(parent);
    -
    +          maybeForceBuilderInitialization();
    +        }
    +        private void maybeForceBuilderInitialization() {
    +          if (com.google.protobuf.GeneratedMessage
    +                  .alwaysUseFieldBuilders) {
    +            getChildrenFieldBuilder();
    +            getAttributesFieldBuilder();
    +            getSlotVariablesFieldBuilder();
    +            getRegisteredSaverFieldBuilder();
    +            getHasCheckpointValuesFieldBuilder();
    +          }
             }
             @java.lang.Override
             public Builder clear() {
               super.clear();
    +          bitField0_ = 0;
               if (childrenBuilder_ == null) {
                 children_ = java.util.Collections.emptyList();
               } else {
    @@ -3320,16 +3229,14 @@ public Builder clear() {
                 slotVariablesBuilder_.clear();
               }
               bitField0_ = (bitField0_ & ~0x00000004);
    -          if (registeredSaverBuilder_ == null) {
    -            registeredSaver_ = null;
    -          } else {
    -            registeredSaver_ = null;
    +          registeredSaver_ = null;
    +          if (registeredSaverBuilder_ != null) {
    +            registeredSaverBuilder_.dispose();
                 registeredSaverBuilder_ = null;
               }
    -          if (hasCheckpointValuesBuilder_ == null) {
    -            hasCheckpointValues_ = null;
    -          } else {
    -            hasCheckpointValues_ = null;
    +          hasCheckpointValues_ = null;
    +          if (hasCheckpointValuesBuilder_ != null) {
    +            hasCheckpointValuesBuilder_.dispose();
                 hasCheckpointValuesBuilder_ = null;
               }
               return this;
    @@ -3358,7 +3265,13 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.
             @java.lang.Override
             public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject buildPartial() {
               org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject result = new org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject(this);
    -          int from_bitField0_ = bitField0_;
    +          buildPartialRepeatedFields(result);
    +          if (bitField0_ != 0) { buildPartial0(result); }
    +          onBuilt();
    +          return result;
    +        }
    +
    +        private void buildPartialRepeatedFields(org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject result) {
               if (childrenBuilder_ == null) {
                 if (((bitField0_ & 0x00000001) != 0)) {
                   children_ = java.util.Collections.unmodifiableList(children_);
    @@ -3386,52 +3299,26 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.
               } else {
                 result.slotVariables_ = slotVariablesBuilder_.build();
               }
    -          if (registeredSaverBuilder_ == null) {
    -            result.registeredSaver_ = registeredSaver_;
    -          } else {
    -            result.registeredSaver_ = registeredSaverBuilder_.build();
    +        }
    +
    +        private void buildPartial0(org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject result) {
    +          int from_bitField0_ = bitField0_;
    +          int to_bitField0_ = 0;
    +          if (((from_bitField0_ & 0x00000008) != 0)) {
    +            result.registeredSaver_ = registeredSaverBuilder_ == null
    +                ? registeredSaver_
    +                : registeredSaverBuilder_.build();
    +            to_bitField0_ |= 0x00000001;
               }
    -          if (hasCheckpointValuesBuilder_ == null) {
    -            result.hasCheckpointValues_ = hasCheckpointValues_;
    -          } else {
    -            result.hasCheckpointValues_ = hasCheckpointValuesBuilder_.build();
    +          if (((from_bitField0_ & 0x00000010) != 0)) {
    +            result.hasCheckpointValues_ = hasCheckpointValuesBuilder_ == null
    +                ? hasCheckpointValues_
    +                : hasCheckpointValuesBuilder_.build();
    +            to_bitField0_ |= 0x00000002;
               }
    -          onBuilt();
    -          return result;
    +          result.bitField0_ |= to_bitField0_;
             }
     
    -        @java.lang.Override
    -        public Builder clone() {
    -          return super.clone();
    -        }
    -        @java.lang.Override
    -        public Builder setField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.setField(field, value);
    -        }
    -        @java.lang.Override
    -        public Builder clearField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field) {
    -          return super.clearField(field);
    -        }
    -        @java.lang.Override
    -        public Builder clearOneof(
    -            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -          return super.clearOneof(oneof);
    -        }
    -        @java.lang.Override
    -        public Builder setRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            int index, java.lang.Object value) {
    -          return super.setRepeatedField(field, index, value);
    -        }
    -        @java.lang.Override
    -        public Builder addRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.addRepeatedField(field, value);
    -        }
             @java.lang.Override
             public Builder mergeFrom(com.google.protobuf.Message other) {
               if (other instanceof org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject) {
    @@ -3463,7 +3350,7 @@ public Builder mergeFrom(org.tensorflow.proto.TrackableObjectGraphOuterClass.Tra
                     children_ = other.children_;
                     bitField0_ = (bitField0_ & ~0x00000001);
                     childrenBuilder_ = 
    -                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                  com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                          getChildrenFieldBuilder() : null;
                   } else {
                     childrenBuilder_.addAllMessages(other.children_);
    @@ -3489,7 +3376,7 @@ public Builder mergeFrom(org.tensorflow.proto.TrackableObjectGraphOuterClass.Tra
                     attributes_ = other.attributes_;
                     bitField0_ = (bitField0_ & ~0x00000002);
                     attributesBuilder_ = 
    -                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                  com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                          getAttributesFieldBuilder() : null;
                   } else {
                     attributesBuilder_.addAllMessages(other.attributes_);
    @@ -3515,7 +3402,7 @@ public Builder mergeFrom(org.tensorflow.proto.TrackableObjectGraphOuterClass.Tra
                     slotVariables_ = other.slotVariables_;
                     bitField0_ = (bitField0_ & ~0x00000004);
                     slotVariablesBuilder_ = 
    -                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                  com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                          getSlotVariablesFieldBuilder() : null;
                   } else {
                     slotVariablesBuilder_.addAllMessages(other.slotVariables_);
    @@ -3597,14 +3484,14 @@ public Builder mergeFrom(
                       input.readMessage(
                           getRegisteredSaverFieldBuilder().getBuilder(),
                           extensionRegistry);
    -
    +                  bitField0_ |= 0x00000008;
                       break;
                     } // case 34
                     case 42: {
                       input.readMessage(
                           getHasCheckpointValuesFieldBuilder().getBuilder(),
                           extensionRegistry);
    -
    +                  bitField0_ |= 0x00000010;
                       break;
                     } // case 42
                     default: {
    @@ -3633,7 +3520,7 @@ private void ensureChildrenIsMutable() {
                }
             }
     
    -        private com.google.protobuf.RepeatedFieldBuilderV3<
    +        private com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReferenceOrBuilder> childrenBuilder_;
     
             /**
    @@ -3921,11 +3808,11 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.
                  getChildrenBuilderList() {
               return getChildrenFieldBuilder().getBuilderList();
             }
    -        private com.google.protobuf.RepeatedFieldBuilderV3<
    +        private com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReferenceOrBuilder> 
                 getChildrenFieldBuilder() {
               if (childrenBuilder_ == null) {
    -            childrenBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +            childrenBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                     org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReference.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.ObjectReferenceOrBuilder>(
                         children_,
                         ((bitField0_ & 0x00000001) != 0),
    @@ -3945,7 +3832,7 @@ private void ensureAttributesIsMutable() {
                }
             }
     
    -        private com.google.protobuf.RepeatedFieldBuilderV3<
    +        private com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensor, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensor.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensorOrBuilder> attributesBuilder_;
     
             /**
    @@ -4233,11 +4120,11 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.
                  getAttributesBuilderList() {
               return getAttributesFieldBuilder().getBuilderList();
             }
    -        private com.google.protobuf.RepeatedFieldBuilderV3<
    +        private com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensor, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensor.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensorOrBuilder> 
                 getAttributesFieldBuilder() {
               if (attributesBuilder_ == null) {
    -            attributesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +            attributesBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                     org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensor, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensor.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SerializedTensorOrBuilder>(
                         attributes_,
                         ((bitField0_ & 0x00000002) != 0),
    @@ -4257,7 +4144,7 @@ private void ensureSlotVariablesIsMutable() {
                }
             }
     
    -        private com.google.protobuf.RepeatedFieldBuilderV3<
    +        private com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReferenceOrBuilder> slotVariablesBuilder_;
     
             /**
    @@ -4545,11 +4432,11 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.
                  getSlotVariablesBuilderList() {
               return getSlotVariablesFieldBuilder().getBuilderList();
             }
    -        private com.google.protobuf.RepeatedFieldBuilderV3<
    +        private com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReferenceOrBuilder> 
                 getSlotVariablesFieldBuilder() {
               if (slotVariablesBuilder_ == null) {
    -            slotVariablesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +            slotVariablesBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                     org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReference.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.SlotVariableReferenceOrBuilder>(
                         slotVariables_,
                         ((bitField0_ & 0x00000004) != 0),
    @@ -4561,7 +4448,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.
             }
     
             private org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver registeredSaver_;
    -        private com.google.protobuf.SingleFieldBuilderV3<
    +        private com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver, org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaverOrBuilder> registeredSaverBuilder_;
             /**
              * 
    @@ -4573,7 +4460,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.
              * @return Whether the registeredSaver field is set.
              */
             public boolean hasRegisteredSaver() {
    -          return registeredSaverBuilder_ != null || registeredSaver_ != null;
    +          return ((bitField0_ & 0x00000008) != 0);
             }
             /**
              * 
    @@ -4605,11 +4492,11 @@ public Builder setRegisteredSaver(org.tensorflow.proto.TrackableObjectGraphOuter
                   throw new NullPointerException();
                 }
                 registeredSaver_ = value;
    -            onChanged();
               } else {
                 registeredSaverBuilder_.setMessage(value);
               }
    -
    +          bitField0_ |= 0x00000008;
    +          onChanged();
               return this;
             }
             /**
    @@ -4624,11 +4511,11 @@ public Builder setRegisteredSaver(
                 org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver.Builder builderForValue) {
               if (registeredSaverBuilder_ == null) {
                 registeredSaver_ = builderForValue.build();
    -            onChanged();
               } else {
                 registeredSaverBuilder_.setMessage(builderForValue.build());
               }
    -
    +          bitField0_ |= 0x00000008;
    +          onChanged();
               return this;
             }
             /**
    @@ -4641,17 +4528,20 @@ public Builder setRegisteredSaver(
              */
             public Builder mergeRegisteredSaver(org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver value) {
               if (registeredSaverBuilder_ == null) {
    -            if (registeredSaver_ != null) {
    -              registeredSaver_ =
    -                org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver.newBuilder(registeredSaver_).mergeFrom(value).buildPartial();
    +            if (((bitField0_ & 0x00000008) != 0) &&
    +              registeredSaver_ != null &&
    +              registeredSaver_ != org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver.getDefaultInstance()) {
    +              getRegisteredSaverBuilder().mergeFrom(value);
                 } else {
                   registeredSaver_ = value;
                 }
    -            onChanged();
               } else {
                 registeredSaverBuilder_.mergeFrom(value);
               }
    -
    +          if (registeredSaver_ != null) {
    +            bitField0_ |= 0x00000008;
    +            onChanged();
    +          }
               return this;
             }
             /**
    @@ -4663,14 +4553,13 @@ public Builder mergeRegisteredSaver(org.tensorflow.proto.TrackableObjectGraphOut
              * .tensorflow.RegisteredSaver registered_saver = 4;
              */
             public Builder clearRegisteredSaver() {
    -          if (registeredSaverBuilder_ == null) {
    -            registeredSaver_ = null;
    -            onChanged();
    -          } else {
    -            registeredSaver_ = null;
    +          bitField0_ = (bitField0_ & ~0x00000008);
    +          registeredSaver_ = null;
    +          if (registeredSaverBuilder_ != null) {
    +            registeredSaverBuilder_.dispose();
                 registeredSaverBuilder_ = null;
               }
    -
    +          onChanged();
               return this;
             }
             /**
    @@ -4682,7 +4571,7 @@ public Builder clearRegisteredSaver() {
              * .tensorflow.RegisteredSaver registered_saver = 4;
              */
             public org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver.Builder getRegisteredSaverBuilder() {
    -          
    +          bitField0_ |= 0x00000008;
               onChanged();
               return getRegisteredSaverFieldBuilder().getBuilder();
             }
    @@ -4710,11 +4599,11 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaverOrBuil
              *
              * .tensorflow.RegisteredSaver registered_saver = 4;
              */
    -        private com.google.protobuf.SingleFieldBuilderV3<
    +        private com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver, org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaverOrBuilder> 
                 getRegisteredSaverFieldBuilder() {
               if (registeredSaverBuilder_ == null) {
    -            registeredSaverBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +            registeredSaverBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                     org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver, org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaverOrBuilder>(
                         getRegisteredSaver(),
                         getParentForChildren(),
    @@ -4725,7 +4614,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaverOrBuil
             }
     
             private com.google.protobuf.BoolValue hasCheckpointValues_;
    -        private com.google.protobuf.SingleFieldBuilderV3<
    +        private com.google.protobuf.SingleFieldBuilder<
                 com.google.protobuf.BoolValue, com.google.protobuf.BoolValue.Builder, com.google.protobuf.BoolValueOrBuilder> hasCheckpointValuesBuilder_;
             /**
              * 
    @@ -4739,7 +4628,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaverOrBuil
              * @return Whether the hasCheckpointValues field is set.
              */
             public boolean hasHasCheckpointValues() {
    -          return hasCheckpointValuesBuilder_ != null || hasCheckpointValues_ != null;
    +          return ((bitField0_ & 0x00000010) != 0);
             }
             /**
              * 
    @@ -4775,11 +4664,11 @@ public Builder setHasCheckpointValues(com.google.protobuf.BoolValue value) {
                   throw new NullPointerException();
                 }
                 hasCheckpointValues_ = value;
    -            onChanged();
               } else {
                 hasCheckpointValuesBuilder_.setMessage(value);
               }
    -
    +          bitField0_ |= 0x00000010;
    +          onChanged();
               return this;
             }
             /**
    @@ -4796,11 +4685,11 @@ public Builder setHasCheckpointValues(
                 com.google.protobuf.BoolValue.Builder builderForValue) {
               if (hasCheckpointValuesBuilder_ == null) {
                 hasCheckpointValues_ = builderForValue.build();
    -            onChanged();
               } else {
                 hasCheckpointValuesBuilder_.setMessage(builderForValue.build());
               }
    -
    +          bitField0_ |= 0x00000010;
    +          onChanged();
               return this;
             }
             /**
    @@ -4815,17 +4704,20 @@ public Builder setHasCheckpointValues(
              */
             public Builder mergeHasCheckpointValues(com.google.protobuf.BoolValue value) {
               if (hasCheckpointValuesBuilder_ == null) {
    -            if (hasCheckpointValues_ != null) {
    -              hasCheckpointValues_ =
    -                com.google.protobuf.BoolValue.newBuilder(hasCheckpointValues_).mergeFrom(value).buildPartial();
    +            if (((bitField0_ & 0x00000010) != 0) &&
    +              hasCheckpointValues_ != null &&
    +              hasCheckpointValues_ != com.google.protobuf.BoolValue.getDefaultInstance()) {
    +              getHasCheckpointValuesBuilder().mergeFrom(value);
                 } else {
                   hasCheckpointValues_ = value;
                 }
    -            onChanged();
               } else {
                 hasCheckpointValuesBuilder_.mergeFrom(value);
               }
    -
    +          if (hasCheckpointValues_ != null) {
    +            bitField0_ |= 0x00000010;
    +            onChanged();
    +          }
               return this;
             }
             /**
    @@ -4839,14 +4731,13 @@ public Builder mergeHasCheckpointValues(com.google.protobuf.BoolValue value) {
              * .google.protobuf.BoolValue has_checkpoint_values = 5;
              */
             public Builder clearHasCheckpointValues() {
    -          if (hasCheckpointValuesBuilder_ == null) {
    -            hasCheckpointValues_ = null;
    -            onChanged();
    -          } else {
    -            hasCheckpointValues_ = null;
    +          bitField0_ = (bitField0_ & ~0x00000010);
    +          hasCheckpointValues_ = null;
    +          if (hasCheckpointValuesBuilder_ != null) {
    +            hasCheckpointValuesBuilder_.dispose();
                 hasCheckpointValuesBuilder_ = null;
               }
    -
    +          onChanged();
               return this;
             }
             /**
    @@ -4860,7 +4751,7 @@ public Builder clearHasCheckpointValues() {
              * .google.protobuf.BoolValue has_checkpoint_values = 5;
              */
             public com.google.protobuf.BoolValue.Builder getHasCheckpointValuesBuilder() {
    -          
    +          bitField0_ |= 0x00000010;
               onChanged();
               return getHasCheckpointValuesFieldBuilder().getBuilder();
             }
    @@ -4892,11 +4783,11 @@ public com.google.protobuf.BoolValueOrBuilder getHasCheckpointValuesOrBuilder()
              *
              * .google.protobuf.BoolValue has_checkpoint_values = 5;
              */
    -        private com.google.protobuf.SingleFieldBuilderV3<
    +        private com.google.protobuf.SingleFieldBuilder<
                 com.google.protobuf.BoolValue, com.google.protobuf.BoolValue.Builder, com.google.protobuf.BoolValueOrBuilder> 
                 getHasCheckpointValuesFieldBuilder() {
               if (hasCheckpointValuesBuilder_ == null) {
    -            hasCheckpointValuesBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +            hasCheckpointValuesBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                     com.google.protobuf.BoolValue, com.google.protobuf.BoolValue.Builder, com.google.protobuf.BoolValueOrBuilder>(
                         getHasCheckpointValues(),
                         getParentForChildren(),
    @@ -4905,18 +4796,6 @@ public com.google.protobuf.BoolValueOrBuilder getHasCheckpointValuesOrBuilder()
               }
               return hasCheckpointValuesBuilder_;
             }
    -        @java.lang.Override
    -        public final Builder setUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.setUnknownFields(unknownFields);
    -        }
    -
    -        @java.lang.Override
    -        public final Builder mergeUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.mergeUnknownFields(unknownFields);
    -        }
    -
     
             // @@protoc_insertion_point(builder_scope:tensorflow.TrackableObjectGraph.TrackableObject)
           }
    @@ -4970,6 +4849,7 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.
         }
     
         public static final int NODES_FIELD_NUMBER = 1;
    +    @SuppressWarnings("serial")
         private java.util.List nodes_;
         /**
          * repeated .tensorflow.TrackableObjectGraph.TrackableObject nodes = 1;
    @@ -5110,39 +4990,41 @@ public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjec
         }
         public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -5162,7 +5044,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -5170,7 +5052,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.TrackableObjectGraph}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.TrackableObjectGraph)
             org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraphOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -5179,7 +5061,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.TrackableObjectGraphOuterClass.internal_static_tensorflow_TrackableObjectGraph_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -5192,13 +5074,14 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             if (nodesBuilder_ == null) {
               nodes_ = java.util.Collections.emptyList();
             } else {
    @@ -5232,7 +5115,13 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph
           @java.lang.Override
           public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph buildPartial() {
             org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph result = new org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph(this);
    -        int from_bitField0_ = bitField0_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph result) {
             if (nodesBuilder_ == null) {
               if (((bitField0_ & 0x00000001) != 0)) {
                 nodes_ = java.util.Collections.unmodifiableList(nodes_);
    @@ -5242,42 +5131,12 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph
             } else {
               result.nodes_ = nodesBuilder_.build();
             }
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph result) {
    +        int from_bitField0_ = bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph) {
    @@ -5309,7 +5168,7 @@ public Builder mergeFrom(org.tensorflow.proto.TrackableObjectGraphOuterClass.Tra
                   nodes_ = other.nodes_;
                   bitField0_ = (bitField0_ & ~0x00000001);
                   nodesBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getNodesFieldBuilder() : null;
                 } else {
                   nodesBuilder_.addAllMessages(other.nodes_);
    @@ -5381,7 +5240,7 @@ private void ensureNodesIsMutable() {
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObjectOrBuilder> nodesBuilder_;
     
           /**
    @@ -5597,11 +5456,11 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.
                getNodesBuilderList() {
             return getNodesFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObjectOrBuilder> 
               getNodesFieldBuilder() {
             if (nodesBuilder_ == null) {
    -          nodesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          nodesBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObject.Builder, org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.TrackableObjectOrBuilder>(
                       nodes_,
                       ((bitField0_ & 0x00000001) != 0),
    @@ -5611,18 +5470,6 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.TrackableObjectGraph.
             }
             return nodesBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.TrackableObjectGraph)
         }
    @@ -5723,12 +5570,21 @@ public interface RegisteredSaverOrBuilder extends
        * Protobuf type {@code tensorflow.RegisteredSaver}
        */
       public static final class RegisteredSaver extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.RegisteredSaver)
           RegisteredSaverOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        RegisteredSaver.class.getName());
    +    }
         // Use RegisteredSaver.newBuilder() to construct.
    -    private RegisteredSaver(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private RegisteredSaver(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private RegisteredSaver() {
    @@ -5736,25 +5592,13 @@ private RegisteredSaver() {
           objectName_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new RegisteredSaver();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.TrackableObjectGraphOuterClass.internal_static_tensorflow_RegisteredSaver_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TrackableObjectGraphOuterClass.internal_static_tensorflow_RegisteredSaver_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -5762,7 +5606,8 @@ protected java.lang.Object newInstance(
         }
     
         public static final int NAME_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object name_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object name_ = "";
         /**
          * 
          * The name of the registered saver/restore function.
    @@ -5808,7 +5653,8 @@ public java.lang.String getName() {
         }
     
         public static final int OBJECT_NAME_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object objectName_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object objectName_ = "";
         /**
          * 
          * Unique auto-generated name of the object.
    @@ -5867,11 +5713,11 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(objectName_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, objectName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(objectName_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, objectName_);
           }
           getUnknownFields().writeTo(output);
         }
    @@ -5882,11 +5728,11 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(objectName_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, objectName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(objectName_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, objectName_);
           }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
    @@ -5961,39 +5807,41 @@ public static org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSave
         }
         public static org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -6013,7 +5861,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -6021,7 +5869,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.RegisteredSaver}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.RegisteredSaver)
             org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaverOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -6030,7 +5878,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.TrackableObjectGraphOuterClass.internal_static_tensorflow_RegisteredSaver_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -6043,17 +5891,16 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             name_ = "";
    -
             objectName_ = "";
    -
             return this;
           }
     
    @@ -6080,44 +5927,21 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver build
           @java.lang.Override
           public org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver buildPartial() {
             org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver result = new org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver(this);
    -        result.name_ = name_;
    -        result.objectName_ = objectName_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.name_ = name_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.objectName_ = objectName_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver) {
    @@ -6132,10 +5956,12 @@ public Builder mergeFrom(org.tensorflow.proto.TrackableObjectGraphOuterClass.Reg
             if (other == org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver.getDefaultInstance()) return this;
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (!other.getObjectName().isEmpty()) {
               objectName_ = other.objectName_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             this.mergeUnknownFields(other.getUnknownFields());
    @@ -6166,12 +5992,12 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     objectName_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   default: {
    @@ -6189,6 +6015,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private java.lang.Object name_ = "";
           /**
    @@ -6243,11 +6070,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -6260,8 +6085,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -6276,12 +6101,10 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -6339,11 +6162,9 @@ public java.lang.String getObjectName() {
            */
           public Builder setObjectName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             objectName_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -6356,8 +6177,8 @@ public Builder setObjectName(
            * @return This builder for chaining.
            */
           public Builder clearObjectName() {
    -        
             objectName_ = getDefaultInstance().getObjectName();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -6372,27 +6193,13 @@ public Builder clearObjectName() {
            */
           public Builder setObjectNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             objectName_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.RegisteredSaver)
         }
    @@ -6448,32 +6255,32 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver getDe
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_TrackableObjectGraph_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_TrackableObjectGraph_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_TrackableObjectGraph_TrackableObject_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_TrackableObjectGraph_TrackableObject_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_TrackableObjectGraph_TrackableObject_ObjectReference_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_TrackableObjectGraph_TrackableObject_ObjectReference_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_TrackableObjectGraph_TrackableObject_SerializedTensor_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_TrackableObjectGraph_TrackableObject_SerializedTensor_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_TrackableObjectGraph_TrackableObject_SlotVariableReference_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_TrackableObjectGraph_TrackableObject_SlotVariableReference_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_RegisteredSaver_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_RegisteredSaver_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -6519,39 +6326,40 @@ public org.tensorflow.proto.TrackableObjectGraphOuterClass.RegisteredSaver getDe
         internal_static_tensorflow_TrackableObjectGraph_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_TrackableObjectGraph_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_TrackableObjectGraph_descriptor,
             new java.lang.String[] { "Nodes", });
         internal_static_tensorflow_TrackableObjectGraph_TrackableObject_descriptor =
           internal_static_tensorflow_TrackableObjectGraph_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_TrackableObjectGraph_TrackableObject_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_TrackableObjectGraph_TrackableObject_descriptor,
             new java.lang.String[] { "Children", "Attributes", "SlotVariables", "RegisteredSaver", "HasCheckpointValues", });
         internal_static_tensorflow_TrackableObjectGraph_TrackableObject_ObjectReference_descriptor =
           internal_static_tensorflow_TrackableObjectGraph_TrackableObject_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_TrackableObjectGraph_TrackableObject_ObjectReference_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_TrackableObjectGraph_TrackableObject_ObjectReference_descriptor,
             new java.lang.String[] { "NodeId", "LocalName", });
         internal_static_tensorflow_TrackableObjectGraph_TrackableObject_SerializedTensor_descriptor =
           internal_static_tensorflow_TrackableObjectGraph_TrackableObject_descriptor.getNestedTypes().get(1);
         internal_static_tensorflow_TrackableObjectGraph_TrackableObject_SerializedTensor_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_TrackableObjectGraph_TrackableObject_SerializedTensor_descriptor,
             new java.lang.String[] { "Name", "FullName", "CheckpointKey", });
         internal_static_tensorflow_TrackableObjectGraph_TrackableObject_SlotVariableReference_descriptor =
           internal_static_tensorflow_TrackableObjectGraph_TrackableObject_descriptor.getNestedTypes().get(2);
         internal_static_tensorflow_TrackableObjectGraph_TrackableObject_SlotVariableReference_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_TrackableObjectGraph_TrackableObject_SlotVariableReference_descriptor,
             new java.lang.String[] { "OriginalVariableNodeId", "SlotName", "SlotVariableNodeId", });
         internal_static_tensorflow_RegisteredSaver_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_RegisteredSaver_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_RegisteredSaver_descriptor,
             new java.lang.String[] { "Name", "ObjectName", });
    +    descriptor.resolveAllFeaturesImmutable();
         com.google.protobuf.WrappersProto.getDescriptor();
       }
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TransportOptions.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TransportOptions.java
    index b5a1e8fde55..6f2d3dbb71d 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TransportOptions.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TransportOptions.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/transport_options.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class TransportOptions {
       private TransportOptions() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      TransportOptions.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -43,37 +54,34 @@ public interface RecvBufRespExtraOrBuilder extends
        * Protobuf type {@code tensorflow.RecvBufRespExtra}
        */
       public static final class RecvBufRespExtra extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.RecvBufRespExtra)
           RecvBufRespExtraOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        RecvBufRespExtra.class.getName());
    +    }
         // Use RecvBufRespExtra.newBuilder() to construct.
    -    private RecvBufRespExtra(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private RecvBufRespExtra(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private RecvBufRespExtra() {
    -      tensorContent_ = java.util.Collections.emptyList();
    -    }
    -
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new RecvBufRespExtra();
    +      tensorContent_ = emptyList(com.google.protobuf.ByteString.class);
         }
     
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.TransportOptions.internal_static_tensorflow_RecvBufRespExtra_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TransportOptions.internal_static_tensorflow_RecvBufRespExtra_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -81,7 +89,9 @@ protected java.lang.Object newInstance(
         }
     
         public static final int TENSOR_CONTENT_FIELD_NUMBER = 1;
    -    private java.util.List tensorContent_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.Internal.ProtobufList tensorContent_ =
    +        emptyList(com.google.protobuf.ByteString.class);
         /**
          * repeated bytes tensor_content = 1;
          * @return A list containing the tensorContent.
    @@ -213,39 +223,41 @@ public static org.tensorflow.proto.TransportOptions.RecvBufRespExtra parseFrom(
         }
         public static org.tensorflow.proto.TransportOptions.RecvBufRespExtra parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.TransportOptions.RecvBufRespExtra parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.TransportOptions.RecvBufRespExtra parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.TransportOptions.RecvBufRespExtra parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.TransportOptions.RecvBufRespExtra parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.TransportOptions.RecvBufRespExtra parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -265,7 +277,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -277,7 +289,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.RecvBufRespExtra}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.RecvBufRespExtra)
             org.tensorflow.proto.TransportOptions.RecvBufRespExtraOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -286,7 +298,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.TransportOptions.internal_static_tensorflow_RecvBufRespExtra_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -299,15 +311,15 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    -        tensorContent_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = 0;
    +        tensorContent_ = emptyList(com.google.protobuf.ByteString.class);
             return this;
           }
     
    @@ -334,48 +346,19 @@ public org.tensorflow.proto.TransportOptions.RecvBufRespExtra build() {
           @java.lang.Override
           public org.tensorflow.proto.TransportOptions.RecvBufRespExtra buildPartial() {
             org.tensorflow.proto.TransportOptions.RecvBufRespExtra result = new org.tensorflow.proto.TransportOptions.RecvBufRespExtra(this);
    -        int from_bitField0_ = bitField0_;
    -        if (((bitField0_ & 0x00000001) != 0)) {
    -          tensorContent_ = java.util.Collections.unmodifiableList(tensorContent_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    -        }
    -        result.tensorContent_ = tensorContent_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.TransportOptions.RecvBufRespExtra result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          tensorContent_.makeImmutable();
    +          result.tensorContent_ = tensorContent_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.TransportOptions.RecvBufRespExtra) {
    @@ -391,7 +374,8 @@ public Builder mergeFrom(org.tensorflow.proto.TransportOptions.RecvBufRespExtra
             if (!other.tensorContent_.isEmpty()) {
               if (tensorContent_.isEmpty()) {
                 tensorContent_ = other.tensorContent_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            tensorContent_.makeImmutable();
    +            bitField0_ |= 0x00000001;
               } else {
                 ensureTensorContentIsMutable();
                 tensorContent_.addAll(other.tensorContent_);
    @@ -447,12 +431,12 @@ public Builder mergeFrom(
           }
           private int bitField0_;
     
    -      private java.util.List tensorContent_ = java.util.Collections.emptyList();
    +      private com.google.protobuf.Internal.ProtobufList tensorContent_ = emptyList(com.google.protobuf.ByteString.class);
           private void ensureTensorContentIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    -          tensorContent_ = new java.util.ArrayList(tensorContent_);
    -          bitField0_ |= 0x00000001;
    -         }
    +        if (!tensorContent_.isModifiable()) {
    +          tensorContent_ = makeMutableCopy(tensorContent_);
    +        }
    +        bitField0_ |= 0x00000001;
           }
           /**
            * repeated bytes tensor_content = 1;
    @@ -460,8 +444,8 @@ private void ensureTensorContentIsMutable() {
            */
           public java.util.List
               getTensorContentList() {
    -        return ((bitField0_ & 0x00000001) != 0) ?
    -                 java.util.Collections.unmodifiableList(tensorContent_) : tensorContent_;
    +        tensorContent_.makeImmutable();
    +        return tensorContent_;
           }
           /**
            * repeated bytes tensor_content = 1;
    @@ -486,11 +470,10 @@ public com.google.protobuf.ByteString getTensorContent(int index) {
            */
           public Builder setTensorContent(
               int index, com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureTensorContentIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureTensorContentIsMutable();
             tensorContent_.set(index, value);
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -500,11 +483,10 @@ public Builder setTensorContent(
            * @return This builder for chaining.
            */
           public Builder addTensorContent(com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureTensorContentIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureTensorContentIsMutable();
             tensorContent_.add(value);
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -518,6 +500,7 @@ public Builder addAllTensorContent(
             ensureTensorContentIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, tensorContent_);
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -526,23 +509,11 @@ public Builder addAllTensorContent(
            * @return This builder for chaining.
            */
           public Builder clearTensorContent() {
    -        tensorContent_ = java.util.Collections.emptyList();
    +        tensorContent_ = emptyList(com.google.protobuf.ByteString.class);
             bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.RecvBufRespExtra)
         }
    @@ -598,7 +569,7 @@ public org.tensorflow.proto.TransportOptions.RecvBufRespExtra getDefaultInstance
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_RecvBufRespExtra_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_RecvBufRespExtra_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -623,9 +594,10 @@ public org.tensorflow.proto.TransportOptions.RecvBufRespExtra getDefaultInstance
         internal_static_tensorflow_RecvBufRespExtra_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_RecvBufRespExtra_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_RecvBufRespExtra_descriptor,
             new java.lang.String[] { "TensorContent", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TypesProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TypesProtos.java
    index f148eb06cc2..262c275afad 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TypesProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/TypesProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/types.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class TypesProtos {
       private TypesProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      TypesProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,7 +28,7 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SerializedDType_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SerializedDType_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -30,7 +41,7 @@ public static void registerAllExtensions(
         java.lang.String[] descriptorData = {
           "\n%tensorflow/core/framework/types.proto\022" +
           "\ntensorflow\"9\n\017SerializedDType\022&\n\010dataty" +
    -      "pe\030\001 \001(\0162\024.tensorflow.DataType*\306\007\n\010DataT" +
    +      "pe\030\001 \001(\0162\024.tensorflow.DataType*\251\t\n\010DataT" +
           "ype\022\016\n\nDT_INVALID\020\000\022\014\n\010DT_FLOAT\020\001\022\r\n\tDT_" +
           "DOUBLE\020\002\022\014\n\010DT_INT32\020\003\022\014\n\010DT_UINT8\020\004\022\014\n\010" +
           "DT_INT16\020\005\022\013\n\007DT_INT8\020\006\022\r\n\tDT_STRING\020\007\022\020" +
    @@ -41,24 +52,29 @@ public static void registerAllExtensions(
           "PLEX128\020\022\022\013\n\007DT_HALF\020\023\022\017\n\013DT_RESOURCE\020\024\022" +
           "\016\n\nDT_VARIANT\020\025\022\r\n\tDT_UINT32\020\026\022\r\n\tDT_UIN" +
           "T64\020\027\022\022\n\016DT_FLOAT8_E5M2\020\030\022\024\n\020DT_FLOAT8_E" +
    -      "4M3FN\020\031\022\013\n\007DT_INT4\020\035\022\014\n\010DT_UINT4\020\036\022\020\n\014DT" +
    -      "_FLOAT_REF\020e\022\021\n\rDT_DOUBLE_REF\020f\022\020\n\014DT_IN" +
    -      "T32_REF\020g\022\020\n\014DT_UINT8_REF\020h\022\020\n\014DT_INT16_" +
    -      "REF\020i\022\017\n\013DT_INT8_REF\020j\022\021\n\rDT_STRING_REF\020" +
    -      "k\022\024\n\020DT_COMPLEX64_REF\020l\022\020\n\014DT_INT64_REF\020" +
    -      "m\022\017\n\013DT_BOOL_REF\020n\022\020\n\014DT_QINT8_REF\020o\022\021\n\r" +
    -      "DT_QUINT8_REF\020p\022\021\n\rDT_QINT32_REF\020q\022\023\n\017DT" +
    -      "_BFLOAT16_REF\020r\022\021\n\rDT_QINT16_REF\020s\022\022\n\016DT" +
    -      "_QUINT16_REF\020t\022\021\n\rDT_UINT16_REF\020u\022\025\n\021DT_" +
    -      "COMPLEX128_REF\020v\022\017\n\013DT_HALF_REF\020w\022\023\n\017DT_" +
    -      "RESOURCE_REF\020x\022\022\n\016DT_VARIANT_REF\020y\022\021\n\rDT" +
    -      "_UINT32_REF\020z\022\021\n\rDT_UINT64_REF\020{\022\026\n\022DT_F" +
    -      "LOAT8_E5M2_REF\020|\022\030\n\024DT_FLOAT8_E4M3FN_REF" +
    -      "\020}\022\020\n\013DT_INT4_REF\020\201\001\022\021\n\014DT_UINT4_REF\020\202\001B" +
    -      "v\n\024org.tensorflow.protoB\013TypesProtosP\001ZL" +
    -      "github.com/tensorflow/tensorflow/tensorf" +
    -      "low/go/core/framework/types_go_proto\370\001\001b" +
    -      "\006proto3"
    +      "4M3FN\020\031\022\026\n\022DT_FLOAT8_E4M3FNUZ\020\032\022\031\n\025DT_FL" +
    +      "OAT8_E4M3B11FNUZ\020\033\022\026\n\022DT_FLOAT8_E5M2FNUZ" +
    +      "\020\034\022\013\n\007DT_INT4\020\035\022\014\n\010DT_UINT4\020\036\022\013\n\007DT_INT2" +
    +      "\020\037\022\014\n\010DT_UINT2\020 \022\020\n\014DT_FLOAT_REF\020e\022\021\n\rDT" +
    +      "_DOUBLE_REF\020f\022\020\n\014DT_INT32_REF\020g\022\020\n\014DT_UI" +
    +      "NT8_REF\020h\022\020\n\014DT_INT16_REF\020i\022\017\n\013DT_INT8_R" +
    +      "EF\020j\022\021\n\rDT_STRING_REF\020k\022\024\n\020DT_COMPLEX64_" +
    +      "REF\020l\022\020\n\014DT_INT64_REF\020m\022\017\n\013DT_BOOL_REF\020n" +
    +      "\022\020\n\014DT_QINT8_REF\020o\022\021\n\rDT_QUINT8_REF\020p\022\021\n" +
    +      "\rDT_QINT32_REF\020q\022\023\n\017DT_BFLOAT16_REF\020r\022\021\n" +
    +      "\rDT_QINT16_REF\020s\022\022\n\016DT_QUINT16_REF\020t\022\021\n\r" +
    +      "DT_UINT16_REF\020u\022\025\n\021DT_COMPLEX128_REF\020v\022\017" +
    +      "\n\013DT_HALF_REF\020w\022\023\n\017DT_RESOURCE_REF\020x\022\022\n\016" +
    +      "DT_VARIANT_REF\020y\022\021\n\rDT_UINT32_REF\020z\022\021\n\rD" +
    +      "T_UINT64_REF\020{\022\026\n\022DT_FLOAT8_E5M2_REF\020|\022\030" +
    +      "\n\024DT_FLOAT8_E4M3FN_REF\020}\022\032\n\026DT_FLOAT8_E4" +
    +      "M3FNUZ_REF\020~\022\035\n\031DT_FLOAT8_E4M3B11FNUZ_RE" +
    +      "F\020\177\022\033\n\026DT_FLOAT8_E5M2FNUZ_REF\020\200\001\022\020\n\013DT_I" +
    +      "NT4_REF\020\201\001\022\021\n\014DT_UINT4_REF\020\202\001\022\020\n\013DT_INT2" +
    +      "_REF\020\203\001\022\021\n\014DT_UINT2_REF\020\204\001Bv\n\024org.tensor" +
    +      "flow.protoB\013TypesProtosP\001ZLgithub.com/te" +
    +      "nsorflow/tensorflow/tensorflow/go/core/f" +
    +      "ramework/types_go_proto\370\001\001b\006proto3"
         };
         descriptor = com.google.protobuf.Descriptors.FileDescriptor
           .internalBuildGeneratedFileFrom(descriptorData,
    @@ -67,9 +83,10 @@ public static void registerAllExtensions(
         internal_static_tensorflow_SerializedDType_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_SerializedDType_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SerializedDType_descriptor,
             new java.lang.String[] { "Datatype", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/UniformQuantOpsAttr.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/UniformQuantOpsAttr.java
    index fae59d0abb4..91595e4d9c8 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/UniformQuantOpsAttr.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/UniformQuantOpsAttr.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/quantization/uniform_quant_ops_attr.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class UniformQuantOpsAttr {
       private UniformQuantOpsAttr() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      UniformQuantOpsAttr.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -183,12 +194,21 @@ public interface UniformQuantizedConvolutionDimensionNumbersAttrOrBuilder extend
        * Protobuf type {@code tensorflow.UniformQuantizedConvolutionDimensionNumbersAttr}
        */
       public static final class UniformQuantizedConvolutionDimensionNumbersAttr extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.UniformQuantizedConvolutionDimensionNumbersAttr)
           UniformQuantizedConvolutionDimensionNumbersAttrOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        UniformQuantizedConvolutionDimensionNumbersAttr.class.getName());
    +    }
         // Use UniformQuantizedConvolutionDimensionNumbersAttr.newBuilder() to construct.
    -    private UniformQuantizedConvolutionDimensionNumbersAttr(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private UniformQuantizedConvolutionDimensionNumbersAttr(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private UniformQuantizedConvolutionDimensionNumbersAttr() {
    @@ -197,25 +217,13 @@ private UniformQuantizedConvolutionDimensionNumbersAttr() {
           outputSpatialDimensions_ = emptyLongList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new UniformQuantizedConvolutionDimensionNumbersAttr();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.UniformQuantOpsAttr.internal_static_tensorflow_UniformQuantizedConvolutionDimensionNumbersAttr_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.UniformQuantOpsAttr.internal_static_tensorflow_UniformQuantizedConvolutionDimensionNumbersAttr_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -223,7 +231,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int INPUT_BATCH_DIMENSION_FIELD_NUMBER = 1;
    -    private long inputBatchDimension_;
    +    private long inputBatchDimension_ = 0L;
         /**
          * 
          * The dimension that represents batch in the input.
    @@ -238,7 +246,7 @@ public long getInputBatchDimension() {
         }
     
         public static final int INPUT_FEATURE_DIMENSION_FIELD_NUMBER = 2;
    -    private long inputFeatureDimension_;
    +    private long inputFeatureDimension_ = 0L;
         /**
          * 
          * The dimension that represents features in the input.
    @@ -253,7 +261,9 @@ public long getInputFeatureDimension() {
         }
     
         public static final int INPUT_SPATIAL_DIMENSIONS_FIELD_NUMBER = 3;
    -    private com.google.protobuf.Internal.LongList inputSpatialDimensions_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.Internal.LongList inputSpatialDimensions_ =
    +        emptyLongList();
         /**
          * 
          * The dimensions that represents spatial dimensions in the input. Length must
    @@ -296,7 +306,7 @@ public long getInputSpatialDimensions(int index) {
         private int inputSpatialDimensionsMemoizedSerializedSize = -1;
     
         public static final int KERNEL_INPUT_FEATURE_DIMENSION_FIELD_NUMBER = 4;
    -    private long kernelInputFeatureDimension_;
    +    private long kernelInputFeatureDimension_ = 0L;
         /**
          * 
          * The dimension that represents input features in the kernel (rhs).
    @@ -311,7 +321,7 @@ public long getKernelInputFeatureDimension() {
         }
     
         public static final int KERNEL_OUTPUT_FEATURE_DIMENSION_FIELD_NUMBER = 5;
    -    private long kernelOutputFeatureDimension_;
    +    private long kernelOutputFeatureDimension_ = 0L;
         /**
          * 
          * The dimension that represents output features in the kernel (rhs).
    @@ -326,7 +336,9 @@ public long getKernelOutputFeatureDimension() {
         }
     
         public static final int KERNEL_SPATIAL_DIMENSIONS_FIELD_NUMBER = 6;
    -    private com.google.protobuf.Internal.LongList kernelSpatialDimensions_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.Internal.LongList kernelSpatialDimensions_ =
    +        emptyLongList();
         /**
          * 
          * The dimensions that represents spatial dimensions in the kernel (rhs).
    @@ -369,7 +381,7 @@ public long getKernelSpatialDimensions(int index) {
         private int kernelSpatialDimensionsMemoizedSerializedSize = -1;
     
         public static final int OUTPUT_BATCH_DIMENSION_FIELD_NUMBER = 7;
    -    private long outputBatchDimension_;
    +    private long outputBatchDimension_ = 0L;
         /**
          * 
          * The dimension that represents batch in the output.
    @@ -384,7 +396,7 @@ public long getOutputBatchDimension() {
         }
     
         public static final int OUTPUT_FEATURE_DIMENSION_FIELD_NUMBER = 8;
    -    private long outputFeatureDimension_;
    +    private long outputFeatureDimension_ = 0L;
         /**
          * 
          * The dimension that represents features in the output.
    @@ -399,7 +411,9 @@ public long getOutputFeatureDimension() {
         }
     
         public static final int OUTPUT_SPATIAL_DIMENSIONS_FIELD_NUMBER = 9;
    -    private com.google.protobuf.Internal.LongList outputSpatialDimensions_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.Internal.LongList outputSpatialDimensions_ =
    +        emptyLongList();
         /**
          * 
          * The dimensions that represents spatial dimensions in the output. Length
    @@ -683,39 +697,41 @@ public static org.tensorflow.proto.UniformQuantOpsAttr.UniformQuantizedConvoluti
         }
         public static org.tensorflow.proto.UniformQuantOpsAttr.UniformQuantizedConvolutionDimensionNumbersAttr parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.UniformQuantOpsAttr.UniformQuantizedConvolutionDimensionNumbersAttr parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.UniformQuantOpsAttr.UniformQuantizedConvolutionDimensionNumbersAttr parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.UniformQuantOpsAttr.UniformQuantizedConvolutionDimensionNumbersAttr parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.UniformQuantOpsAttr.UniformQuantizedConvolutionDimensionNumbersAttr parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.UniformQuantOpsAttr.UniformQuantizedConvolutionDimensionNumbersAttr parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -735,7 +751,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -748,7 +764,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.UniformQuantizedConvolutionDimensionNumbersAttr}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.UniformQuantizedConvolutionDimensionNumbersAttr)
             org.tensorflow.proto.UniformQuantOpsAttr.UniformQuantizedConvolutionDimensionNumbersAttrOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -757,7 +773,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.UniformQuantOpsAttr.internal_static_tensorflow_UniformQuantizedConvolutionDimensionNumbersAttr_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -770,31 +786,23 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             inputBatchDimension_ = 0L;
    -
             inputFeatureDimension_ = 0L;
    -
             inputSpatialDimensions_ = emptyLongList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
             kernelInputFeatureDimension_ = 0L;
    -
             kernelOutputFeatureDimension_ = 0L;
    -
             kernelSpatialDimensions_ = emptyLongList();
    -        bitField0_ = (bitField0_ & ~0x00000002);
             outputBatchDimension_ = 0L;
    -
             outputFeatureDimension_ = 0L;
    -
             outputSpatialDimensions_ = emptyLongList();
    -        bitField0_ = (bitField0_ & ~0x00000004);
             return this;
           }
     
    @@ -821,64 +829,45 @@ public org.tensorflow.proto.UniformQuantOpsAttr.UniformQuantizedConvolutionDimen
           @java.lang.Override
           public org.tensorflow.proto.UniformQuantOpsAttr.UniformQuantizedConvolutionDimensionNumbersAttr buildPartial() {
             org.tensorflow.proto.UniformQuantOpsAttr.UniformQuantizedConvolutionDimensionNumbersAttr result = new org.tensorflow.proto.UniformQuantOpsAttr.UniformQuantizedConvolutionDimensionNumbersAttr(this);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartial0(org.tensorflow.proto.UniformQuantOpsAttr.UniformQuantizedConvolutionDimensionNumbersAttr result) {
             int from_bitField0_ = bitField0_;
    -        result.inputBatchDimension_ = inputBatchDimension_;
    -        result.inputFeatureDimension_ = inputFeatureDimension_;
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.inputBatchDimension_ = inputBatchDimension_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.inputFeatureDimension_ = inputFeatureDimension_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
               inputSpatialDimensions_.makeImmutable();
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          result.inputSpatialDimensions_ = inputSpatialDimensions_;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.kernelInputFeatureDimension_ = kernelInputFeatureDimension_;
    +        }
    +        if (((from_bitField0_ & 0x00000010) != 0)) {
    +          result.kernelOutputFeatureDimension_ = kernelOutputFeatureDimension_;
             }
    -        result.inputSpatialDimensions_ = inputSpatialDimensions_;
    -        result.kernelInputFeatureDimension_ = kernelInputFeatureDimension_;
    -        result.kernelOutputFeatureDimension_ = kernelOutputFeatureDimension_;
    -        if (((bitField0_ & 0x00000002) != 0)) {
    +        if (((from_bitField0_ & 0x00000020) != 0)) {
               kernelSpatialDimensions_.makeImmutable();
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          result.kernelSpatialDimensions_ = kernelSpatialDimensions_;
    +        }
    +        if (((from_bitField0_ & 0x00000040) != 0)) {
    +          result.outputBatchDimension_ = outputBatchDimension_;
    +        }
    +        if (((from_bitField0_ & 0x00000080) != 0)) {
    +          result.outputFeatureDimension_ = outputFeatureDimension_;
             }
    -        result.kernelSpatialDimensions_ = kernelSpatialDimensions_;
    -        result.outputBatchDimension_ = outputBatchDimension_;
    -        result.outputFeatureDimension_ = outputFeatureDimension_;
    -        if (((bitField0_ & 0x00000004) != 0)) {
    +        if (((from_bitField0_ & 0x00000100) != 0)) {
               outputSpatialDimensions_.makeImmutable();
    -          bitField0_ = (bitField0_ & ~0x00000004);
    +          result.outputSpatialDimensions_ = outputSpatialDimensions_;
             }
    -        result.outputSpatialDimensions_ = outputSpatialDimensions_;
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    -      }
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.UniformQuantOpsAttr.UniformQuantizedConvolutionDimensionNumbersAttr) {
    @@ -900,7 +889,8 @@ public Builder mergeFrom(org.tensorflow.proto.UniformQuantOpsAttr.UniformQuantiz
             if (!other.inputSpatialDimensions_.isEmpty()) {
               if (inputSpatialDimensions_.isEmpty()) {
                 inputSpatialDimensions_ = other.inputSpatialDimensions_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            inputSpatialDimensions_.makeImmutable();
    +            bitField0_ |= 0x00000004;
               } else {
                 ensureInputSpatialDimensionsIsMutable();
                 inputSpatialDimensions_.addAll(other.inputSpatialDimensions_);
    @@ -916,7 +906,8 @@ public Builder mergeFrom(org.tensorflow.proto.UniformQuantOpsAttr.UniformQuantiz
             if (!other.kernelSpatialDimensions_.isEmpty()) {
               if (kernelSpatialDimensions_.isEmpty()) {
                 kernelSpatialDimensions_ = other.kernelSpatialDimensions_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            kernelSpatialDimensions_.makeImmutable();
    +            bitField0_ |= 0x00000020;
               } else {
                 ensureKernelSpatialDimensionsIsMutable();
                 kernelSpatialDimensions_.addAll(other.kernelSpatialDimensions_);
    @@ -932,7 +923,8 @@ public Builder mergeFrom(org.tensorflow.proto.UniformQuantOpsAttr.UniformQuantiz
             if (!other.outputSpatialDimensions_.isEmpty()) {
               if (outputSpatialDimensions_.isEmpty()) {
                 outputSpatialDimensions_ = other.outputSpatialDimensions_;
    -            bitField0_ = (bitField0_ & ~0x00000004);
    +            outputSpatialDimensions_.makeImmutable();
    +            bitField0_ |= 0x00000100;
               } else {
                 ensureOutputSpatialDimensionsIsMutable();
                 outputSpatialDimensions_.addAll(other.outputSpatialDimensions_);
    @@ -967,12 +959,12 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     inputBatchDimension_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   case 16: {
                     inputFeatureDimension_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 16
                   case 24: {
    @@ -993,12 +985,12 @@ public Builder mergeFrom(
                   } // case 26
                   case 32: {
                     kernelInputFeatureDimension_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 32
                   case 40: {
                     kernelOutputFeatureDimension_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000010;
                     break;
                   } // case 40
                   case 48: {
    @@ -1019,12 +1011,12 @@ public Builder mergeFrom(
                   } // case 50
                   case 56: {
                     outputBatchDimension_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000040;
                     break;
                   } // case 56
                   case 64: {
                     outputFeatureDimension_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000080;
                     break;
                   } // case 64
                   case 72: {
    @@ -1083,8 +1075,9 @@ public long getInputBatchDimension() {
            * @return This builder for chaining.
            */
           public Builder setInputBatchDimension(long value) {
    -        
    +
             inputBatchDimension_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -1097,7 +1090,7 @@ public Builder setInputBatchDimension(long value) {
            * @return This builder for chaining.
            */
           public Builder clearInputBatchDimension() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             inputBatchDimension_ = 0L;
             onChanged();
             return this;
    @@ -1126,8 +1119,9 @@ public long getInputFeatureDimension() {
            * @return This builder for chaining.
            */
           public Builder setInputFeatureDimension(long value) {
    -        
    +
             inputFeatureDimension_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1140,7 +1134,7 @@ public Builder setInputFeatureDimension(long value) {
            * @return This builder for chaining.
            */
           public Builder clearInputFeatureDimension() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000002);
             inputFeatureDimension_ = 0L;
             onChanged();
             return this;
    @@ -1148,10 +1142,10 @@ public Builder clearInputFeatureDimension() {
     
           private com.google.protobuf.Internal.LongList inputSpatialDimensions_ = emptyLongList();
           private void ensureInputSpatialDimensionsIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    -          inputSpatialDimensions_ = mutableCopy(inputSpatialDimensions_);
    -          bitField0_ |= 0x00000001;
    -         }
    +        if (!inputSpatialDimensions_.isModifiable()) {
    +          inputSpatialDimensions_ = makeMutableCopy(inputSpatialDimensions_);
    +        }
    +        bitField0_ |= 0x00000004;
           }
           /**
            * 
    @@ -1164,8 +1158,8 @@ private void ensureInputSpatialDimensionsIsMutable() {
            */
           public java.util.List
               getInputSpatialDimensionsList() {
    -        return ((bitField0_ & 0x00000001) != 0) ?
    -                 java.util.Collections.unmodifiableList(inputSpatialDimensions_) : inputSpatialDimensions_;
    +        inputSpatialDimensions_.makeImmutable();
    +        return inputSpatialDimensions_;
           }
           /**
            * 
    @@ -1205,8 +1199,10 @@ public long getInputSpatialDimensions(int index) {
            */
           public Builder setInputSpatialDimensions(
               int index, long value) {
    +
             ensureInputSpatialDimensionsIsMutable();
             inputSpatialDimensions_.setLong(index, value);
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1221,8 +1217,10 @@ public Builder setInputSpatialDimensions(
            * @return This builder for chaining.
            */
           public Builder addInputSpatialDimensions(long value) {
    +
             ensureInputSpatialDimensionsIsMutable();
             inputSpatialDimensions_.addLong(value);
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1241,6 +1239,7 @@ public Builder addAllInputSpatialDimensions(
             ensureInputSpatialDimensionsIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, inputSpatialDimensions_);
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1255,7 +1254,7 @@ public Builder addAllInputSpatialDimensions(
            */
           public Builder clearInputSpatialDimensions() {
             inputSpatialDimensions_ = emptyLongList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000004);
             onChanged();
             return this;
           }
    @@ -1283,8 +1282,9 @@ public long getKernelInputFeatureDimension() {
            * @return This builder for chaining.
            */
           public Builder setKernelInputFeatureDimension(long value) {
    -        
    +
             kernelInputFeatureDimension_ = value;
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -1297,7 +1297,7 @@ public Builder setKernelInputFeatureDimension(long value) {
            * @return This builder for chaining.
            */
           public Builder clearKernelInputFeatureDimension() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000008);
             kernelInputFeatureDimension_ = 0L;
             onChanged();
             return this;
    @@ -1326,8 +1326,9 @@ public long getKernelOutputFeatureDimension() {
            * @return This builder for chaining.
            */
           public Builder setKernelOutputFeatureDimension(long value) {
    -        
    +
             kernelOutputFeatureDimension_ = value;
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -1340,7 +1341,7 @@ public Builder setKernelOutputFeatureDimension(long value) {
            * @return This builder for chaining.
            */
           public Builder clearKernelOutputFeatureDimension() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000010);
             kernelOutputFeatureDimension_ = 0L;
             onChanged();
             return this;
    @@ -1348,10 +1349,10 @@ public Builder clearKernelOutputFeatureDimension() {
     
           private com.google.protobuf.Internal.LongList kernelSpatialDimensions_ = emptyLongList();
           private void ensureKernelSpatialDimensionsIsMutable() {
    -        if (!((bitField0_ & 0x00000002) != 0)) {
    -          kernelSpatialDimensions_ = mutableCopy(kernelSpatialDimensions_);
    -          bitField0_ |= 0x00000002;
    -         }
    +        if (!kernelSpatialDimensions_.isModifiable()) {
    +          kernelSpatialDimensions_ = makeMutableCopy(kernelSpatialDimensions_);
    +        }
    +        bitField0_ |= 0x00000020;
           }
           /**
            * 
    @@ -1364,8 +1365,8 @@ private void ensureKernelSpatialDimensionsIsMutable() {
            */
           public java.util.List
               getKernelSpatialDimensionsList() {
    -        return ((bitField0_ & 0x00000002) != 0) ?
    -                 java.util.Collections.unmodifiableList(kernelSpatialDimensions_) : kernelSpatialDimensions_;
    +        kernelSpatialDimensions_.makeImmutable();
    +        return kernelSpatialDimensions_;
           }
           /**
            * 
    @@ -1405,8 +1406,10 @@ public long getKernelSpatialDimensions(int index) {
            */
           public Builder setKernelSpatialDimensions(
               int index, long value) {
    +
             ensureKernelSpatialDimensionsIsMutable();
             kernelSpatialDimensions_.setLong(index, value);
    +        bitField0_ |= 0x00000020;
             onChanged();
             return this;
           }
    @@ -1421,8 +1424,10 @@ public Builder setKernelSpatialDimensions(
            * @return This builder for chaining.
            */
           public Builder addKernelSpatialDimensions(long value) {
    +
             ensureKernelSpatialDimensionsIsMutable();
             kernelSpatialDimensions_.addLong(value);
    +        bitField0_ |= 0x00000020;
             onChanged();
             return this;
           }
    @@ -1441,6 +1446,7 @@ public Builder addAllKernelSpatialDimensions(
             ensureKernelSpatialDimensionsIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, kernelSpatialDimensions_);
    +        bitField0_ |= 0x00000020;
             onChanged();
             return this;
           }
    @@ -1455,7 +1461,7 @@ public Builder addAllKernelSpatialDimensions(
            */
           public Builder clearKernelSpatialDimensions() {
             kernelSpatialDimensions_ = emptyLongList();
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        bitField0_ = (bitField0_ & ~0x00000020);
             onChanged();
             return this;
           }
    @@ -1483,8 +1489,9 @@ public long getOutputBatchDimension() {
            * @return This builder for chaining.
            */
           public Builder setOutputBatchDimension(long value) {
    -        
    +
             outputBatchDimension_ = value;
    +        bitField0_ |= 0x00000040;
             onChanged();
             return this;
           }
    @@ -1497,7 +1504,7 @@ public Builder setOutputBatchDimension(long value) {
            * @return This builder for chaining.
            */
           public Builder clearOutputBatchDimension() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000040);
             outputBatchDimension_ = 0L;
             onChanged();
             return this;
    @@ -1526,8 +1533,9 @@ public long getOutputFeatureDimension() {
            * @return This builder for chaining.
            */
           public Builder setOutputFeatureDimension(long value) {
    -        
    +
             outputFeatureDimension_ = value;
    +        bitField0_ |= 0x00000080;
             onChanged();
             return this;
           }
    @@ -1540,7 +1548,7 @@ public Builder setOutputFeatureDimension(long value) {
            * @return This builder for chaining.
            */
           public Builder clearOutputFeatureDimension() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000080);
             outputFeatureDimension_ = 0L;
             onChanged();
             return this;
    @@ -1548,10 +1556,10 @@ public Builder clearOutputFeatureDimension() {
     
           private com.google.protobuf.Internal.LongList outputSpatialDimensions_ = emptyLongList();
           private void ensureOutputSpatialDimensionsIsMutable() {
    -        if (!((bitField0_ & 0x00000004) != 0)) {
    -          outputSpatialDimensions_ = mutableCopy(outputSpatialDimensions_);
    -          bitField0_ |= 0x00000004;
    -         }
    +        if (!outputSpatialDimensions_.isModifiable()) {
    +          outputSpatialDimensions_ = makeMutableCopy(outputSpatialDimensions_);
    +        }
    +        bitField0_ |= 0x00000100;
           }
           /**
            * 
    @@ -1564,8 +1572,8 @@ private void ensureOutputSpatialDimensionsIsMutable() {
            */
           public java.util.List
               getOutputSpatialDimensionsList() {
    -        return ((bitField0_ & 0x00000004) != 0) ?
    -                 java.util.Collections.unmodifiableList(outputSpatialDimensions_) : outputSpatialDimensions_;
    +        outputSpatialDimensions_.makeImmutable();
    +        return outputSpatialDimensions_;
           }
           /**
            * 
    @@ -1605,8 +1613,10 @@ public long getOutputSpatialDimensions(int index) {
            */
           public Builder setOutputSpatialDimensions(
               int index, long value) {
    +
             ensureOutputSpatialDimensionsIsMutable();
             outputSpatialDimensions_.setLong(index, value);
    +        bitField0_ |= 0x00000100;
             onChanged();
             return this;
           }
    @@ -1621,8 +1631,10 @@ public Builder setOutputSpatialDimensions(
            * @return This builder for chaining.
            */
           public Builder addOutputSpatialDimensions(long value) {
    +
             ensureOutputSpatialDimensionsIsMutable();
             outputSpatialDimensions_.addLong(value);
    +        bitField0_ |= 0x00000100;
             onChanged();
             return this;
           }
    @@ -1641,6 +1653,7 @@ public Builder addAllOutputSpatialDimensions(
             ensureOutputSpatialDimensionsIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, outputSpatialDimensions_);
    +        bitField0_ |= 0x00000100;
             onChanged();
             return this;
           }
    @@ -1655,22 +1668,10 @@ public Builder addAllOutputSpatialDimensions(
            */
           public Builder clearOutputSpatialDimensions() {
             outputSpatialDimensions_ = emptyLongList();
    -        bitField0_ = (bitField0_ & ~0x00000004);
    +        bitField0_ = (bitField0_ & ~0x00000100);
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.UniformQuantizedConvolutionDimensionNumbersAttr)
         }
    @@ -1726,7 +1727,7 @@ public org.tensorflow.proto.UniformQuantOpsAttr.UniformQuantizedConvolutionDimen
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_UniformQuantizedConvolutionDimensionNumbersAttr_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_UniformQuantizedConvolutionDimensionNumbersAttr_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -1760,9 +1761,10 @@ public org.tensorflow.proto.UniformQuantOpsAttr.UniformQuantizedConvolutionDimen
         internal_static_tensorflow_UniformQuantizedConvolutionDimensionNumbersAttr_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_UniformQuantizedConvolutionDimensionNumbersAttr_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_UniformQuantizedConvolutionDimensionNumbersAttr_descriptor,
             new java.lang.String[] { "InputBatchDimension", "InputFeatureDimension", "InputSpatialDimensions", "KernelInputFeatureDimension", "KernelOutputFeatureDimension", "KernelSpatialDimensions", "OutputBatchDimension", "OutputFeatureDimension", "OutputSpatialDimensions", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ValuesDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ValuesDef.java
    index 6379c55680b..6245af89c8c 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ValuesDef.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ValuesDef.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/control_flow.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,30 +13,28 @@
      * Protobuf type {@code tensorflow.ValuesDef}
      */
     public final class ValuesDef extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.ValuesDef)
         ValuesDefOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ValuesDef.class.getName());
    +  }
       // Use ValuesDef.newBuilder() to construct.
    -  private ValuesDef(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private ValuesDef(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private ValuesDef() {
    -    values_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    values_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new ValuesDef();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ControlFlowProtos.internal_static_tensorflow_ValuesDef_descriptor;
    @@ -42,7 +42,7 @@ protected java.lang.Object newInstance(
     
       @SuppressWarnings({"rawtypes"})
       @java.lang.Override
    -  protected com.google.protobuf.MapField internalGetMapField(
    +  protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
           int number) {
         switch (number) {
           case 2:
    @@ -53,7 +53,7 @@ protected com.google.protobuf.MapField internalGetMapField(
         }
       }
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ControlFlowProtos.internal_static_tensorflow_ValuesDef_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -61,7 +61,9 @@ protected com.google.protobuf.MapField internalGetMapField(
       }
     
       public static final int VALUES_FIELD_NUMBER = 1;
    -  private com.google.protobuf.LazyStringList values_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList values_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * Value names that have been seen in this context.
    @@ -123,6 +125,7 @@ private static final class ExternalValuesDefaultEntryHolder {
                     com.google.protobuf.WireFormat.FieldType.STRING,
                     "");
       }
    +  @SuppressWarnings("serial")
       private com.google.protobuf.MapField<
           java.lang.String, java.lang.String> externalValues_;
       private com.google.protobuf.MapField
    @@ -133,7 +136,6 @@ private static final class ExternalValuesDefaultEntryHolder {
         }
         return externalValues_;
       }
    -
       public int getExternalValuesCount() {
         return internalGetExternalValues().getMap().size();
       }
    @@ -144,7 +146,6 @@ public int getExternalValuesCount() {
        *
        * map<string, string> external_values = 2;
        */
    -
       @java.lang.Override
       public boolean containsExternalValues(
           java.lang.String key) {
    @@ -167,7 +168,6 @@ public java.util.Map getExternalValues() {
        * map<string, string> external_values = 2;
        */
       @java.lang.Override
    -
       public java.util.Map getExternalValuesMap() {
         return internalGetExternalValues().getMap();
       }
    @@ -179,10 +179,11 @@ public java.util.Map getExternalValuesMap()
        * map<string, string> external_values = 2;
        */
       @java.lang.Override
    -
    -  public java.lang.String getExternalValuesOrDefault(
    +  public /* nullable */
    +java.lang.String getExternalValuesOrDefault(
           java.lang.String key,
    -      java.lang.String defaultValue) {
    +      /* nullable */
    +java.lang.String defaultValue) {
         if (key == null) { throw new NullPointerException("map key"); }
         java.util.Map map =
             internalGetExternalValues().getMap();
    @@ -196,7 +197,6 @@ public java.lang.String getExternalValuesOrDefault(
        * map<string, string> external_values = 2;
        */
       @java.lang.Override
    -
       public java.lang.String getExternalValuesOrThrow(
           java.lang.String key) {
         if (key == null) { throw new NullPointerException("map key"); }
    @@ -223,9 +223,9 @@ public final boolean isInitialized() {
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
         for (int i = 0; i < values_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, values_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, values_.getRaw(i));
         }
    -    com.google.protobuf.GeneratedMessageV3
    +    com.google.protobuf.GeneratedMessage
           .serializeStringMapTo(
             output,
             internalGetExternalValues(),
    @@ -335,39 +335,41 @@ public static org.tensorflow.proto.ValuesDef parseFrom(
       }
       public static org.tensorflow.proto.ValuesDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ValuesDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.ValuesDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.ValuesDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.ValuesDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.ValuesDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -387,7 +389,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -399,7 +401,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.ValuesDef}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.ValuesDef)
           org.tensorflow.proto.ValuesDefOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -408,7 +410,7 @@ public static final class Builder extends
         }
     
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
             int number) {
           switch (number) {
             case 2:
    @@ -419,7 +421,7 @@ protected com.google.protobuf.MapField internalGetMapField(
           }
         }
         @SuppressWarnings({"rawtypes"})
    -    protected com.google.protobuf.MapField internalGetMutableMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(
             int number) {
           switch (number) {
             case 2:
    @@ -430,7 +432,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
           }
         }
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ControlFlowProtos.internal_static_tensorflow_ValuesDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -443,15 +445,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    -      values_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = 0;
    +      values_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           internalGetMutableExternalValues().clear();
           return this;
         }
    @@ -479,50 +482,23 @@ public org.tensorflow.proto.ValuesDef build() {
         @java.lang.Override
         public org.tensorflow.proto.ValuesDef buildPartial() {
           org.tensorflow.proto.ValuesDef result = new org.tensorflow.proto.ValuesDef(this);
    -      int from_bitField0_ = bitField0_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        values_ = values_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.values_ = values_;
    -      result.externalValues_ = internalGetExternalValues();
    -      result.externalValues_.makeImmutable();
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.ValuesDef result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        values_.makeImmutable();
    +        result.values_ = values_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.externalValues_ = internalGetExternalValues();
    +        result.externalValues_.makeImmutable();
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.ValuesDef) {
    @@ -538,7 +514,7 @@ public Builder mergeFrom(org.tensorflow.proto.ValuesDef other) {
           if (!other.values_.isEmpty()) {
             if (values_.isEmpty()) {
               values_ = other.values_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ |= 0x00000001;
             } else {
               ensureValuesIsMutable();
               values_.addAll(other.values_);
    @@ -547,6 +523,7 @@ public Builder mergeFrom(org.tensorflow.proto.ValuesDef other) {
           }
           internalGetMutableExternalValues().mergeFrom(
               other.internalGetExternalValues());
    +      bitField0_ |= 0x00000002;
           this.mergeUnknownFields(other.getUnknownFields());
           onChanged();
           return this;
    @@ -585,6 +562,7 @@ public Builder mergeFrom(
                       ExternalValuesDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                   internalGetMutableExternalValues().getMutableMap().put(
                       externalValues__.getKey(), externalValues__.getValue());
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 default: {
    @@ -604,12 +582,13 @@ public Builder mergeFrom(
         }
         private int bitField0_;
     
    -    private com.google.protobuf.LazyStringList values_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList values_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureValuesIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!values_.isModifiable()) {
             values_ = new com.google.protobuf.LazyStringArrayList(values_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      }
    +      bitField0_ |= 0x00000001;
         }
         /**
          * 
    @@ -621,7 +600,8 @@ private void ensureValuesIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getValuesList() {
    -      return values_.getUnmodifiableView();
    +      values_.makeImmutable();
    +      return values_;
         }
         /**
          * 
    @@ -671,11 +651,10 @@ public java.lang.String getValues(int index) {
          */
         public Builder setValues(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureValuesIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureValuesIsMutable();
           values_.set(index, value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -690,11 +669,10 @@ public Builder setValues(
          */
         public Builder addValues(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureValuesIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureValuesIsMutable();
           values_.add(value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -712,6 +690,7 @@ public Builder addAllValues(
           ensureValuesIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, values_);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -724,8 +703,9 @@ public Builder addAllValues(
          * @return This builder for chaining.
          */
         public Builder clearValues() {
    -      values_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      values_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000001);;
           onChanged();
           return this;
         }
    @@ -740,12 +720,11 @@ public Builder clearValues() {
          */
         public Builder addValuesBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureValuesIsMutable();
           values_.add(value);
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -753,7 +732,7 @@ public Builder addValuesBytes(
         private com.google.protobuf.MapField<
             java.lang.String, java.lang.String> externalValues_;
         private com.google.protobuf.MapField
    -    internalGetExternalValues() {
    +        internalGetExternalValues() {
           if (externalValues_ == null) {
             return com.google.protobuf.MapField.emptyMapField(
                 ExternalValuesDefaultEntryHolder.defaultEntry);
    @@ -761,8 +740,7 @@ public Builder addValuesBytes(
           return externalValues_;
         }
         private com.google.protobuf.MapField
    -    internalGetMutableExternalValues() {
    -      onChanged();;
    +        internalGetMutableExternalValues() {
           if (externalValues_ == null) {
             externalValues_ = com.google.protobuf.MapField.newMapField(
                 ExternalValuesDefaultEntryHolder.defaultEntry);
    @@ -770,9 +748,10 @@ public Builder addValuesBytes(
           if (!externalValues_.isMutable()) {
             externalValues_ = externalValues_.copy();
           }
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return externalValues_;
         }
    -
         public int getExternalValuesCount() {
           return internalGetExternalValues().getMap().size();
         }
    @@ -783,7 +762,6 @@ public int getExternalValuesCount() {
          *
          * map<string, string> external_values = 2;
          */
    -
         @java.lang.Override
         public boolean containsExternalValues(
             java.lang.String key) {
    @@ -806,7 +784,6 @@ public java.util.Map getExternalValues() {
          * map<string, string> external_values = 2;
          */
         @java.lang.Override
    -
         public java.util.Map getExternalValuesMap() {
           return internalGetExternalValues().getMap();
         }
    @@ -818,10 +795,11 @@ public java.util.Map getExternalValuesMap()
          * map<string, string> external_values = 2;
          */
         @java.lang.Override
    -
    -    public java.lang.String getExternalValuesOrDefault(
    +    public /* nullable */
    +java.lang.String getExternalValuesOrDefault(
             java.lang.String key,
    -        java.lang.String defaultValue) {
    +        /* nullable */
    +java.lang.String defaultValue) {
           if (key == null) { throw new NullPointerException("map key"); }
           java.util.Map map =
               internalGetExternalValues().getMap();
    @@ -835,7 +813,6 @@ public java.lang.String getExternalValuesOrDefault(
          * map<string, string> external_values = 2;
          */
         @java.lang.Override
    -
         public java.lang.String getExternalValuesOrThrow(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -846,8 +823,8 @@ public java.lang.String getExternalValuesOrThrow(
           }
           return map.get(key);
         }
    -
         public Builder clearExternalValues() {
    +      bitField0_ = (bitField0_ & ~0x00000002);
           internalGetMutableExternalValues().getMutableMap()
               .clear();
           return this;
    @@ -859,7 +836,6 @@ public Builder clearExternalValues() {
          *
          * map<string, string> external_values = 2;
          */
    -
         public Builder removeExternalValues(
             java.lang.String key) {
           if (key == null) { throw new NullPointerException("map key"); }
    @@ -872,7 +848,8 @@ public Builder removeExternalValues(
          */
         @java.lang.Deprecated
         public java.util.Map
    -    getMutableExternalValues() {
    +        getMutableExternalValues() {
    +      bitField0_ |= 0x00000002;
           return internalGetMutableExternalValues().getMutableMap();
         }
         /**
    @@ -886,12 +863,10 @@ public Builder putExternalValues(
             java.lang.String key,
             java.lang.String value) {
           if (key == null) { throw new NullPointerException("map key"); }
    -      if (value == null) {
    -  throw new NullPointerException("map value");
    -}
    -
    +      if (value == null) { throw new NullPointerException("map value"); }
           internalGetMutableExternalValues().getMutableMap()
               .put(key, value);
    +      bitField0_ |= 0x00000002;
           return this;
         }
         /**
    @@ -901,25 +876,13 @@ public Builder putExternalValues(
          *
          * map<string, string> external_values = 2;
          */
    -
         public Builder putAllExternalValues(
             java.util.Map values) {
           internalGetMutableExternalValues().getMutableMap()
               .putAll(values);
    +      bitField0_ |= 0x00000002;
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.ValuesDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ValuesDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ValuesDefOrBuilder.java
    index a97c7230af6..a664cecce7c 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ValuesDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/ValuesDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/control_flow.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -87,7 +89,6 @@ boolean containsExternalValues(
        *
        * map<string, string> external_values = 2;
        */
    -
       /* nullable */
     java.lang.String getExternalValuesOrDefault(
           java.lang.String key,
    @@ -100,7 +101,6 @@ java.lang.String getExternalValuesOrDefault(
        *
        * map<string, string> external_values = 2;
        */
    -
       java.lang.String getExternalValuesOrThrow(
           java.lang.String key);
     }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VarLenFeatureProto.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VarLenFeatureProto.java
    index 2e08cee2dbf..15f8a3ade51 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VarLenFeatureProto.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VarLenFeatureProto.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/example_parser_configuration.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,12 +9,21 @@
      * Protobuf type {@code tensorflow.VarLenFeatureProto}
      */
     public final class VarLenFeatureProto extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.VarLenFeatureProto)
         VarLenFeatureProtoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      VarLenFeatureProto.class.getName());
    +  }
       // Use VarLenFeatureProto.newBuilder() to construct.
    -  private VarLenFeatureProto(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private VarLenFeatureProto(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private VarLenFeatureProto() {
    @@ -22,25 +33,13 @@ private VarLenFeatureProto() {
         shapesOutputTensorName_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new VarLenFeatureProto();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ExampleParserConfigurationProtos.internal_static_tensorflow_VarLenFeatureProto_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ExampleParserConfigurationProtos.internal_static_tensorflow_VarLenFeatureProto_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -48,7 +47,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int DTYPE_FIELD_NUMBER = 1;
    -  private int dtype_;
    +  private int dtype_ = 0;
       /**
        * .tensorflow.DataType dtype = 1;
        * @return The enum numeric value on the wire for dtype.
    @@ -61,13 +60,13 @@ protected java.lang.Object newInstance(
        * @return The dtype.
        */
       @java.lang.Override public org.tensorflow.proto.DataType getDtype() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
         return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
       }
     
       public static final int VALUES_OUTPUT_TENSOR_NAME_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object valuesOutputTensorName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object valuesOutputTensorName_ = "";
       /**
        * string values_output_tensor_name = 2;
        * @return The valuesOutputTensorName.
    @@ -105,7 +104,8 @@ public java.lang.String getValuesOutputTensorName() {
       }
     
       public static final int INDICES_OUTPUT_TENSOR_NAME_FIELD_NUMBER = 3;
    -  private volatile java.lang.Object indicesOutputTensorName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object indicesOutputTensorName_ = "";
       /**
        * string indices_output_tensor_name = 3;
        * @return The indicesOutputTensorName.
    @@ -143,7 +143,8 @@ public java.lang.String getIndicesOutputTensorName() {
       }
     
       public static final int SHAPES_OUTPUT_TENSOR_NAME_FIELD_NUMBER = 4;
    -  private volatile java.lang.Object shapesOutputTensorName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object shapesOutputTensorName_ = "";
       /**
        * string shapes_output_tensor_name = 4;
        * @return The shapesOutputTensorName.
    @@ -197,14 +198,14 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (dtype_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) {
           output.writeEnum(1, dtype_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(valuesOutputTensorName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, valuesOutputTensorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(valuesOutputTensorName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, valuesOutputTensorName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(indicesOutputTensorName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, indicesOutputTensorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(indicesOutputTensorName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, indicesOutputTensorName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(shapesOutputTensorName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 4, shapesOutputTensorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(shapesOutputTensorName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 4, shapesOutputTensorName_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -219,14 +220,14 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeEnumSize(1, dtype_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(valuesOutputTensorName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, valuesOutputTensorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(valuesOutputTensorName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, valuesOutputTensorName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(indicesOutputTensorName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, indicesOutputTensorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(indicesOutputTensorName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, indicesOutputTensorName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(shapesOutputTensorName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, shapesOutputTensorName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(shapesOutputTensorName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(4, shapesOutputTensorName_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -308,39 +309,41 @@ public static org.tensorflow.proto.VarLenFeatureProto parseFrom(
       }
       public static org.tensorflow.proto.VarLenFeatureProto parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.VarLenFeatureProto parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.VarLenFeatureProto parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.VarLenFeatureProto parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.VarLenFeatureProto parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.VarLenFeatureProto parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -360,7 +363,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -368,7 +371,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.VarLenFeatureProto}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.VarLenFeatureProto)
           org.tensorflow.proto.VarLenFeatureProtoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -377,7 +380,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ExampleParserConfigurationProtos.internal_static_tensorflow_VarLenFeatureProto_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -390,21 +393,18 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           dtype_ = 0;
    -
           valuesOutputTensorName_ = "";
    -
           indicesOutputTensorName_ = "";
    -
           shapesOutputTensorName_ = "";
    -
           return this;
         }
     
    @@ -431,46 +431,27 @@ public org.tensorflow.proto.VarLenFeatureProto build() {
         @java.lang.Override
         public org.tensorflow.proto.VarLenFeatureProto buildPartial() {
           org.tensorflow.proto.VarLenFeatureProto result = new org.tensorflow.proto.VarLenFeatureProto(this);
    -      result.dtype_ = dtype_;
    -      result.valuesOutputTensorName_ = valuesOutputTensorName_;
    -      result.indicesOutputTensorName_ = indicesOutputTensorName_;
    -      result.shapesOutputTensorName_ = shapesOutputTensorName_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.VarLenFeatureProto result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.dtype_ = dtype_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.valuesOutputTensorName_ = valuesOutputTensorName_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.indicesOutputTensorName_ = indicesOutputTensorName_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.shapesOutputTensorName_ = shapesOutputTensorName_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.VarLenFeatureProto) {
    @@ -488,14 +469,17 @@ public Builder mergeFrom(org.tensorflow.proto.VarLenFeatureProto other) {
           }
           if (!other.getValuesOutputTensorName().isEmpty()) {
             valuesOutputTensorName_ = other.valuesOutputTensorName_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (!other.getIndicesOutputTensorName().isEmpty()) {
             indicesOutputTensorName_ = other.indicesOutputTensorName_;
    +        bitField0_ |= 0x00000004;
             onChanged();
           }
           if (!other.getShapesOutputTensorName().isEmpty()) {
             shapesOutputTensorName_ = other.shapesOutputTensorName_;
    +        bitField0_ |= 0x00000008;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -526,22 +510,22 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   dtype_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 18: {
                   valuesOutputTensorName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
                   indicesOutputTensorName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 case 34: {
                   shapesOutputTensorName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 34
                 default: {
    @@ -559,6 +543,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private int dtype_ = 0;
         /**
    @@ -574,8 +559,8 @@ public Builder mergeFrom(
          * @return This builder for chaining.
          */
         public Builder setDtypeValue(int value) {
    -      
           dtype_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -585,8 +570,7 @@ public Builder setDtypeValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.DataType getDtype() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
           return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
         }
         /**
    @@ -598,7 +582,7 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000001;
           dtype_ = value.getNumber();
           onChanged();
           return this;
    @@ -608,7 +592,7 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
          * @return This builder for chaining.
          */
         public Builder clearDtype() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           dtype_ = 0;
           onChanged();
           return this;
    @@ -655,11 +639,9 @@ public java.lang.String getValuesOutputTensorName() {
          */
         public Builder setValuesOutputTensorName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           valuesOutputTensorName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -668,8 +650,8 @@ public Builder setValuesOutputTensorName(
          * @return This builder for chaining.
          */
         public Builder clearValuesOutputTensorName() {
    -      
           valuesOutputTensorName_ = getDefaultInstance().getValuesOutputTensorName();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -680,12 +662,10 @@ public Builder clearValuesOutputTensorName() {
          */
         public Builder setValuesOutputTensorNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           valuesOutputTensorName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -731,11 +711,9 @@ public java.lang.String getIndicesOutputTensorName() {
          */
         public Builder setIndicesOutputTensorName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           indicesOutputTensorName_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -744,8 +722,8 @@ public Builder setIndicesOutputTensorName(
          * @return This builder for chaining.
          */
         public Builder clearIndicesOutputTensorName() {
    -      
           indicesOutputTensorName_ = getDefaultInstance().getIndicesOutputTensorName();
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -756,12 +734,10 @@ public Builder clearIndicesOutputTensorName() {
          */
         public Builder setIndicesOutputTensorNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           indicesOutputTensorName_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -807,11 +783,9 @@ public java.lang.String getShapesOutputTensorName() {
          */
         public Builder setShapesOutputTensorName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           shapesOutputTensorName_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -820,8 +794,8 @@ public Builder setShapesOutputTensorName(
          * @return This builder for chaining.
          */
         public Builder clearShapesOutputTensorName() {
    -      
           shapesOutputTensorName_ = getDefaultInstance().getShapesOutputTensorName();
    +      bitField0_ = (bitField0_ & ~0x00000008);
           onChanged();
           return this;
         }
    @@ -832,27 +806,13 @@ public Builder clearShapesOutputTensorName() {
          */
         public Builder setShapesOutputTensorNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           shapesOutputTensorName_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.VarLenFeatureProto)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VarLenFeatureProtoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VarLenFeatureProtoOrBuilder.java
    index fb30c882fb0..dfd0c8e932d 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VarLenFeatureProtoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VarLenFeatureProtoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/example/example_parser_configuration.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableAggregation.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableAggregation.java
    index 9372c9c5548..1b2f657469d 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableAggregation.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableAggregation.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/variable.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -51,6 +53,15 @@ public enum VariableAggregation
       UNRECOGNIZED(-1),
       ;
     
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      VariableAggregation.class.getName());
    +  }
       /**
        * 
        * `NONE`: This is the default, giving an error if you use a
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableDef.java
    index e0ce4931dd0..05fa166a1a0 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableDef.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableDef.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/variable.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,12 +13,21 @@
      * Protobuf type {@code tensorflow.VariableDef}
      */
     public final class VariableDef extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.VariableDef)
         VariableDefOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      VariableDef.class.getName());
    +  }
       // Use VariableDef.newBuilder() to construct.
    -  private VariableDef(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private VariableDef(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private VariableDef() {
    @@ -28,33 +39,23 @@ private VariableDef() {
         aggregation_ = 0;
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new VariableDef();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.VariableProtos.internal_static_tensorflow_VariableDef_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.VariableProtos.internal_static_tensorflow_VariableDef_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.VariableDef.class, org.tensorflow.proto.VariableDef.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int VARIABLE_NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object variableName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object variableName_ = "";
       /**
        * 
        * Name of the variable tensor.
    @@ -100,7 +101,8 @@ public java.lang.String getVariableName() {
       }
     
       public static final int INITIAL_VALUE_NAME_FIELD_NUMBER = 6;
    -  private volatile java.lang.Object initialValueName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object initialValueName_ = "";
       /**
        * 
        * Name of the tensor holding the variable's initial value.
    @@ -146,7 +148,8 @@ public java.lang.String getInitialValueName() {
       }
     
       public static final int INITIALIZER_NAME_FIELD_NUMBER = 2;
    -  private volatile java.lang.Object initializerName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object initializerName_ = "";
       /**
        * 
        * Name of the initializer op.
    @@ -192,7 +195,8 @@ public java.lang.String getInitializerName() {
       }
     
       public static final int SNAPSHOT_NAME_FIELD_NUMBER = 3;
    -  private volatile java.lang.Object snapshotName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object snapshotName_ = "";
       /**
        * 
        * Name of the snapshot tensor.
    @@ -249,7 +253,7 @@ public java.lang.String getSnapshotName() {
        */
       @java.lang.Override
       public boolean hasSaveSliceInfoDef() {
    -    return saveSliceInfoDef_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -272,11 +276,11 @@ public org.tensorflow.proto.SaveSliceInfoDef getSaveSliceInfoDef() {
        */
       @java.lang.Override
       public org.tensorflow.proto.SaveSliceInfoDefOrBuilder getSaveSliceInfoDefOrBuilder() {
    -    return getSaveSliceInfoDef();
    +    return saveSliceInfoDef_ == null ? org.tensorflow.proto.SaveSliceInfoDef.getDefaultInstance() : saveSliceInfoDef_;
       }
     
       public static final int IS_RESOURCE_FIELD_NUMBER = 5;
    -  private boolean isResource_;
    +  private boolean isResource_ = false;
       /**
        * 
        * Whether to represent this as a ResourceVariable.
    @@ -291,7 +295,7 @@ public boolean getIsResource() {
       }
     
       public static final int TRAINABLE_FIELD_NUMBER = 7;
    -  private boolean trainable_;
    +  private boolean trainable_ = false;
       /**
        * 
        * Whether this variable should be trained.
    @@ -306,7 +310,7 @@ public boolean getTrainable() {
       }
     
       public static final int SYNCHRONIZATION_FIELD_NUMBER = 8;
    -  private int synchronization_;
    +  private int synchronization_ = 0;
       /**
        * 
        * Indicates when a distributed variable will be synced.
    @@ -327,13 +331,12 @@ public boolean getTrainable() {
        * @return The synchronization.
        */
       @java.lang.Override public org.tensorflow.proto.VariableSynchronization getSynchronization() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.VariableSynchronization result = org.tensorflow.proto.VariableSynchronization.valueOf(synchronization_);
    +    org.tensorflow.proto.VariableSynchronization result = org.tensorflow.proto.VariableSynchronization.forNumber(synchronization_);
         return result == null ? org.tensorflow.proto.VariableSynchronization.UNRECOGNIZED : result;
       }
     
       public static final int AGGREGATION_FIELD_NUMBER = 9;
    -  private int aggregation_;
    +  private int aggregation_ = 0;
       /**
        * 
        * Indicates how a distributed variable will be aggregated.
    @@ -354,8 +357,7 @@ public boolean getTrainable() {
        * @return The aggregation.
        */
       @java.lang.Override public org.tensorflow.proto.VariableAggregation getAggregation() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.VariableAggregation result = org.tensorflow.proto.VariableAggregation.valueOf(aggregation_);
    +    org.tensorflow.proto.VariableAggregation result = org.tensorflow.proto.VariableAggregation.forNumber(aggregation_);
         return result == null ? org.tensorflow.proto.VariableAggregation.UNRECOGNIZED : result;
       }
     
    @@ -373,23 +375,23 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(variableName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, variableName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(variableName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, variableName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(initializerName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, initializerName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(initializerName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 2, initializerName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(snapshotName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, snapshotName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(snapshotName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, snapshotName_);
         }
    -    if (saveSliceInfoDef_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(4, getSaveSliceInfoDef());
         }
         if (isResource_ != false) {
           output.writeBool(5, isResource_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(initialValueName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 6, initialValueName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(initialValueName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 6, initialValueName_);
         }
         if (trainable_ != false) {
           output.writeBool(7, trainable_);
    @@ -409,16 +411,16 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(variableName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, variableName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(variableName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, variableName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(initializerName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, initializerName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(initializerName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, initializerName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(snapshotName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, snapshotName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(snapshotName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, snapshotName_);
         }
    -    if (saveSliceInfoDef_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(4, getSaveSliceInfoDef());
         }
    @@ -426,8 +428,8 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeBoolSize(5, isResource_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(initialValueName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, initialValueName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(initialValueName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(6, initialValueName_);
         }
         if (trainable_ != false) {
           size += com.google.protobuf.CodedOutputStream
    @@ -547,39 +549,41 @@ public static org.tensorflow.proto.VariableDef parseFrom(
       }
       public static org.tensorflow.proto.VariableDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.VariableDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.VariableDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.VariableDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.VariableDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.VariableDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -599,7 +603,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -611,7 +615,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.VariableDef}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.VariableDef)
           org.tensorflow.proto.VariableDefOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -620,7 +624,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.VariableProtos.internal_static_tensorflow_VariableDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -629,39 +633,37 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.VariableDef.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getSaveSliceInfoDefFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           variableName_ = "";
    -
           initialValueName_ = "";
    -
           initializerName_ = "";
    -
           snapshotName_ = "";
    -
    -      if (saveSliceInfoDefBuilder_ == null) {
    -        saveSliceInfoDef_ = null;
    -      } else {
    -        saveSliceInfoDef_ = null;
    +      saveSliceInfoDef_ = null;
    +      if (saveSliceInfoDefBuilder_ != null) {
    +        saveSliceInfoDefBuilder_.dispose();
             saveSliceInfoDefBuilder_ = null;
           }
           isResource_ = false;
    -
           trainable_ = false;
    -
           synchronization_ = 0;
    -
           aggregation_ = 0;
    -
           return this;
         }
     
    @@ -688,55 +690,47 @@ public org.tensorflow.proto.VariableDef build() {
         @java.lang.Override
         public org.tensorflow.proto.VariableDef buildPartial() {
           org.tensorflow.proto.VariableDef result = new org.tensorflow.proto.VariableDef(this);
    -      result.variableName_ = variableName_;
    -      result.initialValueName_ = initialValueName_;
    -      result.initializerName_ = initializerName_;
    -      result.snapshotName_ = snapshotName_;
    -      if (saveSliceInfoDefBuilder_ == null) {
    -        result.saveSliceInfoDef_ = saveSliceInfoDef_;
    -      } else {
    -        result.saveSliceInfoDef_ = saveSliceInfoDefBuilder_.build();
    -      }
    -      result.isResource_ = isResource_;
    -      result.trainable_ = trainable_;
    -      result.synchronization_ = synchronization_;
    -      result.aggregation_ = aggregation_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.VariableDef result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.variableName_ = variableName_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.initialValueName_ = initialValueName_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.initializerName_ = initializerName_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.snapshotName_ = snapshotName_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.saveSliceInfoDef_ = saveSliceInfoDefBuilder_ == null
    +            ? saveSliceInfoDef_
    +            : saveSliceInfoDefBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.isResource_ = isResource_;
    +      }
    +      if (((from_bitField0_ & 0x00000040) != 0)) {
    +        result.trainable_ = trainable_;
    +      }
    +      if (((from_bitField0_ & 0x00000080) != 0)) {
    +        result.synchronization_ = synchronization_;
    +      }
    +      if (((from_bitField0_ & 0x00000100) != 0)) {
    +        result.aggregation_ = aggregation_;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.VariableDef) {
    @@ -751,18 +745,22 @@ public Builder mergeFrom(org.tensorflow.proto.VariableDef other) {
           if (other == org.tensorflow.proto.VariableDef.getDefaultInstance()) return this;
           if (!other.getVariableName().isEmpty()) {
             variableName_ = other.variableName_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (!other.getInitialValueName().isEmpty()) {
             initialValueName_ = other.initialValueName_;
    +        bitField0_ |= 0x00000002;
             onChanged();
           }
           if (!other.getInitializerName().isEmpty()) {
             initializerName_ = other.initializerName_;
    +        bitField0_ |= 0x00000004;
             onChanged();
           }
           if (!other.getSnapshotName().isEmpty()) {
             snapshotName_ = other.snapshotName_;
    +        bitField0_ |= 0x00000008;
             onChanged();
           }
           if (other.hasSaveSliceInfoDef()) {
    @@ -808,49 +806,49 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   variableName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   initializerName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 18
                 case 26: {
                   snapshotName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 26
                 case 34: {
                   input.readMessage(
                       getSaveSliceInfoDefFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 34
                 case 40: {
                   isResource_ = input.readBool();
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 40
                 case 50: {
                   initialValueName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 50
                 case 56: {
                   trainable_ = input.readBool();
    -
    +              bitField0_ |= 0x00000040;
                   break;
                 } // case 56
                 case 64: {
                   synchronization_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000080;
                   break;
                 } // case 64
                 case 72: {
                   aggregation_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000100;
                   break;
                 } // case 72
                 default: {
    @@ -868,6 +866,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private java.lang.Object variableName_ = "";
         /**
    @@ -922,11 +921,9 @@ public java.lang.String getVariableName() {
          */
         public Builder setVariableName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           variableName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -939,8 +936,8 @@ public Builder setVariableName(
          * @return This builder for chaining.
          */
         public Builder clearVariableName() {
    -      
           variableName_ = getDefaultInstance().getVariableName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -955,12 +952,10 @@ public Builder clearVariableName() {
          */
         public Builder setVariableNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           variableName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1018,11 +1013,9 @@ public java.lang.String getInitialValueName() {
          */
         public Builder setInitialValueName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           initialValueName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1035,8 +1028,8 @@ public Builder setInitialValueName(
          * @return This builder for chaining.
          */
         public Builder clearInitialValueName() {
    -      
           initialValueName_ = getDefaultInstance().getInitialValueName();
    +      bitField0_ = (bitField0_ & ~0x00000002);
           onChanged();
           return this;
         }
    @@ -1051,12 +1044,10 @@ public Builder clearInitialValueName() {
          */
         public Builder setInitialValueNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           initialValueName_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1114,11 +1105,9 @@ public java.lang.String getInitializerName() {
          */
         public Builder setInitializerName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           initializerName_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1131,8 +1120,8 @@ public Builder setInitializerName(
          * @return This builder for chaining.
          */
         public Builder clearInitializerName() {
    -      
           initializerName_ = getDefaultInstance().getInitializerName();
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -1147,12 +1136,10 @@ public Builder clearInitializerName() {
          */
         public Builder setInitializerNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           initializerName_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1210,11 +1197,9 @@ public java.lang.String getSnapshotName() {
          */
         public Builder setSnapshotName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           snapshotName_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1227,8 +1212,8 @@ public Builder setSnapshotName(
          * @return This builder for chaining.
          */
         public Builder clearSnapshotName() {
    -      
           snapshotName_ = getDefaultInstance().getSnapshotName();
    +      bitField0_ = (bitField0_ & ~0x00000008);
           onChanged();
           return this;
         }
    @@ -1243,18 +1228,16 @@ public Builder clearSnapshotName() {
          */
         public Builder setSnapshotNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           snapshotName_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.SaveSliceInfoDef saveSliceInfoDef_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.SaveSliceInfoDef, org.tensorflow.proto.SaveSliceInfoDef.Builder, org.tensorflow.proto.SaveSliceInfoDefOrBuilder> saveSliceInfoDefBuilder_;
         /**
          * 
    @@ -1265,7 +1248,7 @@ public Builder setSnapshotNameBytes(
          * @return Whether the saveSliceInfoDef field is set.
          */
         public boolean hasSaveSliceInfoDef() {
    -      return saveSliceInfoDefBuilder_ != null || saveSliceInfoDef_ != null;
    +      return ((bitField0_ & 0x00000010) != 0);
         }
         /**
          * 
    @@ -1295,11 +1278,11 @@ public Builder setSaveSliceInfoDef(org.tensorflow.proto.SaveSliceInfoDef value)
               throw new NullPointerException();
             }
             saveSliceInfoDef_ = value;
    -        onChanged();
           } else {
             saveSliceInfoDefBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000010;
    +      onChanged();
           return this;
         }
         /**
    @@ -1313,11 +1296,11 @@ public Builder setSaveSliceInfoDef(
             org.tensorflow.proto.SaveSliceInfoDef.Builder builderForValue) {
           if (saveSliceInfoDefBuilder_ == null) {
             saveSliceInfoDef_ = builderForValue.build();
    -        onChanged();
           } else {
             saveSliceInfoDefBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000010;
    +      onChanged();
           return this;
         }
         /**
    @@ -1329,17 +1312,20 @@ public Builder setSaveSliceInfoDef(
          */
         public Builder mergeSaveSliceInfoDef(org.tensorflow.proto.SaveSliceInfoDef value) {
           if (saveSliceInfoDefBuilder_ == null) {
    -        if (saveSliceInfoDef_ != null) {
    -          saveSliceInfoDef_ =
    -            org.tensorflow.proto.SaveSliceInfoDef.newBuilder(saveSliceInfoDef_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000010) != 0) &&
    +          saveSliceInfoDef_ != null &&
    +          saveSliceInfoDef_ != org.tensorflow.proto.SaveSliceInfoDef.getDefaultInstance()) {
    +          getSaveSliceInfoDefBuilder().mergeFrom(value);
             } else {
               saveSliceInfoDef_ = value;
             }
    -        onChanged();
           } else {
             saveSliceInfoDefBuilder_.mergeFrom(value);
           }
    -
    +      if (saveSliceInfoDef_ != null) {
    +        bitField0_ |= 0x00000010;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -1350,14 +1336,13 @@ public Builder mergeSaveSliceInfoDef(org.tensorflow.proto.SaveSliceInfoDef value
          * .tensorflow.SaveSliceInfoDef save_slice_info_def = 4;
          */
         public Builder clearSaveSliceInfoDef() {
    -      if (saveSliceInfoDefBuilder_ == null) {
    -        saveSliceInfoDef_ = null;
    -        onChanged();
    -      } else {
    -        saveSliceInfoDef_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000010);
    +      saveSliceInfoDef_ = null;
    +      if (saveSliceInfoDefBuilder_ != null) {
    +        saveSliceInfoDefBuilder_.dispose();
             saveSliceInfoDefBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -1368,7 +1353,7 @@ public Builder clearSaveSliceInfoDef() {
          * .tensorflow.SaveSliceInfoDef save_slice_info_def = 4;
          */
         public org.tensorflow.proto.SaveSliceInfoDef.Builder getSaveSliceInfoDefBuilder() {
    -      
    +      bitField0_ |= 0x00000010;
           onChanged();
           return getSaveSliceInfoDefFieldBuilder().getBuilder();
         }
    @@ -1394,11 +1379,11 @@ public org.tensorflow.proto.SaveSliceInfoDefOrBuilder getSaveSliceInfoDefOrBuild
          *
          * .tensorflow.SaveSliceInfoDef save_slice_info_def = 4;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.SaveSliceInfoDef, org.tensorflow.proto.SaveSliceInfoDef.Builder, org.tensorflow.proto.SaveSliceInfoDefOrBuilder> 
             getSaveSliceInfoDefFieldBuilder() {
           if (saveSliceInfoDefBuilder_ == null) {
    -        saveSliceInfoDefBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        saveSliceInfoDefBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.SaveSliceInfoDef, org.tensorflow.proto.SaveSliceInfoDef.Builder, org.tensorflow.proto.SaveSliceInfoDefOrBuilder>(
                     getSaveSliceInfoDef(),
                     getParentForChildren(),
    @@ -1431,8 +1416,9 @@ public boolean getIsResource() {
          * @return This builder for chaining.
          */
         public Builder setIsResource(boolean value) {
    -      
    +
           isResource_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -1445,7 +1431,7 @@ public Builder setIsResource(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearIsResource() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000020);
           isResource_ = false;
           onChanged();
           return this;
    @@ -1474,8 +1460,9 @@ public boolean getTrainable() {
          * @return This builder for chaining.
          */
         public Builder setTrainable(boolean value) {
    -      
    +
           trainable_ = value;
    +      bitField0_ |= 0x00000040;
           onChanged();
           return this;
         }
    @@ -1488,7 +1475,7 @@ public Builder setTrainable(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearTrainable() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000040);
           trainable_ = false;
           onChanged();
           return this;
    @@ -1516,8 +1503,8 @@ public Builder clearTrainable() {
          * @return This builder for chaining.
          */
         public Builder setSynchronizationValue(int value) {
    -      
           synchronization_ = value;
    +      bitField0_ |= 0x00000080;
           onChanged();
           return this;
         }
    @@ -1531,8 +1518,7 @@ public Builder setSynchronizationValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.VariableSynchronization getSynchronization() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.VariableSynchronization result = org.tensorflow.proto.VariableSynchronization.valueOf(synchronization_);
    +      org.tensorflow.proto.VariableSynchronization result = org.tensorflow.proto.VariableSynchronization.forNumber(synchronization_);
           return result == null ? org.tensorflow.proto.VariableSynchronization.UNRECOGNIZED : result;
         }
         /**
    @@ -1548,7 +1534,7 @@ public Builder setSynchronization(org.tensorflow.proto.VariableSynchronization v
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000080;
           synchronization_ = value.getNumber();
           onChanged();
           return this;
    @@ -1562,7 +1548,7 @@ public Builder setSynchronization(org.tensorflow.proto.VariableSynchronization v
          * @return This builder for chaining.
          */
         public Builder clearSynchronization() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000080);
           synchronization_ = 0;
           onChanged();
           return this;
    @@ -1590,8 +1576,8 @@ public Builder clearSynchronization() {
          * @return This builder for chaining.
          */
         public Builder setAggregationValue(int value) {
    -      
           aggregation_ = value;
    +      bitField0_ |= 0x00000100;
           onChanged();
           return this;
         }
    @@ -1605,8 +1591,7 @@ public Builder setAggregationValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.VariableAggregation getAggregation() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.VariableAggregation result = org.tensorflow.proto.VariableAggregation.valueOf(aggregation_);
    +      org.tensorflow.proto.VariableAggregation result = org.tensorflow.proto.VariableAggregation.forNumber(aggregation_);
           return result == null ? org.tensorflow.proto.VariableAggregation.UNRECOGNIZED : result;
         }
         /**
    @@ -1622,7 +1607,7 @@ public Builder setAggregation(org.tensorflow.proto.VariableAggregation value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000100;
           aggregation_ = value.getNumber();
           onChanged();
           return this;
    @@ -1636,23 +1621,11 @@ public Builder setAggregation(org.tensorflow.proto.VariableAggregation value) {
          * @return This builder for chaining.
          */
         public Builder clearAggregation() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000100);
           aggregation_ = 0;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.VariableDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableDefOrBuilder.java
    index 4cc21270001..c21be5ee951 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/variable.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableProtos.java
    index 1d42548c5ba..0fcca6df742 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/variable.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class VariableProtos {
       private VariableProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      VariableProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,12 +28,12 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_VariableDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_VariableDef_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_SaveSliceInfoDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_SaveSliceInfoDef_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -65,15 +76,16 @@ public static void registerAllExtensions(
         internal_static_tensorflow_VariableDef_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_VariableDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_VariableDef_descriptor,
             new java.lang.String[] { "VariableName", "InitialValueName", "InitializerName", "SnapshotName", "SaveSliceInfoDef", "IsResource", "Trainable", "Synchronization", "Aggregation", });
         internal_static_tensorflow_SaveSliceInfoDef_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_SaveSliceInfoDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_SaveSliceInfoDef_descriptor,
             new java.lang.String[] { "FullName", "FullShape", "VarOffset", "VarShape", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableSynchronization.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableSynchronization.java
    index 7753319d336..3a618d402ac 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableSynchronization.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariableSynchronization.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/variable.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -53,6 +55,15 @@ public enum VariableSynchronization
       UNRECOGNIZED(-1),
       ;
     
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      VariableSynchronization.class.getName());
    +  }
       /**
        * 
        * `AUTO`: Indicates that the synchronization will be determined by the
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariantTensorDataProto.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariantTensorDataProto.java
    index a5a08f0f3fb..50181e54d12 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariantTensorDataProto.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariantTensorDataProto.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/tensor.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,12 +13,21 @@
      * Protobuf type {@code tensorflow.VariantTensorDataProto}
      */
     public final class VariantTensorDataProto extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.VariantTensorDataProto)
         VariantTensorDataProtoOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      VariantTensorDataProto.class.getName());
    +  }
       // Use VariantTensorDataProto.newBuilder() to construct.
    -  private VariantTensorDataProto(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private VariantTensorDataProto(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private VariantTensorDataProto() {
    @@ -25,25 +36,13 @@ private VariantTensorDataProto() {
         tensors_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new VariantTensorDataProto();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.TensorProtos.internal_static_tensorflow_VariantTensorDataProto_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.TensorProtos.internal_static_tensorflow_VariantTensorDataProto_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -51,7 +50,8 @@ protected java.lang.Object newInstance(
       }
     
       public static final int TYPE_NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object typeName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object typeName_ = "";
       /**
        * 
        * Name of the type of objects being serialized.
    @@ -97,7 +97,7 @@ public java.lang.String getTypeName() {
       }
     
       public static final int METADATA_FIELD_NUMBER = 2;
    -  private com.google.protobuf.ByteString metadata_;
    +  private com.google.protobuf.ByteString metadata_ = com.google.protobuf.ByteString.EMPTY;
       /**
        * 
        * Portions of the object that are not Tensors.
    @@ -112,6 +112,7 @@ public com.google.protobuf.ByteString getMetadata() {
       }
     
       public static final int TENSORS_FIELD_NUMBER = 3;
    +  @SuppressWarnings("serial")
       private java.util.List tensors_;
       /**
        * 
    @@ -185,8 +186,8 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(typeName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, typeName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(typeName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, typeName_);
         }
         if (!metadata_.isEmpty()) {
           output.writeBytes(2, metadata_);
    @@ -203,8 +204,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(typeName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, typeName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(typeName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, typeName_);
         }
         if (!metadata_.isEmpty()) {
           size += com.google.protobuf.CodedOutputStream
    @@ -293,39 +294,41 @@ public static org.tensorflow.proto.VariantTensorDataProto parseFrom(
       }
       public static org.tensorflow.proto.VariantTensorDataProto parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.VariantTensorDataProto parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.VariantTensorDataProto parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.VariantTensorDataProto parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.VariantTensorDataProto parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.VariantTensorDataProto parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -345,7 +348,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -357,7 +360,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.VariantTensorDataProto}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.VariantTensorDataProto)
           org.tensorflow.proto.VariantTensorDataProtoOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -366,7 +369,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.TensorProtos.internal_static_tensorflow_VariantTensorDataProto_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -379,24 +382,23 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           typeName_ = "";
    -
           metadata_ = com.google.protobuf.ByteString.EMPTY;
    -
           if (tensorsBuilder_ == null) {
             tensors_ = java.util.Collections.emptyList();
           } else {
             tensors_ = null;
             tensorsBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000004);
           return this;
         }
     
    @@ -423,54 +425,34 @@ public org.tensorflow.proto.VariantTensorDataProto build() {
         @java.lang.Override
         public org.tensorflow.proto.VariantTensorDataProto buildPartial() {
           org.tensorflow.proto.VariantTensorDataProto result = new org.tensorflow.proto.VariantTensorDataProto(this);
    -      int from_bitField0_ = bitField0_;
    -      result.typeName_ = typeName_;
    -      result.metadata_ = metadata_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.VariantTensorDataProto result) {
           if (tensorsBuilder_ == null) {
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((bitField0_ & 0x00000004) != 0)) {
               tensors_ = java.util.Collections.unmodifiableList(tensors_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000004);
             }
             result.tensors_ = tensors_;
           } else {
             result.tensors_ = tensorsBuilder_.build();
           }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.VariantTensorDataProto result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.typeName_ = typeName_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.metadata_ = metadata_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.VariantTensorDataProto) {
    @@ -485,6 +467,7 @@ public Builder mergeFrom(org.tensorflow.proto.VariantTensorDataProto other) {
           if (other == org.tensorflow.proto.VariantTensorDataProto.getDefaultInstance()) return this;
           if (!other.getTypeName().isEmpty()) {
             typeName_ = other.typeName_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (other.getMetadata() != com.google.protobuf.ByteString.EMPTY) {
    @@ -494,7 +477,7 @@ public Builder mergeFrom(org.tensorflow.proto.VariantTensorDataProto other) {
             if (!other.tensors_.isEmpty()) {
               if (tensors_.isEmpty()) {
                 tensors_ = other.tensors_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000004);
               } else {
                 ensureTensorsIsMutable();
                 tensors_.addAll(other.tensors_);
    @@ -507,9 +490,9 @@ public Builder mergeFrom(org.tensorflow.proto.VariantTensorDataProto other) {
                 tensorsBuilder_.dispose();
                 tensorsBuilder_ = null;
                 tensors_ = other.tensors_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000004);
                 tensorsBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getTensorsFieldBuilder() : null;
               } else {
                 tensorsBuilder_.addAllMessages(other.tensors_);
    @@ -544,12 +527,12 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   typeName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 18: {
                   metadata_ = input.readBytes();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
    @@ -635,11 +618,9 @@ public java.lang.String getTypeName() {
          */
         public Builder setTypeName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           typeName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -652,8 +633,8 @@ public Builder setTypeName(
          * @return This builder for chaining.
          */
         public Builder clearTypeName() {
    -      
           typeName_ = getDefaultInstance().getTypeName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -668,12 +649,10 @@ public Builder clearTypeName() {
          */
         public Builder setTypeNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           typeName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -701,11 +680,9 @@ public com.google.protobuf.ByteString getMetadata() {
          * @return This builder for chaining.
          */
         public Builder setMetadata(com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           metadata_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -718,7 +695,7 @@ public Builder setMetadata(com.google.protobuf.ByteString value) {
          * @return This builder for chaining.
          */
         public Builder clearMetadata() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           metadata_ = getDefaultInstance().getMetadata();
           onChanged();
           return this;
    @@ -727,13 +704,13 @@ public Builder clearMetadata() {
         private java.util.List tensors_ =
           java.util.Collections.emptyList();
         private void ensureTensorsIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!((bitField0_ & 0x00000004) != 0)) {
             tensors_ = new java.util.ArrayList(tensors_);
    -        bitField0_ |= 0x00000001;
    +        bitField0_ |= 0x00000004;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> tensorsBuilder_;
     
         /**
    @@ -923,7 +900,7 @@ public Builder addAllTensors(
         public Builder clearTensors() {
           if (tensorsBuilder_ == null) {
             tensors_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000004);
             onChanged();
           } else {
             tensorsBuilder_.clear();
    @@ -1021,32 +998,20 @@ public org.tensorflow.proto.TensorProto.Builder addTensorsBuilder(
              getTensorsBuilderList() {
           return getTensorsFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> 
             getTensorsFieldBuilder() {
           if (tensorsBuilder_ == null) {
    -        tensorsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        tensorsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder>(
                     tensors_,
    -                ((bitField0_ & 0x00000001) != 0),
    +                ((bitField0_ & 0x00000004) != 0),
                     getParentForChildren(),
                     isClean());
             tensors_ = null;
           }
           return tensorsBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.VariantTensorDataProto)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariantTensorDataProtoOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariantTensorDataProtoOrBuilder.java
    index 03f644b8cd4..35d2a7a341b 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariantTensorDataProtoOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VariantTensorDataProtoOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/tensor.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VerifierConfig.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VerifierConfig.java
    index 2085986669c..c505dd32bab 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VerifierConfig.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VerifierConfig.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/verifier_config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,37 +13,34 @@
      * Protobuf type {@code tensorflow.VerifierConfig}
      */
     public final class VerifierConfig extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.VerifierConfig)
         VerifierConfigOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      VerifierConfig.class.getName());
    +  }
       // Use VerifierConfig.newBuilder() to construct.
    -  private VerifierConfig(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private VerifierConfig(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private VerifierConfig() {
         structureVerifier_ = 0;
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new VerifierConfig();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.VerifierConfigProtos.internal_static_tensorflow_VerifierConfig_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.VerifierConfigProtos.internal_static_tensorflow_VerifierConfig_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -68,6 +67,15 @@ public enum Toggle
         UNRECOGNIZED(-1),
         ;
     
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        Toggle.class.getName());
    +    }
         /**
          * DEFAULT = 0;
          */
    @@ -166,7 +174,7 @@ private Toggle(int value) {
       }
     
       public static final int VERIFICATION_TIMEOUT_IN_MS_FIELD_NUMBER = 1;
    -  private long verificationTimeoutInMs_;
    +  private long verificationTimeoutInMs_ = 0L;
       /**
        * 
        * Deadline for completion of all verification i.e. all the Toggle ON
    @@ -182,7 +190,7 @@ public long getVerificationTimeoutInMs() {
       }
     
       public static final int STRUCTURE_VERIFIER_FIELD_NUMBER = 2;
    -  private int structureVerifier_;
    +  private int structureVerifier_ = 0;
       /**
        * 
        * Perform structural validation on a tensorflow graph. Default is OFF.
    @@ -203,8 +211,7 @@ public long getVerificationTimeoutInMs() {
        * @return The structureVerifier.
        */
       @java.lang.Override public org.tensorflow.proto.VerifierConfig.Toggle getStructureVerifier() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.VerifierConfig.Toggle result = org.tensorflow.proto.VerifierConfig.Toggle.valueOf(structureVerifier_);
    +    org.tensorflow.proto.VerifierConfig.Toggle result = org.tensorflow.proto.VerifierConfig.Toggle.forNumber(structureVerifier_);
         return result == null ? org.tensorflow.proto.VerifierConfig.Toggle.UNRECOGNIZED : result;
       }
     
    @@ -318,39 +325,41 @@ public static org.tensorflow.proto.VerifierConfig parseFrom(
       }
       public static org.tensorflow.proto.VerifierConfig parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.VerifierConfig parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.VerifierConfig parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.VerifierConfig parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.VerifierConfig parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.VerifierConfig parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -370,7 +379,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -382,7 +391,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.VerifierConfig}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.VerifierConfig)
           org.tensorflow.proto.VerifierConfigOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -391,7 +400,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.VerifierConfigProtos.internal_static_tensorflow_VerifierConfig_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -404,17 +413,16 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           verificationTimeoutInMs_ = 0L;
    -
           structureVerifier_ = 0;
    -
           return this;
         }
     
    @@ -441,44 +449,21 @@ public org.tensorflow.proto.VerifierConfig build() {
         @java.lang.Override
         public org.tensorflow.proto.VerifierConfig buildPartial() {
           org.tensorflow.proto.VerifierConfig result = new org.tensorflow.proto.VerifierConfig(this);
    -      result.verificationTimeoutInMs_ = verificationTimeoutInMs_;
    -      result.structureVerifier_ = structureVerifier_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.VerifierConfig result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.verificationTimeoutInMs_ = verificationTimeoutInMs_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.structureVerifier_ = structureVerifier_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.VerifierConfig) {
    @@ -525,12 +510,12 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   verificationTimeoutInMs_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 16: {
                   structureVerifier_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 default: {
    @@ -548,6 +533,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private long verificationTimeoutInMs_ ;
         /**
    @@ -574,8 +560,9 @@ public long getVerificationTimeoutInMs() {
          * @return This builder for chaining.
          */
         public Builder setVerificationTimeoutInMs(long value) {
    -      
    +
           verificationTimeoutInMs_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -589,7 +576,7 @@ public Builder setVerificationTimeoutInMs(long value) {
          * @return This builder for chaining.
          */
         public Builder clearVerificationTimeoutInMs() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           verificationTimeoutInMs_ = 0L;
           onChanged();
           return this;
    @@ -617,8 +604,8 @@ public Builder clearVerificationTimeoutInMs() {
          * @return This builder for chaining.
          */
         public Builder setStructureVerifierValue(int value) {
    -      
           structureVerifier_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -632,8 +619,7 @@ public Builder setStructureVerifierValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.VerifierConfig.Toggle getStructureVerifier() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.VerifierConfig.Toggle result = org.tensorflow.proto.VerifierConfig.Toggle.valueOf(structureVerifier_);
    +      org.tensorflow.proto.VerifierConfig.Toggle result = org.tensorflow.proto.VerifierConfig.Toggle.forNumber(structureVerifier_);
           return result == null ? org.tensorflow.proto.VerifierConfig.Toggle.UNRECOGNIZED : result;
         }
         /**
    @@ -649,7 +635,7 @@ public Builder setStructureVerifier(org.tensorflow.proto.VerifierConfig.Toggle v
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000002;
           structureVerifier_ = value.getNumber();
           onChanged();
           return this;
    @@ -663,23 +649,11 @@ public Builder setStructureVerifier(org.tensorflow.proto.VerifierConfig.Toggle v
          * @return This builder for chaining.
          */
         public Builder clearStructureVerifier() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           structureVerifier_ = 0;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.VerifierConfig)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VerifierConfigOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VerifierConfigOrBuilder.java
    index 3be007c2633..73d458cfcba 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VerifierConfigOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VerifierConfigOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/verifier_config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VerifierConfigProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VerifierConfigProtos.java
    index 76533aa3039..90bb0857380 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VerifierConfigProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VerifierConfigProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/verifier_config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class VerifierConfigProtos {
       private VerifierConfigProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      VerifierConfigProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,7 +28,7 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_VerifierConfig_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_VerifierConfig_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -46,9 +57,10 @@ public static void registerAllExtensions(
         internal_static_tensorflow_VerifierConfig_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_VerifierConfig_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_VerifierConfig_descriptor,
             new java.lang.String[] { "VerificationTimeoutInMs", "StructureVerifier", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VersionDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VersionDef.java
    index 8f322c921be..b9d81a5d931 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VersionDef.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VersionDef.java
    @@ -1,55 +1,57 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/versions.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     /**
      * 
      * Version information for a piece of serialized data
    + *
      * There are different types of versions for each type of data
      * (GraphDef, etc.), but they all have the same common shape
      * described here.
    + *
      * Each consumer has "consumer" and "min_producer" versions (specified
      * elsewhere).  A consumer is allowed to consume this data if
    - *   producer >= min_producer
    - *   consumer >= min_consumer
    - *   consumer not in bad_consumers
    + *
    + * producer >= min_producer
    + * consumer >= min_consumer
    + * consumer not in bad_consumers
      * 
    * * Protobuf type {@code tensorflow.VersionDef} */ public final class VersionDef extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.VersionDef) VersionDefOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + VersionDef.class.getName()); + } // Use VersionDef.newBuilder() to construct. - private VersionDef(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private VersionDef(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private VersionDef() { badConsumers_ = emptyIntList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new VersionDef(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.VersionsProtos.internal_static_tensorflow_VersionDef_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.VersionsProtos.internal_static_tensorflow_VersionDef_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -57,7 +59,7 @@ protected java.lang.Object newInstance( } public static final int PRODUCER_FIELD_NUMBER = 1; - private int producer_; + private int producer_ = 0; /** *
        * The version of the code that produced this data.
    @@ -72,7 +74,7 @@ public int getProducer() {
       }
     
       public static final int MIN_CONSUMER_FIELD_NUMBER = 2;
    -  private int minConsumer_;
    +  private int minConsumer_ = 0;
       /**
        * 
        * Any consumer below this version is not allowed to consume this data.
    @@ -87,7 +89,9 @@ public int getMinConsumer() {
       }
     
       public static final int BAD_CONSUMERS_FIELD_NUMBER = 3;
    -  private com.google.protobuf.Internal.IntList badConsumers_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.Internal.IntList badConsumers_ =
    +      emptyIntList();
       /**
        * 
        * Specific consumer versions which are disallowed (e.g. due to bugs).
    @@ -264,39 +268,41 @@ public static org.tensorflow.proto.VersionDef parseFrom(
       }
       public static org.tensorflow.proto.VersionDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.VersionDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.VersionDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.VersionDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.VersionDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.VersionDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -316,27 +322,30 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
       /**
        * 
        * Version information for a piece of serialized data
    +   *
        * There are different types of versions for each type of data
        * (GraphDef, etc.), but they all have the same common shape
        * described here.
    +   *
        * Each consumer has "consumer" and "min_producer" versions (specified
        * elsewhere).  A consumer is allowed to consume this data if
    -   *   producer >= min_producer
    -   *   consumer >= min_consumer
    -   *   consumer not in bad_consumers
    +   *
    +   * producer >= min_producer
    +   * consumer >= min_consumer
    +   * consumer not in bad_consumers
        * 
    * * Protobuf type {@code tensorflow.VersionDef} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.VersionDef) org.tensorflow.proto.VersionDefOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -345,7 +354,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.VersionsProtos.internal_static_tensorflow_VersionDef_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -358,19 +367,17 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; producer_ = 0; - minConsumer_ = 0; - badConsumers_ = emptyIntList(); - bitField0_ = (bitField0_ & ~0x00000001); return this; } @@ -397,50 +404,25 @@ public org.tensorflow.proto.VersionDef build() { @java.lang.Override public org.tensorflow.proto.VersionDef buildPartial() { org.tensorflow.proto.VersionDef result = new org.tensorflow.proto.VersionDef(this); - int from_bitField0_ = bitField0_; - result.producer_ = producer_; - result.minConsumer_ = minConsumer_; - if (((bitField0_ & 0x00000001) != 0)) { - badConsumers_.makeImmutable(); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.badConsumers_ = badConsumers_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.VersionDef result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.producer_ = producer_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.minConsumer_ = minConsumer_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + badConsumers_.makeImmutable(); + result.badConsumers_ = badConsumers_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.VersionDef) { @@ -462,7 +444,8 @@ public Builder mergeFrom(org.tensorflow.proto.VersionDef other) { if (!other.badConsumers_.isEmpty()) { if (badConsumers_.isEmpty()) { badConsumers_ = other.badConsumers_; - bitField0_ = (bitField0_ & ~0x00000001); + badConsumers_.makeImmutable(); + bitField0_ |= 0x00000004; } else { ensureBadConsumersIsMutable(); badConsumers_.addAll(other.badConsumers_); @@ -497,12 +480,12 @@ public Builder mergeFrom( break; case 8: { producer_ = input.readInt32(); - + bitField0_ |= 0x00000001; break; } // case 8 case 16: { minConsumer_ = input.readInt32(); - + bitField0_ |= 0x00000002; break; } // case 16 case 24: { @@ -561,8 +544,9 @@ public int getProducer() { * @return This builder for chaining. */ public Builder setProducer(int value) { - + producer_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -575,7 +559,7 @@ public Builder setProducer(int value) { * @return This builder for chaining. */ public Builder clearProducer() { - + bitField0_ = (bitField0_ & ~0x00000001); producer_ = 0; onChanged(); return this; @@ -604,8 +588,9 @@ public int getMinConsumer() { * @return This builder for chaining. */ public Builder setMinConsumer(int value) { - + minConsumer_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -618,7 +603,7 @@ public Builder setMinConsumer(int value) { * @return This builder for chaining. */ public Builder clearMinConsumer() { - + bitField0_ = (bitField0_ & ~0x00000002); minConsumer_ = 0; onChanged(); return this; @@ -626,10 +611,10 @@ public Builder clearMinConsumer() { private com.google.protobuf.Internal.IntList badConsumers_ = emptyIntList(); private void ensureBadConsumersIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - badConsumers_ = mutableCopy(badConsumers_); - bitField0_ |= 0x00000001; - } + if (!badConsumers_.isModifiable()) { + badConsumers_ = makeMutableCopy(badConsumers_); + } + bitField0_ |= 0x00000004; } /** *
    @@ -641,8 +626,8 @@ private void ensureBadConsumersIsMutable() {
          */
         public java.util.List
             getBadConsumersList() {
    -      return ((bitField0_ & 0x00000001) != 0) ?
    -               java.util.Collections.unmodifiableList(badConsumers_) : badConsumers_;
    +      badConsumers_.makeImmutable();
    +      return badConsumers_;
         }
         /**
          * 
    @@ -679,8 +664,10 @@ public int getBadConsumers(int index) {
          */
         public Builder setBadConsumers(
             int index, int value) {
    +
           ensureBadConsumersIsMutable();
           badConsumers_.setInt(index, value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -694,8 +681,10 @@ public Builder setBadConsumers(
          * @return This builder for chaining.
          */
         public Builder addBadConsumers(int value) {
    +
           ensureBadConsumersIsMutable();
           badConsumers_.addInt(value);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -713,6 +702,7 @@ public Builder addAllBadConsumers(
           ensureBadConsumersIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, badConsumers_);
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -726,22 +716,10 @@ public Builder addAllBadConsumers(
          */
         public Builder clearBadConsumers() {
           badConsumers_ = emptyIntList();
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.VersionDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VersionDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VersionDefOrBuilder.java
    index 3846b05369f..46a49c23fd2 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VersionDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VersionDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/versions.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VersionsProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VersionsProtos.java
    index 207d9d763df..4ab034a3ac6 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VersionsProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/VersionsProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/versions.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
     public final class VersionsProtos {
       private VersionsProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      VersionsProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,7 +28,7 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_VersionDef_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_VersionDef_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -43,9 +54,10 @@ public static void registerAllExtensions(
         internal_static_tensorflow_VersionDef_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_VersionDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_VersionDef_descriptor,
             new java.lang.String[] { "Producer", "MinConsumer", "BadConsumers", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WatchdogConfig.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WatchdogConfig.java
    index 0f5d6029ae7..af3277bb62a 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WatchdogConfig.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WatchdogConfig.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,36 +9,33 @@
      * Protobuf type {@code tensorflow.WatchdogConfig}
      */
     public final class WatchdogConfig extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.WatchdogConfig)
         WatchdogConfigOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      WatchdogConfig.class.getName());
    +  }
       // Use WatchdogConfig.newBuilder() to construct.
    -  private WatchdogConfig(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private WatchdogConfig(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private WatchdogConfig() {
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new WatchdogConfig();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.EventProtos.internal_static_tensorflow_WatchdogConfig_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.EventProtos.internal_static_tensorflow_WatchdogConfig_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -44,7 +43,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int TIMEOUT_MS_FIELD_NUMBER = 1;
    -  private long timeoutMs_;
    +  private long timeoutMs_ = 0L;
       /**
        * int64 timeout_ms = 1;
        * @return The timeoutMs.
    @@ -154,39 +153,41 @@ public static org.tensorflow.proto.WatchdogConfig parseFrom(
       }
       public static org.tensorflow.proto.WatchdogConfig parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.WatchdogConfig parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.WatchdogConfig parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.WatchdogConfig parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.WatchdogConfig parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.WatchdogConfig parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -206,7 +207,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -214,7 +215,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.WatchdogConfig}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.WatchdogConfig)
           org.tensorflow.proto.WatchdogConfigOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -223,7 +224,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.EventProtos.internal_static_tensorflow_WatchdogConfig_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -236,15 +237,15 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           timeoutMs_ = 0L;
    -
           return this;
         }
     
    @@ -271,43 +272,18 @@ public org.tensorflow.proto.WatchdogConfig build() {
         @java.lang.Override
         public org.tensorflow.proto.WatchdogConfig buildPartial() {
           org.tensorflow.proto.WatchdogConfig result = new org.tensorflow.proto.WatchdogConfig(this);
    -      result.timeoutMs_ = timeoutMs_;
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.WatchdogConfig result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.timeoutMs_ = timeoutMs_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.WatchdogConfig) {
    @@ -351,7 +327,7 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   timeoutMs_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 default: {
    @@ -369,6 +345,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private long timeoutMs_ ;
         /**
    @@ -385,8 +362,9 @@ public long getTimeoutMs() {
          * @return This builder for chaining.
          */
         public Builder setTimeoutMs(long value) {
    -      
    +
           timeoutMs_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -395,23 +373,11 @@ public Builder setTimeoutMs(long value) {
          * @return This builder for chaining.
          */
         public Builder clearTimeoutMs() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           timeoutMs_ = 0L;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.WatchdogConfig)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WatchdogConfigOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WatchdogConfigOrBuilder.java
    index 45584da9568..8f35890f360 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WatchdogConfigOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WatchdogConfigOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WhileContextDef.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WhileContextDef.java
    index 276c04b10c9..dde2953f58a 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WhileContextDef.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WhileContextDef.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/control_flow.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -11,12 +13,21 @@
      * Protobuf type {@code tensorflow.WhileContextDef}
      */
     public final class WhileContextDef extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.WhileContextDef)
         WhileContextDefOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      WhileContextDef.class.getName());
    +  }
       // Use WhileContextDef.newBuilder() to construct.
    -  private WhileContextDef(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private WhileContextDef(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private WhileContextDef() {
    @@ -24,39 +35,31 @@ private WhileContextDef() {
         pivotName_ = "";
         pivotForPredName_ = "";
         pivotForBodyName_ = "";
    -    loopExitNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -    loopEnterNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    loopExitNames_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +    loopEnterNames_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         maximumIterationsName_ = "";
         nestedContexts_ = java.util.Collections.emptyList();
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new WhileContextDef();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.ControlFlowProtos.internal_static_tensorflow_WhileContextDef_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.ControlFlowProtos.internal_static_tensorflow_WhileContextDef_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.WhileContextDef.class, org.tensorflow.proto.WhileContextDef.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int CONTEXT_NAME_FIELD_NUMBER = 1;
    -  private volatile java.lang.Object contextName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object contextName_ = "";
       /**
        * 
        * Name of the context.
    @@ -102,7 +105,7 @@ public java.lang.String getContextName() {
       }
     
       public static final int PARALLEL_ITERATIONS_FIELD_NUMBER = 2;
    -  private int parallelIterations_;
    +  private int parallelIterations_ = 0;
       /**
        * 
        * The number of iterations allowed to run in parallel.
    @@ -117,7 +120,7 @@ public int getParallelIterations() {
       }
     
       public static final int BACK_PROP_FIELD_NUMBER = 3;
    -  private boolean backProp_;
    +  private boolean backProp_ = false;
       /**
        * 
        * Whether backprop is enabled for this while loop.
    @@ -132,7 +135,7 @@ public boolean getBackProp() {
       }
     
       public static final int SWAP_MEMORY_FIELD_NUMBER = 4;
    -  private boolean swapMemory_;
    +  private boolean swapMemory_ = false;
       /**
        * 
        * Whether GPU-CPU memory swap is enabled for this loop.
    @@ -147,7 +150,8 @@ public boolean getSwapMemory() {
       }
     
       public static final int PIVOT_NAME_FIELD_NUMBER = 5;
    -  private volatile java.lang.Object pivotName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object pivotName_ = "";
       /**
        * 
        * Name of the pivot tensor.
    @@ -193,7 +197,8 @@ public java.lang.String getPivotName() {
       }
     
       public static final int PIVOT_FOR_PRED_NAME_FIELD_NUMBER = 6;
    -  private volatile java.lang.Object pivotForPredName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object pivotForPredName_ = "";
       /**
        * 
        * Name of the pivot_for_pred tensor.
    @@ -239,7 +244,8 @@ public java.lang.String getPivotForPredName() {
       }
     
       public static final int PIVOT_FOR_BODY_NAME_FIELD_NUMBER = 7;
    -  private volatile java.lang.Object pivotForBodyName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object pivotForBodyName_ = "";
       /**
        * 
        * Name of the pivot_for_body tensor.
    @@ -285,7 +291,9 @@ public java.lang.String getPivotForBodyName() {
       }
     
       public static final int LOOP_EXIT_NAMES_FIELD_NUMBER = 8;
    -  private com.google.protobuf.LazyStringList loopExitNames_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList loopExitNames_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * List of names for exit tensors.
    @@ -336,7 +344,9 @@ public java.lang.String getLoopExitNames(int index) {
       }
     
       public static final int LOOP_ENTER_NAMES_FIELD_NUMBER = 10;
    -  private com.google.protobuf.LazyStringList loopEnterNames_;
    +  @SuppressWarnings("serial")
    +  private com.google.protobuf.LazyStringArrayList loopEnterNames_ =
    +      com.google.protobuf.LazyStringArrayList.emptyList();
       /**
        * 
        * List of names for enter tensors.
    @@ -398,7 +408,7 @@ public java.lang.String getLoopEnterNames(int index) {
        */
       @java.lang.Override
       public boolean hasValuesDef() {
    -    return valuesDef_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * 
    @@ -421,11 +431,12 @@ public org.tensorflow.proto.ValuesDef getValuesDef() {
        */
       @java.lang.Override
       public org.tensorflow.proto.ValuesDefOrBuilder getValuesDefOrBuilder() {
    -    return getValuesDef();
    +    return valuesDef_ == null ? org.tensorflow.proto.ValuesDef.getDefaultInstance() : valuesDef_;
       }
     
       public static final int MAXIMUM_ITERATIONS_NAME_FIELD_NUMBER = 11;
    -  private volatile java.lang.Object maximumIterationsName_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object maximumIterationsName_ = "";
       /**
        * 
        * Optional name of the maximum_iterations tensor.
    @@ -471,6 +482,7 @@ public java.lang.String getMaximumIterationsName() {
       }
     
       public static final int NESTED_CONTEXTS_FIELD_NUMBER = 12;
    +  @SuppressWarnings("serial")
       private java.util.List nestedContexts_;
       /**
        * 
    @@ -544,8 +556,8 @@ public final boolean isInitialized() {
       @java.lang.Override
       public void writeTo(com.google.protobuf.CodedOutputStream output)
                           throws java.io.IOException {
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(contextName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, contextName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(contextName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 1, contextName_);
         }
         if (parallelIterations_ != 0) {
           output.writeInt32(2, parallelIterations_);
    @@ -556,26 +568,26 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (swapMemory_ != false) {
           output.writeBool(4, swapMemory_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pivotName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 5, pivotName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pivotName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 5, pivotName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pivotForPredName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 6, pivotForPredName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pivotForPredName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 6, pivotForPredName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pivotForBodyName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 7, pivotForBodyName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pivotForBodyName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 7, pivotForBodyName_);
         }
         for (int i = 0; i < loopExitNames_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 8, loopExitNames_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 8, loopExitNames_.getRaw(i));
         }
    -    if (valuesDef_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(9, getValuesDef());
         }
         for (int i = 0; i < loopEnterNames_.size(); i++) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 10, loopEnterNames_.getRaw(i));
    +      com.google.protobuf.GeneratedMessage.writeString(output, 10, loopEnterNames_.getRaw(i));
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(maximumIterationsName_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 11, maximumIterationsName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(maximumIterationsName_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 11, maximumIterationsName_);
         }
         for (int i = 0; i < nestedContexts_.size(); i++) {
           output.writeMessage(12, nestedContexts_.get(i));
    @@ -589,8 +601,8 @@ public int getSerializedSize() {
         if (size != -1) return size;
     
         size = 0;
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(contextName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, contextName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(contextName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, contextName_);
         }
         if (parallelIterations_ != 0) {
           size += com.google.protobuf.CodedOutputStream
    @@ -604,14 +616,14 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeBoolSize(4, swapMemory_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pivotName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, pivotName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pivotName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(5, pivotName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pivotForPredName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, pivotForPredName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pivotForPredName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(6, pivotForPredName_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(pivotForBodyName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, pivotForBodyName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pivotForBodyName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(7, pivotForBodyName_);
         }
         {
           int dataSize = 0;
    @@ -621,7 +633,7 @@ public int getSerializedSize() {
           size += dataSize;
           size += 1 * getLoopExitNamesList().size();
         }
    -    if (valuesDef_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(9, getValuesDef());
         }
    @@ -633,8 +645,8 @@ public int getSerializedSize() {
           size += dataSize;
           size += 1 * getLoopEnterNamesList().size();
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(maximumIterationsName_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(11, maximumIterationsName_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(maximumIterationsName_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(11, maximumIterationsName_);
         }
         for (int i = 0; i < nestedContexts_.size(); i++) {
           size += com.google.protobuf.CodedOutputStream
    @@ -766,39 +778,41 @@ public static org.tensorflow.proto.WhileContextDef parseFrom(
       }
       public static org.tensorflow.proto.WhileContextDef parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.WhileContextDef parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.WhileContextDef parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.WhileContextDef parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.WhileContextDef parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.WhileContextDef parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -818,7 +832,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -830,7 +844,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.WhileContextDef}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.WhileContextDef)
           org.tensorflow.proto.WhileContextDefOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -839,7 +853,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.ControlFlowProtos.internal_static_tensorflow_WhileContextDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -848,50 +862,49 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.WhileContextDef.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getValuesDefFieldBuilder();
    +        getNestedContextsFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           contextName_ = "";
    -
           parallelIterations_ = 0;
    -
           backProp_ = false;
    -
           swapMemory_ = false;
    -
           pivotName_ = "";
    -
           pivotForPredName_ = "";
    -
           pivotForBodyName_ = "";
    -
    -      loopExitNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    -      loopEnterNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000002);
    -      if (valuesDefBuilder_ == null) {
    -        valuesDef_ = null;
    -      } else {
    -        valuesDef_ = null;
    +      loopExitNames_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
    +      loopEnterNames_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
    +      valuesDef_ = null;
    +      if (valuesDefBuilder_ != null) {
    +        valuesDefBuilder_.dispose();
             valuesDefBuilder_ = null;
           }
           maximumIterationsName_ = "";
    -
           if (nestedContextsBuilder_ == null) {
             nestedContexts_ = java.util.Collections.emptyList();
           } else {
             nestedContexts_ = null;
             nestedContextsBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000004);
    +      bitField0_ = (bitField0_ & ~0x00000800);
           return this;
         }
     
    @@ -918,75 +931,68 @@ public org.tensorflow.proto.WhileContextDef build() {
         @java.lang.Override
         public org.tensorflow.proto.WhileContextDef buildPartial() {
           org.tensorflow.proto.WhileContextDef result = new org.tensorflow.proto.WhileContextDef(this);
    -      int from_bitField0_ = bitField0_;
    -      result.contextName_ = contextName_;
    -      result.parallelIterations_ = parallelIterations_;
    -      result.backProp_ = backProp_;
    -      result.swapMemory_ = swapMemory_;
    -      result.pivotName_ = pivotName_;
    -      result.pivotForPredName_ = pivotForPredName_;
    -      result.pivotForBodyName_ = pivotForBodyName_;
    -      if (((bitField0_ & 0x00000001) != 0)) {
    -        loopExitNames_ = loopExitNames_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    -      }
    -      result.loopExitNames_ = loopExitNames_;
    -      if (((bitField0_ & 0x00000002) != 0)) {
    -        loopEnterNames_ = loopEnterNames_.getUnmodifiableView();
    -        bitField0_ = (bitField0_ & ~0x00000002);
    -      }
    -      result.loopEnterNames_ = loopEnterNames_;
    -      if (valuesDefBuilder_ == null) {
    -        result.valuesDef_ = valuesDef_;
    -      } else {
    -        result.valuesDef_ = valuesDefBuilder_.build();
    -      }
    -      result.maximumIterationsName_ = maximumIterationsName_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.WhileContextDef result) {
           if (nestedContextsBuilder_ == null) {
    -        if (((bitField0_ & 0x00000004) != 0)) {
    +        if (((bitField0_ & 0x00000800) != 0)) {
               nestedContexts_ = java.util.Collections.unmodifiableList(nestedContexts_);
    -          bitField0_ = (bitField0_ & ~0x00000004);
    +          bitField0_ = (bitField0_ & ~0x00000800);
             }
             result.nestedContexts_ = nestedContexts_;
           } else {
             result.nestedContexts_ = nestedContextsBuilder_.build();
           }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.WhileContextDef result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.contextName_ = contextName_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.parallelIterations_ = parallelIterations_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.backProp_ = backProp_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.swapMemory_ = swapMemory_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.pivotName_ = pivotName_;
    +      }
    +      if (((from_bitField0_ & 0x00000020) != 0)) {
    +        result.pivotForPredName_ = pivotForPredName_;
    +      }
    +      if (((from_bitField0_ & 0x00000040) != 0)) {
    +        result.pivotForBodyName_ = pivotForBodyName_;
    +      }
    +      if (((from_bitField0_ & 0x00000080) != 0)) {
    +        loopExitNames_.makeImmutable();
    +        result.loopExitNames_ = loopExitNames_;
    +      }
    +      if (((from_bitField0_ & 0x00000100) != 0)) {
    +        loopEnterNames_.makeImmutable();
    +        result.loopEnterNames_ = loopEnterNames_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000200) != 0)) {
    +        result.valuesDef_ = valuesDefBuilder_ == null
    +            ? valuesDef_
    +            : valuesDefBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000400) != 0)) {
    +        result.maximumIterationsName_ = maximumIterationsName_;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.WhileContextDef) {
    @@ -1001,6 +1007,7 @@ public Builder mergeFrom(org.tensorflow.proto.WhileContextDef other) {
           if (other == org.tensorflow.proto.WhileContextDef.getDefaultInstance()) return this;
           if (!other.getContextName().isEmpty()) {
             contextName_ = other.contextName_;
    +        bitField0_ |= 0x00000001;
             onChanged();
           }
           if (other.getParallelIterations() != 0) {
    @@ -1014,20 +1021,23 @@ public Builder mergeFrom(org.tensorflow.proto.WhileContextDef other) {
           }
           if (!other.getPivotName().isEmpty()) {
             pivotName_ = other.pivotName_;
    +        bitField0_ |= 0x00000010;
             onChanged();
           }
           if (!other.getPivotForPredName().isEmpty()) {
             pivotForPredName_ = other.pivotForPredName_;
    +        bitField0_ |= 0x00000020;
             onChanged();
           }
           if (!other.getPivotForBodyName().isEmpty()) {
             pivotForBodyName_ = other.pivotForBodyName_;
    +        bitField0_ |= 0x00000040;
             onChanged();
           }
           if (!other.loopExitNames_.isEmpty()) {
             if (loopExitNames_.isEmpty()) {
               loopExitNames_ = other.loopExitNames_;
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ |= 0x00000080;
             } else {
               ensureLoopExitNamesIsMutable();
               loopExitNames_.addAll(other.loopExitNames_);
    @@ -1037,7 +1047,7 @@ public Builder mergeFrom(org.tensorflow.proto.WhileContextDef other) {
           if (!other.loopEnterNames_.isEmpty()) {
             if (loopEnterNames_.isEmpty()) {
               loopEnterNames_ = other.loopEnterNames_;
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          bitField0_ |= 0x00000100;
             } else {
               ensureLoopEnterNamesIsMutable();
               loopEnterNames_.addAll(other.loopEnterNames_);
    @@ -1049,13 +1059,14 @@ public Builder mergeFrom(org.tensorflow.proto.WhileContextDef other) {
           }
           if (!other.getMaximumIterationsName().isEmpty()) {
             maximumIterationsName_ = other.maximumIterationsName_;
    +        bitField0_ |= 0x00000400;
             onChanged();
           }
           if (nestedContextsBuilder_ == null) {
             if (!other.nestedContexts_.isEmpty()) {
               if (nestedContexts_.isEmpty()) {
                 nestedContexts_ = other.nestedContexts_;
    -            bitField0_ = (bitField0_ & ~0x00000004);
    +            bitField0_ = (bitField0_ & ~0x00000800);
               } else {
                 ensureNestedContextsIsMutable();
                 nestedContexts_.addAll(other.nestedContexts_);
    @@ -1068,9 +1079,9 @@ public Builder mergeFrom(org.tensorflow.proto.WhileContextDef other) {
                 nestedContextsBuilder_.dispose();
                 nestedContextsBuilder_ = null;
                 nestedContexts_ = other.nestedContexts_;
    -            bitField0_ = (bitField0_ & ~0x00000004);
    +            bitField0_ = (bitField0_ & ~0x00000800);
                 nestedContextsBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getNestedContextsFieldBuilder() : null;
               } else {
                 nestedContextsBuilder_.addAllMessages(other.nestedContexts_);
    @@ -1105,37 +1116,37 @@ public Builder mergeFrom(
                   break;
                 case 10: {
                   contextName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 10
                 case 16: {
                   parallelIterations_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 case 24: {
                   backProp_ = input.readBool();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 24
                 case 32: {
                   swapMemory_ = input.readBool();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 32
                 case 42: {
                   pivotName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 42
                 case 50: {
                   pivotForPredName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000020;
                   break;
                 } // case 50
                 case 58: {
                   pivotForBodyName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000040;
                   break;
                 } // case 58
                 case 66: {
    @@ -1148,7 +1159,7 @@ public Builder mergeFrom(
                   input.readMessage(
                       getValuesDefFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000200;
                   break;
                 } // case 74
                 case 82: {
    @@ -1159,7 +1170,7 @@ public Builder mergeFrom(
                 } // case 82
                 case 90: {
                   maximumIterationsName_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000400;
                   break;
                 } // case 90
                 case 98: {
    @@ -1245,11 +1256,9 @@ public java.lang.String getContextName() {
          */
         public Builder setContextName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           contextName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1262,8 +1271,8 @@ public Builder setContextName(
          * @return This builder for chaining.
          */
         public Builder clearContextName() {
    -      
           contextName_ = getDefaultInstance().getContextName();
    +      bitField0_ = (bitField0_ & ~0x00000001);
           onChanged();
           return this;
         }
    @@ -1278,12 +1287,10 @@ public Builder clearContextName() {
          */
         public Builder setContextNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           contextName_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -1311,8 +1318,9 @@ public int getParallelIterations() {
          * @return This builder for chaining.
          */
         public Builder setParallelIterations(int value) {
    -      
    +
           parallelIterations_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -1325,7 +1333,7 @@ public Builder setParallelIterations(int value) {
          * @return This builder for chaining.
          */
         public Builder clearParallelIterations() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           parallelIterations_ = 0;
           onChanged();
           return this;
    @@ -1354,8 +1362,9 @@ public boolean getBackProp() {
          * @return This builder for chaining.
          */
         public Builder setBackProp(boolean value) {
    -      
    +
           backProp_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -1368,7 +1377,7 @@ public Builder setBackProp(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearBackProp() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000004);
           backProp_ = false;
           onChanged();
           return this;
    @@ -1397,8 +1406,9 @@ public boolean getSwapMemory() {
          * @return This builder for chaining.
          */
         public Builder setSwapMemory(boolean value) {
    -      
    +
           swapMemory_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1411,7 +1421,7 @@ public Builder setSwapMemory(boolean value) {
          * @return This builder for chaining.
          */
         public Builder clearSwapMemory() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000008);
           swapMemory_ = false;
           onChanged();
           return this;
    @@ -1470,11 +1480,9 @@ public java.lang.String getPivotName() {
          */
         public Builder setPivotName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           pivotName_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1487,8 +1495,8 @@ public Builder setPivotName(
          * @return This builder for chaining.
          */
         public Builder clearPivotName() {
    -      
           pivotName_ = getDefaultInstance().getPivotName();
    +      bitField0_ = (bitField0_ & ~0x00000010);
           onChanged();
           return this;
         }
    @@ -1503,12 +1511,10 @@ public Builder clearPivotName() {
          */
         public Builder setPivotNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           pivotName_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1566,11 +1572,9 @@ public java.lang.String getPivotForPredName() {
          */
         public Builder setPivotForPredName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           pivotForPredName_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -1583,8 +1587,8 @@ public Builder setPivotForPredName(
          * @return This builder for chaining.
          */
         public Builder clearPivotForPredName() {
    -      
           pivotForPredName_ = getDefaultInstance().getPivotForPredName();
    +      bitField0_ = (bitField0_ & ~0x00000020);
           onChanged();
           return this;
         }
    @@ -1599,12 +1603,10 @@ public Builder clearPivotForPredName() {
          */
         public Builder setPivotForPredNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           pivotForPredName_ = value;
    +      bitField0_ |= 0x00000020;
           onChanged();
           return this;
         }
    @@ -1662,11 +1664,9 @@ public java.lang.String getPivotForBodyName() {
          */
         public Builder setPivotForBodyName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           pivotForBodyName_ = value;
    +      bitField0_ |= 0x00000040;
           onChanged();
           return this;
         }
    @@ -1679,8 +1679,8 @@ public Builder setPivotForBodyName(
          * @return This builder for chaining.
          */
         public Builder clearPivotForBodyName() {
    -      
           pivotForBodyName_ = getDefaultInstance().getPivotForBodyName();
    +      bitField0_ = (bitField0_ & ~0x00000040);
           onChanged();
           return this;
         }
    @@ -1695,22 +1695,21 @@ public Builder clearPivotForBodyName() {
          */
         public Builder setPivotForBodyNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           pivotForBodyName_ = value;
    +      bitField0_ |= 0x00000040;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.LazyStringList loopExitNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList loopExitNames_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureLoopExitNamesIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!loopExitNames_.isModifiable()) {
             loopExitNames_ = new com.google.protobuf.LazyStringArrayList(loopExitNames_);
    -        bitField0_ |= 0x00000001;
    -       }
    +      }
    +      bitField0_ |= 0x00000080;
         }
         /**
          * 
    @@ -1722,7 +1721,8 @@ private void ensureLoopExitNamesIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getLoopExitNamesList() {
    -      return loopExitNames_.getUnmodifiableView();
    +      loopExitNames_.makeImmutable();
    +      return loopExitNames_;
         }
         /**
          * 
    @@ -1772,11 +1772,10 @@ public java.lang.String getLoopExitNames(int index) {
          */
         public Builder setLoopExitNames(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureLoopExitNamesIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureLoopExitNamesIsMutable();
           loopExitNames_.set(index, value);
    +      bitField0_ |= 0x00000080;
           onChanged();
           return this;
         }
    @@ -1791,11 +1790,10 @@ public Builder setLoopExitNames(
          */
         public Builder addLoopExitNames(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureLoopExitNamesIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureLoopExitNamesIsMutable();
           loopExitNames_.add(value);
    +      bitField0_ |= 0x00000080;
           onChanged();
           return this;
         }
    @@ -1813,6 +1811,7 @@ public Builder addAllLoopExitNames(
           ensureLoopExitNamesIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, loopExitNames_);
    +      bitField0_ |= 0x00000080;
           onChanged();
           return this;
         }
    @@ -1825,8 +1824,9 @@ public Builder addAllLoopExitNames(
          * @return This builder for chaining.
          */
         public Builder clearLoopExitNames() {
    -      loopExitNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      loopExitNames_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000080);;
           onChanged();
           return this;
         }
    @@ -1841,22 +1841,22 @@ public Builder clearLoopExitNames() {
          */
         public Builder addLoopExitNamesBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureLoopExitNamesIsMutable();
           loopExitNames_.add(value);
    +      bitField0_ |= 0x00000080;
           onChanged();
           return this;
         }
     
    -    private com.google.protobuf.LazyStringList loopEnterNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +    private com.google.protobuf.LazyStringArrayList loopEnterNames_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         private void ensureLoopEnterNamesIsMutable() {
    -      if (!((bitField0_ & 0x00000002) != 0)) {
    +      if (!loopEnterNames_.isModifiable()) {
             loopEnterNames_ = new com.google.protobuf.LazyStringArrayList(loopEnterNames_);
    -        bitField0_ |= 0x00000002;
    -       }
    +      }
    +      bitField0_ |= 0x00000100;
         }
         /**
          * 
    @@ -1868,7 +1868,8 @@ private void ensureLoopEnterNamesIsMutable() {
          */
         public com.google.protobuf.ProtocolStringList
             getLoopEnterNamesList() {
    -      return loopEnterNames_.getUnmodifiableView();
    +      loopEnterNames_.makeImmutable();
    +      return loopEnterNames_;
         }
         /**
          * 
    @@ -1918,11 +1919,10 @@ public java.lang.String getLoopEnterNames(int index) {
          */
         public Builder setLoopEnterNames(
             int index, java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureLoopEnterNamesIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureLoopEnterNamesIsMutable();
           loopEnterNames_.set(index, value);
    +      bitField0_ |= 0x00000100;
           onChanged();
           return this;
         }
    @@ -1937,11 +1937,10 @@ public Builder setLoopEnterNames(
          */
         public Builder addLoopEnterNames(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureLoopEnterNamesIsMutable();
    +      if (value == null) { throw new NullPointerException(); }
    +      ensureLoopEnterNamesIsMutable();
           loopEnterNames_.add(value);
    +      bitField0_ |= 0x00000100;
           onChanged();
           return this;
         }
    @@ -1959,6 +1958,7 @@ public Builder addAllLoopEnterNames(
           ensureLoopEnterNamesIsMutable();
           com.google.protobuf.AbstractMessageLite.Builder.addAll(
               values, loopEnterNames_);
    +      bitField0_ |= 0x00000100;
           onChanged();
           return this;
         }
    @@ -1971,8 +1971,9 @@ public Builder addAllLoopEnterNames(
          * @return This builder for chaining.
          */
         public Builder clearLoopEnterNames() {
    -      loopEnterNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -      bitField0_ = (bitField0_ & ~0x00000002);
    +      loopEnterNames_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
    +      bitField0_ = (bitField0_ & ~0x00000100);;
           onChanged();
           return this;
         }
    @@ -1987,18 +1988,17 @@ public Builder clearLoopEnterNames() {
          */
         public Builder addLoopEnterNamesBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           ensureLoopEnterNamesIsMutable();
           loopEnterNames_.add(value);
    +      bitField0_ |= 0x00000100;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.ValuesDef valuesDef_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.ValuesDef, org.tensorflow.proto.ValuesDef.Builder, org.tensorflow.proto.ValuesDefOrBuilder> valuesDefBuilder_;
         /**
          * 
    @@ -2009,7 +2009,7 @@ public Builder addLoopEnterNamesBytes(
          * @return Whether the valuesDef field is set.
          */
         public boolean hasValuesDef() {
    -      return valuesDefBuilder_ != null || valuesDef_ != null;
    +      return ((bitField0_ & 0x00000200) != 0);
         }
         /**
          * 
    @@ -2039,11 +2039,11 @@ public Builder setValuesDef(org.tensorflow.proto.ValuesDef value) {
               throw new NullPointerException();
             }
             valuesDef_ = value;
    -        onChanged();
           } else {
             valuesDefBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000200;
    +      onChanged();
           return this;
         }
         /**
    @@ -2057,11 +2057,11 @@ public Builder setValuesDef(
             org.tensorflow.proto.ValuesDef.Builder builderForValue) {
           if (valuesDefBuilder_ == null) {
             valuesDef_ = builderForValue.build();
    -        onChanged();
           } else {
             valuesDefBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000200;
    +      onChanged();
           return this;
         }
         /**
    @@ -2073,17 +2073,20 @@ public Builder setValuesDef(
          */
         public Builder mergeValuesDef(org.tensorflow.proto.ValuesDef value) {
           if (valuesDefBuilder_ == null) {
    -        if (valuesDef_ != null) {
    -          valuesDef_ =
    -            org.tensorflow.proto.ValuesDef.newBuilder(valuesDef_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000200) != 0) &&
    +          valuesDef_ != null &&
    +          valuesDef_ != org.tensorflow.proto.ValuesDef.getDefaultInstance()) {
    +          getValuesDefBuilder().mergeFrom(value);
             } else {
               valuesDef_ = value;
             }
    -        onChanged();
           } else {
             valuesDefBuilder_.mergeFrom(value);
           }
    -
    +      if (valuesDef_ != null) {
    +        bitField0_ |= 0x00000200;
    +        onChanged();
    +      }
           return this;
         }
         /**
    @@ -2094,14 +2097,13 @@ public Builder mergeValuesDef(org.tensorflow.proto.ValuesDef value) {
          * .tensorflow.ValuesDef values_def = 9;
          */
         public Builder clearValuesDef() {
    -      if (valuesDefBuilder_ == null) {
    -        valuesDef_ = null;
    -        onChanged();
    -      } else {
    -        valuesDef_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000200);
    +      valuesDef_ = null;
    +      if (valuesDefBuilder_ != null) {
    +        valuesDefBuilder_.dispose();
             valuesDefBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
    @@ -2112,7 +2114,7 @@ public Builder clearValuesDef() {
          * .tensorflow.ValuesDef values_def = 9;
          */
         public org.tensorflow.proto.ValuesDef.Builder getValuesDefBuilder() {
    -      
    +      bitField0_ |= 0x00000200;
           onChanged();
           return getValuesDefFieldBuilder().getBuilder();
         }
    @@ -2138,11 +2140,11 @@ public org.tensorflow.proto.ValuesDefOrBuilder getValuesDefOrBuilder() {
          *
          * .tensorflow.ValuesDef values_def = 9;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.ValuesDef, org.tensorflow.proto.ValuesDef.Builder, org.tensorflow.proto.ValuesDefOrBuilder> 
             getValuesDefFieldBuilder() {
           if (valuesDefBuilder_ == null) {
    -        valuesDefBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        valuesDefBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.ValuesDef, org.tensorflow.proto.ValuesDef.Builder, org.tensorflow.proto.ValuesDefOrBuilder>(
                     getValuesDef(),
                     getParentForChildren(),
    @@ -2205,11 +2207,9 @@ public java.lang.String getMaximumIterationsName() {
          */
         public Builder setMaximumIterationsName(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           maximumIterationsName_ = value;
    +      bitField0_ |= 0x00000400;
           onChanged();
           return this;
         }
    @@ -2222,8 +2222,8 @@ public Builder setMaximumIterationsName(
          * @return This builder for chaining.
          */
         public Builder clearMaximumIterationsName() {
    -      
           maximumIterationsName_ = getDefaultInstance().getMaximumIterationsName();
    +      bitField0_ = (bitField0_ & ~0x00000400);
           onChanged();
           return this;
         }
    @@ -2238,12 +2238,10 @@ public Builder clearMaximumIterationsName() {
          */
         public Builder setMaximumIterationsNameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           maximumIterationsName_ = value;
    +      bitField0_ |= 0x00000400;
           onChanged();
           return this;
         }
    @@ -2251,13 +2249,13 @@ public Builder setMaximumIterationsNameBytes(
         private java.util.List nestedContexts_ =
           java.util.Collections.emptyList();
         private void ensureNestedContextsIsMutable() {
    -      if (!((bitField0_ & 0x00000004) != 0)) {
    +      if (!((bitField0_ & 0x00000800) != 0)) {
             nestedContexts_ = new java.util.ArrayList(nestedContexts_);
    -        bitField0_ |= 0x00000004;
    +        bitField0_ |= 0x00000800;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ControlFlowContextDef, org.tensorflow.proto.ControlFlowContextDef.Builder, org.tensorflow.proto.ControlFlowContextDefOrBuilder> nestedContextsBuilder_;
     
         /**
    @@ -2447,7 +2445,7 @@ public Builder addAllNestedContexts(
         public Builder clearNestedContexts() {
           if (nestedContextsBuilder_ == null) {
             nestedContexts_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000004);
    +        bitField0_ = (bitField0_ & ~0x00000800);
             onChanged();
           } else {
             nestedContextsBuilder_.clear();
    @@ -2545,32 +2543,20 @@ public org.tensorflow.proto.ControlFlowContextDef.Builder addNestedContextsBuild
              getNestedContextsBuilderList() {
           return getNestedContextsFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.ControlFlowContextDef, org.tensorflow.proto.ControlFlowContextDef.Builder, org.tensorflow.proto.ControlFlowContextDefOrBuilder> 
             getNestedContextsFieldBuilder() {
           if (nestedContextsBuilder_ == null) {
    -        nestedContextsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        nestedContextsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.ControlFlowContextDef, org.tensorflow.proto.ControlFlowContextDef.Builder, org.tensorflow.proto.ControlFlowContextDefOrBuilder>(
                     nestedContexts_,
    -                ((bitField0_ & 0x00000004) != 0),
    +                ((bitField0_ & 0x00000800) != 0),
                     getParentForChildren(),
                     isClean());
             nestedContexts_ = null;
           }
           return nestedContextsBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.WhileContextDef)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WhileContextDefOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WhileContextDefOrBuilder.java
    index ce17e49a335..1a2e27ced0e 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WhileContextDefOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WhileContextDefOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/control_flow.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHealth.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHealth.java
    index a432eaae62c..842c0e8ac3a 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHealth.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHealth.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -39,6 +41,15 @@ public enum WorkerHealth
       UNRECOGNIZED(-1),
       ;
     
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      WorkerHealth.class.getName());
    +  }
       /**
        * 
        * By default a worker is healthy.
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHeartbeatRequest.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHeartbeatRequest.java
    index da0da533f3e..6459105c36b 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHeartbeatRequest.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHeartbeatRequest.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,45 +9,43 @@
      * Protobuf type {@code tensorflow.WorkerHeartbeatRequest}
      */
     public final class WorkerHeartbeatRequest extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.WorkerHeartbeatRequest)
         WorkerHeartbeatRequestOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      WorkerHeartbeatRequest.class.getName());
    +  }
       // Use WorkerHeartbeatRequest.newBuilder() to construct.
    -  private WorkerHeartbeatRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private WorkerHeartbeatRequest(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private WorkerHeartbeatRequest() {
         shutdownMode_ = 0;
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new WorkerHeartbeatRequest();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.EventProtos.internal_static_tensorflow_WorkerHeartbeatRequest_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.EventProtos.internal_static_tensorflow_WorkerHeartbeatRequest_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.WorkerHeartbeatRequest.class, org.tensorflow.proto.WorkerHeartbeatRequest.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int SHUTDOWN_MODE_FIELD_NUMBER = 1;
    -  private int shutdownMode_;
    +  private int shutdownMode_ = 0;
       /**
        * .tensorflow.WorkerShutdownMode shutdown_mode = 1;
        * @return The enum numeric value on the wire for shutdownMode.
    @@ -58,8 +58,7 @@ protected java.lang.Object newInstance(
        * @return The shutdownMode.
        */
       @java.lang.Override public org.tensorflow.proto.WorkerShutdownMode getShutdownMode() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.WorkerShutdownMode result = org.tensorflow.proto.WorkerShutdownMode.valueOf(shutdownMode_);
    +    org.tensorflow.proto.WorkerShutdownMode result = org.tensorflow.proto.WorkerShutdownMode.forNumber(shutdownMode_);
         return result == null ? org.tensorflow.proto.WorkerShutdownMode.UNRECOGNIZED : result;
       }
     
    @@ -71,7 +70,7 @@ protected java.lang.Object newInstance(
        */
       @java.lang.Override
       public boolean hasWatchdogConfig() {
    -    return watchdogConfig_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * .tensorflow.WatchdogConfig watchdog_config = 2;
    @@ -86,7 +85,7 @@ public org.tensorflow.proto.WatchdogConfig getWatchdogConfig() {
        */
       @java.lang.Override
       public org.tensorflow.proto.WatchdogConfigOrBuilder getWatchdogConfigOrBuilder() {
    -    return getWatchdogConfig();
    +    return watchdogConfig_ == null ? org.tensorflow.proto.WatchdogConfig.getDefaultInstance() : watchdogConfig_;
       }
     
       public static final int EXIT_CODE_FIELD_NUMBER = 3;
    @@ -97,7 +96,7 @@ public org.tensorflow.proto.WatchdogConfigOrBuilder getWatchdogConfigOrBuilder()
        */
       @java.lang.Override
       public boolean hasExitCode() {
    -    return exitCode_ != null;
    +    return ((bitField0_ & 0x00000002) != 0);
       }
       /**
        * .tensorflow.RequestedExitCode exit_code = 3;
    @@ -112,7 +111,7 @@ public org.tensorflow.proto.RequestedExitCode getExitCode() {
        */
       @java.lang.Override
       public org.tensorflow.proto.RequestedExitCodeOrBuilder getExitCodeOrBuilder() {
    -    return getExitCode();
    +    return exitCode_ == null ? org.tensorflow.proto.RequestedExitCode.getDefaultInstance() : exitCode_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -132,10 +131,10 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (shutdownMode_ != org.tensorflow.proto.WorkerShutdownMode.DEFAULT.getNumber()) {
           output.writeEnum(1, shutdownMode_);
         }
    -    if (watchdogConfig_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(2, getWatchdogConfig());
         }
    -    if (exitCode_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           output.writeMessage(3, getExitCode());
         }
         getUnknownFields().writeTo(output);
    @@ -151,11 +150,11 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeEnumSize(1, shutdownMode_);
         }
    -    if (watchdogConfig_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(2, getWatchdogConfig());
         }
    -    if (exitCode_ != null) {
    +    if (((bitField0_ & 0x00000002) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(3, getExitCode());
         }
    @@ -245,39 +244,41 @@ public static org.tensorflow.proto.WorkerHeartbeatRequest parseFrom(
       }
       public static org.tensorflow.proto.WorkerHeartbeatRequest parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.WorkerHeartbeatRequest parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.WorkerHeartbeatRequest parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.WorkerHeartbeatRequest parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.WorkerHeartbeatRequest parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.WorkerHeartbeatRequest parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -297,7 +298,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -305,7 +306,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.WorkerHeartbeatRequest}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.WorkerHeartbeatRequest)
           org.tensorflow.proto.WorkerHeartbeatRequestOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -314,7 +315,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.EventProtos.internal_static_tensorflow_WorkerHeartbeatRequest_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -323,29 +324,34 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.WorkerHeartbeatRequest.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getWatchdogConfigFieldBuilder();
    +        getExitCodeFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           shutdownMode_ = 0;
    -
    -      if (watchdogConfigBuilder_ == null) {
    -        watchdogConfig_ = null;
    -      } else {
    -        watchdogConfig_ = null;
    +      watchdogConfig_ = null;
    +      if (watchdogConfigBuilder_ != null) {
    +        watchdogConfigBuilder_.dispose();
             watchdogConfigBuilder_ = null;
           }
    -      if (exitCodeBuilder_ == null) {
    -        exitCode_ = null;
    -      } else {
    -        exitCode_ = null;
    +      exitCode_ = null;
    +      if (exitCodeBuilder_ != null) {
    +        exitCodeBuilder_.dispose();
             exitCodeBuilder_ = null;
           }
           return this;
    @@ -374,53 +380,32 @@ public org.tensorflow.proto.WorkerHeartbeatRequest build() {
         @java.lang.Override
         public org.tensorflow.proto.WorkerHeartbeatRequest buildPartial() {
           org.tensorflow.proto.WorkerHeartbeatRequest result = new org.tensorflow.proto.WorkerHeartbeatRequest(this);
    -      result.shutdownMode_ = shutdownMode_;
    -      if (watchdogConfigBuilder_ == null) {
    -        result.watchdogConfig_ = watchdogConfig_;
    -      } else {
    -        result.watchdogConfig_ = watchdogConfigBuilder_.build();
    -      }
    -      if (exitCodeBuilder_ == null) {
    -        result.exitCode_ = exitCode_;
    -      } else {
    -        result.exitCode_ = exitCodeBuilder_.build();
    -      }
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.WorkerHeartbeatRequest result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.shutdownMode_ = shutdownMode_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.watchdogConfig_ = watchdogConfigBuilder_ == null
    +            ? watchdogConfig_
    +            : watchdogConfigBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.exitCode_ = exitCodeBuilder_ == null
    +            ? exitCode_
    +            : exitCodeBuilder_.build();
    +        to_bitField0_ |= 0x00000002;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.WorkerHeartbeatRequest) {
    @@ -470,21 +455,21 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   shutdownMode_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 18: {
                   input.readMessage(
                       getWatchdogConfigFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 case 26: {
                   input.readMessage(
                       getExitCodeFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 default: {
    @@ -502,6 +487,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private int shutdownMode_ = 0;
         /**
    @@ -517,8 +503,8 @@ public Builder mergeFrom(
          * @return This builder for chaining.
          */
         public Builder setShutdownModeValue(int value) {
    -      
           shutdownMode_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -528,8 +514,7 @@ public Builder setShutdownModeValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.WorkerShutdownMode getShutdownMode() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.WorkerShutdownMode result = org.tensorflow.proto.WorkerShutdownMode.valueOf(shutdownMode_);
    +      org.tensorflow.proto.WorkerShutdownMode result = org.tensorflow.proto.WorkerShutdownMode.forNumber(shutdownMode_);
           return result == null ? org.tensorflow.proto.WorkerShutdownMode.UNRECOGNIZED : result;
         }
         /**
    @@ -541,7 +526,7 @@ public Builder setShutdownMode(org.tensorflow.proto.WorkerShutdownMode value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000001;
           shutdownMode_ = value.getNumber();
           onChanged();
           return this;
    @@ -551,21 +536,21 @@ public Builder setShutdownMode(org.tensorflow.proto.WorkerShutdownMode value) {
          * @return This builder for chaining.
          */
         public Builder clearShutdownMode() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           shutdownMode_ = 0;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.WatchdogConfig watchdogConfig_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.WatchdogConfig, org.tensorflow.proto.WatchdogConfig.Builder, org.tensorflow.proto.WatchdogConfigOrBuilder> watchdogConfigBuilder_;
         /**
          * .tensorflow.WatchdogConfig watchdog_config = 2;
          * @return Whether the watchdogConfig field is set.
          */
         public boolean hasWatchdogConfig() {
    -      return watchdogConfigBuilder_ != null || watchdogConfig_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * .tensorflow.WatchdogConfig watchdog_config = 2;
    @@ -587,11 +572,11 @@ public Builder setWatchdogConfig(org.tensorflow.proto.WatchdogConfig value) {
               throw new NullPointerException();
             }
             watchdogConfig_ = value;
    -        onChanged();
           } else {
             watchdogConfigBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -601,11 +586,11 @@ public Builder setWatchdogConfig(
             org.tensorflow.proto.WatchdogConfig.Builder builderForValue) {
           if (watchdogConfigBuilder_ == null) {
             watchdogConfig_ = builderForValue.build();
    -        onChanged();
           } else {
             watchdogConfigBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -613,38 +598,40 @@ public Builder setWatchdogConfig(
          */
         public Builder mergeWatchdogConfig(org.tensorflow.proto.WatchdogConfig value) {
           if (watchdogConfigBuilder_ == null) {
    -        if (watchdogConfig_ != null) {
    -          watchdogConfig_ =
    -            org.tensorflow.proto.WatchdogConfig.newBuilder(watchdogConfig_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000002) != 0) &&
    +          watchdogConfig_ != null &&
    +          watchdogConfig_ != org.tensorflow.proto.WatchdogConfig.getDefaultInstance()) {
    +          getWatchdogConfigBuilder().mergeFrom(value);
             } else {
               watchdogConfig_ = value;
             }
    -        onChanged();
           } else {
             watchdogConfigBuilder_.mergeFrom(value);
           }
    -
    +      if (watchdogConfig_ != null) {
    +        bitField0_ |= 0x00000002;
    +        onChanged();
    +      }
           return this;
         }
         /**
          * .tensorflow.WatchdogConfig watchdog_config = 2;
          */
         public Builder clearWatchdogConfig() {
    -      if (watchdogConfigBuilder_ == null) {
    -        watchdogConfig_ = null;
    -        onChanged();
    -      } else {
    -        watchdogConfig_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      watchdogConfig_ = null;
    +      if (watchdogConfigBuilder_ != null) {
    +        watchdogConfigBuilder_.dispose();
             watchdogConfigBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
          * .tensorflow.WatchdogConfig watchdog_config = 2;
          */
         public org.tensorflow.proto.WatchdogConfig.Builder getWatchdogConfigBuilder() {
    -      
    +      bitField0_ |= 0x00000002;
           onChanged();
           return getWatchdogConfigFieldBuilder().getBuilder();
         }
    @@ -662,11 +649,11 @@ public org.tensorflow.proto.WatchdogConfigOrBuilder getWatchdogConfigOrBuilder()
         /**
          * .tensorflow.WatchdogConfig watchdog_config = 2;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.WatchdogConfig, org.tensorflow.proto.WatchdogConfig.Builder, org.tensorflow.proto.WatchdogConfigOrBuilder> 
             getWatchdogConfigFieldBuilder() {
           if (watchdogConfigBuilder_ == null) {
    -        watchdogConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        watchdogConfigBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.WatchdogConfig, org.tensorflow.proto.WatchdogConfig.Builder, org.tensorflow.proto.WatchdogConfigOrBuilder>(
                     getWatchdogConfig(),
                     getParentForChildren(),
    @@ -677,14 +664,14 @@ public org.tensorflow.proto.WatchdogConfigOrBuilder getWatchdogConfigOrBuilder()
         }
     
         private org.tensorflow.proto.RequestedExitCode exitCode_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.RequestedExitCode, org.tensorflow.proto.RequestedExitCode.Builder, org.tensorflow.proto.RequestedExitCodeOrBuilder> exitCodeBuilder_;
         /**
          * .tensorflow.RequestedExitCode exit_code = 3;
          * @return Whether the exitCode field is set.
          */
         public boolean hasExitCode() {
    -      return exitCodeBuilder_ != null || exitCode_ != null;
    +      return ((bitField0_ & 0x00000004) != 0);
         }
         /**
          * .tensorflow.RequestedExitCode exit_code = 3;
    @@ -706,11 +693,11 @@ public Builder setExitCode(org.tensorflow.proto.RequestedExitCode value) {
               throw new NullPointerException();
             }
             exitCode_ = value;
    -        onChanged();
           } else {
             exitCodeBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -720,11 +707,11 @@ public Builder setExitCode(
             org.tensorflow.proto.RequestedExitCode.Builder builderForValue) {
           if (exitCodeBuilder_ == null) {
             exitCode_ = builderForValue.build();
    -        onChanged();
           } else {
             exitCodeBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000004;
    +      onChanged();
           return this;
         }
         /**
    @@ -732,38 +719,40 @@ public Builder setExitCode(
          */
         public Builder mergeExitCode(org.tensorflow.proto.RequestedExitCode value) {
           if (exitCodeBuilder_ == null) {
    -        if (exitCode_ != null) {
    -          exitCode_ =
    -            org.tensorflow.proto.RequestedExitCode.newBuilder(exitCode_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000004) != 0) &&
    +          exitCode_ != null &&
    +          exitCode_ != org.tensorflow.proto.RequestedExitCode.getDefaultInstance()) {
    +          getExitCodeBuilder().mergeFrom(value);
             } else {
               exitCode_ = value;
             }
    -        onChanged();
           } else {
             exitCodeBuilder_.mergeFrom(value);
           }
    -
    +      if (exitCode_ != null) {
    +        bitField0_ |= 0x00000004;
    +        onChanged();
    +      }
           return this;
         }
         /**
          * .tensorflow.RequestedExitCode exit_code = 3;
          */
         public Builder clearExitCode() {
    -      if (exitCodeBuilder_ == null) {
    -        exitCode_ = null;
    -        onChanged();
    -      } else {
    -        exitCode_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000004);
    +      exitCode_ = null;
    +      if (exitCodeBuilder_ != null) {
    +        exitCodeBuilder_.dispose();
             exitCodeBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
          * .tensorflow.RequestedExitCode exit_code = 3;
          */
         public org.tensorflow.proto.RequestedExitCode.Builder getExitCodeBuilder() {
    -      
    +      bitField0_ |= 0x00000004;
           onChanged();
           return getExitCodeFieldBuilder().getBuilder();
         }
    @@ -781,11 +770,11 @@ public org.tensorflow.proto.RequestedExitCodeOrBuilder getExitCodeOrBuilder() {
         /**
          * .tensorflow.RequestedExitCode exit_code = 3;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.RequestedExitCode, org.tensorflow.proto.RequestedExitCode.Builder, org.tensorflow.proto.RequestedExitCodeOrBuilder> 
             getExitCodeFieldBuilder() {
           if (exitCodeBuilder_ == null) {
    -        exitCodeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        exitCodeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.RequestedExitCode, org.tensorflow.proto.RequestedExitCode.Builder, org.tensorflow.proto.RequestedExitCodeOrBuilder>(
                     getExitCode(),
                     getParentForChildren(),
    @@ -794,18 +783,6 @@ public org.tensorflow.proto.RequestedExitCodeOrBuilder getExitCodeOrBuilder() {
           }
           return exitCodeBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.WorkerHeartbeatRequest)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHeartbeatRequestOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHeartbeatRequestOrBuilder.java
    index 56cf3961a16..c6acadaba4d 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHeartbeatRequestOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHeartbeatRequestOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHeartbeatResponse.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHeartbeatResponse.java
    index 092c38b05ec..fcaeeb0419c 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHeartbeatResponse.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHeartbeatResponse.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -7,12 +9,21 @@
      * Protobuf type {@code tensorflow.WorkerHeartbeatResponse}
      */
     public final class WorkerHeartbeatResponse extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.WorkerHeartbeatResponse)
         WorkerHeartbeatResponseOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      WorkerHeartbeatResponse.class.getName());
    +  }
       // Use WorkerHeartbeatResponse.newBuilder() to construct.
    -  private WorkerHeartbeatResponse(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private WorkerHeartbeatResponse(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private WorkerHeartbeatResponse() {
    @@ -21,25 +32,13 @@ private WorkerHeartbeatResponse() {
         hostname_ = "";
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new WorkerHeartbeatResponse();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.EventProtos.internal_static_tensorflow_WorkerHeartbeatResponse_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.EventProtos.internal_static_tensorflow_WorkerHeartbeatResponse_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
    @@ -47,7 +46,7 @@ protected java.lang.Object newInstance(
       }
     
       public static final int HEALTH_STATUS_FIELD_NUMBER = 1;
    -  private int healthStatus_;
    +  private int healthStatus_ = 0;
       /**
        * .tensorflow.WorkerHealth health_status = 1;
        * @return The enum numeric value on the wire for healthStatus.
    @@ -60,12 +59,12 @@ protected java.lang.Object newInstance(
        * @return The healthStatus.
        */
       @java.lang.Override public org.tensorflow.proto.WorkerHealth getHealthStatus() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.WorkerHealth result = org.tensorflow.proto.WorkerHealth.valueOf(healthStatus_);
    +    org.tensorflow.proto.WorkerHealth result = org.tensorflow.proto.WorkerHealth.forNumber(healthStatus_);
         return result == null ? org.tensorflow.proto.WorkerHealth.UNRECOGNIZED : result;
       }
     
       public static final int WORKER_LOG_FIELD_NUMBER = 2;
    +  @SuppressWarnings("serial")
       private java.util.List workerLog_;
       /**
        * repeated .tensorflow.Event worker_log = 2;
    @@ -106,7 +105,8 @@ public org.tensorflow.proto.EventOrBuilder getWorkerLogOrBuilder(
       }
     
       public static final int HOSTNAME_FIELD_NUMBER = 3;
    -  private volatile java.lang.Object hostname_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object hostname_ = "";
       /**
        * string hostname = 3;
        * @return The hostname.
    @@ -163,8 +163,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         for (int i = 0; i < workerLog_.size(); i++) {
           output.writeMessage(2, workerLog_.get(i));
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hostname_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, hostname_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(hostname_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, hostname_);
         }
         getUnknownFields().writeTo(output);
       }
    @@ -183,8 +183,8 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(2, workerLog_.get(i));
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(hostname_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, hostname_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(hostname_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, hostname_);
         }
         size += getUnknownFields().getSerializedSize();
         memoizedSize = size;
    @@ -264,39 +264,41 @@ public static org.tensorflow.proto.WorkerHeartbeatResponse parseFrom(
       }
       public static org.tensorflow.proto.WorkerHeartbeatResponse parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.WorkerHeartbeatResponse parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.WorkerHeartbeatResponse parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.WorkerHeartbeatResponse parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.WorkerHeartbeatResponse parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.WorkerHeartbeatResponse parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -316,7 +318,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -324,7 +326,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.WorkerHeartbeatResponse}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.WorkerHeartbeatResponse)
           org.tensorflow.proto.WorkerHeartbeatResponseOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -333,7 +335,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.EventProtos.internal_static_tensorflow_WorkerHeartbeatResponse_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -346,24 +348,23 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           healthStatus_ = 0;
    -
           if (workerLogBuilder_ == null) {
             workerLog_ = java.util.Collections.emptyList();
           } else {
             workerLog_ = null;
             workerLogBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000002);
           hostname_ = "";
    -
           return this;
         }
     
    @@ -390,54 +391,34 @@ public org.tensorflow.proto.WorkerHeartbeatResponse build() {
         @java.lang.Override
         public org.tensorflow.proto.WorkerHeartbeatResponse buildPartial() {
           org.tensorflow.proto.WorkerHeartbeatResponse result = new org.tensorflow.proto.WorkerHeartbeatResponse(this);
    -      int from_bitField0_ = bitField0_;
    -      result.healthStatus_ = healthStatus_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.WorkerHeartbeatResponse result) {
           if (workerLogBuilder_ == null) {
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((bitField0_ & 0x00000002) != 0)) {
               workerLog_ = java.util.Collections.unmodifiableList(workerLog_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000002);
             }
             result.workerLog_ = workerLog_;
           } else {
             result.workerLog_ = workerLogBuilder_.build();
           }
    -      result.hostname_ = hostname_;
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.WorkerHeartbeatResponse result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.healthStatus_ = healthStatus_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.hostname_ = hostname_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.WorkerHeartbeatResponse) {
    @@ -457,7 +438,7 @@ public Builder mergeFrom(org.tensorflow.proto.WorkerHeartbeatResponse other) {
             if (!other.workerLog_.isEmpty()) {
               if (workerLog_.isEmpty()) {
                 workerLog_ = other.workerLog_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000002);
               } else {
                 ensureWorkerLogIsMutable();
                 workerLog_.addAll(other.workerLog_);
    @@ -470,9 +451,9 @@ public Builder mergeFrom(org.tensorflow.proto.WorkerHeartbeatResponse other) {
                 workerLogBuilder_.dispose();
                 workerLogBuilder_ = null;
                 workerLog_ = other.workerLog_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000002);
                 workerLogBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getWorkerLogFieldBuilder() : null;
               } else {
                 workerLogBuilder_.addAllMessages(other.workerLog_);
    @@ -481,6 +462,7 @@ public Builder mergeFrom(org.tensorflow.proto.WorkerHeartbeatResponse other) {
           }
           if (!other.getHostname().isEmpty()) {
             hostname_ = other.hostname_;
    +        bitField0_ |= 0x00000004;
             onChanged();
           }
           this.mergeUnknownFields(other.getUnknownFields());
    @@ -511,7 +493,7 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   healthStatus_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 18: {
    @@ -529,7 +511,7 @@ public Builder mergeFrom(
                 } // case 18
                 case 26: {
                   hostname_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 default: {
    @@ -563,8 +545,8 @@ public Builder mergeFrom(
          * @return This builder for chaining.
          */
         public Builder setHealthStatusValue(int value) {
    -      
           healthStatus_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -574,8 +556,7 @@ public Builder setHealthStatusValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.WorkerHealth getHealthStatus() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.WorkerHealth result = org.tensorflow.proto.WorkerHealth.valueOf(healthStatus_);
    +      org.tensorflow.proto.WorkerHealth result = org.tensorflow.proto.WorkerHealth.forNumber(healthStatus_);
           return result == null ? org.tensorflow.proto.WorkerHealth.UNRECOGNIZED : result;
         }
         /**
    @@ -587,7 +568,7 @@ public Builder setHealthStatus(org.tensorflow.proto.WorkerHealth value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000001;
           healthStatus_ = value.getNumber();
           onChanged();
           return this;
    @@ -597,7 +578,7 @@ public Builder setHealthStatus(org.tensorflow.proto.WorkerHealth value) {
          * @return This builder for chaining.
          */
         public Builder clearHealthStatus() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           healthStatus_ = 0;
           onChanged();
           return this;
    @@ -606,13 +587,13 @@ public Builder clearHealthStatus() {
         private java.util.List workerLog_ =
           java.util.Collections.emptyList();
         private void ensureWorkerLogIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!((bitField0_ & 0x00000002) != 0)) {
             workerLog_ = new java.util.ArrayList(workerLog_);
    -        bitField0_ |= 0x00000001;
    +        bitField0_ |= 0x00000002;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.Event, org.tensorflow.proto.Event.Builder, org.tensorflow.proto.EventOrBuilder> workerLogBuilder_;
     
         /**
    @@ -758,7 +739,7 @@ public Builder addAllWorkerLog(
         public Builder clearWorkerLog() {
           if (workerLogBuilder_ == null) {
             workerLog_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
           } else {
             workerLogBuilder_.clear();
    @@ -828,14 +809,14 @@ public org.tensorflow.proto.Event.Builder addWorkerLogBuilder(
              getWorkerLogBuilderList() {
           return getWorkerLogFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.Event, org.tensorflow.proto.Event.Builder, org.tensorflow.proto.EventOrBuilder> 
             getWorkerLogFieldBuilder() {
           if (workerLogBuilder_ == null) {
    -        workerLogBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        workerLogBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.Event, org.tensorflow.proto.Event.Builder, org.tensorflow.proto.EventOrBuilder>(
                     workerLog_,
    -                ((bitField0_ & 0x00000001) != 0),
    +                ((bitField0_ & 0x00000002) != 0),
                     getParentForChildren(),
                     isClean());
             workerLog_ = null;
    @@ -884,11 +865,9 @@ public java.lang.String getHostname() {
          */
         public Builder setHostname(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           hostname_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -897,8 +876,8 @@ public Builder setHostname(
          * @return This builder for chaining.
          */
         public Builder clearHostname() {
    -      
           hostname_ = getDefaultInstance().getHostname();
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -909,27 +888,13 @@ public Builder clearHostname() {
          */
         public Builder setHostnameBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           hostname_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.WorkerHeartbeatResponse)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHeartbeatResponseOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHeartbeatResponseOrBuilder.java
    index ad150376fbb..e3265649d84 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHeartbeatResponseOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerHeartbeatResponseOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerShutdownMode.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerShutdownMode.java
    index c8400689a33..13ac914fc60 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerShutdownMode.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/WorkerShutdownMode.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/util/event.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto;
     
    @@ -32,6 +34,15 @@ public enum WorkerShutdownMode
       UNRECOGNIZED(-1),
       ;
     
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      WorkerShutdownMode.class.getName());
    +  }
       /**
        * DEFAULT = 0;
        */
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/core/CppShapeInference.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/core/CppShapeInference.java
    index 0deb67ebf1e..4e2e3d02615 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/core/CppShapeInference.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/core/CppShapeInference.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/cpp_shape_inference.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto.core;
     
     public final class CppShapeInference {
       private CppShapeInference() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      CppShapeInference.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -52,36 +63,33 @@ public interface CppShapeInferenceResultOrBuilder extends
        * Protobuf type {@code tensorflow.core.CppShapeInferenceResult}
        */
       public static final class CppShapeInferenceResult extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.core.CppShapeInferenceResult)
           CppShapeInferenceResultOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        CppShapeInferenceResult.class.getName());
    +    }
         // Use CppShapeInferenceResult.newBuilder() to construct.
    -    private CppShapeInferenceResult(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private CppShapeInferenceResult(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private CppShapeInferenceResult() {
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new CppShapeInferenceResult();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.core.CppShapeInference.internal_static_tensorflow_core_CppShapeInferenceResult_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.core.CppShapeInference.internal_static_tensorflow_core_CppShapeInferenceResult_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -137,43 +145,41 @@ public interface HandleShapeAndTypeOrBuilder extends
          * Protobuf type {@code tensorflow.core.CppShapeInferenceResult.HandleShapeAndType}
          */
         public static final class HandleShapeAndType extends
    -        com.google.protobuf.GeneratedMessageV3 implements
    +        com.google.protobuf.GeneratedMessage implements
             // @@protoc_insertion_point(message_implements:tensorflow.core.CppShapeInferenceResult.HandleShapeAndType)
             HandleShapeAndTypeOrBuilder {
         private static final long serialVersionUID = 0L;
    +      static {
    +        com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +          com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +          /* major= */ 4,
    +          /* minor= */ 28,
    +          /* patch= */ 3,
    +          /* suffix= */ "",
    +          HandleShapeAndType.class.getName());
    +      }
           // Use HandleShapeAndType.newBuilder() to construct.
    -      private HandleShapeAndType(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +      private HandleShapeAndType(com.google.protobuf.GeneratedMessage.Builder builder) {
             super(builder);
           }
           private HandleShapeAndType() {
             dtype_ = 0;
           }
     
    -      @java.lang.Override
    -      @SuppressWarnings({"unused"})
    -      protected java.lang.Object newInstance(
    -          UnusedPrivateParameter unused) {
    -        return new HandleShapeAndType();
    -      }
    -
    -      @java.lang.Override
    -      public final com.google.protobuf.UnknownFieldSet
    -      getUnknownFields() {
    -        return this.unknownFields;
    -      }
           public static final com.google.protobuf.Descriptors.Descriptor
               getDescriptor() {
             return org.tensorflow.proto.core.CppShapeInference.internal_static_tensorflow_core_CppShapeInferenceResult_HandleShapeAndType_descriptor;
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.core.CppShapeInference.internal_static_tensorflow_core_CppShapeInferenceResult_HandleShapeAndType_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
                     org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType.class, org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType.Builder.class);
           }
     
    +      private int bitField0_;
           public static final int SHAPE_FIELD_NUMBER = 1;
           private org.tensorflow.proto.TensorShapeProto shape_;
           /**
    @@ -182,7 +188,7 @@ protected java.lang.Object newInstance(
            */
           @java.lang.Override
           public boolean hasShape() {
    -        return shape_ != null;
    +        return ((bitField0_ & 0x00000001) != 0);
           }
           /**
            * .tensorflow.TensorShapeProto shape = 1;
    @@ -197,11 +203,11 @@ public org.tensorflow.proto.TensorShapeProto getShape() {
            */
           @java.lang.Override
           public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
    -        return getShape();
    +        return shape_ == null ? org.tensorflow.proto.TensorShapeProto.getDefaultInstance() : shape_;
           }
     
           public static final int DTYPE_FIELD_NUMBER = 2;
    -      private int dtype_;
    +      private int dtype_ = 0;
           /**
            * .tensorflow.DataType dtype = 2;
            * @return The enum numeric value on the wire for dtype.
    @@ -214,8 +220,7 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
            * @return The dtype.
            */
           @java.lang.Override public org.tensorflow.proto.DataType getDtype() {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +        org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
             return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
           }
     
    @@ -227,7 +232,7 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
            */
           @java.lang.Override
           public boolean hasType() {
    -        return type_ != null;
    +        return ((bitField0_ & 0x00000002) != 0);
           }
           /**
            * .tensorflow.FullTypeDef type = 4;
    @@ -242,7 +247,7 @@ public org.tensorflow.proto.FullTypeDef getType() {
            */
           @java.lang.Override
           public org.tensorflow.proto.FullTypeDefOrBuilder getTypeOrBuilder() {
    -        return getType();
    +        return type_ == null ? org.tensorflow.proto.FullTypeDef.getDefaultInstance() : type_;
           }
     
           private byte memoizedIsInitialized = -1;
    @@ -259,13 +264,13 @@ public final boolean isInitialized() {
           @java.lang.Override
           public void writeTo(com.google.protobuf.CodedOutputStream output)
                               throws java.io.IOException {
    -        if (shape_ != null) {
    +        if (((bitField0_ & 0x00000001) != 0)) {
               output.writeMessage(1, getShape());
             }
             if (dtype_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) {
               output.writeEnum(2, dtype_);
             }
    -        if (type_ != null) {
    +        if (((bitField0_ & 0x00000002) != 0)) {
               output.writeMessage(4, getType());
             }
             getUnknownFields().writeTo(output);
    @@ -277,7 +282,7 @@ public int getSerializedSize() {
             if (size != -1) return size;
     
             size = 0;
    -        if (shape_ != null) {
    +        if (((bitField0_ & 0x00000001) != 0)) {
               size += com.google.protobuf.CodedOutputStream
                 .computeMessageSize(1, getShape());
             }
    @@ -285,7 +290,7 @@ public int getSerializedSize() {
               size += com.google.protobuf.CodedOutputStream
                 .computeEnumSize(2, dtype_);
             }
    -        if (type_ != null) {
    +        if (((bitField0_ & 0x00000002) != 0)) {
               size += com.google.protobuf.CodedOutputStream
                 .computeMessageSize(4, getType());
             }
    @@ -375,39 +380,41 @@ public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResul
           }
           public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType parseFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType parseFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
    +
           public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType parseDelimitedFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input);
           }
    +
           public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType parseDelimitedFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
           }
           public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType parseFrom(
               com.google.protobuf.CodedInputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType parseFrom(
               com.google.protobuf.CodedInputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
     
    @@ -427,7 +434,7 @@ public Builder toBuilder() {
     
           @java.lang.Override
           protected Builder newBuilderForType(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             Builder builder = new Builder(parent);
             return builder;
           }
    @@ -435,7 +442,7 @@ protected Builder newBuilderForType(
            * Protobuf type {@code tensorflow.core.CppShapeInferenceResult.HandleShapeAndType}
            */
           public static final class Builder extends
    -          com.google.protobuf.GeneratedMessageV3.Builder implements
    +          com.google.protobuf.GeneratedMessage.Builder implements
               // @@protoc_insertion_point(builder_implements:tensorflow.core.CppShapeInferenceResult.HandleShapeAndType)
               org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndTypeOrBuilder {
             public static final com.google.protobuf.Descriptors.Descriptor
    @@ -444,7 +451,7 @@ public static final class Builder extends
             }
     
             @java.lang.Override
    -        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
                 internalGetFieldAccessorTable() {
               return org.tensorflow.proto.core.CppShapeInference.internal_static_tensorflow_core_CppShapeInferenceResult_HandleShapeAndType_fieldAccessorTable
                   .ensureFieldAccessorsInitialized(
    @@ -453,29 +460,34 @@ public static final class Builder extends
     
             // Construct using org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType.newBuilder()
             private Builder() {
    -
    +          maybeForceBuilderInitialization();
             }
     
             private Builder(
    -            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
               super(parent);
    -
    +          maybeForceBuilderInitialization();
    +        }
    +        private void maybeForceBuilderInitialization() {
    +          if (com.google.protobuf.GeneratedMessage
    +                  .alwaysUseFieldBuilders) {
    +            getShapeFieldBuilder();
    +            getTypeFieldBuilder();
    +          }
             }
             @java.lang.Override
             public Builder clear() {
               super.clear();
    -          if (shapeBuilder_ == null) {
    -            shape_ = null;
    -          } else {
    -            shape_ = null;
    +          bitField0_ = 0;
    +          shape_ = null;
    +          if (shapeBuilder_ != null) {
    +            shapeBuilder_.dispose();
                 shapeBuilder_ = null;
               }
               dtype_ = 0;
    -
    -          if (typeBuilder_ == null) {
    -            type_ = null;
    -          } else {
    -            type_ = null;
    +          type_ = null;
    +          if (typeBuilder_ != null) {
    +            typeBuilder_.dispose();
                 typeBuilder_ = null;
               }
               return this;
    @@ -504,53 +516,32 @@ public org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.Handl
             @java.lang.Override
             public org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType buildPartial() {
               org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType result = new org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType(this);
    -          if (shapeBuilder_ == null) {
    -            result.shape_ = shape_;
    -          } else {
    -            result.shape_ = shapeBuilder_.build();
    -          }
    -          result.dtype_ = dtype_;
    -          if (typeBuilder_ == null) {
    -            result.type_ = type_;
    -          } else {
    -            result.type_ = typeBuilder_.build();
    -          }
    +          if (bitField0_ != 0) { buildPartial0(result); }
               onBuilt();
               return result;
             }
     
    -        @java.lang.Override
    -        public Builder clone() {
    -          return super.clone();
    -        }
    -        @java.lang.Override
    -        public Builder setField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.setField(field, value);
    -        }
    -        @java.lang.Override
    -        public Builder clearField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field) {
    -          return super.clearField(field);
    -        }
    -        @java.lang.Override
    -        public Builder clearOneof(
    -            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -          return super.clearOneof(oneof);
    -        }
    -        @java.lang.Override
    -        public Builder setRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            int index, java.lang.Object value) {
    -          return super.setRepeatedField(field, index, value);
    -        }
    -        @java.lang.Override
    -        public Builder addRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.addRepeatedField(field, value);
    +        private void buildPartial0(org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType result) {
    +          int from_bitField0_ = bitField0_;
    +          int to_bitField0_ = 0;
    +          if (((from_bitField0_ & 0x00000001) != 0)) {
    +            result.shape_ = shapeBuilder_ == null
    +                ? shape_
    +                : shapeBuilder_.build();
    +            to_bitField0_ |= 0x00000001;
    +          }
    +          if (((from_bitField0_ & 0x00000002) != 0)) {
    +            result.dtype_ = dtype_;
    +          }
    +          if (((from_bitField0_ & 0x00000004) != 0)) {
    +            result.type_ = typeBuilder_ == null
    +                ? type_
    +                : typeBuilder_.build();
    +            to_bitField0_ |= 0x00000002;
    +          }
    +          result.bitField0_ |= to_bitField0_;
             }
    +
             @java.lang.Override
             public Builder mergeFrom(com.google.protobuf.Message other) {
               if (other instanceof org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType) {
    @@ -602,19 +593,19 @@ public Builder mergeFrom(
                       input.readMessage(
                           getShapeFieldBuilder().getBuilder(),
                           extensionRegistry);
    -
    +                  bitField0_ |= 0x00000001;
                       break;
                     } // case 10
                     case 16: {
                       dtype_ = input.readEnum();
    -
    +                  bitField0_ |= 0x00000002;
                       break;
                     } // case 16
                     case 34: {
                       input.readMessage(
                           getTypeFieldBuilder().getBuilder(),
                           extensionRegistry);
    -
    +                  bitField0_ |= 0x00000004;
                       break;
                     } // case 34
                     default: {
    @@ -632,16 +623,17 @@ public Builder mergeFrom(
               } // finally
               return this;
             }
    +        private int bitField0_;
     
             private org.tensorflow.proto.TensorShapeProto shape_;
    -        private com.google.protobuf.SingleFieldBuilderV3<
    +        private com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> shapeBuilder_;
             /**
              * .tensorflow.TensorShapeProto shape = 1;
              * @return Whether the shape field is set.
              */
             public boolean hasShape() {
    -          return shapeBuilder_ != null || shape_ != null;
    +          return ((bitField0_ & 0x00000001) != 0);
             }
             /**
              * .tensorflow.TensorShapeProto shape = 1;
    @@ -663,11 +655,11 @@ public Builder setShape(org.tensorflow.proto.TensorShapeProto value) {
                   throw new NullPointerException();
                 }
                 shape_ = value;
    -            onChanged();
               } else {
                 shapeBuilder_.setMessage(value);
               }
    -
    +          bitField0_ |= 0x00000001;
    +          onChanged();
               return this;
             }
             /**
    @@ -677,11 +669,11 @@ public Builder setShape(
                 org.tensorflow.proto.TensorShapeProto.Builder builderForValue) {
               if (shapeBuilder_ == null) {
                 shape_ = builderForValue.build();
    -            onChanged();
               } else {
                 shapeBuilder_.setMessage(builderForValue.build());
               }
    -
    +          bitField0_ |= 0x00000001;
    +          onChanged();
               return this;
             }
             /**
    @@ -689,38 +681,40 @@ public Builder setShape(
              */
             public Builder mergeShape(org.tensorflow.proto.TensorShapeProto value) {
               if (shapeBuilder_ == null) {
    -            if (shape_ != null) {
    -              shape_ =
    -                org.tensorflow.proto.TensorShapeProto.newBuilder(shape_).mergeFrom(value).buildPartial();
    +            if (((bitField0_ & 0x00000001) != 0) &&
    +              shape_ != null &&
    +              shape_ != org.tensorflow.proto.TensorShapeProto.getDefaultInstance()) {
    +              getShapeBuilder().mergeFrom(value);
                 } else {
                   shape_ = value;
                 }
    -            onChanged();
               } else {
                 shapeBuilder_.mergeFrom(value);
               }
    -
    +          if (shape_ != null) {
    +            bitField0_ |= 0x00000001;
    +            onChanged();
    +          }
               return this;
             }
             /**
              * .tensorflow.TensorShapeProto shape = 1;
              */
             public Builder clearShape() {
    -          if (shapeBuilder_ == null) {
    -            shape_ = null;
    -            onChanged();
    -          } else {
    -            shape_ = null;
    +          bitField0_ = (bitField0_ & ~0x00000001);
    +          shape_ = null;
    +          if (shapeBuilder_ != null) {
    +            shapeBuilder_.dispose();
                 shapeBuilder_ = null;
               }
    -
    +          onChanged();
               return this;
             }
             /**
              * .tensorflow.TensorShapeProto shape = 1;
              */
             public org.tensorflow.proto.TensorShapeProto.Builder getShapeBuilder() {
    -          
    +          bitField0_ |= 0x00000001;
               onChanged();
               return getShapeFieldBuilder().getBuilder();
             }
    @@ -738,11 +732,11 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
             /**
              * .tensorflow.TensorShapeProto shape = 1;
              */
    -        private com.google.protobuf.SingleFieldBuilderV3<
    +        private com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> 
                 getShapeFieldBuilder() {
               if (shapeBuilder_ == null) {
    -            shapeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +            shapeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                     org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>(
                         getShape(),
                         getParentForChildren(),
    @@ -766,8 +760,8 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
              * @return This builder for chaining.
              */
             public Builder setDtypeValue(int value) {
    -          
               dtype_ = value;
    +          bitField0_ |= 0x00000002;
               onChanged();
               return this;
             }
    @@ -777,8 +771,7 @@ public Builder setDtypeValue(int value) {
              */
             @java.lang.Override
             public org.tensorflow.proto.DataType getDtype() {
    -          @SuppressWarnings("deprecation")
    -          org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +          org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
               return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
             }
             /**
    @@ -790,7 +783,7 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
               if (value == null) {
                 throw new NullPointerException();
               }
    -          
    +          bitField0_ |= 0x00000002;
               dtype_ = value.getNumber();
               onChanged();
               return this;
    @@ -800,21 +793,21 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
              * @return This builder for chaining.
              */
             public Builder clearDtype() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000002);
               dtype_ = 0;
               onChanged();
               return this;
             }
     
             private org.tensorflow.proto.FullTypeDef type_;
    -        private com.google.protobuf.SingleFieldBuilderV3<
    +        private com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.FullTypeDef, org.tensorflow.proto.FullTypeDef.Builder, org.tensorflow.proto.FullTypeDefOrBuilder> typeBuilder_;
             /**
              * .tensorflow.FullTypeDef type = 4;
              * @return Whether the type field is set.
              */
             public boolean hasType() {
    -          return typeBuilder_ != null || type_ != null;
    +          return ((bitField0_ & 0x00000004) != 0);
             }
             /**
              * .tensorflow.FullTypeDef type = 4;
    @@ -836,11 +829,11 @@ public Builder setType(org.tensorflow.proto.FullTypeDef value) {
                   throw new NullPointerException();
                 }
                 type_ = value;
    -            onChanged();
               } else {
                 typeBuilder_.setMessage(value);
               }
    -
    +          bitField0_ |= 0x00000004;
    +          onChanged();
               return this;
             }
             /**
    @@ -850,11 +843,11 @@ public Builder setType(
                 org.tensorflow.proto.FullTypeDef.Builder builderForValue) {
               if (typeBuilder_ == null) {
                 type_ = builderForValue.build();
    -            onChanged();
               } else {
                 typeBuilder_.setMessage(builderForValue.build());
               }
    -
    +          bitField0_ |= 0x00000004;
    +          onChanged();
               return this;
             }
             /**
    @@ -862,38 +855,40 @@ public Builder setType(
              */
             public Builder mergeType(org.tensorflow.proto.FullTypeDef value) {
               if (typeBuilder_ == null) {
    -            if (type_ != null) {
    -              type_ =
    -                org.tensorflow.proto.FullTypeDef.newBuilder(type_).mergeFrom(value).buildPartial();
    +            if (((bitField0_ & 0x00000004) != 0) &&
    +              type_ != null &&
    +              type_ != org.tensorflow.proto.FullTypeDef.getDefaultInstance()) {
    +              getTypeBuilder().mergeFrom(value);
                 } else {
                   type_ = value;
                 }
    -            onChanged();
               } else {
                 typeBuilder_.mergeFrom(value);
               }
    -
    +          if (type_ != null) {
    +            bitField0_ |= 0x00000004;
    +            onChanged();
    +          }
               return this;
             }
             /**
              * .tensorflow.FullTypeDef type = 4;
              */
             public Builder clearType() {
    -          if (typeBuilder_ == null) {
    -            type_ = null;
    -            onChanged();
    -          } else {
    -            type_ = null;
    +          bitField0_ = (bitField0_ & ~0x00000004);
    +          type_ = null;
    +          if (typeBuilder_ != null) {
    +            typeBuilder_.dispose();
                 typeBuilder_ = null;
               }
    -
    +          onChanged();
               return this;
             }
             /**
              * .tensorflow.FullTypeDef type = 4;
              */
             public org.tensorflow.proto.FullTypeDef.Builder getTypeBuilder() {
    -          
    +          bitField0_ |= 0x00000004;
               onChanged();
               return getTypeFieldBuilder().getBuilder();
             }
    @@ -911,11 +906,11 @@ public org.tensorflow.proto.FullTypeDefOrBuilder getTypeOrBuilder() {
             /**
              * .tensorflow.FullTypeDef type = 4;
              */
    -        private com.google.protobuf.SingleFieldBuilderV3<
    +        private com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.FullTypeDef, org.tensorflow.proto.FullTypeDef.Builder, org.tensorflow.proto.FullTypeDefOrBuilder> 
                 getTypeFieldBuilder() {
               if (typeBuilder_ == null) {
    -            typeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +            typeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                     org.tensorflow.proto.FullTypeDef, org.tensorflow.proto.FullTypeDef.Builder, org.tensorflow.proto.FullTypeDefOrBuilder>(
                         getType(),
                         getParentForChildren(),
    @@ -924,18 +919,6 @@ public org.tensorflow.proto.FullTypeDefOrBuilder getTypeOrBuilder() {
               }
               return typeBuilder_;
             }
    -        @java.lang.Override
    -        public final Builder setUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.setUnknownFields(unknownFields);
    -        }
    -
    -        @java.lang.Override
    -        public final Builder mergeUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.mergeUnknownFields(unknownFields);
    -        }
    -
     
             // @@protoc_insertion_point(builder_scope:tensorflow.core.CppShapeInferenceResult.HandleShapeAndType)
           }
    @@ -1046,37 +1029,34 @@ org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeA
          * Protobuf type {@code tensorflow.core.CppShapeInferenceResult.HandleData}
          */
         public static final class HandleData extends
    -        com.google.protobuf.GeneratedMessageV3 implements
    +        com.google.protobuf.GeneratedMessage implements
             // @@protoc_insertion_point(message_implements:tensorflow.core.CppShapeInferenceResult.HandleData)
             HandleDataOrBuilder {
         private static final long serialVersionUID = 0L;
    +      static {
    +        com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +          com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +          /* major= */ 4,
    +          /* minor= */ 28,
    +          /* patch= */ 3,
    +          /* suffix= */ "",
    +          HandleData.class.getName());
    +      }
           // Use HandleData.newBuilder() to construct.
    -      private HandleData(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +      private HandleData(com.google.protobuf.GeneratedMessage.Builder builder) {
             super(builder);
           }
           private HandleData() {
             shapeAndType_ = java.util.Collections.emptyList();
           }
     
    -      @java.lang.Override
    -      @SuppressWarnings({"unused"})
    -      protected java.lang.Object newInstance(
    -          UnusedPrivateParameter unused) {
    -        return new HandleData();
    -      }
    -
    -      @java.lang.Override
    -      public final com.google.protobuf.UnknownFieldSet
    -      getUnknownFields() {
    -        return this.unknownFields;
    -      }
           public static final com.google.protobuf.Descriptors.Descriptor
               getDescriptor() {
             return org.tensorflow.proto.core.CppShapeInference.internal_static_tensorflow_core_CppShapeInferenceResult_HandleData_descriptor;
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.core.CppShapeInference.internal_static_tensorflow_core_CppShapeInferenceResult_HandleData_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -1084,7 +1064,7 @@ protected java.lang.Object newInstance(
           }
     
           public static final int IS_SET_FIELD_NUMBER = 1;
    -      private boolean isSet_;
    +      private boolean isSet_ = false;
           /**
            * bool is_set = 1;
            * @return The isSet.
    @@ -1095,6 +1075,7 @@ public boolean getIsSet() {
           }
     
           public static final int SHAPE_AND_TYPE_FIELD_NUMBER = 2;
    +      @SuppressWarnings("serial")
           private java.util.List shapeAndType_;
           /**
            * 
    @@ -1267,39 +1248,41 @@ public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResul
           }
           public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData parseFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData parseFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
    +
           public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData parseDelimitedFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input);
           }
    +
           public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData parseDelimitedFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
           }
           public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData parseFrom(
               com.google.protobuf.CodedInputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData parseFrom(
               com.google.protobuf.CodedInputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
     
    @@ -1319,7 +1302,7 @@ public Builder toBuilder() {
     
           @java.lang.Override
           protected Builder newBuilderForType(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             Builder builder = new Builder(parent);
             return builder;
           }
    @@ -1327,7 +1310,7 @@ protected Builder newBuilderForType(
            * Protobuf type {@code tensorflow.core.CppShapeInferenceResult.HandleData}
            */
           public static final class Builder extends
    -          com.google.protobuf.GeneratedMessageV3.Builder implements
    +          com.google.protobuf.GeneratedMessage.Builder implements
               // @@protoc_insertion_point(builder_implements:tensorflow.core.CppShapeInferenceResult.HandleData)
               org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleDataOrBuilder {
             public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1336,7 +1319,7 @@ public static final class Builder extends
             }
     
             @java.lang.Override
    -        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
                 internalGetFieldAccessorTable() {
               return org.tensorflow.proto.core.CppShapeInference.internal_static_tensorflow_core_CppShapeInferenceResult_HandleData_fieldAccessorTable
                   .ensureFieldAccessorsInitialized(
    @@ -1349,22 +1332,22 @@ private Builder() {
             }
     
             private Builder(
    -            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
               super(parent);
     
             }
             @java.lang.Override
             public Builder clear() {
               super.clear();
    +          bitField0_ = 0;
               isSet_ = false;
    -
               if (shapeAndTypeBuilder_ == null) {
                 shapeAndType_ = java.util.Collections.emptyList();
               } else {
                 shapeAndType_ = null;
                 shapeAndTypeBuilder_.clear();
               }
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000002);
               return this;
             }
     
    @@ -1391,53 +1374,31 @@ public org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.Handl
             @java.lang.Override
             public org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData buildPartial() {
               org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData result = new org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData(this);
    -          int from_bitField0_ = bitField0_;
    -          result.isSet_ = isSet_;
    +          buildPartialRepeatedFields(result);
    +          if (bitField0_ != 0) { buildPartial0(result); }
    +          onBuilt();
    +          return result;
    +        }
    +
    +        private void buildPartialRepeatedFields(org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData result) {
               if (shapeAndTypeBuilder_ == null) {
    -            if (((bitField0_ & 0x00000001) != 0)) {
    +            if (((bitField0_ & 0x00000002) != 0)) {
                   shapeAndType_ = java.util.Collections.unmodifiableList(shapeAndType_);
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000002);
                 }
                 result.shapeAndType_ = shapeAndType_;
               } else {
                 result.shapeAndType_ = shapeAndTypeBuilder_.build();
               }
    -          onBuilt();
    -          return result;
             }
     
    -        @java.lang.Override
    -        public Builder clone() {
    -          return super.clone();
    -        }
    -        @java.lang.Override
    -        public Builder setField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.setField(field, value);
    -        }
    -        @java.lang.Override
    -        public Builder clearField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field) {
    -          return super.clearField(field);
    -        }
    -        @java.lang.Override
    -        public Builder clearOneof(
    -            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -          return super.clearOneof(oneof);
    -        }
    -        @java.lang.Override
    -        public Builder setRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            int index, java.lang.Object value) {
    -          return super.setRepeatedField(field, index, value);
    -        }
    -        @java.lang.Override
    -        public Builder addRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.addRepeatedField(field, value);
    +        private void buildPartial0(org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData result) {
    +          int from_bitField0_ = bitField0_;
    +          if (((from_bitField0_ & 0x00000001) != 0)) {
    +            result.isSet_ = isSet_;
    +          }
             }
    +
             @java.lang.Override
             public Builder mergeFrom(com.google.protobuf.Message other) {
               if (other instanceof org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData) {
    @@ -1457,7 +1418,7 @@ public Builder mergeFrom(org.tensorflow.proto.core.CppShapeInference.CppShapeInf
                 if (!other.shapeAndType_.isEmpty()) {
                   if (shapeAndType_.isEmpty()) {
                     shapeAndType_ = other.shapeAndType_;
    -                bitField0_ = (bitField0_ & ~0x00000001);
    +                bitField0_ = (bitField0_ & ~0x00000002);
                   } else {
                     ensureShapeAndTypeIsMutable();
                     shapeAndType_.addAll(other.shapeAndType_);
    @@ -1470,9 +1431,9 @@ public Builder mergeFrom(org.tensorflow.proto.core.CppShapeInference.CppShapeInf
                     shapeAndTypeBuilder_.dispose();
                     shapeAndTypeBuilder_ = null;
                     shapeAndType_ = other.shapeAndType_;
    -                bitField0_ = (bitField0_ & ~0x00000001);
    +                bitField0_ = (bitField0_ & ~0x00000002);
                     shapeAndTypeBuilder_ = 
    -                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                  com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                          getShapeAndTypeFieldBuilder() : null;
                   } else {
                     shapeAndTypeBuilder_.addAllMessages(other.shapeAndType_);
    @@ -1507,7 +1468,7 @@ public Builder mergeFrom(
                       break;
                     case 8: {
                       isSet_ = input.readBool();
    -
    +                  bitField0_ |= 0x00000001;
                       break;
                     } // case 8
                     case 18: {
    @@ -1555,8 +1516,9 @@ public boolean getIsSet() {
              * @return This builder for chaining.
              */
             public Builder setIsSet(boolean value) {
    -          
    +
               isSet_ = value;
    +          bitField0_ |= 0x00000001;
               onChanged();
               return this;
             }
    @@ -1565,7 +1527,7 @@ public Builder setIsSet(boolean value) {
              * @return This builder for chaining.
              */
             public Builder clearIsSet() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000001);
               isSet_ = false;
               onChanged();
               return this;
    @@ -1574,13 +1536,13 @@ public Builder clearIsSet() {
             private java.util.List shapeAndType_ =
               java.util.Collections.emptyList();
             private void ensureShapeAndTypeIsMutable() {
    -          if (!((bitField0_ & 0x00000001) != 0)) {
    +          if (!((bitField0_ & 0x00000002) != 0)) {
                 shapeAndType_ = new java.util.ArrayList(shapeAndType_);
    -            bitField0_ |= 0x00000001;
    +            bitField0_ |= 0x00000002;
                }
             }
     
    -        private com.google.protobuf.RepeatedFieldBuilderV3<
    +        private com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType, org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType.Builder, org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndTypeOrBuilder> shapeAndTypeBuilder_;
     
             /**
    @@ -1770,7 +1732,7 @@ public Builder addAllShapeAndType(
             public Builder clearShapeAndType() {
               if (shapeAndTypeBuilder_ == null) {
                 shapeAndType_ = java.util.Collections.emptyList();
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000002);
                 onChanged();
               } else {
                 shapeAndTypeBuilder_.clear();
    @@ -1868,32 +1830,20 @@ public org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.Handl
                  getShapeAndTypeBuilderList() {
               return getShapeAndTypeFieldBuilder().getBuilderList();
             }
    -        private com.google.protobuf.RepeatedFieldBuilderV3<
    +        private com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType, org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType.Builder, org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndTypeOrBuilder> 
                 getShapeAndTypeFieldBuilder() {
               if (shapeAndTypeBuilder_ == null) {
    -            shapeAndTypeBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +            shapeAndTypeBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                     org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType, org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndType.Builder, org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleShapeAndTypeOrBuilder>(
                         shapeAndType_,
    -                    ((bitField0_ & 0x00000001) != 0),
    +                    ((bitField0_ & 0x00000002) != 0),
                         getParentForChildren(),
                         isClean());
                 shapeAndType_ = null;
               }
               return shapeAndTypeBuilder_;
             }
    -        @java.lang.Override
    -        public final Builder setUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.setUnknownFields(unknownFields);
    -        }
    -
    -        @java.lang.Override
    -        public final Builder mergeUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.mergeUnknownFields(unknownFields);
    -        }
    -
     
             // @@protoc_insertion_point(builder_scope:tensorflow.core.CppShapeInferenceResult.HandleData)
           }
    @@ -1946,6 +1896,7 @@ public org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.Handl
     
         }
     
    +    private int bitField0_;
         public static final int SHAPE_FIELD_NUMBER = 1;
         private org.tensorflow.proto.TensorShapeProto shape_;
         /**
    @@ -1954,7 +1905,7 @@ public org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.Handl
          */
         @java.lang.Override
         public boolean hasShape() {
    -      return shape_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * .tensorflow.TensorShapeProto shape = 1;
    @@ -1969,7 +1920,7 @@ public org.tensorflow.proto.TensorShapeProto getShape() {
          */
         @java.lang.Override
         public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
    -      return getShape();
    +      return shape_ == null ? org.tensorflow.proto.TensorShapeProto.getDefaultInstance() : shape_;
         }
     
         public static final int HANDLE_DATA_FIELD_NUMBER = 4;
    @@ -1980,7 +1931,7 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
          */
         @java.lang.Override
         public boolean hasHandleData() {
    -      return handleData_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * .tensorflow.core.CppShapeInferenceResult.HandleData handle_data = 4;
    @@ -1995,7 +1946,7 @@ public org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.Handl
          */
         @java.lang.Override
         public org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleDataOrBuilder getHandleDataOrBuilder() {
    -      return getHandleData();
    +      return handleData_ == null ? org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData.getDefaultInstance() : handleData_;
         }
     
         private byte memoizedIsInitialized = -1;
    @@ -2012,10 +1963,10 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (shape_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(1, getShape());
           }
    -      if (handleData_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             output.writeMessage(4, getHandleData());
           }
           getUnknownFields().writeTo(output);
    @@ -2027,11 +1978,11 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (shape_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(1, getShape());
           }
    -      if (handleData_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(4, getHandleData());
           }
    @@ -2118,39 +2069,41 @@ public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResul
         }
         public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -2170,7 +2123,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -2178,7 +2131,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.core.CppShapeInferenceResult}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.core.CppShapeInferenceResult)
             org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResultOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -2187,7 +2140,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.core.CppShapeInference.internal_static_tensorflow_core_CppShapeInferenceResult_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -2196,27 +2149,33 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getShapeFieldBuilder();
    +          getHandleDataFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    -        if (shapeBuilder_ == null) {
    -          shape_ = null;
    -        } else {
    -          shape_ = null;
    +        bitField0_ = 0;
    +        shape_ = null;
    +        if (shapeBuilder_ != null) {
    +          shapeBuilder_.dispose();
               shapeBuilder_ = null;
             }
    -        if (handleDataBuilder_ == null) {
    -          handleData_ = null;
    -        } else {
    -          handleData_ = null;
    +        handleData_ = null;
    +        if (handleDataBuilder_ != null) {
    +          handleDataBuilder_.dispose();
               handleDataBuilder_ = null;
             }
             return this;
    @@ -2245,52 +2204,29 @@ public org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult build
           @java.lang.Override
           public org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult buildPartial() {
             org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult result = new org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult(this);
    -        if (shapeBuilder_ == null) {
    -          result.shape_ = shape_;
    -        } else {
    -          result.shape_ = shapeBuilder_.build();
    -        }
    -        if (handleDataBuilder_ == null) {
    -          result.handleData_ = handleData_;
    -        } else {
    -          result.handleData_ = handleDataBuilder_.build();
    -        }
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult result) {
    +        int from_bitField0_ = bitField0_;
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.shape_ = shapeBuilder_ == null
    +              ? shape_
    +              : shapeBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.handleData_ = handleDataBuilder_ == null
    +              ? handleData_
    +              : handleDataBuilder_.build();
    +          to_bitField0_ |= 0x00000002;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult) {
    @@ -2339,14 +2275,14 @@ public Builder mergeFrom(
                     input.readMessage(
                         getShapeFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 34: {
                     input.readMessage(
                         getHandleDataFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 34
                   default: {
    @@ -2364,16 +2300,17 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private org.tensorflow.proto.TensorShapeProto shape_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> shapeBuilder_;
           /**
            * .tensorflow.TensorShapeProto shape = 1;
            * @return Whether the shape field is set.
            */
           public boolean hasShape() {
    -        return shapeBuilder_ != null || shape_ != null;
    +        return ((bitField0_ & 0x00000001) != 0);
           }
           /**
            * .tensorflow.TensorShapeProto shape = 1;
    @@ -2395,11 +2332,11 @@ public Builder setShape(org.tensorflow.proto.TensorShapeProto value) {
                 throw new NullPointerException();
               }
               shape_ = value;
    -          onChanged();
             } else {
               shapeBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000001;
    +        onChanged();
             return this;
           }
           /**
    @@ -2409,11 +2346,11 @@ public Builder setShape(
               org.tensorflow.proto.TensorShapeProto.Builder builderForValue) {
             if (shapeBuilder_ == null) {
               shape_ = builderForValue.build();
    -          onChanged();
             } else {
               shapeBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000001;
    +        onChanged();
             return this;
           }
           /**
    @@ -2421,38 +2358,40 @@ public Builder setShape(
            */
           public Builder mergeShape(org.tensorflow.proto.TensorShapeProto value) {
             if (shapeBuilder_ == null) {
    -          if (shape_ != null) {
    -            shape_ =
    -              org.tensorflow.proto.TensorShapeProto.newBuilder(shape_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000001) != 0) &&
    +            shape_ != null &&
    +            shape_ != org.tensorflow.proto.TensorShapeProto.getDefaultInstance()) {
    +            getShapeBuilder().mergeFrom(value);
               } else {
                 shape_ = value;
               }
    -          onChanged();
             } else {
               shapeBuilder_.mergeFrom(value);
             }
    -
    +        if (shape_ != null) {
    +          bitField0_ |= 0x00000001;
    +          onChanged();
    +        }
             return this;
           }
           /**
            * .tensorflow.TensorShapeProto shape = 1;
            */
           public Builder clearShape() {
    -        if (shapeBuilder_ == null) {
    -          shape_ = null;
    -          onChanged();
    -        } else {
    -          shape_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000001);
    +        shape_ = null;
    +        if (shapeBuilder_ != null) {
    +          shapeBuilder_.dispose();
               shapeBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
            * .tensorflow.TensorShapeProto shape = 1;
            */
           public org.tensorflow.proto.TensorShapeProto.Builder getShapeBuilder() {
    -        
    +        bitField0_ |= 0x00000001;
             onChanged();
             return getShapeFieldBuilder().getBuilder();
           }
    @@ -2470,11 +2409,11 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
           /**
            * .tensorflow.TensorShapeProto shape = 1;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> 
               getShapeFieldBuilder() {
             if (shapeBuilder_ == null) {
    -          shapeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          shapeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>(
                       getShape(),
                       getParentForChildren(),
    @@ -2485,14 +2424,14 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
           }
     
           private org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData handleData_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData, org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData.Builder, org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleDataOrBuilder> handleDataBuilder_;
           /**
            * .tensorflow.core.CppShapeInferenceResult.HandleData handle_data = 4;
            * @return Whether the handleData field is set.
            */
           public boolean hasHandleData() {
    -        return handleDataBuilder_ != null || handleData_ != null;
    +        return ((bitField0_ & 0x00000002) != 0);
           }
           /**
            * .tensorflow.core.CppShapeInferenceResult.HandleData handle_data = 4;
    @@ -2514,11 +2453,11 @@ public Builder setHandleData(org.tensorflow.proto.core.CppShapeInference.CppShap
                 throw new NullPointerException();
               }
               handleData_ = value;
    -          onChanged();
             } else {
               handleDataBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -2528,11 +2467,11 @@ public Builder setHandleData(
               org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData.Builder builderForValue) {
             if (handleDataBuilder_ == null) {
               handleData_ = builderForValue.build();
    -          onChanged();
             } else {
               handleDataBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -2540,38 +2479,40 @@ public Builder setHandleData(
            */
           public Builder mergeHandleData(org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData value) {
             if (handleDataBuilder_ == null) {
    -          if (handleData_ != null) {
    -            handleData_ =
    -              org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData.newBuilder(handleData_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000002) != 0) &&
    +            handleData_ != null &&
    +            handleData_ != org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData.getDefaultInstance()) {
    +            getHandleDataBuilder().mergeFrom(value);
               } else {
                 handleData_ = value;
               }
    -          onChanged();
             } else {
               handleDataBuilder_.mergeFrom(value);
             }
    -
    +        if (handleData_ != null) {
    +          bitField0_ |= 0x00000002;
    +          onChanged();
    +        }
             return this;
           }
           /**
            * .tensorflow.core.CppShapeInferenceResult.HandleData handle_data = 4;
            */
           public Builder clearHandleData() {
    -        if (handleDataBuilder_ == null) {
    -          handleData_ = null;
    -          onChanged();
    -        } else {
    -          handleData_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000002);
    +        handleData_ = null;
    +        if (handleDataBuilder_ != null) {
    +          handleDataBuilder_.dispose();
               handleDataBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
            * .tensorflow.core.CppShapeInferenceResult.HandleData handle_data = 4;
            */
           public org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData.Builder getHandleDataBuilder() {
    -        
    +        bitField0_ |= 0x00000002;
             onChanged();
             return getHandleDataFieldBuilder().getBuilder();
           }
    @@ -2589,11 +2530,11 @@ public org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.Handl
           /**
            * .tensorflow.core.CppShapeInferenceResult.HandleData handle_data = 4;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData, org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData.Builder, org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleDataOrBuilder> 
               getHandleDataFieldBuilder() {
             if (handleDataBuilder_ == null) {
    -          handleDataBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          handleDataBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData, org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleData.Builder, org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.HandleDataOrBuilder>(
                       getHandleData(),
                       getParentForChildren(),
    @@ -2602,18 +2543,6 @@ public org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceResult.Handl
             }
             return handleDataBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.core.CppShapeInferenceResult)
         }
    @@ -2708,12 +2637,21 @@ public interface CppShapeInferenceInputsNeededOrBuilder extends
        * Protobuf type {@code tensorflow.core.CppShapeInferenceInputsNeeded}
        */
       public static final class CppShapeInferenceInputsNeeded extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.core.CppShapeInferenceInputsNeeded)
           CppShapeInferenceInputsNeededOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        CppShapeInferenceInputsNeeded.class.getName());
    +    }
         // Use CppShapeInferenceInputsNeeded.newBuilder() to construct.
    -    private CppShapeInferenceInputsNeeded(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private CppShapeInferenceInputsNeeded(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private CppShapeInferenceInputsNeeded() {
    @@ -2721,25 +2659,13 @@ private CppShapeInferenceInputsNeeded() {
           inputTensorsAsShapesNeeded_ = emptyIntList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new CppShapeInferenceInputsNeeded();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.core.CppShapeInference.internal_static_tensorflow_core_CppShapeInferenceInputsNeeded_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.core.CppShapeInference.internal_static_tensorflow_core_CppShapeInferenceInputsNeeded_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -2747,7 +2673,9 @@ protected java.lang.Object newInstance(
         }
     
         public static final int INPUT_TENSORS_NEEDED_FIELD_NUMBER = 1;
    -    private com.google.protobuf.Internal.IntList inputTensorsNeeded_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.Internal.IntList inputTensorsNeeded_ =
    +        emptyIntList();
         /**
          * repeated int32 input_tensors_needed = 1;
          * @return A list containing the inputTensorsNeeded.
    @@ -2775,7 +2703,9 @@ public int getInputTensorsNeeded(int index) {
         private int inputTensorsNeededMemoizedSerializedSize = -1;
     
         public static final int INPUT_TENSORS_AS_SHAPES_NEEDED_FIELD_NUMBER = 2;
    -    private com.google.protobuf.Internal.IntList inputTensorsAsShapesNeeded_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.Internal.IntList inputTensorsAsShapesNeeded_ =
    +        emptyIntList();
         /**
          * repeated int32 input_tensors_as_shapes_needed = 2;
          * @return A list containing the inputTensorsAsShapesNeeded.
    @@ -2945,39 +2875,41 @@ public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceInput
         }
         public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceInputsNeeded parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceInputsNeeded parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceInputsNeeded parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceInputsNeeded parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceInputsNeeded parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceInputsNeeded parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -2997,7 +2929,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -3005,7 +2937,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.core.CppShapeInferenceInputsNeeded}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.core.CppShapeInferenceInputsNeeded)
             org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceInputsNeededOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -3014,7 +2946,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.core.CppShapeInference.internal_static_tensorflow_core_CppShapeInferenceInputsNeeded_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -3027,17 +2959,16 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             inputTensorsNeeded_ = emptyIntList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
             inputTensorsAsShapesNeeded_ = emptyIntList();
    -        bitField0_ = (bitField0_ & ~0x00000002);
             return this;
           }
     
    @@ -3064,53 +2995,23 @@ public org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceInputsNeeded
           @java.lang.Override
           public org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceInputsNeeded buildPartial() {
             org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceInputsNeeded result = new org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceInputsNeeded(this);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartial0(org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceInputsNeeded result) {
             int from_bitField0_ = bitField0_;
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
               inputTensorsNeeded_.makeImmutable();
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          result.inputTensorsNeeded_ = inputTensorsNeeded_;
             }
    -        result.inputTensorsNeeded_ = inputTensorsNeeded_;
    -        if (((bitField0_ & 0x00000002) != 0)) {
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
               inputTensorsAsShapesNeeded_.makeImmutable();
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          result.inputTensorsAsShapesNeeded_ = inputTensorsAsShapesNeeded_;
             }
    -        result.inputTensorsAsShapesNeeded_ = inputTensorsAsShapesNeeded_;
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    -      }
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceInputsNeeded) {
    @@ -3126,7 +3027,8 @@ public Builder mergeFrom(org.tensorflow.proto.core.CppShapeInference.CppShapeInf
             if (!other.inputTensorsNeeded_.isEmpty()) {
               if (inputTensorsNeeded_.isEmpty()) {
                 inputTensorsNeeded_ = other.inputTensorsNeeded_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            inputTensorsNeeded_.makeImmutable();
    +            bitField0_ |= 0x00000001;
               } else {
                 ensureInputTensorsNeededIsMutable();
                 inputTensorsNeeded_.addAll(other.inputTensorsNeeded_);
    @@ -3136,7 +3038,8 @@ public Builder mergeFrom(org.tensorflow.proto.core.CppShapeInference.CppShapeInf
             if (!other.inputTensorsAsShapesNeeded_.isEmpty()) {
               if (inputTensorsAsShapesNeeded_.isEmpty()) {
                 inputTensorsAsShapesNeeded_ = other.inputTensorsAsShapesNeeded_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            inputTensorsAsShapesNeeded_.makeImmutable();
    +            bitField0_ |= 0x00000002;
               } else {
                 ensureInputTensorsAsShapesNeededIsMutable();
                 inputTensorsAsShapesNeeded_.addAll(other.inputTensorsAsShapesNeeded_);
    @@ -3220,10 +3123,10 @@ public Builder mergeFrom(
     
           private com.google.protobuf.Internal.IntList inputTensorsNeeded_ = emptyIntList();
           private void ensureInputTensorsNeededIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    -          inputTensorsNeeded_ = mutableCopy(inputTensorsNeeded_);
    -          bitField0_ |= 0x00000001;
    -         }
    +        if (!inputTensorsNeeded_.isModifiable()) {
    +          inputTensorsNeeded_ = makeMutableCopy(inputTensorsNeeded_);
    +        }
    +        bitField0_ |= 0x00000001;
           }
           /**
            * repeated int32 input_tensors_needed = 1;
    @@ -3231,8 +3134,8 @@ private void ensureInputTensorsNeededIsMutable() {
            */
           public java.util.List
               getInputTensorsNeededList() {
    -        return ((bitField0_ & 0x00000001) != 0) ?
    -                 java.util.Collections.unmodifiableList(inputTensorsNeeded_) : inputTensorsNeeded_;
    +        inputTensorsNeeded_.makeImmutable();
    +        return inputTensorsNeeded_;
           }
           /**
            * repeated int32 input_tensors_needed = 1;
    @@ -3257,8 +3160,10 @@ public int getInputTensorsNeeded(int index) {
            */
           public Builder setInputTensorsNeeded(
               int index, int value) {
    +
             ensureInputTensorsNeededIsMutable();
             inputTensorsNeeded_.setInt(index, value);
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -3268,8 +3173,10 @@ public Builder setInputTensorsNeeded(
            * @return This builder for chaining.
            */
           public Builder addInputTensorsNeeded(int value) {
    +
             ensureInputTensorsNeededIsMutable();
             inputTensorsNeeded_.addInt(value);
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -3283,6 +3190,7 @@ public Builder addAllInputTensorsNeeded(
             ensureInputTensorsNeededIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, inputTensorsNeeded_);
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -3299,10 +3207,10 @@ public Builder clearInputTensorsNeeded() {
     
           private com.google.protobuf.Internal.IntList inputTensorsAsShapesNeeded_ = emptyIntList();
           private void ensureInputTensorsAsShapesNeededIsMutable() {
    -        if (!((bitField0_ & 0x00000002) != 0)) {
    -          inputTensorsAsShapesNeeded_ = mutableCopy(inputTensorsAsShapesNeeded_);
    -          bitField0_ |= 0x00000002;
    -         }
    +        if (!inputTensorsAsShapesNeeded_.isModifiable()) {
    +          inputTensorsAsShapesNeeded_ = makeMutableCopy(inputTensorsAsShapesNeeded_);
    +        }
    +        bitField0_ |= 0x00000002;
           }
           /**
            * repeated int32 input_tensors_as_shapes_needed = 2;
    @@ -3310,8 +3218,8 @@ private void ensureInputTensorsAsShapesNeededIsMutable() {
            */
           public java.util.List
               getInputTensorsAsShapesNeededList() {
    -        return ((bitField0_ & 0x00000002) != 0) ?
    -                 java.util.Collections.unmodifiableList(inputTensorsAsShapesNeeded_) : inputTensorsAsShapesNeeded_;
    +        inputTensorsAsShapesNeeded_.makeImmutable();
    +        return inputTensorsAsShapesNeeded_;
           }
           /**
            * repeated int32 input_tensors_as_shapes_needed = 2;
    @@ -3336,8 +3244,10 @@ public int getInputTensorsAsShapesNeeded(int index) {
            */
           public Builder setInputTensorsAsShapesNeeded(
               int index, int value) {
    +
             ensureInputTensorsAsShapesNeededIsMutable();
             inputTensorsAsShapesNeeded_.setInt(index, value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -3347,8 +3257,10 @@ public Builder setInputTensorsAsShapesNeeded(
            * @return This builder for chaining.
            */
           public Builder addInputTensorsAsShapesNeeded(int value) {
    +
             ensureInputTensorsAsShapesNeededIsMutable();
             inputTensorsAsShapesNeeded_.addInt(value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -3362,6 +3274,7 @@ public Builder addAllInputTensorsAsShapesNeeded(
             ensureInputTensorsAsShapesNeededIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, inputTensorsAsShapesNeeded_);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -3375,18 +3288,6 @@ public Builder clearInputTensorsAsShapesNeeded() {
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.core.CppShapeInferenceInputsNeeded)
         }
    @@ -3442,22 +3343,22 @@ public org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceInputsNeeded
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_core_CppShapeInferenceResult_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_core_CppShapeInferenceResult_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_core_CppShapeInferenceResult_HandleShapeAndType_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_core_CppShapeInferenceResult_HandleShapeAndType_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_core_CppShapeInferenceResult_HandleData_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_core_CppShapeInferenceResult_HandleData_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_core_CppShapeInferenceInputsNeeded_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_core_CppShapeInferenceInputsNeeded_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -3501,27 +3402,28 @@ public org.tensorflow.proto.core.CppShapeInference.CppShapeInferenceInputsNeeded
         internal_static_tensorflow_core_CppShapeInferenceResult_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_core_CppShapeInferenceResult_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_core_CppShapeInferenceResult_descriptor,
             new java.lang.String[] { "Shape", "HandleData", });
         internal_static_tensorflow_core_CppShapeInferenceResult_HandleShapeAndType_descriptor =
           internal_static_tensorflow_core_CppShapeInferenceResult_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_core_CppShapeInferenceResult_HandleShapeAndType_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_core_CppShapeInferenceResult_HandleShapeAndType_descriptor,
             new java.lang.String[] { "Shape", "Dtype", "Type", });
         internal_static_tensorflow_core_CppShapeInferenceResult_HandleData_descriptor =
           internal_static_tensorflow_core_CppShapeInferenceResult_descriptor.getNestedTypes().get(1);
         internal_static_tensorflow_core_CppShapeInferenceResult_HandleData_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_core_CppShapeInferenceResult_HandleData_descriptor,
             new java.lang.String[] { "IsSet", "ShapeAndType", });
         internal_static_tensorflow_core_CppShapeInferenceInputsNeeded_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_core_CppShapeInferenceInputsNeeded_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_core_CppShapeInferenceInputsNeeded_descriptor,
             new java.lang.String[] { "InputTensorsNeeded", "InputTensorsAsShapesNeeded", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.FullTypeProtos.getDescriptor();
         org.tensorflow.proto.TensorShapeProtos.getDescriptor();
         org.tensorflow.proto.TypesProtos.getDescriptor();
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/core/platform/CorePlatformPayloads.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/core/platform/CorePlatformPayloads.java
    index 683e59cf554..9495889ac7d 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/core/platform/CorePlatformPayloads.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/core/platform/CorePlatformPayloads.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/core_platform_payloads.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto.core.platform;
     
     public final class CorePlatformPayloads {
       private CorePlatformPayloads() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      CorePlatformPayloads.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -39,37 +50,34 @@ public interface ErrorSourceProtoOrBuilder extends
        * Protobuf type {@code tensorflow.core.platform.ErrorSourceProto}
        */
       public static final class ErrorSourceProto extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.core.platform.ErrorSourceProto)
           ErrorSourceProtoOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        ErrorSourceProto.class.getName());
    +    }
         // Use ErrorSourceProto.newBuilder() to construct.
    -    private ErrorSourceProto(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private ErrorSourceProto(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private ErrorSourceProto() {
           errorSource_ = 0;
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new ErrorSourceProto();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.core.platform.CorePlatformPayloads.internal_static_tensorflow_core_platform_ErrorSourceProto_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.core.platform.CorePlatformPayloads.internal_static_tensorflow_core_platform_ErrorSourceProto_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -124,6 +132,15 @@ public enum ErrorSource
           UNRECOGNIZED(-1),
           ;
     
    +      static {
    +        com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +          com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +          /* major= */ 4,
    +          /* minor= */ 28,
    +          /* patch= */ 3,
    +          /* suffix= */ "",
    +          ErrorSource.class.getName());
    +      }
           /**
            * UNKNOWN = 0;
            */
    @@ -253,7 +270,7 @@ private ErrorSource(int value) {
         }
     
         public static final int ERROR_SOURCE_FIELD_NUMBER = 1;
    -    private int errorSource_;
    +    private int errorSource_ = 0;
         /**
          * .tensorflow.core.platform.ErrorSourceProto.ErrorSource error_source = 1;
          * @return The enum numeric value on the wire for errorSource.
    @@ -266,8 +283,7 @@ private ErrorSource(int value) {
          * @return The errorSource.
          */
         @java.lang.Override public org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto.ErrorSource getErrorSource() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto.ErrorSource result = org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto.ErrorSource.valueOf(errorSource_);
    +      org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto.ErrorSource result = org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto.ErrorSource.forNumber(errorSource_);
           return result == null ? org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto.ErrorSource.UNRECOGNIZED : result;
         }
     
    @@ -369,39 +385,41 @@ public static org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourc
         }
         public static org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -421,7 +439,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -435,7 +453,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.core.platform.ErrorSourceProto}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.core.platform.ErrorSourceProto)
             org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProtoOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -444,7 +462,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.core.platform.CorePlatformPayloads.internal_static_tensorflow_core_platform_ErrorSourceProto_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -457,15 +475,15 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             errorSource_ = 0;
    -
             return this;
           }
     
    @@ -492,43 +510,18 @@ public org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto
           @java.lang.Override
           public org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto buildPartial() {
             org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto result = new org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto(this);
    -        result.errorSource_ = errorSource_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.errorSource_ = errorSource_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto) {
    @@ -572,7 +565,7 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     errorSource_ = input.readEnum();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   default: {
    @@ -590,6 +583,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private int errorSource_ = 0;
           /**
    @@ -605,8 +599,8 @@ public Builder mergeFrom(
            * @return This builder for chaining.
            */
           public Builder setErrorSourceValue(int value) {
    -        
             errorSource_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -616,8 +610,7 @@ public Builder setErrorSourceValue(int value) {
            */
           @java.lang.Override
           public org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto.ErrorSource getErrorSource() {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto.ErrorSource result = org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto.ErrorSource.valueOf(errorSource_);
    +        org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto.ErrorSource result = org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto.ErrorSource.forNumber(errorSource_);
             return result == null ? org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto.ErrorSource.UNRECOGNIZED : result;
           }
           /**
    @@ -629,7 +622,7 @@ public Builder setErrorSource(org.tensorflow.proto.core.platform.CorePlatformPay
             if (value == null) {
               throw new NullPointerException();
             }
    -        
    +        bitField0_ |= 0x00000001;
             errorSource_ = value.getNumber();
             onChanged();
             return this;
    @@ -639,23 +632,11 @@ public Builder setErrorSource(org.tensorflow.proto.core.platform.CorePlatformPay
            * @return This builder for chaining.
            */
           public Builder clearErrorSource() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             errorSource_ = 0;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.core.platform.ErrorSourceProto)
         }
    @@ -711,7 +692,7 @@ public org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_core_platform_ErrorSourceProto_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_core_platform_ErrorSourceProto_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -742,9 +723,10 @@ public org.tensorflow.proto.core.platform.CorePlatformPayloads.ErrorSourceProto
         internal_static_tensorflow_core_platform_ErrorSourceProto_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_core_platform_ErrorSourceProto_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_core_platform_ErrorSourceProto_descriptor,
             new java.lang.String[] { "ErrorSource", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/DataService.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/DataService.java
    index 6277eb98834..1896f0356f2 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/DataService.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/DataService.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/data_service.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto.data;
     
     public final class DataService {
       private DataService() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      DataService.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -55,6 +66,15 @@ public enum DeploymentMode
         UNRECOGNIZED(-1),
         ;
     
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        DeploymentMode.class.getName());
    +    }
         /**
          * DEPLOYMENT_MODE_UNSPECIFIED = 0;
          */
    @@ -193,37 +213,34 @@ public interface ProcessingModeDefOrBuilder extends
        * Protobuf type {@code tensorflow.data.ProcessingModeDef}
        */
       public static final class ProcessingModeDef extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.data.ProcessingModeDef)
           ProcessingModeDefOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        ProcessingModeDef.class.getName());
    +    }
         // Use ProcessingModeDef.newBuilder() to construct.
    -    private ProcessingModeDef(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private ProcessingModeDef(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private ProcessingModeDef() {
           shardingPolicy_ = 0;
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new ProcessingModeDef();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.data.DataService.internal_static_tensorflow_data_ProcessingModeDef_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.data.DataService.internal_static_tensorflow_data_ProcessingModeDef_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -265,8 +282,9 @@ public enum ShardingPolicy
            * The following are static sharding policies. The semantics are similar to
            * `tf.data.experimental.AutoShardPolicy`. These policies require:
            * * The tf.data service cluster has a fixed size, and you need to specify
    -       *   the workers in DispatcherConfig.
    +       * the workers in DispatcherConfig.
            * * Each client only reads from the local tf.data service worker.
    +       *
            * Shards by input files (each worker will get a set of files to process).
            * When this option is selected, make sure that there is at least as many
            * files as workers. If there are fewer input files than workers, a runtime
    @@ -308,6 +326,15 @@ public enum ShardingPolicy
           UNRECOGNIZED(-1),
           ;
     
    +      static {
    +        com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +          com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +          /* major= */ 4,
    +          /* minor= */ 28,
    +          /* patch= */ 3,
    +          /* suffix= */ "",
    +          ShardingPolicy.class.getName());
    +      }
           /**
            * 
            * No sharding will be performed. Each worker produces the entire dataset
    @@ -334,8 +361,9 @@ public enum ShardingPolicy
            * The following are static sharding policies. The semantics are similar to
            * `tf.data.experimental.AutoShardPolicy`. These policies require:
            * * The tf.data service cluster has a fixed size, and you need to specify
    -       *   the workers in DispatcherConfig.
    +       * the workers in DispatcherConfig.
            * * Each client only reads from the local tf.data service worker.
    +       *
            * Shards by input files (each worker will get a set of files to process).
            * When this option is selected, make sure that there is at least as many
            * files as workers. If there are fewer input files than workers, a runtime
    @@ -463,7 +491,7 @@ private ShardingPolicy(int value) {
         }
     
         public static final int SHARDING_POLICY_FIELD_NUMBER = 1;
    -    private int shardingPolicy_;
    +    private int shardingPolicy_ = 0;
         /**
          * .tensorflow.data.ProcessingModeDef.ShardingPolicy sharding_policy = 1;
          * @return The enum numeric value on the wire for shardingPolicy.
    @@ -476,8 +504,7 @@ private ShardingPolicy(int value) {
          * @return The shardingPolicy.
          */
         @java.lang.Override public org.tensorflow.proto.data.DataService.ProcessingModeDef.ShardingPolicy getShardingPolicy() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.data.DataService.ProcessingModeDef.ShardingPolicy result = org.tensorflow.proto.data.DataService.ProcessingModeDef.ShardingPolicy.valueOf(shardingPolicy_);
    +      org.tensorflow.proto.data.DataService.ProcessingModeDef.ShardingPolicy result = org.tensorflow.proto.data.DataService.ProcessingModeDef.ShardingPolicy.forNumber(shardingPolicy_);
           return result == null ? org.tensorflow.proto.data.DataService.ProcessingModeDef.ShardingPolicy.UNRECOGNIZED : result;
         }
     
    @@ -579,39 +606,41 @@ public static org.tensorflow.proto.data.DataService.ProcessingModeDef parseFrom(
         }
         public static org.tensorflow.proto.data.DataService.ProcessingModeDef parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.DataService.ProcessingModeDef parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.data.DataService.ProcessingModeDef parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.data.DataService.ProcessingModeDef parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.data.DataService.ProcessingModeDef parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.DataService.ProcessingModeDef parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -631,7 +660,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -643,7 +672,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.data.ProcessingModeDef}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.data.ProcessingModeDef)
             org.tensorflow.proto.data.DataService.ProcessingModeDefOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -652,7 +681,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.data.DataService.internal_static_tensorflow_data_ProcessingModeDef_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -665,15 +694,15 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             shardingPolicy_ = 0;
    -
             return this;
           }
     
    @@ -700,43 +729,18 @@ public org.tensorflow.proto.data.DataService.ProcessingModeDef build() {
           @java.lang.Override
           public org.tensorflow.proto.data.DataService.ProcessingModeDef buildPartial() {
             org.tensorflow.proto.data.DataService.ProcessingModeDef result = new org.tensorflow.proto.data.DataService.ProcessingModeDef(this);
    -        result.shardingPolicy_ = shardingPolicy_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.data.DataService.ProcessingModeDef result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.shardingPolicy_ = shardingPolicy_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.data.DataService.ProcessingModeDef) {
    @@ -780,7 +784,7 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     shardingPolicy_ = input.readEnum();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   default: {
    @@ -798,6 +802,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private int shardingPolicy_ = 0;
           /**
    @@ -813,8 +818,8 @@ public Builder mergeFrom(
            * @return This builder for chaining.
            */
           public Builder setShardingPolicyValue(int value) {
    -        
             shardingPolicy_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -824,8 +829,7 @@ public Builder setShardingPolicyValue(int value) {
            */
           @java.lang.Override
           public org.tensorflow.proto.data.DataService.ProcessingModeDef.ShardingPolicy getShardingPolicy() {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.data.DataService.ProcessingModeDef.ShardingPolicy result = org.tensorflow.proto.data.DataService.ProcessingModeDef.ShardingPolicy.valueOf(shardingPolicy_);
    +        org.tensorflow.proto.data.DataService.ProcessingModeDef.ShardingPolicy result = org.tensorflow.proto.data.DataService.ProcessingModeDef.ShardingPolicy.forNumber(shardingPolicy_);
             return result == null ? org.tensorflow.proto.data.DataService.ProcessingModeDef.ShardingPolicy.UNRECOGNIZED : result;
           }
           /**
    @@ -837,7 +841,7 @@ public Builder setShardingPolicy(org.tensorflow.proto.data.DataService.Processin
             if (value == null) {
               throw new NullPointerException();
             }
    -        
    +        bitField0_ |= 0x00000001;
             shardingPolicy_ = value.getNumber();
             onChanged();
             return this;
    @@ -847,23 +851,11 @@ public Builder setShardingPolicy(org.tensorflow.proto.data.DataService.Processin
            * @return This builder for chaining.
            */
           public Builder clearShardingPolicy() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             shardingPolicy_ = 0;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.data.ProcessingModeDef)
         }
    @@ -960,7 +952,7 @@ public interface DataServiceMetadataOrBuilder extends
          */
         long getCardinality();
     
    -    public org.tensorflow.proto.data.DataService.DataServiceMetadata.OptionalElementSpecCase getOptionalElementSpecCase();
    +    org.tensorflow.proto.data.DataService.DataServiceMetadata.OptionalElementSpecCase getOptionalElementSpecCase();
       }
       /**
        * 
    @@ -971,37 +963,34 @@ public interface DataServiceMetadataOrBuilder extends
        * Protobuf type {@code tensorflow.data.DataServiceMetadata}
        */
       public static final class DataServiceMetadata extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.data.DataServiceMetadata)
           DataServiceMetadataOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        DataServiceMetadata.class.getName());
    +    }
         // Use DataServiceMetadata.newBuilder() to construct.
    -    private DataServiceMetadata(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private DataServiceMetadata(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private DataServiceMetadata() {
           compression_ = 0;
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new DataServiceMetadata();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.data.DataService.internal_static_tensorflow_data_DataServiceMetadata_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.data.DataService.internal_static_tensorflow_data_DataServiceMetadata_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -1027,15 +1016,33 @@ public enum Compression
           COMPRESSION_OFF(1),
           /**
            * 
    -       * Snappy compression as defined in tensorflow/core/platform/snappy.h.
    +       * AUTO compression, either none or snappy compression as defined in
    +       * tensorflow/core/platform/snappy.h.
            * 
    * * COMPRESSION_SNAPPY = 2; */ COMPRESSION_SNAPPY(2), + /** + *
    +       * Forced a snappy compression as in tensorflow/core/platform/snappy.h.
    +       * 
    + * + * COMPRESSION_FORCED_SNAPPY = 3; + */ + COMPRESSION_FORCED_SNAPPY(3), UNRECOGNIZED(-1), ; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + Compression.class.getName()); + } /** * COMPRESSION_UNSPECIFIED = 0; */ @@ -1050,12 +1057,21 @@ public enum Compression public static final int COMPRESSION_OFF_VALUE = 1; /** *
    -       * Snappy compression as defined in tensorflow/core/platform/snappy.h.
    +       * AUTO compression, either none or snappy compression as defined in
    +       * tensorflow/core/platform/snappy.h.
            * 
    * * COMPRESSION_SNAPPY = 2; */ public static final int COMPRESSION_SNAPPY_VALUE = 2; + /** + *
    +       * Forced a snappy compression as in tensorflow/core/platform/snappy.h.
    +       * 
    + * + * COMPRESSION_FORCED_SNAPPY = 3; + */ + public static final int COMPRESSION_FORCED_SNAPPY_VALUE = 3; public final int getNumber() { @@ -1085,6 +1101,7 @@ public static Compression forNumber(int value) { case 0: return COMPRESSION_UNSPECIFIED; case 1: return COMPRESSION_OFF; case 2: return COMPRESSION_SNAPPY; + case 3: return COMPRESSION_FORCED_SNAPPY; default: return null; } } @@ -1142,6 +1159,7 @@ private Compression(int value) { } private int optionalElementSpecCase_ = 0; + @SuppressWarnings("serial") private java.lang.Object optionalElementSpec_; public enum OptionalElementSpecCase implements com.google.protobuf.Internal.EnumLite, @@ -1210,7 +1228,7 @@ public com.google.protobuf.ByteString getElementSpec() { } public static final int COMPRESSION_FIELD_NUMBER = 2; - private int compression_; + private int compression_ = 0; /** * .tensorflow.data.DataServiceMetadata.Compression compression = 2; * @return The enum numeric value on the wire for compression. @@ -1223,13 +1241,12 @@ public com.google.protobuf.ByteString getElementSpec() { * @return The compression. */ @java.lang.Override public org.tensorflow.proto.data.DataService.DataServiceMetadata.Compression getCompression() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.data.DataService.DataServiceMetadata.Compression result = org.tensorflow.proto.data.DataService.DataServiceMetadata.Compression.valueOf(compression_); + org.tensorflow.proto.data.DataService.DataServiceMetadata.Compression result = org.tensorflow.proto.data.DataService.DataServiceMetadata.Compression.forNumber(compression_); return result == null ? org.tensorflow.proto.data.DataService.DataServiceMetadata.Compression.UNRECOGNIZED : result; } public static final int CARDINALITY_FIELD_NUMBER = 3; - private long cardinality_; + private long cardinality_ = 0L; /** *
          * Cardinality of the dataset.
    @@ -1379,39 +1396,41 @@ public static org.tensorflow.proto.data.DataService.DataServiceMetadata parseFro
         }
         public static org.tensorflow.proto.data.DataService.DataServiceMetadata parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.DataService.DataServiceMetadata parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.data.DataService.DataServiceMetadata parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.data.DataService.DataServiceMetadata parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.data.DataService.DataServiceMetadata parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.DataService.DataServiceMetadata parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -1431,7 +1450,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -1444,7 +1463,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.data.DataServiceMetadata}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.data.DataServiceMetadata)
             org.tensorflow.proto.data.DataService.DataServiceMetadataOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1453,7 +1472,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.data.DataService.internal_static_tensorflow_data_DataServiceMetadata_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -1466,17 +1485,16 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             compression_ = 0;
    -
             cardinality_ = 0L;
    -
             optionalElementSpecCase_ = 0;
             optionalElementSpec_ = null;
             return this;
    @@ -1505,48 +1523,27 @@ public org.tensorflow.proto.data.DataService.DataServiceMetadata build() {
           @java.lang.Override
           public org.tensorflow.proto.data.DataService.DataServiceMetadata buildPartial() {
             org.tensorflow.proto.data.DataService.DataServiceMetadata result = new org.tensorflow.proto.data.DataService.DataServiceMetadata(this);
    -        if (optionalElementSpecCase_ == 1) {
    -          result.optionalElementSpec_ = optionalElementSpec_;
    -        }
    -        result.compression_ = compression_;
    -        result.cardinality_ = cardinality_;
    -        result.optionalElementSpecCase_ = optionalElementSpecCase_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        buildPartialOneofs(result);
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    +      private void buildPartial0(org.tensorflow.proto.data.DataService.DataServiceMetadata result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.compression_ = compression_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.cardinality_ = cardinality_;
    +        }
           }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +
    +      private void buildPartialOneofs(org.tensorflow.proto.data.DataService.DataServiceMetadata result) {
    +        result.optionalElementSpecCase_ = optionalElementSpecCase_;
    +        result.optionalElementSpec_ = this.optionalElementSpec_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.data.DataService.DataServiceMetadata) {
    @@ -1607,12 +1604,12 @@ public Builder mergeFrom(
                   } // case 10
                   case 16: {
                     compression_ = input.readEnum();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 16
                   case 24: {
                     cardinality_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 24
                   default: {
    @@ -1645,6 +1642,7 @@ public Builder clearOptionalElementSpec() {
             return this;
           }
     
    +      private int bitField0_;
     
           /**
            * 
    @@ -1681,10 +1679,8 @@ public com.google.protobuf.ByteString getElementSpec() {
            * @return This builder for chaining.
            */
           public Builder setElementSpec(com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  optionalElementSpecCase_ = 1;
    +        if (value == null) { throw new NullPointerException(); }
    +        optionalElementSpecCase_ = 1;
             optionalElementSpec_ = value;
             onChanged();
             return this;
    @@ -1720,8 +1716,8 @@ public Builder clearElementSpec() {
            * @return This builder for chaining.
            */
           public Builder setCompressionValue(int value) {
    -        
             compression_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1731,8 +1727,7 @@ public Builder setCompressionValue(int value) {
            */
           @java.lang.Override
           public org.tensorflow.proto.data.DataService.DataServiceMetadata.Compression getCompression() {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.data.DataService.DataServiceMetadata.Compression result = org.tensorflow.proto.data.DataService.DataServiceMetadata.Compression.valueOf(compression_);
    +        org.tensorflow.proto.data.DataService.DataServiceMetadata.Compression result = org.tensorflow.proto.data.DataService.DataServiceMetadata.Compression.forNumber(compression_);
             return result == null ? org.tensorflow.proto.data.DataService.DataServiceMetadata.Compression.UNRECOGNIZED : result;
           }
           /**
    @@ -1744,7 +1739,7 @@ public Builder setCompression(org.tensorflow.proto.data.DataService.DataServiceM
             if (value == null) {
               throw new NullPointerException();
             }
    -        
    +        bitField0_ |= 0x00000002;
             compression_ = value.getNumber();
             onChanged();
             return this;
    @@ -1754,7 +1749,7 @@ public Builder setCompression(org.tensorflow.proto.data.DataService.DataServiceM
            * @return This builder for chaining.
            */
           public Builder clearCompression() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000002);
             compression_ = 0;
             onChanged();
             return this;
    @@ -1783,8 +1778,9 @@ public long getCardinality() {
            * @return This builder for chaining.
            */
           public Builder setCardinality(long value) {
    -        
    +
             cardinality_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1797,23 +1793,11 @@ public Builder setCardinality(long value) {
            * @return This builder for chaining.
            */
           public Builder clearCardinality() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000004);
             cardinality_ = 0L;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.data.DataServiceMetadata)
         }
    @@ -1886,37 +1870,34 @@ public interface CrossTrainerCacheOptionsOrBuilder extends
        * Protobuf type {@code tensorflow.data.CrossTrainerCacheOptions}
        */
       public static final class CrossTrainerCacheOptions extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.data.CrossTrainerCacheOptions)
           CrossTrainerCacheOptionsOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        CrossTrainerCacheOptions.class.getName());
    +    }
         // Use CrossTrainerCacheOptions.newBuilder() to construct.
    -    private CrossTrainerCacheOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private CrossTrainerCacheOptions(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private CrossTrainerCacheOptions() {
           trainerId_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new CrossTrainerCacheOptions();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.data.DataService.internal_static_tensorflow_data_CrossTrainerCacheOptions_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.data.DataService.internal_static_tensorflow_data_CrossTrainerCacheOptions_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -1924,7 +1905,8 @@ protected java.lang.Object newInstance(
         }
     
         public static final int TRAINER_ID_FIELD_NUMBER = 1;
    -    private volatile java.lang.Object trainerId_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object trainerId_ = "";
         /**
          * string trainer_id = 1;
          * @return The trainerId.
    @@ -1975,8 +1957,8 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(trainerId_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, trainerId_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(trainerId_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, trainerId_);
           }
           getUnknownFields().writeTo(output);
         }
    @@ -1987,8 +1969,8 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(trainerId_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, trainerId_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(trainerId_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, trainerId_);
           }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
    @@ -2059,39 +2041,41 @@ public static org.tensorflow.proto.data.DataService.CrossTrainerCacheOptions par
         }
         public static org.tensorflow.proto.data.DataService.CrossTrainerCacheOptions parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.DataService.CrossTrainerCacheOptions parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.data.DataService.CrossTrainerCacheOptions parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.data.DataService.CrossTrainerCacheOptions parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.data.DataService.CrossTrainerCacheOptions parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.DataService.CrossTrainerCacheOptions parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -2111,7 +2095,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -2119,7 +2103,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.data.CrossTrainerCacheOptions}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.data.CrossTrainerCacheOptions)
             org.tensorflow.proto.data.DataService.CrossTrainerCacheOptionsOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -2128,7 +2112,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.data.DataService.internal_static_tensorflow_data_CrossTrainerCacheOptions_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -2141,15 +2125,15 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             trainerId_ = "";
    -
             return this;
           }
     
    @@ -2176,43 +2160,18 @@ public org.tensorflow.proto.data.DataService.CrossTrainerCacheOptions build() {
           @java.lang.Override
           public org.tensorflow.proto.data.DataService.CrossTrainerCacheOptions buildPartial() {
             org.tensorflow.proto.data.DataService.CrossTrainerCacheOptions result = new org.tensorflow.proto.data.DataService.CrossTrainerCacheOptions(this);
    -        result.trainerId_ = trainerId_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.data.DataService.CrossTrainerCacheOptions result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.trainerId_ = trainerId_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.data.DataService.CrossTrainerCacheOptions) {
    @@ -2227,6 +2186,7 @@ public Builder mergeFrom(org.tensorflow.proto.data.DataService.CrossTrainerCache
             if (other == org.tensorflow.proto.data.DataService.CrossTrainerCacheOptions.getDefaultInstance()) return this;
             if (!other.getTrainerId().isEmpty()) {
               trainerId_ = other.trainerId_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             this.mergeUnknownFields(other.getUnknownFields());
    @@ -2257,7 +2217,7 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     trainerId_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   default: {
    @@ -2275,6 +2235,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private java.lang.Object trainerId_ = "";
           /**
    @@ -2317,11 +2278,9 @@ public java.lang.String getTrainerId() {
            */
           public Builder setTrainerId(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             trainerId_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -2330,8 +2289,8 @@ public Builder setTrainerId(
            * @return This builder for chaining.
            */
           public Builder clearTrainerId() {
    -        
             trainerId_ = getDefaultInstance().getTrainerId();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -2342,27 +2301,13 @@ public Builder clearTrainerId() {
            */
           public Builder setTrainerIdBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             trainerId_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.data.CrossTrainerCacheOptions)
         }
    @@ -2439,37 +2384,34 @@ public interface DataServiceConfigOrBuilder extends
        * Protobuf type {@code tensorflow.data.DataServiceConfig}
        */
       public static final class DataServiceConfig extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.data.DataServiceConfig)
           DataServiceConfigOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        DataServiceConfig.class.getName());
    +    }
         // Use DataServiceConfig.newBuilder() to construct.
    -    private DataServiceConfig(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private DataServiceConfig(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private DataServiceConfig() {
           deploymentMode_ = 0;
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new DataServiceConfig();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.data.DataService.internal_static_tensorflow_data_DataServiceConfig_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.data.DataService.internal_static_tensorflow_data_DataServiceConfig_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -2477,7 +2419,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int DEPLOYMENT_MODE_FIELD_NUMBER = 1;
    -    private int deploymentMode_;
    +    private int deploymentMode_ = 0;
         /**
          * .tensorflow.data.DeploymentMode deployment_mode = 1;
          * @return The enum numeric value on the wire for deploymentMode.
    @@ -2490,8 +2432,7 @@ protected java.lang.Object newInstance(
          * @return The deploymentMode.
          */
         @java.lang.Override public org.tensorflow.proto.data.DataService.DeploymentMode getDeploymentMode() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.data.DataService.DeploymentMode result = org.tensorflow.proto.data.DataService.DeploymentMode.valueOf(deploymentMode_);
    +      org.tensorflow.proto.data.DataService.DeploymentMode result = org.tensorflow.proto.data.DataService.DeploymentMode.forNumber(deploymentMode_);
           return result == null ? org.tensorflow.proto.data.DataService.DeploymentMode.UNRECOGNIZED : result;
         }
     
    @@ -2593,39 +2534,41 @@ public static org.tensorflow.proto.data.DataService.DataServiceConfig parseFrom(
         }
         public static org.tensorflow.proto.data.DataService.DataServiceConfig parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.DataService.DataServiceConfig parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.data.DataService.DataServiceConfig parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.data.DataService.DataServiceConfig parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.data.DataService.DataServiceConfig parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.DataService.DataServiceConfig parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -2645,7 +2588,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -2658,7 +2601,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.data.DataServiceConfig}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.data.DataServiceConfig)
             org.tensorflow.proto.data.DataService.DataServiceConfigOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -2667,7 +2610,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.data.DataService.internal_static_tensorflow_data_DataServiceConfig_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -2680,15 +2623,15 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             deploymentMode_ = 0;
    -
             return this;
           }
     
    @@ -2715,43 +2658,18 @@ public org.tensorflow.proto.data.DataService.DataServiceConfig build() {
           @java.lang.Override
           public org.tensorflow.proto.data.DataService.DataServiceConfig buildPartial() {
             org.tensorflow.proto.data.DataService.DataServiceConfig result = new org.tensorflow.proto.data.DataService.DataServiceConfig(this);
    -        result.deploymentMode_ = deploymentMode_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.data.DataService.DataServiceConfig result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.deploymentMode_ = deploymentMode_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.data.DataService.DataServiceConfig) {
    @@ -2795,7 +2713,7 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     deploymentMode_ = input.readEnum();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   default: {
    @@ -2813,6 +2731,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private int deploymentMode_ = 0;
           /**
    @@ -2828,8 +2747,8 @@ public Builder mergeFrom(
            * @return This builder for chaining.
            */
           public Builder setDeploymentModeValue(int value) {
    -        
             deploymentMode_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -2839,8 +2758,7 @@ public Builder setDeploymentModeValue(int value) {
            */
           @java.lang.Override
           public org.tensorflow.proto.data.DataService.DeploymentMode getDeploymentMode() {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.data.DataService.DeploymentMode result = org.tensorflow.proto.data.DataService.DeploymentMode.valueOf(deploymentMode_);
    +        org.tensorflow.proto.data.DataService.DeploymentMode result = org.tensorflow.proto.data.DataService.DeploymentMode.forNumber(deploymentMode_);
             return result == null ? org.tensorflow.proto.data.DataService.DeploymentMode.UNRECOGNIZED : result;
           }
           /**
    @@ -2852,7 +2770,7 @@ public Builder setDeploymentMode(org.tensorflow.proto.data.DataService.Deploymen
             if (value == null) {
               throw new NullPointerException();
             }
    -        
    +        bitField0_ |= 0x00000001;
             deploymentMode_ = value.getNumber();
             onChanged();
             return this;
    @@ -2862,23 +2780,11 @@ public Builder setDeploymentMode(org.tensorflow.proto.data.DataService.Deploymen
            * @return This builder for chaining.
            */
           public Builder clearDeploymentMode() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             deploymentMode_ = 0;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.data.DataServiceConfig)
         }
    @@ -2934,22 +2840,22 @@ public org.tensorflow.proto.data.DataService.DataServiceConfig getDefaultInstanc
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_data_ProcessingModeDef_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_data_ProcessingModeDef_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_data_DataServiceMetadata_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_data_DataServiceMetadata_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_data_CrossTrainerCacheOptions_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_data_CrossTrainerCacheOptions_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_data_DataServiceConfig_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_data_DataServiceConfig_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -2966,23 +2872,24 @@ public org.tensorflow.proto.data.DataService.DataServiceConfig getDefaultInstanc
           "ow.data.ProcessingModeDef.ShardingPolicy" +
           "\"V\n\016ShardingPolicy\022\007\n\003OFF\020\000\022\013\n\007DYNAMIC\020\001" +
           "\022\010\n\004FILE\020\002\022\010\n\004DATA\020\003\022\020\n\014FILE_OR_DATA\020\004\022\010" +
    -      "\n\004HINT\020\005\"\373\001\n\023DataServiceMetadata\022\026\n\014elem" +
    +      "\n\004HINT\020\005\"\232\002\n\023DataServiceMetadata\022\026\n\014elem" +
           "ent_spec\030\001 \001(\014H\000\022E\n\013compression\030\002 \001(\01620." +
           "tensorflow.data.DataServiceMetadata.Comp" +
    -      "ression\022\023\n\013cardinality\030\003 \001(\003\"W\n\013Compress" +
    +      "ression\022\023\n\013cardinality\030\003 \001(\003\"v\n\013Compress" +
           "ion\022\033\n\027COMPRESSION_UNSPECIFIED\020\000\022\023\n\017COMP" +
    -      "RESSION_OFF\020\001\022\026\n\022COMPRESSION_SNAPPY\020\002B\027\n" +
    -      "\025optional_element_spec\".\n\030CrossTrainerCa" +
    -      "cheOptions\022\022\n\ntrainer_id\030\001 \001(\t\"M\n\021DataSe" +
    -      "rviceConfig\0228\n\017deployment_mode\030\001 \001(\0162\037.t" +
    -      "ensorflow.data.DeploymentMode*\210\001\n\016Deploy" +
    -      "mentMode\022\037\n\033DEPLOYMENT_MODE_UNSPECIFIED\020" +
    -      "\000\022\035\n\031DEPLOYMENT_MODE_COLOCATED\020\001\022\032\n\026DEPL" +
    -      "OYMENT_MODE_REMOTE\020\002\022\032\n\026DEPLOYMENT_MODE_" +
    -      "HYBRID\020\003Br\n\031org.tensorflow.proto.dataZUg" +
    -      "ithub.com/tensorflow/tensorflow/tensorfl" +
    -      "ow/go/core/protobuf/for_core_protos_go_p" +
    -      "rotob\006proto3"
    +      "RESSION_OFF\020\001\022\026\n\022COMPRESSION_SNAPPY\020\002\022\035\n" +
    +      "\031COMPRESSION_FORCED_SNAPPY\020\003B\027\n\025optional" +
    +      "_element_spec\".\n\030CrossTrainerCacheOption" +
    +      "s\022\022\n\ntrainer_id\030\001 \001(\t\"M\n\021DataServiceConf" +
    +      "ig\0228\n\017deployment_mode\030\001 \001(\0162\037.tensorflow" +
    +      ".data.DeploymentMode*\210\001\n\016DeploymentMode\022" +
    +      "\037\n\033DEPLOYMENT_MODE_UNSPECIFIED\020\000\022\035\n\031DEPL" +
    +      "OYMENT_MODE_COLOCATED\020\001\022\032\n\026DEPLOYMENT_MO" +
    +      "DE_REMOTE\020\002\022\032\n\026DEPLOYMENT_MODE_HYBRID\020\003B" +
    +      "r\n\031org.tensorflow.proto.dataZUgithub.com" +
    +      "/tensorflow/tensorflow/tensorflow/go/cor" +
    +      "e/protobuf/for_core_protos_go_protob\006pro" +
    +      "to3"
         };
         descriptor = com.google.protobuf.Descriptors.FileDescriptor
           .internalBuildGeneratedFileFrom(descriptorData,
    @@ -2991,27 +2898,28 @@ public org.tensorflow.proto.data.DataService.DataServiceConfig getDefaultInstanc
         internal_static_tensorflow_data_ProcessingModeDef_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_data_ProcessingModeDef_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_data_ProcessingModeDef_descriptor,
             new java.lang.String[] { "ShardingPolicy", });
         internal_static_tensorflow_data_DataServiceMetadata_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_data_DataServiceMetadata_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_data_DataServiceMetadata_descriptor,
             new java.lang.String[] { "ElementSpec", "Compression", "Cardinality", "OptionalElementSpec", });
         internal_static_tensorflow_data_CrossTrainerCacheOptions_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_data_CrossTrainerCacheOptions_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_data_CrossTrainerCacheOptions_descriptor,
             new java.lang.String[] { "TrainerId", });
         internal_static_tensorflow_data_DataServiceConfig_descriptor =
           getDescriptor().getMessageTypes().get(3);
         internal_static_tensorflow_data_DataServiceConfig_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_data_DataServiceConfig_descriptor,
             new java.lang.String[] { "DeploymentMode", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/Dataset.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/Dataset.java
    index 2b3101beb94..c381a210b70 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/Dataset.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/Dataset.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/dataset.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto.data;
     
     public final class Dataset {
       private Dataset() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      Dataset.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -113,12 +124,21 @@ public interface CompressedComponentMetadataOrBuilder extends
        * Protobuf type {@code tensorflow.data.CompressedComponentMetadata}
        */
       public static final class CompressedComponentMetadata extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.data.CompressedComponentMetadata)
           CompressedComponentMetadataOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        CompressedComponentMetadata.class.getName());
    +    }
         // Use CompressedComponentMetadata.newBuilder() to construct.
    -    private CompressedComponentMetadata(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private CompressedComponentMetadata(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private CompressedComponentMetadata() {
    @@ -126,33 +146,22 @@ private CompressedComponentMetadata() {
           uncompressedBytes_ = emptyLongList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new CompressedComponentMetadata();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.data.Dataset.internal_static_tensorflow_data_CompressedComponentMetadata_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.data.Dataset.internal_static_tensorflow_data_CompressedComponentMetadata_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
                   org.tensorflow.proto.data.Dataset.CompressedComponentMetadata.class, org.tensorflow.proto.data.Dataset.CompressedComponentMetadata.Builder.class);
         }
     
    +    private int bitField0_;
         public static final int DTYPE_FIELD_NUMBER = 1;
    -    private int dtype_;
    +    private int dtype_ = 0;
         /**
          * 
          * The dtype of the component tensor.
    @@ -173,8 +182,7 @@ protected java.lang.Object newInstance(
          * @return The dtype.
          */
         @java.lang.Override public org.tensorflow.proto.DataType getDtype() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
           return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
         }
     
    @@ -190,7 +198,7 @@ protected java.lang.Object newInstance(
          */
         @java.lang.Override
         public boolean hasTensorShape() {
    -      return tensorShape_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -213,11 +221,13 @@ public org.tensorflow.proto.TensorShapeProto getTensorShape() {
          */
         @java.lang.Override
         public org.tensorflow.proto.TensorShapeProtoOrBuilder getTensorShapeOrBuilder() {
    -      return getTensorShape();
    +      return tensorShape_ == null ? org.tensorflow.proto.TensorShapeProto.getDefaultInstance() : tensorShape_;
         }
     
         public static final int UNCOMPRESSED_BYTES_FIELD_NUMBER = 4;
    -    private com.google.protobuf.Internal.LongList uncompressedBytes_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.Internal.LongList uncompressedBytes_ =
    +        emptyLongList();
         /**
          * 
          * The amount of uncompressed tensor data.
    @@ -286,7 +296,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (dtype_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) {
             output.writeEnum(1, dtype_);
           }
    -      if (tensorShape_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(2, getTensorShape());
           }
           if (getUncompressedBytesList().size() > 0) {
    @@ -309,7 +319,7 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeEnumSize(1, dtype_);
           }
    -      if (tensorShape_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(2, getTensorShape());
           }
    @@ -410,39 +420,41 @@ public static org.tensorflow.proto.data.Dataset.CompressedComponentMetadata pars
         }
         public static org.tensorflow.proto.data.Dataset.CompressedComponentMetadata parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.Dataset.CompressedComponentMetadata parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.data.Dataset.CompressedComponentMetadata parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.data.Dataset.CompressedComponentMetadata parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.data.Dataset.CompressedComponentMetadata parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.Dataset.CompressedComponentMetadata parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -462,7 +474,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -474,7 +486,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.data.CompressedComponentMetadata}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.data.CompressedComponentMetadata)
             org.tensorflow.proto.data.Dataset.CompressedComponentMetadataOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -483,7 +495,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.data.Dataset.internal_static_tensorflow_data_CompressedComponentMetadata_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -492,27 +504,31 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.data.Dataset.CompressedComponentMetadata.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getTensorShapeFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             dtype_ = 0;
    -
    -        if (tensorShapeBuilder_ == null) {
    -          tensorShape_ = null;
    -        } else {
    -          tensorShape_ = null;
    +        tensorShape_ = null;
    +        if (tensorShapeBuilder_ != null) {
    +          tensorShapeBuilder_.dispose();
               tensorShapeBuilder_ = null;
             }
             uncompressedBytes_ = emptyLongList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
             return this;
           }
     
    @@ -539,54 +555,30 @@ public org.tensorflow.proto.data.Dataset.CompressedComponentMetadata build() {
           @java.lang.Override
           public org.tensorflow.proto.data.Dataset.CompressedComponentMetadata buildPartial() {
             org.tensorflow.proto.data.Dataset.CompressedComponentMetadata result = new org.tensorflow.proto.data.Dataset.CompressedComponentMetadata(this);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartial0(org.tensorflow.proto.data.Dataset.CompressedComponentMetadata result) {
             int from_bitField0_ = bitField0_;
    -        result.dtype_ = dtype_;
    -        if (tensorShapeBuilder_ == null) {
    -          result.tensorShape_ = tensorShape_;
    -        } else {
    -          result.tensorShape_ = tensorShapeBuilder_.build();
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.dtype_ = dtype_;
    +        }
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.tensorShape_ = tensorShapeBuilder_ == null
    +              ? tensorShape_
    +              : tensorShapeBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
             }
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
               uncompressedBytes_.makeImmutable();
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          result.uncompressedBytes_ = uncompressedBytes_;
             }
    -        result.uncompressedBytes_ = uncompressedBytes_;
    -        onBuilt();
    -        return result;
    +        result.bitField0_ |= to_bitField0_;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    -      }
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.data.Dataset.CompressedComponentMetadata) {
    @@ -608,7 +600,8 @@ public Builder mergeFrom(org.tensorflow.proto.data.Dataset.CompressedComponentMe
             if (!other.uncompressedBytes_.isEmpty()) {
               if (uncompressedBytes_.isEmpty()) {
                 uncompressedBytes_ = other.uncompressedBytes_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            uncompressedBytes_.makeImmutable();
    +            bitField0_ |= 0x00000004;
               } else {
                 ensureUncompressedBytesIsMutable();
                 uncompressedBytes_.addAll(other.uncompressedBytes_);
    @@ -643,14 +636,14 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     dtype_ = input.readEnum();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   case 18: {
                     input.readMessage(
                         getTensorShapeFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 32: {
    @@ -708,8 +701,8 @@ public Builder mergeFrom(
            * @return This builder for chaining.
            */
           public Builder setDtypeValue(int value) {
    -        
             dtype_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -723,8 +716,7 @@ public Builder setDtypeValue(int value) {
            */
           @java.lang.Override
           public org.tensorflow.proto.DataType getDtype() {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +        org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
             return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
           }
           /**
    @@ -740,7 +732,7 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
             if (value == null) {
               throw new NullPointerException();
             }
    -        
    +        bitField0_ |= 0x00000001;
             dtype_ = value.getNumber();
             onChanged();
             return this;
    @@ -754,14 +746,14 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
            * @return This builder for chaining.
            */
           public Builder clearDtype() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             dtype_ = 0;
             onChanged();
             return this;
           }
     
           private org.tensorflow.proto.TensorShapeProto tensorShape_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> tensorShapeBuilder_;
           /**
            * 
    @@ -772,7 +764,7 @@ public Builder clearDtype() {
            * @return Whether the tensorShape field is set.
            */
           public boolean hasTensorShape() {
    -        return tensorShapeBuilder_ != null || tensorShape_ != null;
    +        return ((bitField0_ & 0x00000002) != 0);
           }
           /**
            * 
    @@ -802,11 +794,11 @@ public Builder setTensorShape(org.tensorflow.proto.TensorShapeProto value) {
                 throw new NullPointerException();
               }
               tensorShape_ = value;
    -          onChanged();
             } else {
               tensorShapeBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -820,11 +812,11 @@ public Builder setTensorShape(
               org.tensorflow.proto.TensorShapeProto.Builder builderForValue) {
             if (tensorShapeBuilder_ == null) {
               tensorShape_ = builderForValue.build();
    -          onChanged();
             } else {
               tensorShapeBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return this;
           }
           /**
    @@ -836,17 +828,20 @@ public Builder setTensorShape(
            */
           public Builder mergeTensorShape(org.tensorflow.proto.TensorShapeProto value) {
             if (tensorShapeBuilder_ == null) {
    -          if (tensorShape_ != null) {
    -            tensorShape_ =
    -              org.tensorflow.proto.TensorShapeProto.newBuilder(tensorShape_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000002) != 0) &&
    +            tensorShape_ != null &&
    +            tensorShape_ != org.tensorflow.proto.TensorShapeProto.getDefaultInstance()) {
    +            getTensorShapeBuilder().mergeFrom(value);
               } else {
                 tensorShape_ = value;
               }
    -          onChanged();
             } else {
               tensorShapeBuilder_.mergeFrom(value);
             }
    -
    +        if (tensorShape_ != null) {
    +          bitField0_ |= 0x00000002;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -857,14 +852,13 @@ public Builder mergeTensorShape(org.tensorflow.proto.TensorShapeProto value) {
            * .tensorflow.TensorShapeProto tensor_shape = 2;
            */
           public Builder clearTensorShape() {
    -        if (tensorShapeBuilder_ == null) {
    -          tensorShape_ = null;
    -          onChanged();
    -        } else {
    -          tensorShape_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000002);
    +        tensorShape_ = null;
    +        if (tensorShapeBuilder_ != null) {
    +          tensorShapeBuilder_.dispose();
               tensorShapeBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -875,7 +869,7 @@ public Builder clearTensorShape() {
            * .tensorflow.TensorShapeProto tensor_shape = 2;
            */
           public org.tensorflow.proto.TensorShapeProto.Builder getTensorShapeBuilder() {
    -        
    +        bitField0_ |= 0x00000002;
             onChanged();
             return getTensorShapeFieldBuilder().getBuilder();
           }
    @@ -901,11 +895,11 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getTensorShapeOrBuilder()
            *
            * .tensorflow.TensorShapeProto tensor_shape = 2;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> 
               getTensorShapeFieldBuilder() {
             if (tensorShapeBuilder_ == null) {
    -          tensorShapeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          tensorShapeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>(
                       getTensorShape(),
                       getParentForChildren(),
    @@ -917,10 +911,10 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getTensorShapeOrBuilder()
     
           private com.google.protobuf.Internal.LongList uncompressedBytes_ = emptyLongList();
           private void ensureUncompressedBytesIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    -          uncompressedBytes_ = mutableCopy(uncompressedBytes_);
    -          bitField0_ |= 0x00000001;
    -         }
    +        if (!uncompressedBytes_.isModifiable()) {
    +          uncompressedBytes_ = makeMutableCopy(uncompressedBytes_);
    +        }
    +        bitField0_ |= 0x00000004;
           }
           /**
            * 
    @@ -936,8 +930,8 @@ private void ensureUncompressedBytesIsMutable() {
            */
           public java.util.List
               getUncompressedBytesList() {
    -        return ((bitField0_ & 0x00000001) != 0) ?
    -                 java.util.Collections.unmodifiableList(uncompressedBytes_) : uncompressedBytes_;
    +        uncompressedBytes_.makeImmutable();
    +        return uncompressedBytes_;
           }
           /**
            * 
    @@ -986,8 +980,10 @@ public long getUncompressedBytes(int index) {
            */
           public Builder setUncompressedBytes(
               int index, long value) {
    +
             ensureUncompressedBytesIsMutable();
             uncompressedBytes_.setLong(index, value);
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1005,8 +1001,10 @@ public Builder setUncompressedBytes(
            * @return This builder for chaining.
            */
           public Builder addUncompressedBytes(long value) {
    +
             ensureUncompressedBytesIsMutable();
             uncompressedBytes_.addLong(value);
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1028,6 +1026,7 @@ public Builder addAllUncompressedBytes(
             ensureUncompressedBytesIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, uncompressedBytes_);
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1045,22 +1044,10 @@ public Builder addAllUncompressedBytes(
            */
           public Builder clearUncompressedBytes() {
             uncompressedBytes_ = emptyLongList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000004);
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.data.CompressedComponentMetadata)
         }
    @@ -1189,12 +1176,21 @@ org.tensorflow.proto.data.Dataset.CompressedComponentMetadataOrBuilder getCompon
        * Protobuf type {@code tensorflow.data.CompressedElement}
        */
       public static final class CompressedElement extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.data.CompressedElement)
           CompressedElementOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        CompressedElement.class.getName());
    +    }
         // Use CompressedElement.newBuilder() to construct.
    -    private CompressedElement(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private CompressedElement(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private CompressedElement() {
    @@ -1202,25 +1198,13 @@ private CompressedElement() {
           componentMetadata_ = java.util.Collections.emptyList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new CompressedElement();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.data.Dataset.internal_static_tensorflow_data_CompressedElement_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.data.Dataset.internal_static_tensorflow_data_CompressedElement_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -1228,7 +1212,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int DATA_FIELD_NUMBER = 1;
    -    private com.google.protobuf.ByteString data_;
    +    private com.google.protobuf.ByteString data_ = com.google.protobuf.ByteString.EMPTY;
         /**
          * 
          * Compressed tensor bytes for all components of the element.
    @@ -1243,6 +1227,7 @@ public com.google.protobuf.ByteString getData() {
         }
     
         public static final int COMPONENT_METADATA_FIELD_NUMBER = 2;
    +    @SuppressWarnings("serial")
         private java.util.List componentMetadata_;
         /**
          * 
    @@ -1303,7 +1288,7 @@ public org.tensorflow.proto.data.Dataset.CompressedComponentMetadataOrBuilder ge
         }
     
         public static final int VERSION_FIELD_NUMBER = 3;
    -    private int version_;
    +    private int version_ = 0;
         /**
          * 
          * Version of the CompressedElement. CompressedElements may be stored on disk
    @@ -1444,39 +1429,41 @@ public static org.tensorflow.proto.data.Dataset.CompressedElement parseFrom(
         }
         public static org.tensorflow.proto.data.Dataset.CompressedElement parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.Dataset.CompressedElement parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.data.Dataset.CompressedElement parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.data.Dataset.CompressedElement parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.data.Dataset.CompressedElement parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.Dataset.CompressedElement parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -1496,7 +1483,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -1504,7 +1491,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.data.CompressedElement}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.data.CompressedElement)
             org.tensorflow.proto.data.Dataset.CompressedElementOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1513,7 +1500,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.data.Dataset.internal_static_tensorflow_data_CompressedElement_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -1526,24 +1513,23 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             data_ = com.google.protobuf.ByteString.EMPTY;
    -
             if (componentMetadataBuilder_ == null) {
               componentMetadata_ = java.util.Collections.emptyList();
             } else {
               componentMetadata_ = null;
               componentMetadataBuilder_.clear();
             }
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000002);
             version_ = 0;
    -
             return this;
           }
     
    @@ -1570,54 +1556,34 @@ public org.tensorflow.proto.data.Dataset.CompressedElement build() {
           @java.lang.Override
           public org.tensorflow.proto.data.Dataset.CompressedElement buildPartial() {
             org.tensorflow.proto.data.Dataset.CompressedElement result = new org.tensorflow.proto.data.Dataset.CompressedElement(this);
    -        int from_bitField0_ = bitField0_;
    -        result.data_ = data_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.data.Dataset.CompressedElement result) {
             if (componentMetadataBuilder_ == null) {
    -          if (((bitField0_ & 0x00000001) != 0)) {
    +          if (((bitField0_ & 0x00000002) != 0)) {
                 componentMetadata_ = java.util.Collections.unmodifiableList(componentMetadata_);
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000002);
               }
               result.componentMetadata_ = componentMetadata_;
             } else {
               result.componentMetadata_ = componentMetadataBuilder_.build();
             }
    -        result.version_ = version_;
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.data.Dataset.CompressedElement result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.data_ = data_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.version_ = version_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.data.Dataset.CompressedElement) {
    @@ -1637,7 +1603,7 @@ public Builder mergeFrom(org.tensorflow.proto.data.Dataset.CompressedElement oth
               if (!other.componentMetadata_.isEmpty()) {
                 if (componentMetadata_.isEmpty()) {
                   componentMetadata_ = other.componentMetadata_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000002);
                 } else {
                   ensureComponentMetadataIsMutable();
                   componentMetadata_.addAll(other.componentMetadata_);
    @@ -1650,9 +1616,9 @@ public Builder mergeFrom(org.tensorflow.proto.data.Dataset.CompressedElement oth
                   componentMetadataBuilder_.dispose();
                   componentMetadataBuilder_ = null;
                   componentMetadata_ = other.componentMetadata_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000002);
                   componentMetadataBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getComponentMetadataFieldBuilder() : null;
                 } else {
                   componentMetadataBuilder_.addAllMessages(other.componentMetadata_);
    @@ -1690,7 +1656,7 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     data_ = input.readBytes();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
    @@ -1708,7 +1674,7 @@ public Builder mergeFrom(
                   } // case 18
                   case 24: {
                     version_ = input.readInt32();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 24
                   default: {
    @@ -1751,11 +1717,9 @@ public com.google.protobuf.ByteString getData() {
            * @return This builder for chaining.
            */
           public Builder setData(com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             data_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -1768,7 +1732,7 @@ public Builder setData(com.google.protobuf.ByteString value) {
            * @return This builder for chaining.
            */
           public Builder clearData() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             data_ = getDefaultInstance().getData();
             onChanged();
             return this;
    @@ -1777,13 +1741,13 @@ public Builder clearData() {
           private java.util.List componentMetadata_ =
             java.util.Collections.emptyList();
           private void ensureComponentMetadataIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    +        if (!((bitField0_ & 0x00000002) != 0)) {
               componentMetadata_ = new java.util.ArrayList(componentMetadata_);
    -          bitField0_ |= 0x00000001;
    +          bitField0_ |= 0x00000002;
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.data.Dataset.CompressedComponentMetadata, org.tensorflow.proto.data.Dataset.CompressedComponentMetadata.Builder, org.tensorflow.proto.data.Dataset.CompressedComponentMetadataOrBuilder> componentMetadataBuilder_;
     
           /**
    @@ -1973,7 +1937,7 @@ public Builder addAllComponentMetadata(
           public Builder clearComponentMetadata() {
             if (componentMetadataBuilder_ == null) {
               componentMetadata_ = java.util.Collections.emptyList();
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000002);
               onChanged();
             } else {
               componentMetadataBuilder_.clear();
    @@ -2071,14 +2035,14 @@ public org.tensorflow.proto.data.Dataset.CompressedComponentMetadata.Builder add
                getComponentMetadataBuilderList() {
             return getComponentMetadataFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.data.Dataset.CompressedComponentMetadata, org.tensorflow.proto.data.Dataset.CompressedComponentMetadata.Builder, org.tensorflow.proto.data.Dataset.CompressedComponentMetadataOrBuilder> 
               getComponentMetadataFieldBuilder() {
             if (componentMetadataBuilder_ == null) {
    -          componentMetadataBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          componentMetadataBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.data.Dataset.CompressedComponentMetadata, org.tensorflow.proto.data.Dataset.CompressedComponentMetadata.Builder, org.tensorflow.proto.data.Dataset.CompressedComponentMetadataOrBuilder>(
                       componentMetadata_,
    -                  ((bitField0_ & 0x00000001) != 0),
    +                  ((bitField0_ & 0x00000002) != 0),
                       getParentForChildren(),
                       isClean());
               componentMetadata_ = null;
    @@ -2117,8 +2081,9 @@ public int getVersion() {
            * @return This builder for chaining.
            */
           public Builder setVersion(int value) {
    -        
    +
             version_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -2135,23 +2100,11 @@ public Builder setVersion(int value) {
            * @return This builder for chaining.
            */
           public Builder clearVersion() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000004);
             version_ = 0;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.data.CompressedElement)
         }
    @@ -2240,37 +2193,34 @@ org.tensorflow.proto.TensorProtoOrBuilder getComponentsOrBuilder(
        * Protobuf type {@code tensorflow.data.UncompressedElement}
        */
       public static final class UncompressedElement extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.data.UncompressedElement)
           UncompressedElementOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        UncompressedElement.class.getName());
    +    }
         // Use UncompressedElement.newBuilder() to construct.
    -    private UncompressedElement(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private UncompressedElement(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private UncompressedElement() {
           components_ = java.util.Collections.emptyList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new UncompressedElement();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.data.Dataset.internal_static_tensorflow_data_UncompressedElement_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.data.Dataset.internal_static_tensorflow_data_UncompressedElement_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -2278,6 +2228,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int COMPONENTS_FIELD_NUMBER = 1;
    +    @SuppressWarnings("serial")
         private java.util.List components_;
         /**
          * repeated .tensorflow.TensorProto components = 1;
    @@ -2418,39 +2369,41 @@ public static org.tensorflow.proto.data.Dataset.UncompressedElement parseFrom(
         }
         public static org.tensorflow.proto.data.Dataset.UncompressedElement parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.Dataset.UncompressedElement parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.data.Dataset.UncompressedElement parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.data.Dataset.UncompressedElement parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.data.Dataset.UncompressedElement parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.Dataset.UncompressedElement parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -2470,7 +2423,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -2482,7 +2435,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.data.UncompressedElement}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.data.UncompressedElement)
             org.tensorflow.proto.data.Dataset.UncompressedElementOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -2491,7 +2444,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.data.Dataset.internal_static_tensorflow_data_UncompressedElement_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -2504,13 +2457,14 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             if (componentsBuilder_ == null) {
               components_ = java.util.Collections.emptyList();
             } else {
    @@ -2544,7 +2498,13 @@ public org.tensorflow.proto.data.Dataset.UncompressedElement build() {
           @java.lang.Override
           public org.tensorflow.proto.data.Dataset.UncompressedElement buildPartial() {
             org.tensorflow.proto.data.Dataset.UncompressedElement result = new org.tensorflow.proto.data.Dataset.UncompressedElement(this);
    -        int from_bitField0_ = bitField0_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.data.Dataset.UncompressedElement result) {
             if (componentsBuilder_ == null) {
               if (((bitField0_ & 0x00000001) != 0)) {
                 components_ = java.util.Collections.unmodifiableList(components_);
    @@ -2554,42 +2514,12 @@ public org.tensorflow.proto.data.Dataset.UncompressedElement buildPartial() {
             } else {
               result.components_ = componentsBuilder_.build();
             }
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.data.Dataset.UncompressedElement result) {
    +        int from_bitField0_ = bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.data.Dataset.UncompressedElement) {
    @@ -2621,7 +2551,7 @@ public Builder mergeFrom(org.tensorflow.proto.data.Dataset.UncompressedElement o
                   components_ = other.components_;
                   bitField0_ = (bitField0_ & ~0x00000001);
                   componentsBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getComponentsFieldBuilder() : null;
                 } else {
                   componentsBuilder_.addAllMessages(other.components_);
    @@ -2693,7 +2623,7 @@ private void ensureComponentsIsMutable() {
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> componentsBuilder_;
     
           /**
    @@ -2909,11 +2839,11 @@ public org.tensorflow.proto.TensorProto.Builder addComponentsBuilder(
                getComponentsBuilderList() {
             return getComponentsFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> 
               getComponentsFieldBuilder() {
             if (componentsBuilder_ == null) {
    -          componentsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          componentsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder>(
                       components_,
                       ((bitField0_ & 0x00000001) != 0),
    @@ -2923,18 +2853,6 @@ public org.tensorflow.proto.TensorProto.Builder addComponentsBuilder(
             }
             return componentsBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.data.UncompressedElement)
         }
    @@ -2990,17 +2908,17 @@ public org.tensorflow.proto.data.Dataset.UncompressedElement getDefaultInstanceF
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_data_CompressedComponentMetadata_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_data_CompressedComponentMetadata_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_data_CompressedElement_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_data_CompressedElement_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_data_UncompressedElement_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_data_UncompressedElement_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -3037,21 +2955,22 @@ public org.tensorflow.proto.data.Dataset.UncompressedElement getDefaultInstanceF
         internal_static_tensorflow_data_CompressedComponentMetadata_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_data_CompressedComponentMetadata_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_data_CompressedComponentMetadata_descriptor,
             new java.lang.String[] { "Dtype", "TensorShape", "UncompressedBytes", });
         internal_static_tensorflow_data_CompressedElement_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_data_CompressedElement_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_data_CompressedElement_descriptor,
             new java.lang.String[] { "Data", "ComponentMetadata", "Version", });
         internal_static_tensorflow_data_UncompressedElement_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_data_UncompressedElement_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_data_UncompressedElement_descriptor,
             new java.lang.String[] { "Components", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.TensorProtos.getDescriptor();
         org.tensorflow.proto.TensorShapeProtos.getDescriptor();
         org.tensorflow.proto.TypesProtos.getDescriptor();
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/DatasetMetadata.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/DatasetMetadata.java
    index 4295ac2f661..984536f55e7 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/DatasetMetadata.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/DatasetMetadata.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/dataset_metadata.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto.data;
     
     public final class DatasetMetadata {
       private DatasetMetadata() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      DatasetMetadata.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -23,46 +34,56 @@ public interface MetadataOrBuilder extends
          * @return The name.
          */
         com.google.protobuf.ByteString getName();
    +
    +    /**
    +     * string data_service_address = 2;
    +     * @return The dataServiceAddress.
    +     */
    +    java.lang.String getDataServiceAddress();
    +    /**
    +     * string data_service_address = 2;
    +     * @return The bytes for dataServiceAddress.
    +     */
    +    com.google.protobuf.ByteString
    +        getDataServiceAddressBytes();
       }
       /**
        * 
    -   * next: 2
    +   * next: 3
        * 
    * * Protobuf type {@code tensorflow.data.Metadata} */ public static final class Metadata extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.data.Metadata) MetadataOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + Metadata.class.getName()); + } // Use Metadata.newBuilder() to construct. - private Metadata(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private Metadata(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private Metadata() { name_ = com.google.protobuf.ByteString.EMPTY; + dataServiceAddress_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new Metadata(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.data.DatasetMetadata.internal_static_tensorflow_data_Metadata_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.data.DatasetMetadata.internal_static_tensorflow_data_Metadata_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -70,7 +91,7 @@ protected java.lang.Object newInstance( } public static final int NAME_FIELD_NUMBER = 1; - private com.google.protobuf.ByteString name_; + private com.google.protobuf.ByteString name_ = com.google.protobuf.ByteString.EMPTY; /** * bytes name = 1; * @return The name. @@ -80,6 +101,45 @@ public com.google.protobuf.ByteString getName() { return name_; } + public static final int DATA_SERVICE_ADDRESS_FIELD_NUMBER = 2; + @SuppressWarnings("serial") + private volatile java.lang.Object dataServiceAddress_ = ""; + /** + * string data_service_address = 2; + * @return The dataServiceAddress. + */ + @java.lang.Override + public java.lang.String getDataServiceAddress() { + java.lang.Object ref = dataServiceAddress_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + dataServiceAddress_ = s; + return s; + } + } + /** + * string data_service_address = 2; + * @return The bytes for dataServiceAddress. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getDataServiceAddressBytes() { + java.lang.Object ref = dataServiceAddress_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + dataServiceAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -97,6 +157,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (!name_.isEmpty()) { output.writeBytes(1, name_); } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(dataServiceAddress_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, dataServiceAddress_); + } getUnknownFields().writeTo(output); } @@ -110,6 +173,9 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeBytesSize(1, name_); } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(dataServiceAddress_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, dataServiceAddress_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -127,6 +193,8 @@ public boolean equals(final java.lang.Object obj) { if (!getName() .equals(other.getName())) return false; + if (!getDataServiceAddress() + .equals(other.getDataServiceAddress())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -140,6 +208,8 @@ public int hashCode() { hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + NAME_FIELD_NUMBER; hash = (53 * hash) + getName().hashCode(); + hash = (37 * hash) + DATA_SERVICE_ADDRESS_FIELD_NUMBER; + hash = (53 * hash) + getDataServiceAddress().hashCode(); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -179,39 +249,41 @@ public static org.tensorflow.proto.data.DatasetMetadata.Metadata parseFrom( } public static org.tensorflow.proto.data.DatasetMetadata.Metadata parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.data.DatasetMetadata.Metadata parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.data.DatasetMetadata.Metadata parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.data.DatasetMetadata.Metadata parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.data.DatasetMetadata.Metadata parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.data.DatasetMetadata.Metadata parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -231,19 +303,19 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
    -     * next: 2
    +     * next: 3
          * 
    * * Protobuf type {@code tensorflow.data.Metadata} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.data.Metadata) org.tensorflow.proto.data.DatasetMetadata.MetadataOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -252,7 +324,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.data.DatasetMetadata.internal_static_tensorflow_data_Metadata_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -265,15 +337,16 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; name_ = com.google.protobuf.ByteString.EMPTY; - + dataServiceAddress_ = ""; return this; } @@ -300,43 +373,21 @@ public org.tensorflow.proto.data.DatasetMetadata.Metadata build() { @java.lang.Override public org.tensorflow.proto.data.DatasetMetadata.Metadata buildPartial() { org.tensorflow.proto.data.DatasetMetadata.Metadata result = new org.tensorflow.proto.data.DatasetMetadata.Metadata(this); - result.name_ = name_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.data.DatasetMetadata.Metadata result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.name_ = name_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.dataServiceAddress_ = dataServiceAddress_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.data.DatasetMetadata.Metadata) { @@ -352,6 +403,11 @@ public Builder mergeFrom(org.tensorflow.proto.data.DatasetMetadata.Metadata othe if (other.getName() != com.google.protobuf.ByteString.EMPTY) { setName(other.getName()); } + if (!other.getDataServiceAddress().isEmpty()) { + dataServiceAddress_ = other.dataServiceAddress_; + bitField0_ |= 0x00000002; + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -380,9 +436,14 @@ public Builder mergeFrom( break; case 10: { name_ = input.readBytes(); - + bitField0_ |= 0x00000001; break; } // case 10 + case 18: { + dataServiceAddress_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag @@ -398,6 +459,7 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private com.google.protobuf.ByteString name_ = com.google.protobuf.ByteString.EMPTY; /** @@ -414,11 +476,9 @@ public com.google.protobuf.ByteString getName() { * @return This builder for chaining. */ public Builder setName(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } name_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -427,23 +487,83 @@ public Builder setName(com.google.protobuf.ByteString value) { * @return This builder for chaining. */ public Builder clearName() { - + bitField0_ = (bitField0_ & ~0x00000001); name_ = getDefaultInstance().getName(); onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + private java.lang.Object dataServiceAddress_ = ""; + /** + * string data_service_address = 2; + * @return The dataServiceAddress. + */ + public java.lang.String getDataServiceAddress() { + java.lang.Object ref = dataServiceAddress_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + dataServiceAddress_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * string data_service_address = 2; + * @return The bytes for dataServiceAddress. + */ + public com.google.protobuf.ByteString + getDataServiceAddressBytes() { + java.lang.Object ref = dataServiceAddress_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + dataServiceAddress_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * string data_service_address = 2; + * @param value The dataServiceAddress to set. + * @return This builder for chaining. + */ + public Builder setDataServiceAddress( + java.lang.String value) { + if (value == null) { throw new NullPointerException(); } + dataServiceAddress_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + /** + * string data_service_address = 2; + * @return This builder for chaining. + */ + public Builder clearDataServiceAddress() { + dataServiceAddress_ = getDefaultInstance().getDataServiceAddress(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + /** + * string data_service_address = 2; + * @param value The bytes for dataServiceAddress to set. + * @return This builder for chaining. + */ + public Builder setDataServiceAddressBytes( + com.google.protobuf.ByteString value) { + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); + dataServiceAddress_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; } - // @@protoc_insertion_point(builder_scope:tensorflow.data.Metadata) } @@ -499,7 +619,7 @@ public org.tensorflow.proto.data.DatasetMetadata.Metadata getDefaultInstanceForT private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_data_Metadata_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_data_Metadata_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor @@ -511,11 +631,12 @@ public org.tensorflow.proto.data.DatasetMetadata.Metadata getDefaultInstanceForT static { java.lang.String[] descriptorData = { "\n0tensorflow/core/framework/dataset_meta" + - "data.proto\022\017tensorflow.data\"\030\n\010Metadata\022" + - "\014\n\004name\030\001 \001(\014Bt\n\031org.tensorflow.proto.da" + - "taZWgithub.com/tensorflow/tensorflow/ten" + - "sorflow/go/core/framework/dataset_metada" + - "ta_go_protob\006proto3" + "data.proto\022\017tensorflow.data\"6\n\010Metadata\022" + + "\014\n\004name\030\001 \001(\014\022\034\n\024data_service_address\030\002 " + + "\001(\tBt\n\031org.tensorflow.proto.dataZWgithub" + + ".com/tensorflow/tensorflow/tensorflow/go" + + "/core/framework/dataset_metadata_go_prot" + + "ob\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, @@ -524,9 +645,10 @@ public org.tensorflow.proto.data.DatasetMetadata.Metadata getDefaultInstanceForT internal_static_tensorflow_data_Metadata_descriptor = getDescriptor().getMessageTypes().get(0); internal_static_tensorflow_data_Metadata_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_data_Metadata_descriptor, - new java.lang.String[] { "Name", }); + new java.lang.String[] { "Name", "DataServiceAddress", }); + descriptor.resolveAllFeaturesImmutable(); } // @@protoc_insertion_point(outer_class_scope) diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/DatasetOptions.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/DatasetOptions.java index c7d43294b14..da4fbd9787b 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/DatasetOptions.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/DatasetOptions.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/framework/dataset_options.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto.data; public final class DatasetOptions { private DatasetOptions() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + DatasetOptions.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -73,6 +84,15 @@ public enum AutoShardPolicy UNRECOGNIZED(-1), ; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + AutoShardPolicy.class.getName()); + } /** *
          * AUTO: Attempts FILE-based sharding, falling back to DATA-based sharding.
    @@ -231,6 +251,15 @@ public enum ExternalStatePolicy
         UNRECOGNIZED(-1),
         ;
     
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        ExternalStatePolicy.class.getName());
    +    }
         /**
          * POLICY_WARN = 0;
          */
    @@ -381,52 +410,75 @@ public interface AutotuneOptionsOrBuilder extends
          */
         org.tensorflow.proto.data.model.Model.AutotuneAlgorithm getAutotuneAlgorithm();
     
    -    public org.tensorflow.proto.data.DatasetOptions.AutotuneOptions.OptionalEnabledCase getOptionalEnabledCase();
    +    /**
    +     * int64 initial_parallelism = 5;
    +     * @return Whether the initialParallelism field is set.
    +     */
    +    boolean hasInitialParallelism();
    +    /**
    +     * int64 initial_parallelism = 5;
    +     * @return The initialParallelism.
    +     */
    +    long getInitialParallelism();
    +
    +    /**
    +     * int64 min_parallelism = 6;
    +     * @return Whether the minParallelism field is set.
    +     */
    +    boolean hasMinParallelism();
    +    /**
    +     * int64 min_parallelism = 6;
    +     * @return The minParallelism.
    +     */
    +    long getMinParallelism();
    +
    +    org.tensorflow.proto.data.DatasetOptions.AutotuneOptions.OptionalEnabledCase getOptionalEnabledCase();
     
    -    public org.tensorflow.proto.data.DatasetOptions.AutotuneOptions.OptionalCpuBudgetCase getOptionalCpuBudgetCase();
    +    org.tensorflow.proto.data.DatasetOptions.AutotuneOptions.OptionalCpuBudgetCase getOptionalCpuBudgetCase();
     
    -    public org.tensorflow.proto.data.DatasetOptions.AutotuneOptions.OptionalRamBudgetCase getOptionalRamBudgetCase();
    +    org.tensorflow.proto.data.DatasetOptions.AutotuneOptions.OptionalRamBudgetCase getOptionalRamBudgetCase();
     
    -    public org.tensorflow.proto.data.DatasetOptions.AutotuneOptions.OptionalAutotuneAlgorithmCase getOptionalAutotuneAlgorithmCase();
    +    org.tensorflow.proto.data.DatasetOptions.AutotuneOptions.OptionalAutotuneAlgorithmCase getOptionalAutotuneAlgorithmCase();
    +
    +    org.tensorflow.proto.data.DatasetOptions.AutotuneOptions.OptionalInitialParallelismCase getOptionalInitialParallelismCase();
    +
    +    org.tensorflow.proto.data.DatasetOptions.AutotuneOptions.OptionalMinParallelismCase getOptionalMinParallelismCase();
       }
       /**
        * 
    -   * next: 5
    +   * next: 7
        * 
    * * Protobuf type {@code tensorflow.data.AutotuneOptions} */ public static final class AutotuneOptions extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.data.AutotuneOptions) AutotuneOptionsOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + AutotuneOptions.class.getName()); + } // Use AutotuneOptions.newBuilder() to construct. - private AutotuneOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private AutotuneOptions(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private AutotuneOptions() { } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new AutotuneOptions(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_AutotuneOptions_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_AutotuneOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -434,6 +486,7 @@ protected java.lang.Object newInstance( } private int optionalEnabledCase_ = 0; + @SuppressWarnings("serial") private java.lang.Object optionalEnabled_; public enum OptionalEnabledCase implements com.google.protobuf.Internal.EnumLite, @@ -473,6 +526,7 @@ public int getNumber() { } private int optionalCpuBudgetCase_ = 0; + @SuppressWarnings("serial") private java.lang.Object optionalCpuBudget_; public enum OptionalCpuBudgetCase implements com.google.protobuf.Internal.EnumLite, @@ -512,6 +566,7 @@ public int getNumber() { } private int optionalRamBudgetCase_ = 0; + @SuppressWarnings("serial") private java.lang.Object optionalRamBudget_; public enum OptionalRamBudgetCase implements com.google.protobuf.Internal.EnumLite, @@ -551,6 +606,7 @@ public int getNumber() { } private int optionalAutotuneAlgorithmCase_ = 0; + @SuppressWarnings("serial") private java.lang.Object optionalAutotuneAlgorithm_; public enum OptionalAutotuneAlgorithmCase implements com.google.protobuf.Internal.EnumLite, @@ -589,6 +645,86 @@ public int getNumber() { optionalAutotuneAlgorithmCase_); } + private int optionalInitialParallelismCase_ = 0; + @SuppressWarnings("serial") + private java.lang.Object optionalInitialParallelism_; + public enum OptionalInitialParallelismCase + implements com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + INITIAL_PARALLELISM(5), + OPTIONALINITIALPARALLELISM_NOT_SET(0); + private final int value; + private OptionalInitialParallelismCase(int value) { + this.value = value; + } + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static OptionalInitialParallelismCase valueOf(int value) { + return forNumber(value); + } + + public static OptionalInitialParallelismCase forNumber(int value) { + switch (value) { + case 5: return INITIAL_PARALLELISM; + case 0: return OPTIONALINITIALPARALLELISM_NOT_SET; + default: return null; + } + } + public int getNumber() { + return this.value; + } + }; + + public OptionalInitialParallelismCase + getOptionalInitialParallelismCase() { + return OptionalInitialParallelismCase.forNumber( + optionalInitialParallelismCase_); + } + + private int optionalMinParallelismCase_ = 0; + @SuppressWarnings("serial") + private java.lang.Object optionalMinParallelism_; + public enum OptionalMinParallelismCase + implements com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + MIN_PARALLELISM(6), + OPTIONALMINPARALLELISM_NOT_SET(0); + private final int value; + private OptionalMinParallelismCase(int value) { + this.value = value; + } + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static OptionalMinParallelismCase valueOf(int value) { + return forNumber(value); + } + + public static OptionalMinParallelismCase forNumber(int value) { + switch (value) { + case 6: return MIN_PARALLELISM; + case 0: return OPTIONALMINPARALLELISM_NOT_SET; + default: return null; + } + } + public int getNumber() { + return this.value; + } + }; + + public OptionalMinParallelismCase + getOptionalMinParallelismCase() { + return OptionalMinParallelismCase.forNumber( + optionalMinParallelismCase_); + } + public static final int ENABLED_FIELD_NUMBER = 1; /** * bool enabled = 1; @@ -676,14 +812,55 @@ public int getAutotuneAlgorithmValue() { */ public org.tensorflow.proto.data.model.Model.AutotuneAlgorithm getAutotuneAlgorithm() { if (optionalAutotuneAlgorithmCase_ == 4) { - @SuppressWarnings("deprecation") - org.tensorflow.proto.data.model.Model.AutotuneAlgorithm result = org.tensorflow.proto.data.model.Model.AutotuneAlgorithm.valueOf( + org.tensorflow.proto.data.model.Model.AutotuneAlgorithm result = org.tensorflow.proto.data.model.Model.AutotuneAlgorithm.forNumber( (java.lang.Integer) optionalAutotuneAlgorithm_); return result == null ? org.tensorflow.proto.data.model.Model.AutotuneAlgorithm.UNRECOGNIZED : result; } return org.tensorflow.proto.data.model.Model.AutotuneAlgorithm.DEFAULT; } + public static final int INITIAL_PARALLELISM_FIELD_NUMBER = 5; + /** + * int64 initial_parallelism = 5; + * @return Whether the initialParallelism field is set. + */ + @java.lang.Override + public boolean hasInitialParallelism() { + return optionalInitialParallelismCase_ == 5; + } + /** + * int64 initial_parallelism = 5; + * @return The initialParallelism. + */ + @java.lang.Override + public long getInitialParallelism() { + if (optionalInitialParallelismCase_ == 5) { + return (java.lang.Long) optionalInitialParallelism_; + } + return 0L; + } + + public static final int MIN_PARALLELISM_FIELD_NUMBER = 6; + /** + * int64 min_parallelism = 6; + * @return Whether the minParallelism field is set. + */ + @java.lang.Override + public boolean hasMinParallelism() { + return optionalMinParallelismCase_ == 6; + } + /** + * int64 min_parallelism = 6; + * @return The minParallelism. + */ + @java.lang.Override + public long getMinParallelism() { + if (optionalMinParallelismCase_ == 6) { + return (java.lang.Long) optionalMinParallelism_; + } + return 0L; + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -713,6 +890,14 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (optionalAutotuneAlgorithmCase_ == 4) { output.writeEnum(4, ((java.lang.Integer) optionalAutotuneAlgorithm_)); } + if (optionalInitialParallelismCase_ == 5) { + output.writeInt64( + 5, (long)((java.lang.Long) optionalInitialParallelism_)); + } + if (optionalMinParallelismCase_ == 6) { + output.writeInt64( + 6, (long)((java.lang.Long) optionalMinParallelism_)); + } getUnknownFields().writeTo(output); } @@ -741,6 +926,16 @@ public int getSerializedSize() { size += com.google.protobuf.CodedOutputStream .computeEnumSize(4, ((java.lang.Integer) optionalAutotuneAlgorithm_)); } + if (optionalInitialParallelismCase_ == 5) { + size += com.google.protobuf.CodedOutputStream + .computeInt64Size( + 5, (long)((java.lang.Long) optionalInitialParallelism_)); + } + if (optionalMinParallelismCase_ == 6) { + size += com.google.protobuf.CodedOutputStream + .computeInt64Size( + 6, (long)((java.lang.Long) optionalMinParallelism_)); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -792,6 +987,24 @@ public boolean equals(final java.lang.Object obj) { case 0: default: } + if (!getOptionalInitialParallelismCase().equals(other.getOptionalInitialParallelismCase())) return false; + switch (optionalInitialParallelismCase_) { + case 5: + if (getInitialParallelism() + != other.getInitialParallelism()) return false; + break; + case 0: + default: + } + if (!getOptionalMinParallelismCase().equals(other.getOptionalMinParallelismCase())) return false; + switch (optionalMinParallelismCase_) { + case 6: + if (getMinParallelism() + != other.getMinParallelism()) return false; + break; + case 0: + default: + } if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -837,6 +1050,24 @@ public int hashCode() { case 0: default: } + switch (optionalInitialParallelismCase_) { + case 5: + hash = (37 * hash) + INITIAL_PARALLELISM_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getInitialParallelism()); + break; + case 0: + default: + } + switch (optionalMinParallelismCase_) { + case 6: + hash = (37 * hash) + MIN_PARALLELISM_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getMinParallelism()); + break; + case 0: + default: + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -876,39 +1107,41 @@ public static org.tensorflow.proto.data.DatasetOptions.AutotuneOptions parseFrom } public static org.tensorflow.proto.data.DatasetOptions.AutotuneOptions parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.data.DatasetOptions.AutotuneOptions parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.data.DatasetOptions.AutotuneOptions parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.data.DatasetOptions.AutotuneOptions parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.data.DatasetOptions.AutotuneOptions parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.data.DatasetOptions.AutotuneOptions parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -928,19 +1161,19 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
    -     * next: 5
    +     * next: 7
          * 
    * * Protobuf type {@code tensorflow.data.AutotuneOptions} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.data.AutotuneOptions) org.tensorflow.proto.data.DatasetOptions.AutotuneOptionsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -949,7 +1182,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_AutotuneOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -962,13 +1195,14 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; optionalEnabledCase_ = 0; optionalEnabled_ = null; optionalCpuBudgetCase_ = 0; @@ -977,6 +1211,10 @@ public Builder clear() { optionalRamBudget_ = null; optionalAutotuneAlgorithmCase_ = 0; optionalAutotuneAlgorithm_ = null; + optionalInitialParallelismCase_ = 0; + optionalInitialParallelism_ = null; + optionalMinParallelismCase_ = 0; + optionalMinParallelism_ = null; return this; } @@ -1003,58 +1241,31 @@ public org.tensorflow.proto.data.DatasetOptions.AutotuneOptions build() { @java.lang.Override public org.tensorflow.proto.data.DatasetOptions.AutotuneOptions buildPartial() { org.tensorflow.proto.data.DatasetOptions.AutotuneOptions result = new org.tensorflow.proto.data.DatasetOptions.AutotuneOptions(this); - if (optionalEnabledCase_ == 1) { - result.optionalEnabled_ = optionalEnabled_; - } - if (optionalCpuBudgetCase_ == 2) { - result.optionalCpuBudget_ = optionalCpuBudget_; - } - if (optionalRamBudgetCase_ == 3) { - result.optionalRamBudget_ = optionalRamBudget_; - } - if (optionalAutotuneAlgorithmCase_ == 4) { - result.optionalAutotuneAlgorithm_ = optionalAutotuneAlgorithm_; - } - result.optionalEnabledCase_ = optionalEnabledCase_; - result.optionalCpuBudgetCase_ = optionalCpuBudgetCase_; - result.optionalRamBudgetCase_ = optionalRamBudgetCase_; - result.optionalAutotuneAlgorithmCase_ = optionalAutotuneAlgorithmCase_; + if (bitField0_ != 0) { buildPartial0(result); } + buildPartialOneofs(result); onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); + private void buildPartial0(org.tensorflow.proto.data.DatasetOptions.AutotuneOptions result) { + int from_bitField0_ = bitField0_; } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + + private void buildPartialOneofs(org.tensorflow.proto.data.DatasetOptions.AutotuneOptions result) { + result.optionalEnabledCase_ = optionalEnabledCase_; + result.optionalEnabled_ = this.optionalEnabled_; + result.optionalCpuBudgetCase_ = optionalCpuBudgetCase_; + result.optionalCpuBudget_ = this.optionalCpuBudget_; + result.optionalRamBudgetCase_ = optionalRamBudgetCase_; + result.optionalRamBudget_ = this.optionalRamBudget_; + result.optionalAutotuneAlgorithmCase_ = optionalAutotuneAlgorithmCase_; + result.optionalAutotuneAlgorithm_ = this.optionalAutotuneAlgorithm_; + result.optionalInitialParallelismCase_ = optionalInitialParallelismCase_; + result.optionalInitialParallelism_ = this.optionalInitialParallelism_; + result.optionalMinParallelismCase_ = optionalMinParallelismCase_; + result.optionalMinParallelism_ = this.optionalMinParallelism_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.data.DatasetOptions.AutotuneOptions) { @@ -1103,6 +1314,24 @@ public Builder mergeFrom(org.tensorflow.proto.data.DatasetOptions.AutotuneOption break; } } + switch (other.getOptionalInitialParallelismCase()) { + case INITIAL_PARALLELISM: { + setInitialParallelism(other.getInitialParallelism()); + break; + } + case OPTIONALINITIALPARALLELISM_NOT_SET: { + break; + } + } + switch (other.getOptionalMinParallelismCase()) { + case MIN_PARALLELISM: { + setMinParallelism(other.getMinParallelism()); + break; + } + case OPTIONALMINPARALLELISM_NOT_SET: { + break; + } + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -1150,6 +1379,16 @@ public Builder mergeFrom( optionalAutotuneAlgorithm_ = rawValue; break; } // case 32 + case 40: { + optionalInitialParallelism_ = input.readInt64(); + optionalInitialParallelismCase_ = 5; + break; + } // case 40 + case 48: { + optionalMinParallelism_ = input.readInt64(); + optionalMinParallelismCase_ = 6; + break; + } // case 48 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag @@ -1225,6 +1464,37 @@ public Builder clearOptionalAutotuneAlgorithm() { return this; } + private int optionalInitialParallelismCase_ = 0; + private java.lang.Object optionalInitialParallelism_; + public OptionalInitialParallelismCase + getOptionalInitialParallelismCase() { + return OptionalInitialParallelismCase.forNumber( + optionalInitialParallelismCase_); + } + + public Builder clearOptionalInitialParallelism() { + optionalInitialParallelismCase_ = 0; + optionalInitialParallelism_ = null; + onChanged(); + return this; + } + + private int optionalMinParallelismCase_ = 0; + private java.lang.Object optionalMinParallelism_; + public OptionalMinParallelismCase + getOptionalMinParallelismCase() { + return OptionalMinParallelismCase.forNumber( + optionalMinParallelismCase_); + } + + public Builder clearOptionalMinParallelism() { + optionalMinParallelismCase_ = 0; + optionalMinParallelism_ = null; + onChanged(); + return this; + } + + private int bitField0_; /** * bool enabled = 1; @@ -1249,6 +1519,7 @@ public boolean getEnabled() { * @return This builder for chaining. */ public Builder setEnabled(boolean value) { + optionalEnabledCase_ = 1; optionalEnabled_ = value; onChanged(); @@ -1290,6 +1561,7 @@ public int getCpuBudget() { * @return This builder for chaining. */ public Builder setCpuBudget(int value) { + optionalCpuBudgetCase_ = 2; optionalCpuBudget_ = value; onChanged(); @@ -1331,6 +1603,7 @@ public long getRamBudget() { * @return This builder for chaining. */ public Builder setRamBudget(long value) { + optionalRamBudgetCase_ = 3; optionalRamBudget_ = value; onChanged(); @@ -1386,8 +1659,7 @@ public Builder setAutotuneAlgorithmValue(int value) { @java.lang.Override public org.tensorflow.proto.data.model.Model.AutotuneAlgorithm getAutotuneAlgorithm() { if (optionalAutotuneAlgorithmCase_ == 4) { - @SuppressWarnings("deprecation") - org.tensorflow.proto.data.model.Model.AutotuneAlgorithm result = org.tensorflow.proto.data.model.Model.AutotuneAlgorithm.valueOf( + org.tensorflow.proto.data.model.Model.AutotuneAlgorithm result = org.tensorflow.proto.data.model.Model.AutotuneAlgorithm.forNumber( (java.lang.Integer) optionalAutotuneAlgorithm_); return result == null ? org.tensorflow.proto.data.model.Model.AutotuneAlgorithm.UNRECOGNIZED : result; } @@ -1419,18 +1691,90 @@ public Builder clearAutotuneAlgorithm() { } return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); + + /** + * int64 initial_parallelism = 5; + * @return Whether the initialParallelism field is set. + */ + public boolean hasInitialParallelism() { + return optionalInitialParallelismCase_ == 5; } + /** + * int64 initial_parallelism = 5; + * @return The initialParallelism. + */ + public long getInitialParallelism() { + if (optionalInitialParallelismCase_ == 5) { + return (java.lang.Long) optionalInitialParallelism_; + } + return 0L; + } + /** + * int64 initial_parallelism = 5; + * @param value The initialParallelism to set. + * @return This builder for chaining. + */ + public Builder setInitialParallelism(long value) { - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + optionalInitialParallelismCase_ = 5; + optionalInitialParallelism_ = value; + onChanged(); + return this; + } + /** + * int64 initial_parallelism = 5; + * @return This builder for chaining. + */ + public Builder clearInitialParallelism() { + if (optionalInitialParallelismCase_ == 5) { + optionalInitialParallelismCase_ = 0; + optionalInitialParallelism_ = null; + onChanged(); + } + return this; + } + + /** + * int64 min_parallelism = 6; + * @return Whether the minParallelism field is set. + */ + public boolean hasMinParallelism() { + return optionalMinParallelismCase_ == 6; + } + /** + * int64 min_parallelism = 6; + * @return The minParallelism. + */ + public long getMinParallelism() { + if (optionalMinParallelismCase_ == 6) { + return (java.lang.Long) optionalMinParallelism_; + } + return 0L; } + /** + * int64 min_parallelism = 6; + * @param value The minParallelism to set. + * @return This builder for chaining. + */ + public Builder setMinParallelism(long value) { + optionalMinParallelismCase_ = 6; + optionalMinParallelism_ = value; + onChanged(); + return this; + } + /** + * int64 min_parallelism = 6; + * @return This builder for chaining. + */ + public Builder clearMinParallelism() { + if (optionalMinParallelismCase_ == 6) { + optionalMinParallelismCase_ = 0; + optionalMinParallelism_ = null; + onChanged(); + } + return this; + } // @@protoc_insertion_point(builder_scope:tensorflow.data.AutotuneOptions) } @@ -1506,37 +1850,34 @@ public interface CardinalityOptionsOrBuilder extends * Protobuf type {@code tensorflow.data.CardinalityOptions} */ public static final class CardinalityOptions extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.data.CardinalityOptions) CardinalityOptionsOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + CardinalityOptions.class.getName()); + } // Use CardinalityOptions.newBuilder() to construct. - private CardinalityOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private CardinalityOptions(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private CardinalityOptions() { computeLevel_ = 0; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new CardinalityOptions(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_CardinalityOptions_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_CardinalityOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -1576,6 +1917,15 @@ public enum ComputeLevel UNRECOGNIZED(-1), ; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + ComputeLevel.class.getName()); + } /** * CARDINALITY_COMPUTE_UNSPECIFIED = 0; */ @@ -1687,7 +2037,7 @@ private ComputeLevel(int value) { } public static final int COMPUTE_LEVEL_FIELD_NUMBER = 1; - private int computeLevel_; + private int computeLevel_ = 0; /** * .tensorflow.data.CardinalityOptions.ComputeLevel compute_level = 1; * @return The enum numeric value on the wire for computeLevel. @@ -1700,8 +2050,7 @@ private ComputeLevel(int value) { * @return The computeLevel. */ @java.lang.Override public org.tensorflow.proto.data.DatasetOptions.CardinalityOptions.ComputeLevel getComputeLevel() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.data.DatasetOptions.CardinalityOptions.ComputeLevel result = org.tensorflow.proto.data.DatasetOptions.CardinalityOptions.ComputeLevel.valueOf(computeLevel_); + org.tensorflow.proto.data.DatasetOptions.CardinalityOptions.ComputeLevel result = org.tensorflow.proto.data.DatasetOptions.CardinalityOptions.ComputeLevel.forNumber(computeLevel_); return result == null ? org.tensorflow.proto.data.DatasetOptions.CardinalityOptions.ComputeLevel.UNRECOGNIZED : result; } @@ -1803,39 +2152,41 @@ public static org.tensorflow.proto.data.DatasetOptions.CardinalityOptions parseF } public static org.tensorflow.proto.data.DatasetOptions.CardinalityOptions parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.data.DatasetOptions.CardinalityOptions parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.data.DatasetOptions.CardinalityOptions parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.data.DatasetOptions.CardinalityOptions parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.data.DatasetOptions.CardinalityOptions parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.data.DatasetOptions.CardinalityOptions parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -1855,7 +2206,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -1867,7 +2218,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.data.CardinalityOptions} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.data.CardinalityOptions) org.tensorflow.proto.data.DatasetOptions.CardinalityOptionsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -1876,7 +2227,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_CardinalityOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -1889,15 +2240,15 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; computeLevel_ = 0; - return this; } @@ -1924,51 +2275,26 @@ public org.tensorflow.proto.data.DatasetOptions.CardinalityOptions build() { @java.lang.Override public org.tensorflow.proto.data.DatasetOptions.CardinalityOptions buildPartial() { org.tensorflow.proto.data.DatasetOptions.CardinalityOptions result = new org.tensorflow.proto.data.DatasetOptions.CardinalityOptions(this); - result.computeLevel_ = computeLevel_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); + private void buildPartial0(org.tensorflow.proto.data.DatasetOptions.CardinalityOptions result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.computeLevel_ = computeLevel_; + } } + @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); - } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof org.tensorflow.proto.data.DatasetOptions.CardinalityOptions) { - return mergeFrom((org.tensorflow.proto.data.DatasetOptions.CardinalityOptions)other); - } else { - super.mergeFrom(other); - return this; - } + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof org.tensorflow.proto.data.DatasetOptions.CardinalityOptions) { + return mergeFrom((org.tensorflow.proto.data.DatasetOptions.CardinalityOptions)other); + } else { + super.mergeFrom(other); + return this; + } } public Builder mergeFrom(org.tensorflow.proto.data.DatasetOptions.CardinalityOptions other) { @@ -2004,7 +2330,7 @@ public Builder mergeFrom( break; case 8: { computeLevel_ = input.readEnum(); - + bitField0_ |= 0x00000001; break; } // case 8 default: { @@ -2022,6 +2348,7 @@ public Builder mergeFrom( } // finally return this; } + private int bitField0_; private int computeLevel_ = 0; /** @@ -2037,8 +2364,8 @@ public Builder mergeFrom( * @return This builder for chaining. */ public Builder setComputeLevelValue(int value) { - computeLevel_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -2048,8 +2375,7 @@ public Builder setComputeLevelValue(int value) { */ @java.lang.Override public org.tensorflow.proto.data.DatasetOptions.CardinalityOptions.ComputeLevel getComputeLevel() { - @SuppressWarnings("deprecation") - org.tensorflow.proto.data.DatasetOptions.CardinalityOptions.ComputeLevel result = org.tensorflow.proto.data.DatasetOptions.CardinalityOptions.ComputeLevel.valueOf(computeLevel_); + org.tensorflow.proto.data.DatasetOptions.CardinalityOptions.ComputeLevel result = org.tensorflow.proto.data.DatasetOptions.CardinalityOptions.ComputeLevel.forNumber(computeLevel_); return result == null ? org.tensorflow.proto.data.DatasetOptions.CardinalityOptions.ComputeLevel.UNRECOGNIZED : result; } /** @@ -2061,7 +2387,7 @@ public Builder setComputeLevel(org.tensorflow.proto.data.DatasetOptions.Cardinal if (value == null) { throw new NullPointerException(); } - + bitField0_ |= 0x00000001; computeLevel_ = value.getNumber(); onChanged(); return this; @@ -2071,23 +2397,11 @@ public Builder setComputeLevel(org.tensorflow.proto.data.DatasetOptions.Cardinal * @return This builder for chaining. */ public Builder clearComputeLevel() { - + bitField0_ = (bitField0_ & ~0x00000001); computeLevel_ = 0; onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.data.CardinalityOptions) } @@ -2166,7 +2480,7 @@ public interface DistributeOptionsOrBuilder extends */ int getNumDevices(); - public org.tensorflow.proto.data.DatasetOptions.DistributeOptions.OptionalNumDevicesCase getOptionalNumDevicesCase(); + org.tensorflow.proto.data.DatasetOptions.DistributeOptions.OptionalNumDevicesCase getOptionalNumDevicesCase(); } /** *
    @@ -2176,37 +2490,34 @@ public interface DistributeOptionsOrBuilder extends
        * Protobuf type {@code tensorflow.data.DistributeOptions}
        */
       public static final class DistributeOptions extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.data.DistributeOptions)
           DistributeOptionsOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        DistributeOptions.class.getName());
    +    }
         // Use DistributeOptions.newBuilder() to construct.
    -    private DistributeOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private DistributeOptions(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private DistributeOptions() {
           autoShardPolicy_ = 0;
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new DistributeOptions();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_DistributeOptions_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_DistributeOptions_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -2214,6 +2525,7 @@ protected java.lang.Object newInstance(
         }
     
         private int optionalNumDevicesCase_ = 0;
    +    @SuppressWarnings("serial")
         private java.lang.Object optionalNumDevices_;
         public enum OptionalNumDevicesCase
             implements com.google.protobuf.Internal.EnumLite,
    @@ -2253,7 +2565,7 @@ public int getNumber() {
         }
     
         public static final int AUTO_SHARD_POLICY_FIELD_NUMBER = 1;
    -    private int autoShardPolicy_;
    +    private int autoShardPolicy_ = 0;
         /**
          * .tensorflow.data.AutoShardPolicy auto_shard_policy = 1;
          * @return The enum numeric value on the wire for autoShardPolicy.
    @@ -2266,8 +2578,7 @@ public int getNumber() {
          * @return The autoShardPolicy.
          */
         @java.lang.Override public org.tensorflow.proto.data.DatasetOptions.AutoShardPolicy getAutoShardPolicy() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.data.DatasetOptions.AutoShardPolicy result = org.tensorflow.proto.data.DatasetOptions.AutoShardPolicy.valueOf(autoShardPolicy_);
    +      org.tensorflow.proto.data.DatasetOptions.AutoShardPolicy result = org.tensorflow.proto.data.DatasetOptions.AutoShardPolicy.forNumber(autoShardPolicy_);
           return result == null ? org.tensorflow.proto.data.DatasetOptions.AutoShardPolicy.UNRECOGNIZED : result;
         }
     
    @@ -2416,39 +2727,41 @@ public static org.tensorflow.proto.data.DatasetOptions.DistributeOptions parseFr
         }
         public static org.tensorflow.proto.data.DatasetOptions.DistributeOptions parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.DatasetOptions.DistributeOptions parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.data.DatasetOptions.DistributeOptions parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.data.DatasetOptions.DistributeOptions parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.data.DatasetOptions.DistributeOptions parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.DatasetOptions.DistributeOptions parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -2468,7 +2781,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -2480,7 +2793,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.data.DistributeOptions}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.data.DistributeOptions)
             org.tensorflow.proto.data.DatasetOptions.DistributeOptionsOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -2489,7 +2802,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_DistributeOptions_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -2502,15 +2815,15 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             autoShardPolicy_ = 0;
    -
             optionalNumDevicesCase_ = 0;
             optionalNumDevices_ = null;
             return this;
    @@ -2539,47 +2852,24 @@ public org.tensorflow.proto.data.DatasetOptions.DistributeOptions build() {
           @java.lang.Override
           public org.tensorflow.proto.data.DatasetOptions.DistributeOptions buildPartial() {
             org.tensorflow.proto.data.DatasetOptions.DistributeOptions result = new org.tensorflow.proto.data.DatasetOptions.DistributeOptions(this);
    -        result.autoShardPolicy_ = autoShardPolicy_;
    -        if (optionalNumDevicesCase_ == 2) {
    -          result.optionalNumDevices_ = optionalNumDevices_;
    -        }
    -        result.optionalNumDevicesCase_ = optionalNumDevicesCase_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        buildPartialOneofs(result);
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    +      private void buildPartial0(org.tensorflow.proto.data.DatasetOptions.DistributeOptions result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.autoShardPolicy_ = autoShardPolicy_;
    +        }
           }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +
    +      private void buildPartialOneofs(org.tensorflow.proto.data.DatasetOptions.DistributeOptions result) {
    +        result.optionalNumDevicesCase_ = optionalNumDevicesCase_;
    +        result.optionalNumDevices_ = this.optionalNumDevices_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.data.DatasetOptions.DistributeOptions) {
    @@ -2632,7 +2922,7 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     autoShardPolicy_ = input.readEnum();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   case 16: {
    @@ -2670,6 +2960,7 @@ public Builder clearOptionalNumDevices() {
             return this;
           }
     
    +      private int bitField0_;
     
           private int autoShardPolicy_ = 0;
           /**
    @@ -2685,8 +2976,8 @@ public Builder clearOptionalNumDevices() {
            * @return This builder for chaining.
            */
           public Builder setAutoShardPolicyValue(int value) {
    -        
             autoShardPolicy_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -2696,8 +2987,7 @@ public Builder setAutoShardPolicyValue(int value) {
            */
           @java.lang.Override
           public org.tensorflow.proto.data.DatasetOptions.AutoShardPolicy getAutoShardPolicy() {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.data.DatasetOptions.AutoShardPolicy result = org.tensorflow.proto.data.DatasetOptions.AutoShardPolicy.valueOf(autoShardPolicy_);
    +        org.tensorflow.proto.data.DatasetOptions.AutoShardPolicy result = org.tensorflow.proto.data.DatasetOptions.AutoShardPolicy.forNumber(autoShardPolicy_);
             return result == null ? org.tensorflow.proto.data.DatasetOptions.AutoShardPolicy.UNRECOGNIZED : result;
           }
           /**
    @@ -2709,7 +2999,7 @@ public Builder setAutoShardPolicy(org.tensorflow.proto.data.DatasetOptions.AutoS
             if (value == null) {
               throw new NullPointerException();
             }
    -        
    +        bitField0_ |= 0x00000001;
             autoShardPolicy_ = value.getNumber();
             onChanged();
             return this;
    @@ -2719,7 +3009,7 @@ public Builder setAutoShardPolicy(org.tensorflow.proto.data.DatasetOptions.AutoS
            * @return This builder for chaining.
            */
           public Builder clearAutoShardPolicy() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             autoShardPolicy_ = 0;
             onChanged();
             return this;
    @@ -2748,6 +3038,7 @@ public int getNumDevices() {
            * @return This builder for chaining.
            */
           public Builder setNumDevices(int value) {
    +
             optionalNumDevicesCase_ = 2;
             optionalNumDevices_ = value;
             onChanged();
    @@ -2765,18 +3056,6 @@ public Builder clearNumDevices() {
             }
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.data.DistributeOptions)
         }
    @@ -2965,29 +3244,29 @@ public interface OptimizationOptionsOrBuilder extends
          */
         boolean getSeqInterleavePrefetch();
     
    -    public org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalApplyDefaultOptimizationsCase getOptionalApplyDefaultOptimizationsCase();
    +    org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalApplyDefaultOptimizationsCase getOptionalApplyDefaultOptimizationsCase();
     
    -    public org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalFilterFusionCase getOptionalFilterFusionCase();
    +    org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalFilterFusionCase getOptionalFilterFusionCase();
     
    -    public org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalMapAndBatchFusionCase getOptionalMapAndBatchFusionCase();
    +    org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalMapAndBatchFusionCase getOptionalMapAndBatchFusionCase();
     
    -    public org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalMapAndFilterFusionCase getOptionalMapAndFilterFusionCase();
    +    org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalMapAndFilterFusionCase getOptionalMapAndFilterFusionCase();
     
    -    public org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalMapFusionCase getOptionalMapFusionCase();
    +    org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalMapFusionCase getOptionalMapFusionCase();
     
    -    public org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalMapParallelizationCase getOptionalMapParallelizationCase();
    +    org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalMapParallelizationCase getOptionalMapParallelizationCase();
     
    -    public org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalNoopEliminationCase getOptionalNoopEliminationCase();
    +    org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalNoopEliminationCase getOptionalNoopEliminationCase();
     
    -    public org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalParallelBatchCase getOptionalParallelBatchCase();
    +    org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalParallelBatchCase getOptionalParallelBatchCase();
     
    -    public org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalShuffleAndRepeatFusionCase getOptionalShuffleAndRepeatFusionCase();
    +    org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalShuffleAndRepeatFusionCase getOptionalShuffleAndRepeatFusionCase();
     
    -    public org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalFilterParallelizationCase getOptionalFilterParallelizationCase();
    +    org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalFilterParallelizationCase getOptionalFilterParallelizationCase();
     
    -    public org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalInjectPrefetchCase getOptionalInjectPrefetchCase();
    +    org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalInjectPrefetchCase getOptionalInjectPrefetchCase();
     
    -    public org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalSeqInterleavePrefetchCase getOptionalSeqInterleavePrefetchCase();
    +    org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.OptionalSeqInterleavePrefetchCase getOptionalSeqInterleavePrefetchCase();
       }
       /**
        * 
    @@ -2997,36 +3276,33 @@ public interface OptimizationOptionsOrBuilder extends
        * Protobuf type {@code tensorflow.data.OptimizationOptions}
        */
       public static final class OptimizationOptions extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.data.OptimizationOptions)
           OptimizationOptionsOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        OptimizationOptions.class.getName());
    +    }
         // Use OptimizationOptions.newBuilder() to construct.
    -    private OptimizationOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private OptimizationOptions(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private OptimizationOptions() {
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new OptimizationOptions();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_OptimizationOptions_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_OptimizationOptions_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -3034,6 +3310,7 @@ protected java.lang.Object newInstance(
         }
     
         private int optionalApplyDefaultOptimizationsCase_ = 0;
    +    @SuppressWarnings("serial")
         private java.lang.Object optionalApplyDefaultOptimizations_;
         public enum OptionalApplyDefaultOptimizationsCase
             implements com.google.protobuf.Internal.EnumLite,
    @@ -3073,6 +3350,7 @@ public int getNumber() {
         }
     
         private int optionalFilterFusionCase_ = 0;
    +    @SuppressWarnings("serial")
         private java.lang.Object optionalFilterFusion_;
         public enum OptionalFilterFusionCase
             implements com.google.protobuf.Internal.EnumLite,
    @@ -3112,6 +3390,7 @@ public int getNumber() {
         }
     
         private int optionalMapAndBatchFusionCase_ = 0;
    +    @SuppressWarnings("serial")
         private java.lang.Object optionalMapAndBatchFusion_;
         public enum OptionalMapAndBatchFusionCase
             implements com.google.protobuf.Internal.EnumLite,
    @@ -3151,6 +3430,7 @@ public int getNumber() {
         }
     
         private int optionalMapAndFilterFusionCase_ = 0;
    +    @SuppressWarnings("serial")
         private java.lang.Object optionalMapAndFilterFusion_;
         public enum OptionalMapAndFilterFusionCase
             implements com.google.protobuf.Internal.EnumLite,
    @@ -3190,6 +3470,7 @@ public int getNumber() {
         }
     
         private int optionalMapFusionCase_ = 0;
    +    @SuppressWarnings("serial")
         private java.lang.Object optionalMapFusion_;
         public enum OptionalMapFusionCase
             implements com.google.protobuf.Internal.EnumLite,
    @@ -3229,6 +3510,7 @@ public int getNumber() {
         }
     
         private int optionalMapParallelizationCase_ = 0;
    +    @SuppressWarnings("serial")
         private java.lang.Object optionalMapParallelization_;
         public enum OptionalMapParallelizationCase
             implements com.google.protobuf.Internal.EnumLite,
    @@ -3268,6 +3550,7 @@ public int getNumber() {
         }
     
         private int optionalNoopEliminationCase_ = 0;
    +    @SuppressWarnings("serial")
         private java.lang.Object optionalNoopElimination_;
         public enum OptionalNoopEliminationCase
             implements com.google.protobuf.Internal.EnumLite,
    @@ -3307,6 +3590,7 @@ public int getNumber() {
         }
     
         private int optionalParallelBatchCase_ = 0;
    +    @SuppressWarnings("serial")
         private java.lang.Object optionalParallelBatch_;
         public enum OptionalParallelBatchCase
             implements com.google.protobuf.Internal.EnumLite,
    @@ -3346,6 +3630,7 @@ public int getNumber() {
         }
     
         private int optionalShuffleAndRepeatFusionCase_ = 0;
    +    @SuppressWarnings("serial")
         private java.lang.Object optionalShuffleAndRepeatFusion_;
         public enum OptionalShuffleAndRepeatFusionCase
             implements com.google.protobuf.Internal.EnumLite,
    @@ -3385,6 +3670,7 @@ public int getNumber() {
         }
     
         private int optionalFilterParallelizationCase_ = 0;
    +    @SuppressWarnings("serial")
         private java.lang.Object optionalFilterParallelization_;
         public enum OptionalFilterParallelizationCase
             implements com.google.protobuf.Internal.EnumLite,
    @@ -3424,6 +3710,7 @@ public int getNumber() {
         }
     
         private int optionalInjectPrefetchCase_ = 0;
    +    @SuppressWarnings("serial")
         private java.lang.Object optionalInjectPrefetch_;
         public enum OptionalInjectPrefetchCase
             implements com.google.protobuf.Internal.EnumLite,
    @@ -3463,6 +3750,7 @@ public int getNumber() {
         }
     
         private int optionalSeqInterleavePrefetchCase_ = 0;
    +    @SuppressWarnings("serial")
         private java.lang.Object optionalSeqInterleavePrefetch_;
         public enum OptionalSeqInterleavePrefetchCase
             implements com.google.protobuf.Internal.EnumLite,
    @@ -4165,39 +4453,41 @@ public static org.tensorflow.proto.data.DatasetOptions.OptimizationOptions parse
         }
         public static org.tensorflow.proto.data.DatasetOptions.OptimizationOptions parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.DatasetOptions.OptimizationOptions parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.data.DatasetOptions.OptimizationOptions parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.data.DatasetOptions.OptimizationOptions parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.data.DatasetOptions.OptimizationOptions parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.DatasetOptions.OptimizationOptions parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -4217,7 +4507,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -4229,7 +4519,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.data.OptimizationOptions}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.data.OptimizationOptions)
             org.tensorflow.proto.data.DatasetOptions.OptimizationOptionsOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -4238,7 +4528,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_OptimizationOptions_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -4251,13 +4541,14 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             optionalApplyDefaultOptimizationsCase_ = 0;
             optionalApplyDefaultOptimizations_ = null;
             optionalFilterFusionCase_ = 0;
    @@ -4308,90 +4599,43 @@ public org.tensorflow.proto.data.DatasetOptions.OptimizationOptions build() {
           @java.lang.Override
           public org.tensorflow.proto.data.DatasetOptions.OptimizationOptions buildPartial() {
             org.tensorflow.proto.data.DatasetOptions.OptimizationOptions result = new org.tensorflow.proto.data.DatasetOptions.OptimizationOptions(this);
    -        if (optionalApplyDefaultOptimizationsCase_ == 1) {
    -          result.optionalApplyDefaultOptimizations_ = optionalApplyDefaultOptimizations_;
    -        }
    -        if (optionalFilterFusionCase_ == 6) {
    -          result.optionalFilterFusion_ = optionalFilterFusion_;
    -        }
    -        if (optionalMapAndBatchFusionCase_ == 9) {
    -          result.optionalMapAndBatchFusion_ = optionalMapAndBatchFusion_;
    -        }
    -        if (optionalMapAndFilterFusionCase_ == 10) {
    -          result.optionalMapAndFilterFusion_ = optionalMapAndFilterFusion_;
    -        }
    -        if (optionalMapFusionCase_ == 11) {
    -          result.optionalMapFusion_ = optionalMapFusion_;
    -        }
    -        if (optionalMapParallelizationCase_ == 12) {
    -          result.optionalMapParallelization_ = optionalMapParallelization_;
    -        }
    -        if (optionalNoopEliminationCase_ == 14) {
    -          result.optionalNoopElimination_ = optionalNoopElimination_;
    -        }
    -        if (optionalParallelBatchCase_ == 15) {
    -          result.optionalParallelBatch_ = optionalParallelBatch_;
    -        }
    -        if (optionalShuffleAndRepeatFusionCase_ == 17) {
    -          result.optionalShuffleAndRepeatFusion_ = optionalShuffleAndRepeatFusion_;
    -        }
    -        if (optionalFilterParallelizationCase_ == 18) {
    -          result.optionalFilterParallelization_ = optionalFilterParallelization_;
    -        }
    -        if (optionalInjectPrefetchCase_ == 19) {
    -          result.optionalInjectPrefetch_ = optionalInjectPrefetch_;
    -        }
    -        if (optionalSeqInterleavePrefetchCase_ == 21) {
    -          result.optionalSeqInterleavePrefetch_ = optionalSeqInterleavePrefetch_;
    -        }
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        buildPartialOneofs(result);
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartial0(org.tensorflow.proto.data.DatasetOptions.OptimizationOptions result) {
    +        int from_bitField0_ = bitField0_;
    +      }
    +
    +      private void buildPartialOneofs(org.tensorflow.proto.data.DatasetOptions.OptimizationOptions result) {
             result.optionalApplyDefaultOptimizationsCase_ = optionalApplyDefaultOptimizationsCase_;
    +        result.optionalApplyDefaultOptimizations_ = this.optionalApplyDefaultOptimizations_;
             result.optionalFilterFusionCase_ = optionalFilterFusionCase_;
    +        result.optionalFilterFusion_ = this.optionalFilterFusion_;
             result.optionalMapAndBatchFusionCase_ = optionalMapAndBatchFusionCase_;
    +        result.optionalMapAndBatchFusion_ = this.optionalMapAndBatchFusion_;
             result.optionalMapAndFilterFusionCase_ = optionalMapAndFilterFusionCase_;
    +        result.optionalMapAndFilterFusion_ = this.optionalMapAndFilterFusion_;
             result.optionalMapFusionCase_ = optionalMapFusionCase_;
    +        result.optionalMapFusion_ = this.optionalMapFusion_;
             result.optionalMapParallelizationCase_ = optionalMapParallelizationCase_;
    +        result.optionalMapParallelization_ = this.optionalMapParallelization_;
             result.optionalNoopEliminationCase_ = optionalNoopEliminationCase_;
    +        result.optionalNoopElimination_ = this.optionalNoopElimination_;
             result.optionalParallelBatchCase_ = optionalParallelBatchCase_;
    +        result.optionalParallelBatch_ = this.optionalParallelBatch_;
             result.optionalShuffleAndRepeatFusionCase_ = optionalShuffleAndRepeatFusionCase_;
    +        result.optionalShuffleAndRepeatFusion_ = this.optionalShuffleAndRepeatFusion_;
             result.optionalFilterParallelizationCase_ = optionalFilterParallelizationCase_;
    +        result.optionalFilterParallelization_ = this.optionalFilterParallelization_;
             result.optionalInjectPrefetchCase_ = optionalInjectPrefetchCase_;
    +        result.optionalInjectPrefetch_ = this.optionalInjectPrefetch_;
             result.optionalSeqInterleavePrefetchCase_ = optionalSeqInterleavePrefetchCase_;
    -        onBuilt();
    -        return result;
    +        result.optionalSeqInterleavePrefetch_ = this.optionalSeqInterleavePrefetch_;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    -      }
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.data.DatasetOptions.OptimizationOptions) {
    @@ -4793,6 +5037,7 @@ public Builder clearOptionalSeqInterleavePrefetch() {
             return this;
           }
     
    +      private int bitField0_;
     
           /**
            * bool apply_default_optimizations = 1;
    @@ -4817,6 +5062,7 @@ public boolean getApplyDefaultOptimizations() {
            * @return This builder for chaining.
            */
           public Builder setApplyDefaultOptimizations(boolean value) {
    +
             optionalApplyDefaultOptimizationsCase_ = 1;
             optionalApplyDefaultOptimizations_ = value;
             onChanged();
    @@ -4858,6 +5104,7 @@ public boolean getFilterFusion() {
            * @return This builder for chaining.
            */
           public Builder setFilterFusion(boolean value) {
    +
             optionalFilterFusionCase_ = 6;
             optionalFilterFusion_ = value;
             onChanged();
    @@ -4899,6 +5146,7 @@ public boolean getMapAndBatchFusion() {
            * @return This builder for chaining.
            */
           public Builder setMapAndBatchFusion(boolean value) {
    +
             optionalMapAndBatchFusionCase_ = 9;
             optionalMapAndBatchFusion_ = value;
             onChanged();
    @@ -4940,6 +5188,7 @@ public boolean getMapAndFilterFusion() {
            * @return This builder for chaining.
            */
           public Builder setMapAndFilterFusion(boolean value) {
    +
             optionalMapAndFilterFusionCase_ = 10;
             optionalMapAndFilterFusion_ = value;
             onChanged();
    @@ -4981,6 +5230,7 @@ public boolean getMapFusion() {
            * @return This builder for chaining.
            */
           public Builder setMapFusion(boolean value) {
    +
             optionalMapFusionCase_ = 11;
             optionalMapFusion_ = value;
             onChanged();
    @@ -5022,6 +5272,7 @@ public boolean getMapParallelization() {
            * @return This builder for chaining.
            */
           public Builder setMapParallelization(boolean value) {
    +
             optionalMapParallelizationCase_ = 12;
             optionalMapParallelization_ = value;
             onChanged();
    @@ -5063,6 +5314,7 @@ public boolean getNoopElimination() {
            * @return This builder for chaining.
            */
           public Builder setNoopElimination(boolean value) {
    +
             optionalNoopEliminationCase_ = 14;
             optionalNoopElimination_ = value;
             onChanged();
    @@ -5104,6 +5356,7 @@ public boolean getParallelBatch() {
            * @return This builder for chaining.
            */
           public Builder setParallelBatch(boolean value) {
    +
             optionalParallelBatchCase_ = 15;
             optionalParallelBatch_ = value;
             onChanged();
    @@ -5145,6 +5398,7 @@ public boolean getShuffleAndRepeatFusion() {
            * @return This builder for chaining.
            */
           public Builder setShuffleAndRepeatFusion(boolean value) {
    +
             optionalShuffleAndRepeatFusionCase_ = 17;
             optionalShuffleAndRepeatFusion_ = value;
             onChanged();
    @@ -5186,6 +5440,7 @@ public boolean getFilterParallelization() {
            * @return This builder for chaining.
            */
           public Builder setFilterParallelization(boolean value) {
    +
             optionalFilterParallelizationCase_ = 18;
             optionalFilterParallelization_ = value;
             onChanged();
    @@ -5227,6 +5482,7 @@ public boolean getInjectPrefetch() {
            * @return This builder for chaining.
            */
           public Builder setInjectPrefetch(boolean value) {
    +
             optionalInjectPrefetchCase_ = 19;
             optionalInjectPrefetch_ = value;
             onChanged();
    @@ -5268,6 +5524,7 @@ public boolean getSeqInterleavePrefetch() {
            * @return This builder for chaining.
            */
           public Builder setSeqInterleavePrefetch(boolean value) {
    +
             optionalSeqInterleavePrefetchCase_ = 21;
             optionalSeqInterleavePrefetch_ = value;
             onChanged();
    @@ -5285,18 +5542,6 @@ public Builder clearSeqInterleavePrefetch() {
             }
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.data.OptimizationOptions)
         }
    @@ -5349,128 +5594,74 @@ public org.tensorflow.proto.data.DatasetOptions.OptimizationOptions getDefaultIn
     
       }
     
    -  public interface ThreadingOptionsOrBuilder extends
    -      // @@protoc_insertion_point(interface_extends:tensorflow.data.ThreadingOptions)
    +  public interface ServiceOptionsOrBuilder extends
    +      // @@protoc_insertion_point(interface_extends:tensorflow.data.ServiceOptions)
           com.google.protobuf.MessageOrBuilder {
     
         /**
    -     * int32 max_intra_op_parallelism = 1;
    -     * @return Whether the maxIntraOpParallelism field is set.
    -     */
    -    boolean hasMaxIntraOpParallelism();
    -    /**
    -     * int32 max_intra_op_parallelism = 1;
    -     * @return The maxIntraOpParallelism.
    -     */
    -    int getMaxIntraOpParallelism();
    -
    -    /**
    -     * int32 private_threadpool_size = 2;
    -     * @return Whether the privateThreadpoolSize field is set.
    +     * bool pinned = 1;
    +     * @return Whether the pinned field is set.
          */
    -    boolean hasPrivateThreadpoolSize();
    +    boolean hasPinned();
         /**
    -     * int32 private_threadpool_size = 2;
    -     * @return The privateThreadpoolSize.
    +     * bool pinned = 1;
    +     * @return The pinned.
          */
    -    int getPrivateThreadpoolSize();
    +    boolean getPinned();
     
    -    public org.tensorflow.proto.data.DatasetOptions.ThreadingOptions.OptionalMaxIntraOpParallelismCase getOptionalMaxIntraOpParallelismCase();
    -
    -    public org.tensorflow.proto.data.DatasetOptions.ThreadingOptions.OptionalPrivateThreadpoolSizeCase getOptionalPrivateThreadpoolSizeCase();
    +    org.tensorflow.proto.data.DatasetOptions.ServiceOptions.OptionalPinnedCase getOptionalPinnedCase();
       }
       /**
        * 
    -   * next: 3
    +   * next: 2
        * 
    * - * Protobuf type {@code tensorflow.data.ThreadingOptions} + * Protobuf type {@code tensorflow.data.ServiceOptions} */ - public static final class ThreadingOptions extends - com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:tensorflow.data.ThreadingOptions) - ThreadingOptionsOrBuilder { + public static final class ServiceOptions extends + com.google.protobuf.GeneratedMessage implements + // @@protoc_insertion_point(message_implements:tensorflow.data.ServiceOptions) + ServiceOptionsOrBuilder { private static final long serialVersionUID = 0L; - // Use ThreadingOptions.newBuilder() to construct. - private ThreadingOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) { + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + ServiceOptions.class.getName()); + } + // Use ServiceOptions.newBuilder() to construct. + private ServiceOptions(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } - private ThreadingOptions() { - } - - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new ThreadingOptions(); + private ServiceOptions() { } - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_ThreadingOptions_descriptor; + return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_ServiceOptions_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { - return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_ThreadingOptions_fieldAccessorTable + return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_ServiceOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( - org.tensorflow.proto.data.DatasetOptions.ThreadingOptions.class, org.tensorflow.proto.data.DatasetOptions.ThreadingOptions.Builder.class); - } - - private int optionalMaxIntraOpParallelismCase_ = 0; - private java.lang.Object optionalMaxIntraOpParallelism_; - public enum OptionalMaxIntraOpParallelismCase - implements com.google.protobuf.Internal.EnumLite, - com.google.protobuf.AbstractMessage.InternalOneOfEnum { - MAX_INTRA_OP_PARALLELISM(1), - OPTIONALMAXINTRAOPPARALLELISM_NOT_SET(0); - private final int value; - private OptionalMaxIntraOpParallelismCase(int value) { - this.value = value; - } - /** - * @param value The number of the enum to look for. - * @return The enum associated with the given number. - * @deprecated Use {@link #forNumber(int)} instead. - */ - @java.lang.Deprecated - public static OptionalMaxIntraOpParallelismCase valueOf(int value) { - return forNumber(value); - } - - public static OptionalMaxIntraOpParallelismCase forNumber(int value) { - switch (value) { - case 1: return MAX_INTRA_OP_PARALLELISM; - case 0: return OPTIONALMAXINTRAOPPARALLELISM_NOT_SET; - default: return null; - } - } - public int getNumber() { - return this.value; - } - }; - - public OptionalMaxIntraOpParallelismCase - getOptionalMaxIntraOpParallelismCase() { - return OptionalMaxIntraOpParallelismCase.forNumber( - optionalMaxIntraOpParallelismCase_); + org.tensorflow.proto.data.DatasetOptions.ServiceOptions.class, org.tensorflow.proto.data.DatasetOptions.ServiceOptions.Builder.class); } - private int optionalPrivateThreadpoolSizeCase_ = 0; - private java.lang.Object optionalPrivateThreadpoolSize_; - public enum OptionalPrivateThreadpoolSizeCase + private int optionalPinnedCase_ = 0; + @SuppressWarnings("serial") + private java.lang.Object optionalPinned_; + public enum OptionalPinnedCase implements com.google.protobuf.Internal.EnumLite, com.google.protobuf.AbstractMessage.InternalOneOfEnum { - PRIVATE_THREADPOOL_SIZE(2), - OPTIONALPRIVATETHREADPOOLSIZE_NOT_SET(0); + PINNED(1), + OPTIONALPINNED_NOT_SET(0); private final int value; - private OptionalPrivateThreadpoolSizeCase(int value) { + private OptionalPinnedCase(int value) { this.value = value; } /** @@ -5479,14 +5670,14 @@ private OptionalPrivateThreadpoolSizeCase(int value) { * @deprecated Use {@link #forNumber(int)} instead. */ @java.lang.Deprecated - public static OptionalPrivateThreadpoolSizeCase valueOf(int value) { + public static OptionalPinnedCase valueOf(int value) { return forNumber(value); } - public static OptionalPrivateThreadpoolSizeCase forNumber(int value) { + public static OptionalPinnedCase forNumber(int value) { switch (value) { - case 2: return PRIVATE_THREADPOOL_SIZE; - case 0: return OPTIONALPRIVATETHREADPOOLSIZE_NOT_SET; + case 1: return PINNED; + case 0: return OPTIONALPINNED_NOT_SET; default: return null; } } @@ -5495,46 +5686,649 @@ public int getNumber() { } }; - public OptionalPrivateThreadpoolSizeCase - getOptionalPrivateThreadpoolSizeCase() { - return OptionalPrivateThreadpoolSizeCase.forNumber( - optionalPrivateThreadpoolSizeCase_); + public OptionalPinnedCase + getOptionalPinnedCase() { + return OptionalPinnedCase.forNumber( + optionalPinnedCase_); } - public static final int MAX_INTRA_OP_PARALLELISM_FIELD_NUMBER = 1; + public static final int PINNED_FIELD_NUMBER = 1; /** - * int32 max_intra_op_parallelism = 1; - * @return Whether the maxIntraOpParallelism field is set. + * bool pinned = 1; + * @return Whether the pinned field is set. */ @java.lang.Override - public boolean hasMaxIntraOpParallelism() { - return optionalMaxIntraOpParallelismCase_ == 1; + public boolean hasPinned() { + return optionalPinnedCase_ == 1; } /** - * int32 max_intra_op_parallelism = 1; - * @return The maxIntraOpParallelism. + * bool pinned = 1; + * @return The pinned. */ @java.lang.Override - public int getMaxIntraOpParallelism() { - if (optionalMaxIntraOpParallelismCase_ == 1) { - return (java.lang.Integer) optionalMaxIntraOpParallelism_; + public boolean getPinned() { + if (optionalPinnedCase_ == 1) { + return (java.lang.Boolean) optionalPinned_; } - return 0; + return false; } - public static final int PRIVATE_THREADPOOL_SIZE_FIELD_NUMBER = 2; - /** - * int32 private_threadpool_size = 2; - * @return Whether the privateThreadpoolSize field is set. - */ + private byte memoizedIsInitialized = -1; @java.lang.Override - public boolean hasPrivateThreadpoolSize() { - return optionalPrivateThreadpoolSizeCase_ == 2; + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; } - /** - * int32 private_threadpool_size = 2; - * @return The privateThreadpoolSize. - */ + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (optionalPinnedCase_ == 1) { + output.writeBool( + 1, (boolean)((java.lang.Boolean) optionalPinned_)); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (optionalPinnedCase_ == 1) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize( + 1, (boolean)((java.lang.Boolean) optionalPinned_)); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof org.tensorflow.proto.data.DatasetOptions.ServiceOptions)) { + return super.equals(obj); + } + org.tensorflow.proto.data.DatasetOptions.ServiceOptions other = (org.tensorflow.proto.data.DatasetOptions.ServiceOptions) obj; + + if (!getOptionalPinnedCase().equals(other.getOptionalPinnedCase())) return false; + switch (optionalPinnedCase_) { + case 1: + if (getPinned() + != other.getPinned()) return false; + break; + case 0: + default: + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + switch (optionalPinnedCase_) { + case 1: + hash = (37 * hash) + PINNED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getPinned()); + break; + case 0: + default: + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static org.tensorflow.proto.data.DatasetOptions.ServiceOptions parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static org.tensorflow.proto.data.DatasetOptions.ServiceOptions parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static org.tensorflow.proto.data.DatasetOptions.ServiceOptions parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static org.tensorflow.proto.data.DatasetOptions.ServiceOptions parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static org.tensorflow.proto.data.DatasetOptions.ServiceOptions parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static org.tensorflow.proto.data.DatasetOptions.ServiceOptions parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static org.tensorflow.proto.data.DatasetOptions.ServiceOptions parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static org.tensorflow.proto.data.DatasetOptions.ServiceOptions parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public static org.tensorflow.proto.data.DatasetOptions.ServiceOptions parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input); + } + + public static org.tensorflow.proto.data.DatasetOptions.ServiceOptions parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static org.tensorflow.proto.data.DatasetOptions.ServiceOptions parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input); + } + public static org.tensorflow.proto.data.DatasetOptions.ServiceOptions parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(org.tensorflow.proto.data.DatasetOptions.ServiceOptions prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
    +     * next: 2
    +     * 
    + * + * Protobuf type {@code tensorflow.data.ServiceOptions} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessage.Builder implements + // @@protoc_insertion_point(builder_implements:tensorflow.data.ServiceOptions) + org.tensorflow.proto.data.DatasetOptions.ServiceOptionsOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_ServiceOptions_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_ServiceOptions_fieldAccessorTable + .ensureFieldAccessorsInitialized( + org.tensorflow.proto.data.DatasetOptions.ServiceOptions.class, org.tensorflow.proto.data.DatasetOptions.ServiceOptions.Builder.class); + } + + // Construct using org.tensorflow.proto.data.DatasetOptions.ServiceOptions.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + optionalPinnedCase_ = 0; + optionalPinned_ = null; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_ServiceOptions_descriptor; + } + + @java.lang.Override + public org.tensorflow.proto.data.DatasetOptions.ServiceOptions getDefaultInstanceForType() { + return org.tensorflow.proto.data.DatasetOptions.ServiceOptions.getDefaultInstance(); + } + + @java.lang.Override + public org.tensorflow.proto.data.DatasetOptions.ServiceOptions build() { + org.tensorflow.proto.data.DatasetOptions.ServiceOptions result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public org.tensorflow.proto.data.DatasetOptions.ServiceOptions buildPartial() { + org.tensorflow.proto.data.DatasetOptions.ServiceOptions result = new org.tensorflow.proto.data.DatasetOptions.ServiceOptions(this); + if (bitField0_ != 0) { buildPartial0(result); } + buildPartialOneofs(result); + onBuilt(); + return result; + } + + private void buildPartial0(org.tensorflow.proto.data.DatasetOptions.ServiceOptions result) { + int from_bitField0_ = bitField0_; + } + + private void buildPartialOneofs(org.tensorflow.proto.data.DatasetOptions.ServiceOptions result) { + result.optionalPinnedCase_ = optionalPinnedCase_; + result.optionalPinned_ = this.optionalPinned_; + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof org.tensorflow.proto.data.DatasetOptions.ServiceOptions) { + return mergeFrom((org.tensorflow.proto.data.DatasetOptions.ServiceOptions)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(org.tensorflow.proto.data.DatasetOptions.ServiceOptions other) { + if (other == org.tensorflow.proto.data.DatasetOptions.ServiceOptions.getDefaultInstance()) return this; + switch (other.getOptionalPinnedCase()) { + case PINNED: { + setPinned(other.getPinned()); + break; + } + case OPTIONALPINNED_NOT_SET: { + break; + } + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + optionalPinned_ = input.readBool(); + optionalPinnedCase_ = 1; + break; + } // case 8 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int optionalPinnedCase_ = 0; + private java.lang.Object optionalPinned_; + public OptionalPinnedCase + getOptionalPinnedCase() { + return OptionalPinnedCase.forNumber( + optionalPinnedCase_); + } + + public Builder clearOptionalPinned() { + optionalPinnedCase_ = 0; + optionalPinned_ = null; + onChanged(); + return this; + } + + private int bitField0_; + + /** + * bool pinned = 1; + * @return Whether the pinned field is set. + */ + public boolean hasPinned() { + return optionalPinnedCase_ == 1; + } + /** + * bool pinned = 1; + * @return The pinned. + */ + public boolean getPinned() { + if (optionalPinnedCase_ == 1) { + return (java.lang.Boolean) optionalPinned_; + } + return false; + } + /** + * bool pinned = 1; + * @param value The pinned to set. + * @return This builder for chaining. + */ + public Builder setPinned(boolean value) { + + optionalPinnedCase_ = 1; + optionalPinned_ = value; + onChanged(); + return this; + } + /** + * bool pinned = 1; + * @return This builder for chaining. + */ + public Builder clearPinned() { + if (optionalPinnedCase_ == 1) { + optionalPinnedCase_ = 0; + optionalPinned_ = null; + onChanged(); + } + return this; + } + + // @@protoc_insertion_point(builder_scope:tensorflow.data.ServiceOptions) + } + + // @@protoc_insertion_point(class_scope:tensorflow.data.ServiceOptions) + private static final org.tensorflow.proto.data.DatasetOptions.ServiceOptions DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new org.tensorflow.proto.data.DatasetOptions.ServiceOptions(); + } + + public static org.tensorflow.proto.data.DatasetOptions.ServiceOptions getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public ServiceOptions parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public org.tensorflow.proto.data.DatasetOptions.ServiceOptions getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface ThreadingOptionsOrBuilder extends + // @@protoc_insertion_point(interface_extends:tensorflow.data.ThreadingOptions) + com.google.protobuf.MessageOrBuilder { + + /** + * int32 max_intra_op_parallelism = 1; + * @return Whether the maxIntraOpParallelism field is set. + */ + boolean hasMaxIntraOpParallelism(); + /** + * int32 max_intra_op_parallelism = 1; + * @return The maxIntraOpParallelism. + */ + int getMaxIntraOpParallelism(); + + /** + * int32 private_threadpool_size = 2; + * @return Whether the privateThreadpoolSize field is set. + */ + boolean hasPrivateThreadpoolSize(); + /** + * int32 private_threadpool_size = 2; + * @return The privateThreadpoolSize. + */ + int getPrivateThreadpoolSize(); + + org.tensorflow.proto.data.DatasetOptions.ThreadingOptions.OptionalMaxIntraOpParallelismCase getOptionalMaxIntraOpParallelismCase(); + + org.tensorflow.proto.data.DatasetOptions.ThreadingOptions.OptionalPrivateThreadpoolSizeCase getOptionalPrivateThreadpoolSizeCase(); + } + /** + *
    +   * next: 3
    +   * 
    + * + * Protobuf type {@code tensorflow.data.ThreadingOptions} + */ + public static final class ThreadingOptions extends + com.google.protobuf.GeneratedMessage implements + // @@protoc_insertion_point(message_implements:tensorflow.data.ThreadingOptions) + ThreadingOptionsOrBuilder { + private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + ThreadingOptions.class.getName()); + } + // Use ThreadingOptions.newBuilder() to construct. + private ThreadingOptions(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + private ThreadingOptions() { + } + + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_ThreadingOptions_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_ThreadingOptions_fieldAccessorTable + .ensureFieldAccessorsInitialized( + org.tensorflow.proto.data.DatasetOptions.ThreadingOptions.class, org.tensorflow.proto.data.DatasetOptions.ThreadingOptions.Builder.class); + } + + private int optionalMaxIntraOpParallelismCase_ = 0; + @SuppressWarnings("serial") + private java.lang.Object optionalMaxIntraOpParallelism_; + public enum OptionalMaxIntraOpParallelismCase + implements com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + MAX_INTRA_OP_PARALLELISM(1), + OPTIONALMAXINTRAOPPARALLELISM_NOT_SET(0); + private final int value; + private OptionalMaxIntraOpParallelismCase(int value) { + this.value = value; + } + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static OptionalMaxIntraOpParallelismCase valueOf(int value) { + return forNumber(value); + } + + public static OptionalMaxIntraOpParallelismCase forNumber(int value) { + switch (value) { + case 1: return MAX_INTRA_OP_PARALLELISM; + case 0: return OPTIONALMAXINTRAOPPARALLELISM_NOT_SET; + default: return null; + } + } + public int getNumber() { + return this.value; + } + }; + + public OptionalMaxIntraOpParallelismCase + getOptionalMaxIntraOpParallelismCase() { + return OptionalMaxIntraOpParallelismCase.forNumber( + optionalMaxIntraOpParallelismCase_); + } + + private int optionalPrivateThreadpoolSizeCase_ = 0; + @SuppressWarnings("serial") + private java.lang.Object optionalPrivateThreadpoolSize_; + public enum OptionalPrivateThreadpoolSizeCase + implements com.google.protobuf.Internal.EnumLite, + com.google.protobuf.AbstractMessage.InternalOneOfEnum { + PRIVATE_THREADPOOL_SIZE(2), + OPTIONALPRIVATETHREADPOOLSIZE_NOT_SET(0); + private final int value; + private OptionalPrivateThreadpoolSizeCase(int value) { + this.value = value; + } + /** + * @param value The number of the enum to look for. + * @return The enum associated with the given number. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static OptionalPrivateThreadpoolSizeCase valueOf(int value) { + return forNumber(value); + } + + public static OptionalPrivateThreadpoolSizeCase forNumber(int value) { + switch (value) { + case 2: return PRIVATE_THREADPOOL_SIZE; + case 0: return OPTIONALPRIVATETHREADPOOLSIZE_NOT_SET; + default: return null; + } + } + public int getNumber() { + return this.value; + } + }; + + public OptionalPrivateThreadpoolSizeCase + getOptionalPrivateThreadpoolSizeCase() { + return OptionalPrivateThreadpoolSizeCase.forNumber( + optionalPrivateThreadpoolSizeCase_); + } + + public static final int MAX_INTRA_OP_PARALLELISM_FIELD_NUMBER = 1; + /** + * int32 max_intra_op_parallelism = 1; + * @return Whether the maxIntraOpParallelism field is set. + */ + @java.lang.Override + public boolean hasMaxIntraOpParallelism() { + return optionalMaxIntraOpParallelismCase_ == 1; + } + /** + * int32 max_intra_op_parallelism = 1; + * @return The maxIntraOpParallelism. + */ + @java.lang.Override + public int getMaxIntraOpParallelism() { + if (optionalMaxIntraOpParallelismCase_ == 1) { + return (java.lang.Integer) optionalMaxIntraOpParallelism_; + } + return 0; + } + + public static final int PRIVATE_THREADPOOL_SIZE_FIELD_NUMBER = 2; + /** + * int32 private_threadpool_size = 2; + * @return Whether the privateThreadpoolSize field is set. + */ + @java.lang.Override + public boolean hasPrivateThreadpoolSize() { + return optionalPrivateThreadpoolSizeCase_ == 2; + } + /** + * int32 private_threadpool_size = 2; + * @return The privateThreadpoolSize. + */ @java.lang.Override public int getPrivateThreadpoolSize() { if (optionalPrivateThreadpoolSizeCase_ == 2) { @@ -5683,39 +6477,41 @@ public static org.tensorflow.proto.data.DatasetOptions.ThreadingOptions parseFro } public static org.tensorflow.proto.data.DatasetOptions.ThreadingOptions parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.data.DatasetOptions.ThreadingOptions parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.data.DatasetOptions.ThreadingOptions parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.data.DatasetOptions.ThreadingOptions parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.data.DatasetOptions.ThreadingOptions parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.data.DatasetOptions.ThreadingOptions parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -5735,7 +6531,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -5747,7 +6543,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.data.ThreadingOptions} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.data.ThreadingOptions) org.tensorflow.proto.data.DatasetOptions.ThreadingOptionsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -5756,7 +6552,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_ThreadingOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -5769,13 +6565,14 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; optionalMaxIntraOpParallelismCase_ = 0; optionalMaxIntraOpParallelism_ = null; optionalPrivateThreadpoolSizeCase_ = 0; @@ -5806,50 +6603,23 @@ public org.tensorflow.proto.data.DatasetOptions.ThreadingOptions build() { @java.lang.Override public org.tensorflow.proto.data.DatasetOptions.ThreadingOptions buildPartial() { org.tensorflow.proto.data.DatasetOptions.ThreadingOptions result = new org.tensorflow.proto.data.DatasetOptions.ThreadingOptions(this); - if (optionalMaxIntraOpParallelismCase_ == 1) { - result.optionalMaxIntraOpParallelism_ = optionalMaxIntraOpParallelism_; - } - if (optionalPrivateThreadpoolSizeCase_ == 2) { - result.optionalPrivateThreadpoolSize_ = optionalPrivateThreadpoolSize_; - } - result.optionalMaxIntraOpParallelismCase_ = optionalMaxIntraOpParallelismCase_; - result.optionalPrivateThreadpoolSizeCase_ = optionalPrivateThreadpoolSizeCase_; + if (bitField0_ != 0) { buildPartial0(result); } + buildPartialOneofs(result); onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); + private void buildPartial0(org.tensorflow.proto.data.DatasetOptions.ThreadingOptions result) { + int from_bitField0_ = bitField0_; } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + + private void buildPartialOneofs(org.tensorflow.proto.data.DatasetOptions.ThreadingOptions result) { + result.optionalMaxIntraOpParallelismCase_ = optionalMaxIntraOpParallelismCase_; + result.optionalMaxIntraOpParallelism_ = this.optionalMaxIntraOpParallelism_; + result.optionalPrivateThreadpoolSizeCase_ = optionalPrivateThreadpoolSizeCase_; + result.optionalPrivateThreadpoolSize_ = this.optionalPrivateThreadpoolSize_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.data.DatasetOptions.ThreadingOptions) { @@ -5961,6 +6731,7 @@ public Builder clearOptionalPrivateThreadpoolSize() { return this; } + private int bitField0_; /** * int32 max_intra_op_parallelism = 1; @@ -5985,6 +6756,7 @@ public int getMaxIntraOpParallelism() { * @return This builder for chaining. */ public Builder setMaxIntraOpParallelism(int value) { + optionalMaxIntraOpParallelismCase_ = 1; optionalMaxIntraOpParallelism_ = value; onChanged(); @@ -6026,6 +6798,7 @@ public int getPrivateThreadpoolSize() { * @return This builder for chaining. */ public Builder setPrivateThreadpoolSize(int value) { + optionalPrivateThreadpoolSizeCase_ = 2; optionalPrivateThreadpoolSize_ = value; onChanged(); @@ -6043,18 +6816,6 @@ public Builder clearPrivateThreadpoolSize() { } return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.data.ThreadingOptions) } @@ -6261,6 +7022,33 @@ public interface OptionsOrBuilder extends */ org.tensorflow.proto.data.DatasetOptions.OptimizationOptionsOrBuilder getOptimizationOptionsOrBuilder(); + /** + *
    +     * The tf.data service options associated with the dataset.
    +     * 
    + * + * .tensorflow.data.ServiceOptions service_options = 12; + * @return Whether the serviceOptions field is set. + */ + boolean hasServiceOptions(); + /** + *
    +     * The tf.data service options associated with the dataset.
    +     * 
    + * + * .tensorflow.data.ServiceOptions service_options = 12; + * @return The serviceOptions. + */ + org.tensorflow.proto.data.DatasetOptions.ServiceOptions getServiceOptions(); + /** + *
    +     * The tf.data service options associated with the dataset.
    +     * 
    + * + * .tensorflow.data.ServiceOptions service_options = 12; + */ + org.tensorflow.proto.data.DatasetOptions.ServiceOptionsOrBuilder getServiceOptionsOrBuilder(); + /** * bool slack = 4; * @return Whether the slack field is set. @@ -6337,66 +7125,67 @@ public interface OptionsOrBuilder extends */ boolean getWarmStart(); - public org.tensorflow.proto.data.DatasetOptions.Options.OptionalDatasetNameCase getOptionalDatasetNameCase(); + org.tensorflow.proto.data.DatasetOptions.Options.OptionalDatasetNameCase getOptionalDatasetNameCase(); - public org.tensorflow.proto.data.DatasetOptions.Options.OptionalDeterministicCase getOptionalDeterministicCase(); + org.tensorflow.proto.data.DatasetOptions.Options.OptionalDeterministicCase getOptionalDeterministicCase(); - public org.tensorflow.proto.data.DatasetOptions.Options.OptionalSlackCase getOptionalSlackCase(); + org.tensorflow.proto.data.DatasetOptions.Options.OptionalSlackCase getOptionalSlackCase(); - public org.tensorflow.proto.data.DatasetOptions.Options.OptionalExternalStatePolicyCase getOptionalExternalStatePolicyCase(); + org.tensorflow.proto.data.DatasetOptions.Options.OptionalExternalStatePolicyCase getOptionalExternalStatePolicyCase(); - public org.tensorflow.proto.data.DatasetOptions.Options.OptionalSymbolicCheckpointCase getOptionalSymbolicCheckpointCase(); + org.tensorflow.proto.data.DatasetOptions.Options.OptionalSymbolicCheckpointCase getOptionalSymbolicCheckpointCase(); - public org.tensorflow.proto.data.DatasetOptions.Options.OptionalWarmStartCase getOptionalWarmStartCase(); + org.tensorflow.proto.data.DatasetOptions.Options.OptionalWarmStartCase getOptionalWarmStartCase(); } /** *
        * Message stored with Dataset objects to control how datasets are processed and
        * optimized.
    -   * next: 12
    +   *
    +   * next: 13
        * 
    * * Protobuf type {@code tensorflow.data.Options} */ public static final class Options extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.data.Options) OptionsOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + Options.class.getName()); + } // Use Options.newBuilder() to construct. - private Options(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private Options(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private Options() { - frameworkType_ = com.google.protobuf.LazyStringArrayList.EMPTY; - } - - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new Options(); + frameworkType_ = + com.google.protobuf.LazyStringArrayList.emptyList(); } - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_Options_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_Options_fieldAccessorTable .ensureFieldAccessorsInitialized( org.tensorflow.proto.data.DatasetOptions.Options.class, org.tensorflow.proto.data.DatasetOptions.Options.Builder.class); } + private int bitField0_; private int optionalDatasetNameCase_ = 0; + @SuppressWarnings("serial") private java.lang.Object optionalDatasetName_; public enum OptionalDatasetNameCase implements com.google.protobuf.Internal.EnumLite, @@ -6436,6 +7225,7 @@ public int getNumber() { } private int optionalDeterministicCase_ = 0; + @SuppressWarnings("serial") private java.lang.Object optionalDeterministic_; public enum OptionalDeterministicCase implements com.google.protobuf.Internal.EnumLite, @@ -6475,6 +7265,7 @@ public int getNumber() { } private int optionalSlackCase_ = 0; + @SuppressWarnings("serial") private java.lang.Object optionalSlack_; public enum OptionalSlackCase implements com.google.protobuf.Internal.EnumLite, @@ -6514,6 +7305,7 @@ public int getNumber() { } private int optionalExternalStatePolicyCase_ = 0; + @SuppressWarnings("serial") private java.lang.Object optionalExternalStatePolicy_; public enum OptionalExternalStatePolicyCase implements com.google.protobuf.Internal.EnumLite, @@ -6553,6 +7345,7 @@ public int getNumber() { } private int optionalSymbolicCheckpointCase_ = 0; + @SuppressWarnings("serial") private java.lang.Object optionalSymbolicCheckpoint_; public enum OptionalSymbolicCheckpointCase implements com.google.protobuf.Internal.EnumLite, @@ -6592,6 +7385,7 @@ public int getNumber() { } private int optionalWarmStartCase_ = 0; + @SuppressWarnings("serial") private java.lang.Object optionalWarmStart_; public enum OptionalWarmStartCase implements com.google.protobuf.Internal.EnumLite, @@ -6683,7 +7477,9 @@ public java.lang.String getDatasetName() { } public static final int FRAMEWORK_TYPE_FIELD_NUMBER = 11; - private com.google.protobuf.LazyStringList frameworkType_; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList frameworkType_ = + com.google.protobuf.LazyStringArrayList.emptyList(); /** *
          * List of frameworks used to generate this dataset.
    @@ -6766,7 +7562,7 @@ public boolean getDeterministic() {
          */
         @java.lang.Override
         public boolean hasAutotuneOptions() {
    -      return autotuneOptions_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * 
    @@ -6789,7 +7585,7 @@ public org.tensorflow.proto.data.DatasetOptions.AutotuneOptions getAutotuneOptio
          */
         @java.lang.Override
         public org.tensorflow.proto.data.DatasetOptions.AutotuneOptionsOrBuilder getAutotuneOptionsOrBuilder() {
    -      return getAutotuneOptions();
    +      return autotuneOptions_ == null ? org.tensorflow.proto.data.DatasetOptions.AutotuneOptions.getDefaultInstance() : autotuneOptions_;
         }
     
         public static final int DISTRIBUTE_OPTIONS_FIELD_NUMBER = 2;
    @@ -6804,7 +7600,7 @@ public org.tensorflow.proto.data.DatasetOptions.AutotuneOptionsOrBuilder getAuto
          */
         @java.lang.Override
         public boolean hasDistributeOptions() {
    -      return distributeOptions_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * 
    @@ -6827,7 +7623,7 @@ public org.tensorflow.proto.data.DatasetOptions.DistributeOptions getDistributeO
          */
         @java.lang.Override
         public org.tensorflow.proto.data.DatasetOptions.DistributeOptionsOrBuilder getDistributeOptionsOrBuilder() {
    -      return getDistributeOptions();
    +      return distributeOptions_ == null ? org.tensorflow.proto.data.DatasetOptions.DistributeOptions.getDefaultInstance() : distributeOptions_;
         }
     
         public static final int OPTIMIZATION_OPTIONS_FIELD_NUMBER = 3;
    @@ -6842,7 +7638,7 @@ public org.tensorflow.proto.data.DatasetOptions.DistributeOptionsOrBuilder getDi
          */
         @java.lang.Override
         public boolean hasOptimizationOptions() {
    -      return optimizationOptions_ != null;
    +      return ((bitField0_ & 0x00000004) != 0);
         }
         /**
          * 
    @@ -6865,7 +7661,45 @@ public org.tensorflow.proto.data.DatasetOptions.OptimizationOptions getOptimizat
          */
         @java.lang.Override
         public org.tensorflow.proto.data.DatasetOptions.OptimizationOptionsOrBuilder getOptimizationOptionsOrBuilder() {
    -      return getOptimizationOptions();
    +      return optimizationOptions_ == null ? org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.getDefaultInstance() : optimizationOptions_;
    +    }
    +
    +    public static final int SERVICE_OPTIONS_FIELD_NUMBER = 12;
    +    private org.tensorflow.proto.data.DatasetOptions.ServiceOptions serviceOptions_;
    +    /**
    +     * 
    +     * The tf.data service options associated with the dataset.
    +     * 
    + * + * .tensorflow.data.ServiceOptions service_options = 12; + * @return Whether the serviceOptions field is set. + */ + @java.lang.Override + public boolean hasServiceOptions() { + return ((bitField0_ & 0x00000008) != 0); + } + /** + *
    +     * The tf.data service options associated with the dataset.
    +     * 
    + * + * .tensorflow.data.ServiceOptions service_options = 12; + * @return The serviceOptions. + */ + @java.lang.Override + public org.tensorflow.proto.data.DatasetOptions.ServiceOptions getServiceOptions() { + return serviceOptions_ == null ? org.tensorflow.proto.data.DatasetOptions.ServiceOptions.getDefaultInstance() : serviceOptions_; + } + /** + *
    +     * The tf.data service options associated with the dataset.
    +     * 
    + * + * .tensorflow.data.ServiceOptions service_options = 12; + */ + @java.lang.Override + public org.tensorflow.proto.data.DatasetOptions.ServiceOptionsOrBuilder getServiceOptionsOrBuilder() { + return serviceOptions_ == null ? org.tensorflow.proto.data.DatasetOptions.ServiceOptions.getDefaultInstance() : serviceOptions_; } public static final int SLACK_FIELD_NUMBER = 4; @@ -6901,7 +7735,7 @@ public boolean getSlack() { */ @java.lang.Override public boolean hasThreadingOptions() { - return threadingOptions_ != null; + return ((bitField0_ & 0x00000010) != 0); } /** *
    @@ -6924,7 +7758,7 @@ public org.tensorflow.proto.data.DatasetOptions.ThreadingOptions getThreadingOpt
          */
         @java.lang.Override
         public org.tensorflow.proto.data.DatasetOptions.ThreadingOptionsOrBuilder getThreadingOptionsOrBuilder() {
    -      return getThreadingOptions();
    +      return threadingOptions_ == null ? org.tensorflow.proto.data.DatasetOptions.ThreadingOptions.getDefaultInstance() : threadingOptions_;
         }
     
         public static final int EXTERNAL_STATE_POLICY_FIELD_NUMBER = 6;
    @@ -6951,8 +7785,7 @@ public int getExternalStatePolicyValue() {
          */
         public org.tensorflow.proto.data.DatasetOptions.ExternalStatePolicy getExternalStatePolicy() {
           if (optionalExternalStatePolicyCase_ == 6) {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.data.DatasetOptions.ExternalStatePolicy result = org.tensorflow.proto.data.DatasetOptions.ExternalStatePolicy.valueOf(
    +        org.tensorflow.proto.data.DatasetOptions.ExternalStatePolicy result = org.tensorflow.proto.data.DatasetOptions.ExternalStatePolicy.forNumber(
                 (java.lang.Integer) optionalExternalStatePolicy_);
             return result == null ? org.tensorflow.proto.data.DatasetOptions.ExternalStatePolicy.UNRECOGNIZED : result;
           }
    @@ -7019,23 +7852,23 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
             output.writeBool(
                 1, (boolean)((java.lang.Boolean) optionalDeterministic_));
           }
    -      if (distributeOptions_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             output.writeMessage(2, getDistributeOptions());
           }
    -      if (optimizationOptions_ != null) {
    +      if (((bitField0_ & 0x00000004) != 0)) {
             output.writeMessage(3, getOptimizationOptions());
           }
           if (optionalSlackCase_ == 4) {
             output.writeBool(
                 4, (boolean)((java.lang.Boolean) optionalSlack_));
           }
    -      if (threadingOptions_ != null) {
    +      if (((bitField0_ & 0x00000010) != 0)) {
             output.writeMessage(5, getThreadingOptions());
           }
           if (optionalExternalStatePolicyCase_ == 6) {
             output.writeEnum(6, ((java.lang.Integer) optionalExternalStatePolicy_));
           }
    -      if (autotuneOptions_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(7, getAutotuneOptions());
           }
           if (optionalSymbolicCheckpointCase_ == 8) {
    @@ -7047,10 +7880,13 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
                 9, (boolean)((java.lang.Boolean) optionalWarmStart_));
           }
           if (optionalDatasetNameCase_ == 10) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 10, optionalDatasetName_);
    +        com.google.protobuf.GeneratedMessage.writeString(output, 10, optionalDatasetName_);
           }
           for (int i = 0; i < frameworkType_.size(); i++) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 11, frameworkType_.getRaw(i));
    +        com.google.protobuf.GeneratedMessage.writeString(output, 11, frameworkType_.getRaw(i));
    +      }
    +      if (((bitField0_ & 0x00000008) != 0)) {
    +        output.writeMessage(12, getServiceOptions());
           }
           getUnknownFields().writeTo(output);
         }
    @@ -7066,11 +7902,11 @@ public int getSerializedSize() {
               .computeBoolSize(
                   1, (boolean)((java.lang.Boolean) optionalDeterministic_));
           }
    -      if (distributeOptions_ != null) {
    +      if (((bitField0_ & 0x00000002) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(2, getDistributeOptions());
           }
    -      if (optimizationOptions_ != null) {
    +      if (((bitField0_ & 0x00000004) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(3, getOptimizationOptions());
           }
    @@ -7079,7 +7915,7 @@ public int getSerializedSize() {
               .computeBoolSize(
                   4, (boolean)((java.lang.Boolean) optionalSlack_));
           }
    -      if (threadingOptions_ != null) {
    +      if (((bitField0_ & 0x00000010) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(5, getThreadingOptions());
           }
    @@ -7087,7 +7923,7 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeEnumSize(6, ((java.lang.Integer) optionalExternalStatePolicy_));
           }
    -      if (autotuneOptions_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(7, getAutotuneOptions());
           }
    @@ -7102,7 +7938,7 @@ public int getSerializedSize() {
                   9, (boolean)((java.lang.Boolean) optionalWarmStart_));
           }
           if (optionalDatasetNameCase_ == 10) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, optionalDatasetName_);
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(10, optionalDatasetName_);
           }
           {
             int dataSize = 0;
    @@ -7112,6 +7948,10 @@ public int getSerializedSize() {
             size += dataSize;
             size += 1 * getFrameworkTypeList().size();
           }
    +      if (((bitField0_ & 0x00000008) != 0)) {
    +        size += com.google.protobuf.CodedOutputStream
    +          .computeMessageSize(12, getServiceOptions());
    +      }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
           return size;
    @@ -7144,6 +7984,11 @@ public boolean equals(final java.lang.Object obj) {
             if (!getOptimizationOptions()
                 .equals(other.getOptimizationOptions())) return false;
           }
    +      if (hasServiceOptions() != other.hasServiceOptions()) return false;
    +      if (hasServiceOptions()) {
    +        if (!getServiceOptions()
    +            .equals(other.getServiceOptions())) return false;
    +      }
           if (hasThreadingOptions() != other.hasThreadingOptions()) return false;
           if (hasThreadingOptions()) {
             if (!getThreadingOptions()
    @@ -7230,6 +8075,10 @@ public int hashCode() {
             hash = (37 * hash) + OPTIMIZATION_OPTIONS_FIELD_NUMBER;
             hash = (53 * hash) + getOptimizationOptions().hashCode();
           }
    +      if (hasServiceOptions()) {
    +        hash = (37 * hash) + SERVICE_OPTIONS_FIELD_NUMBER;
    +        hash = (53 * hash) + getServiceOptions().hashCode();
    +      }
           if (hasThreadingOptions()) {
             hash = (37 * hash) + THREADING_OPTIONS_FIELD_NUMBER;
             hash = (53 * hash) + getThreadingOptions().hashCode();
    @@ -7325,39 +8174,41 @@ public static org.tensorflow.proto.data.DatasetOptions.Options parseFrom(
         }
         public static org.tensorflow.proto.data.DatasetOptions.Options parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.DatasetOptions.Options parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.data.DatasetOptions.Options parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.data.DatasetOptions.Options parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.data.DatasetOptions.Options parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.DatasetOptions.Options parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -7377,7 +8228,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -7385,13 +8236,14 @@ protected Builder newBuilderForType(
          * 
          * Message stored with Dataset objects to control how datasets are processed and
          * optimized.
    -     * next: 12
    +     *
    +     * next: 13
          * 
    * * Protobuf type {@code tensorflow.data.Options} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.data.Options) org.tensorflow.proto.data.DatasetOptions.OptionsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -7400,7 +8252,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.data.DatasetOptions.internal_static_tensorflow_data_Options_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -7409,41 +8261,53 @@ public static final class Builder extends // Construct using org.tensorflow.proto.data.DatasetOptions.Options.newBuilder() private Builder() { - + maybeForceBuilderInitialization(); } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); - + maybeForceBuilderInitialization(); } - @java.lang.Override - public Builder clear() { - super.clear(); - frameworkType_ = com.google.protobuf.LazyStringArrayList.EMPTY; - bitField0_ = (bitField0_ & ~0x00000001); - if (autotuneOptionsBuilder_ == null) { - autotuneOptions_ = null; - } else { - autotuneOptions_ = null; + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessage + .alwaysUseFieldBuilders) { + getAutotuneOptionsFieldBuilder(); + getDistributeOptionsFieldBuilder(); + getOptimizationOptionsFieldBuilder(); + getServiceOptionsFieldBuilder(); + getThreadingOptionsFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + frameworkType_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + autotuneOptions_ = null; + if (autotuneOptionsBuilder_ != null) { + autotuneOptionsBuilder_.dispose(); autotuneOptionsBuilder_ = null; } - if (distributeOptionsBuilder_ == null) { - distributeOptions_ = null; - } else { - distributeOptions_ = null; + distributeOptions_ = null; + if (distributeOptionsBuilder_ != null) { + distributeOptionsBuilder_.dispose(); distributeOptionsBuilder_ = null; } - if (optimizationOptionsBuilder_ == null) { - optimizationOptions_ = null; - } else { - optimizationOptions_ = null; + optimizationOptions_ = null; + if (optimizationOptionsBuilder_ != null) { + optimizationOptionsBuilder_.dispose(); optimizationOptionsBuilder_ = null; } - if (threadingOptionsBuilder_ == null) { - threadingOptions_ = null; - } else { - threadingOptions_ = null; + serviceOptions_ = null; + if (serviceOptionsBuilder_ != null) { + serviceOptionsBuilder_.dispose(); + serviceOptionsBuilder_ = null; + } + threadingOptions_ = null; + if (threadingOptionsBuilder_ != null) { + threadingOptionsBuilder_.dispose(); threadingOptionsBuilder_ = null; } optionalDatasetNameCase_ = 0; @@ -7484,92 +8348,67 @@ public org.tensorflow.proto.data.DatasetOptions.Options build() { @java.lang.Override public org.tensorflow.proto.data.DatasetOptions.Options buildPartial() { org.tensorflow.proto.data.DatasetOptions.Options result = new org.tensorflow.proto.data.DatasetOptions.Options(this); + if (bitField0_ != 0) { buildPartial0(result); } + buildPartialOneofs(result); + onBuilt(); + return result; + } + + private void buildPartial0(org.tensorflow.proto.data.DatasetOptions.Options result) { int from_bitField0_ = bitField0_; - if (optionalDatasetNameCase_ == 10) { - result.optionalDatasetName_ = optionalDatasetName_; - } - if (((bitField0_ & 0x00000001) != 0)) { - frameworkType_ = frameworkType_.getUnmodifiableView(); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.frameworkType_ = frameworkType_; - if (optionalDeterministicCase_ == 1) { - result.optionalDeterministic_ = optionalDeterministic_; - } - if (autotuneOptionsBuilder_ == null) { - result.autotuneOptions_ = autotuneOptions_; - } else { - result.autotuneOptions_ = autotuneOptionsBuilder_.build(); - } - if (distributeOptionsBuilder_ == null) { - result.distributeOptions_ = distributeOptions_; - } else { - result.distributeOptions_ = distributeOptionsBuilder_.build(); - } - if (optimizationOptionsBuilder_ == null) { - result.optimizationOptions_ = optimizationOptions_; - } else { - result.optimizationOptions_ = optimizationOptionsBuilder_.build(); - } - if (optionalSlackCase_ == 4) { - result.optionalSlack_ = optionalSlack_; - } - if (threadingOptionsBuilder_ == null) { - result.threadingOptions_ = threadingOptions_; - } else { - result.threadingOptions_ = threadingOptionsBuilder_.build(); - } - if (optionalExternalStatePolicyCase_ == 6) { - result.optionalExternalStatePolicy_ = optionalExternalStatePolicy_; - } - if (optionalSymbolicCheckpointCase_ == 8) { - result.optionalSymbolicCheckpoint_ = optionalSymbolicCheckpoint_; - } - if (optionalWarmStartCase_ == 9) { - result.optionalWarmStart_ = optionalWarmStart_; - } + if (((from_bitField0_ & 0x00000002) != 0)) { + frameworkType_.makeImmutable(); + result.frameworkType_ = frameworkType_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000008) != 0)) { + result.autotuneOptions_ = autotuneOptionsBuilder_ == null + ? autotuneOptions_ + : autotuneOptionsBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.distributeOptions_ = distributeOptionsBuilder_ == null + ? distributeOptions_ + : distributeOptionsBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.optimizationOptions_ = optimizationOptionsBuilder_ == null + ? optimizationOptions_ + : optimizationOptionsBuilder_.build(); + to_bitField0_ |= 0x00000004; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.serviceOptions_ = serviceOptionsBuilder_ == null + ? serviceOptions_ + : serviceOptionsBuilder_.build(); + to_bitField0_ |= 0x00000008; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.threadingOptions_ = threadingOptionsBuilder_ == null + ? threadingOptions_ + : threadingOptionsBuilder_.build(); + to_bitField0_ |= 0x00000010; + } + result.bitField0_ |= to_bitField0_; + } + + private void buildPartialOneofs(org.tensorflow.proto.data.DatasetOptions.Options result) { result.optionalDatasetNameCase_ = optionalDatasetNameCase_; + result.optionalDatasetName_ = this.optionalDatasetName_; result.optionalDeterministicCase_ = optionalDeterministicCase_; + result.optionalDeterministic_ = this.optionalDeterministic_; result.optionalSlackCase_ = optionalSlackCase_; + result.optionalSlack_ = this.optionalSlack_; result.optionalExternalStatePolicyCase_ = optionalExternalStatePolicyCase_; + result.optionalExternalStatePolicy_ = this.optionalExternalStatePolicy_; result.optionalSymbolicCheckpointCase_ = optionalSymbolicCheckpointCase_; + result.optionalSymbolicCheckpoint_ = this.optionalSymbolicCheckpoint_; result.optionalWarmStartCase_ = optionalWarmStartCase_; - onBuilt(); - return result; + result.optionalWarmStart_ = this.optionalWarmStart_; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); - } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.data.DatasetOptions.Options) { @@ -7585,7 +8424,7 @@ public Builder mergeFrom(org.tensorflow.proto.data.DatasetOptions.Options other) if (!other.frameworkType_.isEmpty()) { if (frameworkType_.isEmpty()) { frameworkType_ = other.frameworkType_; - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ |= 0x00000002; } else { ensureFrameworkTypeIsMutable(); frameworkType_.addAll(other.frameworkType_); @@ -7601,6 +8440,9 @@ public Builder mergeFrom(org.tensorflow.proto.data.DatasetOptions.Options other) if (other.hasOptimizationOptions()) { mergeOptimizationOptions(other.getOptimizationOptions()); } + if (other.hasServiceOptions()) { + mergeServiceOptions(other.getServiceOptions()); + } if (other.hasThreadingOptions()) { mergeThreadingOptions(other.getThreadingOptions()); } @@ -7695,14 +8537,14 @@ public Builder mergeFrom( input.readMessage( getDistributeOptionsFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000010; break; } // case 18 case 26: { input.readMessage( getOptimizationOptionsFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000020; break; } // case 26 case 32: { @@ -7714,7 +8556,7 @@ public Builder mergeFrom( input.readMessage( getThreadingOptionsFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000100; break; } // case 42 case 48: { @@ -7727,7 +8569,7 @@ public Builder mergeFrom( input.readMessage( getAutotuneOptionsFieldBuilder().getBuilder(), extensionRegistry); - + bitField0_ |= 0x00000008; break; } // case 58 case 64: { @@ -7752,6 +8594,13 @@ public Builder mergeFrom( frameworkType_.add(s); break; } // case 90 + case 98: { + input.readMessage( + getServiceOptionsFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000040; + break; + } // case 98 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag @@ -7919,10 +8768,8 @@ public java.lang.String getDatasetName() { */ public Builder setDatasetName( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - optionalDatasetNameCase_ = 10; + if (value == null) { throw new NullPointerException(); } + optionalDatasetNameCase_ = 10; optionalDatasetName_ = value; onChanged(); return this; @@ -7946,22 +8793,21 @@ public Builder clearDatasetName() { */ public Builder setDatasetNameBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); optionalDatasetNameCase_ = 10; optionalDatasetName_ = value; onChanged(); return this; } - private com.google.protobuf.LazyStringList frameworkType_ = com.google.protobuf.LazyStringArrayList.EMPTY; + private com.google.protobuf.LazyStringArrayList frameworkType_ = + com.google.protobuf.LazyStringArrayList.emptyList(); private void ensureFrameworkTypeIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { + if (!frameworkType_.isModifiable()) { frameworkType_ = new com.google.protobuf.LazyStringArrayList(frameworkType_); - bitField0_ |= 0x00000001; - } + } + bitField0_ |= 0x00000002; } /** *
    @@ -7973,7 +8819,8 @@ private void ensureFrameworkTypeIsMutable() {
            */
           public com.google.protobuf.ProtocolStringList
               getFrameworkTypeList() {
    -        return frameworkType_.getUnmodifiableView();
    +        frameworkType_.makeImmutable();
    +        return frameworkType_;
           }
           /**
            * 
    @@ -8023,11 +8870,10 @@ public java.lang.String getFrameworkType(int index) {
            */
           public Builder setFrameworkType(
               int index, java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureFrameworkTypeIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureFrameworkTypeIsMutable();
             frameworkType_.set(index, value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -8042,11 +8888,10 @@ public Builder setFrameworkType(
            */
           public Builder addFrameworkType(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureFrameworkTypeIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureFrameworkTypeIsMutable();
             frameworkType_.add(value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -8064,6 +8909,7 @@ public Builder addAllFrameworkType(
             ensureFrameworkTypeIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, frameworkType_);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -8076,8 +8922,9 @@ public Builder addAllFrameworkType(
            * @return This builder for chaining.
            */
           public Builder clearFrameworkType() {
    -        frameworkType_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        frameworkType_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
    +        bitField0_ = (bitField0_ & ~0x00000002);;
             onChanged();
             return this;
           }
    @@ -8092,12 +8939,11 @@ public Builder clearFrameworkType() {
            */
           public Builder addFrameworkTypeBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             ensureFrameworkTypeIsMutable();
             frameworkType_.add(value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -8125,6 +8971,7 @@ public boolean getDeterministic() {
            * @return This builder for chaining.
            */
           public Builder setDeterministic(boolean value) {
    +
             optionalDeterministicCase_ = 1;
             optionalDeterministic_ = value;
             onChanged();
    @@ -8144,7 +8991,7 @@ public Builder clearDeterministic() {
           }
     
           private org.tensorflow.proto.data.DatasetOptions.AutotuneOptions autotuneOptions_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.data.DatasetOptions.AutotuneOptions, org.tensorflow.proto.data.DatasetOptions.AutotuneOptions.Builder, org.tensorflow.proto.data.DatasetOptions.AutotuneOptionsOrBuilder> autotuneOptionsBuilder_;
           /**
            * 
    @@ -8155,7 +9002,7 @@ public Builder clearDeterministic() {
            * @return Whether the autotuneOptions field is set.
            */
           public boolean hasAutotuneOptions() {
    -        return autotuneOptionsBuilder_ != null || autotuneOptions_ != null;
    +        return ((bitField0_ & 0x00000008) != 0);
           }
           /**
            * 
    @@ -8185,11 +9032,11 @@ public Builder setAutotuneOptions(org.tensorflow.proto.data.DatasetOptions.Autot
                 throw new NullPointerException();
               }
               autotuneOptions_ = value;
    -          onChanged();
             } else {
               autotuneOptionsBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000008;
    +        onChanged();
             return this;
           }
           /**
    @@ -8203,11 +9050,11 @@ public Builder setAutotuneOptions(
               org.tensorflow.proto.data.DatasetOptions.AutotuneOptions.Builder builderForValue) {
             if (autotuneOptionsBuilder_ == null) {
               autotuneOptions_ = builderForValue.build();
    -          onChanged();
             } else {
               autotuneOptionsBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000008;
    +        onChanged();
             return this;
           }
           /**
    @@ -8219,17 +9066,20 @@ public Builder setAutotuneOptions(
            */
           public Builder mergeAutotuneOptions(org.tensorflow.proto.data.DatasetOptions.AutotuneOptions value) {
             if (autotuneOptionsBuilder_ == null) {
    -          if (autotuneOptions_ != null) {
    -            autotuneOptions_ =
    -              org.tensorflow.proto.data.DatasetOptions.AutotuneOptions.newBuilder(autotuneOptions_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000008) != 0) &&
    +            autotuneOptions_ != null &&
    +            autotuneOptions_ != org.tensorflow.proto.data.DatasetOptions.AutotuneOptions.getDefaultInstance()) {
    +            getAutotuneOptionsBuilder().mergeFrom(value);
               } else {
                 autotuneOptions_ = value;
               }
    -          onChanged();
             } else {
               autotuneOptionsBuilder_.mergeFrom(value);
             }
    -
    +        if (autotuneOptions_ != null) {
    +          bitField0_ |= 0x00000008;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -8240,14 +9090,13 @@ public Builder mergeAutotuneOptions(org.tensorflow.proto.data.DatasetOptions.Aut
            * .tensorflow.data.AutotuneOptions autotune_options = 7;
            */
           public Builder clearAutotuneOptions() {
    -        if (autotuneOptionsBuilder_ == null) {
    -          autotuneOptions_ = null;
    -          onChanged();
    -        } else {
    -          autotuneOptions_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000008);
    +        autotuneOptions_ = null;
    +        if (autotuneOptionsBuilder_ != null) {
    +          autotuneOptionsBuilder_.dispose();
               autotuneOptionsBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -8258,7 +9107,7 @@ public Builder clearAutotuneOptions() {
            * .tensorflow.data.AutotuneOptions autotune_options = 7;
            */
           public org.tensorflow.proto.data.DatasetOptions.AutotuneOptions.Builder getAutotuneOptionsBuilder() {
    -        
    +        bitField0_ |= 0x00000008;
             onChanged();
             return getAutotuneOptionsFieldBuilder().getBuilder();
           }
    @@ -8284,11 +9133,11 @@ public org.tensorflow.proto.data.DatasetOptions.AutotuneOptionsOrBuilder getAuto
            *
            * .tensorflow.data.AutotuneOptions autotune_options = 7;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.data.DatasetOptions.AutotuneOptions, org.tensorflow.proto.data.DatasetOptions.AutotuneOptions.Builder, org.tensorflow.proto.data.DatasetOptions.AutotuneOptionsOrBuilder> 
               getAutotuneOptionsFieldBuilder() {
             if (autotuneOptionsBuilder_ == null) {
    -          autotuneOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          autotuneOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.data.DatasetOptions.AutotuneOptions, org.tensorflow.proto.data.DatasetOptions.AutotuneOptions.Builder, org.tensorflow.proto.data.DatasetOptions.AutotuneOptionsOrBuilder>(
                       getAutotuneOptions(),
                       getParentForChildren(),
    @@ -8299,7 +9148,7 @@ public org.tensorflow.proto.data.DatasetOptions.AutotuneOptionsOrBuilder getAuto
           }
     
           private org.tensorflow.proto.data.DatasetOptions.DistributeOptions distributeOptions_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.data.DatasetOptions.DistributeOptions, org.tensorflow.proto.data.DatasetOptions.DistributeOptions.Builder, org.tensorflow.proto.data.DatasetOptions.DistributeOptionsOrBuilder> distributeOptionsBuilder_;
           /**
            * 
    @@ -8310,7 +9159,7 @@ public org.tensorflow.proto.data.DatasetOptions.AutotuneOptionsOrBuilder getAuto
            * @return Whether the distributeOptions field is set.
            */
           public boolean hasDistributeOptions() {
    -        return distributeOptionsBuilder_ != null || distributeOptions_ != null;
    +        return ((bitField0_ & 0x00000010) != 0);
           }
           /**
            * 
    @@ -8340,11 +9189,11 @@ public Builder setDistributeOptions(org.tensorflow.proto.data.DatasetOptions.Dis
                 throw new NullPointerException();
               }
               distributeOptions_ = value;
    -          onChanged();
             } else {
               distributeOptionsBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000010;
    +        onChanged();
             return this;
           }
           /**
    @@ -8358,11 +9207,11 @@ public Builder setDistributeOptions(
               org.tensorflow.proto.data.DatasetOptions.DistributeOptions.Builder builderForValue) {
             if (distributeOptionsBuilder_ == null) {
               distributeOptions_ = builderForValue.build();
    -          onChanged();
             } else {
               distributeOptionsBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000010;
    +        onChanged();
             return this;
           }
           /**
    @@ -8374,17 +9223,20 @@ public Builder setDistributeOptions(
            */
           public Builder mergeDistributeOptions(org.tensorflow.proto.data.DatasetOptions.DistributeOptions value) {
             if (distributeOptionsBuilder_ == null) {
    -          if (distributeOptions_ != null) {
    -            distributeOptions_ =
    -              org.tensorflow.proto.data.DatasetOptions.DistributeOptions.newBuilder(distributeOptions_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000010) != 0) &&
    +            distributeOptions_ != null &&
    +            distributeOptions_ != org.tensorflow.proto.data.DatasetOptions.DistributeOptions.getDefaultInstance()) {
    +            getDistributeOptionsBuilder().mergeFrom(value);
               } else {
                 distributeOptions_ = value;
               }
    -          onChanged();
             } else {
               distributeOptionsBuilder_.mergeFrom(value);
             }
    -
    +        if (distributeOptions_ != null) {
    +          bitField0_ |= 0x00000010;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -8395,14 +9247,13 @@ public Builder mergeDistributeOptions(org.tensorflow.proto.data.DatasetOptions.D
            * .tensorflow.data.DistributeOptions distribute_options = 2;
            */
           public Builder clearDistributeOptions() {
    -        if (distributeOptionsBuilder_ == null) {
    -          distributeOptions_ = null;
    -          onChanged();
    -        } else {
    -          distributeOptions_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000010);
    +        distributeOptions_ = null;
    +        if (distributeOptionsBuilder_ != null) {
    +          distributeOptionsBuilder_.dispose();
               distributeOptionsBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -8413,7 +9264,7 @@ public Builder clearDistributeOptions() {
            * .tensorflow.data.DistributeOptions distribute_options = 2;
            */
           public org.tensorflow.proto.data.DatasetOptions.DistributeOptions.Builder getDistributeOptionsBuilder() {
    -        
    +        bitField0_ |= 0x00000010;
             onChanged();
             return getDistributeOptionsFieldBuilder().getBuilder();
           }
    @@ -8439,11 +9290,11 @@ public org.tensorflow.proto.data.DatasetOptions.DistributeOptionsOrBuilder getDi
            *
            * .tensorflow.data.DistributeOptions distribute_options = 2;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.data.DatasetOptions.DistributeOptions, org.tensorflow.proto.data.DatasetOptions.DistributeOptions.Builder, org.tensorflow.proto.data.DatasetOptions.DistributeOptionsOrBuilder> 
               getDistributeOptionsFieldBuilder() {
             if (distributeOptionsBuilder_ == null) {
    -          distributeOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          distributeOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.data.DatasetOptions.DistributeOptions, org.tensorflow.proto.data.DatasetOptions.DistributeOptions.Builder, org.tensorflow.proto.data.DatasetOptions.DistributeOptionsOrBuilder>(
                       getDistributeOptions(),
                       getParentForChildren(),
    @@ -8454,7 +9305,7 @@ public org.tensorflow.proto.data.DatasetOptions.DistributeOptionsOrBuilder getDi
           }
     
           private org.tensorflow.proto.data.DatasetOptions.OptimizationOptions optimizationOptions_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.data.DatasetOptions.OptimizationOptions, org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.Builder, org.tensorflow.proto.data.DatasetOptions.OptimizationOptionsOrBuilder> optimizationOptionsBuilder_;
           /**
            * 
    @@ -8465,7 +9316,7 @@ public org.tensorflow.proto.data.DatasetOptions.DistributeOptionsOrBuilder getDi
            * @return Whether the optimizationOptions field is set.
            */
           public boolean hasOptimizationOptions() {
    -        return optimizationOptionsBuilder_ != null || optimizationOptions_ != null;
    +        return ((bitField0_ & 0x00000020) != 0);
           }
           /**
            * 
    @@ -8495,11 +9346,11 @@ public Builder setOptimizationOptions(org.tensorflow.proto.data.DatasetOptions.O
                 throw new NullPointerException();
               }
               optimizationOptions_ = value;
    -          onChanged();
             } else {
               optimizationOptionsBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000020;
    +        onChanged();
             return this;
           }
           /**
    @@ -8513,11 +9364,11 @@ public Builder setOptimizationOptions(
               org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.Builder builderForValue) {
             if (optimizationOptionsBuilder_ == null) {
               optimizationOptions_ = builderForValue.build();
    -          onChanged();
             } else {
               optimizationOptionsBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000020;
    +        onChanged();
             return this;
           }
           /**
    @@ -8529,17 +9380,20 @@ public Builder setOptimizationOptions(
            */
           public Builder mergeOptimizationOptions(org.tensorflow.proto.data.DatasetOptions.OptimizationOptions value) {
             if (optimizationOptionsBuilder_ == null) {
    -          if (optimizationOptions_ != null) {
    -            optimizationOptions_ =
    -              org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.newBuilder(optimizationOptions_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000020) != 0) &&
    +            optimizationOptions_ != null &&
    +            optimizationOptions_ != org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.getDefaultInstance()) {
    +            getOptimizationOptionsBuilder().mergeFrom(value);
               } else {
                 optimizationOptions_ = value;
               }
    -          onChanged();
             } else {
               optimizationOptionsBuilder_.mergeFrom(value);
             }
    -
    +        if (optimizationOptions_ != null) {
    +          bitField0_ |= 0x00000020;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -8550,14 +9404,13 @@ public Builder mergeOptimizationOptions(org.tensorflow.proto.data.DatasetOptions
            * .tensorflow.data.OptimizationOptions optimization_options = 3;
            */
           public Builder clearOptimizationOptions() {
    -        if (optimizationOptionsBuilder_ == null) {
    -          optimizationOptions_ = null;
    -          onChanged();
    -        } else {
    -          optimizationOptions_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000020);
    +        optimizationOptions_ = null;
    +        if (optimizationOptionsBuilder_ != null) {
    +          optimizationOptionsBuilder_.dispose();
               optimizationOptionsBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -8568,7 +9421,7 @@ public Builder clearOptimizationOptions() {
            * .tensorflow.data.OptimizationOptions optimization_options = 3;
            */
           public org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.Builder getOptimizationOptionsBuilder() {
    -        
    +        bitField0_ |= 0x00000020;
             onChanged();
             return getOptimizationOptionsFieldBuilder().getBuilder();
           }
    @@ -8594,11 +9447,11 @@ public org.tensorflow.proto.data.DatasetOptions.OptimizationOptionsOrBuilder get
            *
            * .tensorflow.data.OptimizationOptions optimization_options = 3;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.data.DatasetOptions.OptimizationOptions, org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.Builder, org.tensorflow.proto.data.DatasetOptions.OptimizationOptionsOrBuilder> 
               getOptimizationOptionsFieldBuilder() {
             if (optimizationOptionsBuilder_ == null) {
    -          optimizationOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          optimizationOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.data.DatasetOptions.OptimizationOptions, org.tensorflow.proto.data.DatasetOptions.OptimizationOptions.Builder, org.tensorflow.proto.data.DatasetOptions.OptimizationOptionsOrBuilder>(
                       getOptimizationOptions(),
                       getParentForChildren(),
    @@ -8608,6 +9461,163 @@ public org.tensorflow.proto.data.DatasetOptions.OptimizationOptionsOrBuilder get
             return optimizationOptionsBuilder_;
           }
     
    +      private org.tensorflow.proto.data.DatasetOptions.ServiceOptions serviceOptions_;
    +      private com.google.protobuf.SingleFieldBuilder<
    +          org.tensorflow.proto.data.DatasetOptions.ServiceOptions, org.tensorflow.proto.data.DatasetOptions.ServiceOptions.Builder, org.tensorflow.proto.data.DatasetOptions.ServiceOptionsOrBuilder> serviceOptionsBuilder_;
    +      /**
    +       * 
    +       * The tf.data service options associated with the dataset.
    +       * 
    + * + * .tensorflow.data.ServiceOptions service_options = 12; + * @return Whether the serviceOptions field is set. + */ + public boolean hasServiceOptions() { + return ((bitField0_ & 0x00000040) != 0); + } + /** + *
    +       * The tf.data service options associated with the dataset.
    +       * 
    + * + * .tensorflow.data.ServiceOptions service_options = 12; + * @return The serviceOptions. + */ + public org.tensorflow.proto.data.DatasetOptions.ServiceOptions getServiceOptions() { + if (serviceOptionsBuilder_ == null) { + return serviceOptions_ == null ? org.tensorflow.proto.data.DatasetOptions.ServiceOptions.getDefaultInstance() : serviceOptions_; + } else { + return serviceOptionsBuilder_.getMessage(); + } + } + /** + *
    +       * The tf.data service options associated with the dataset.
    +       * 
    + * + * .tensorflow.data.ServiceOptions service_options = 12; + */ + public Builder setServiceOptions(org.tensorflow.proto.data.DatasetOptions.ServiceOptions value) { + if (serviceOptionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + serviceOptions_ = value; + } else { + serviceOptionsBuilder_.setMessage(value); + } + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + *
    +       * The tf.data service options associated with the dataset.
    +       * 
    + * + * .tensorflow.data.ServiceOptions service_options = 12; + */ + public Builder setServiceOptions( + org.tensorflow.proto.data.DatasetOptions.ServiceOptions.Builder builderForValue) { + if (serviceOptionsBuilder_ == null) { + serviceOptions_ = builderForValue.build(); + } else { + serviceOptionsBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000040; + onChanged(); + return this; + } + /** + *
    +       * The tf.data service options associated with the dataset.
    +       * 
    + * + * .tensorflow.data.ServiceOptions service_options = 12; + */ + public Builder mergeServiceOptions(org.tensorflow.proto.data.DatasetOptions.ServiceOptions value) { + if (serviceOptionsBuilder_ == null) { + if (((bitField0_ & 0x00000040) != 0) && + serviceOptions_ != null && + serviceOptions_ != org.tensorflow.proto.data.DatasetOptions.ServiceOptions.getDefaultInstance()) { + getServiceOptionsBuilder().mergeFrom(value); + } else { + serviceOptions_ = value; + } + } else { + serviceOptionsBuilder_.mergeFrom(value); + } + if (serviceOptions_ != null) { + bitField0_ |= 0x00000040; + onChanged(); + } + return this; + } + /** + *
    +       * The tf.data service options associated with the dataset.
    +       * 
    + * + * .tensorflow.data.ServiceOptions service_options = 12; + */ + public Builder clearServiceOptions() { + bitField0_ = (bitField0_ & ~0x00000040); + serviceOptions_ = null; + if (serviceOptionsBuilder_ != null) { + serviceOptionsBuilder_.dispose(); + serviceOptionsBuilder_ = null; + } + onChanged(); + return this; + } + /** + *
    +       * The tf.data service options associated with the dataset.
    +       * 
    + * + * .tensorflow.data.ServiceOptions service_options = 12; + */ + public org.tensorflow.proto.data.DatasetOptions.ServiceOptions.Builder getServiceOptionsBuilder() { + bitField0_ |= 0x00000040; + onChanged(); + return getServiceOptionsFieldBuilder().getBuilder(); + } + /** + *
    +       * The tf.data service options associated with the dataset.
    +       * 
    + * + * .tensorflow.data.ServiceOptions service_options = 12; + */ + public org.tensorflow.proto.data.DatasetOptions.ServiceOptionsOrBuilder getServiceOptionsOrBuilder() { + if (serviceOptionsBuilder_ != null) { + return serviceOptionsBuilder_.getMessageOrBuilder(); + } else { + return serviceOptions_ == null ? + org.tensorflow.proto.data.DatasetOptions.ServiceOptions.getDefaultInstance() : serviceOptions_; + } + } + /** + *
    +       * The tf.data service options associated with the dataset.
    +       * 
    + * + * .tensorflow.data.ServiceOptions service_options = 12; + */ + private com.google.protobuf.SingleFieldBuilder< + org.tensorflow.proto.data.DatasetOptions.ServiceOptions, org.tensorflow.proto.data.DatasetOptions.ServiceOptions.Builder, org.tensorflow.proto.data.DatasetOptions.ServiceOptionsOrBuilder> + getServiceOptionsFieldBuilder() { + if (serviceOptionsBuilder_ == null) { + serviceOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilder< + org.tensorflow.proto.data.DatasetOptions.ServiceOptions, org.tensorflow.proto.data.DatasetOptions.ServiceOptions.Builder, org.tensorflow.proto.data.DatasetOptions.ServiceOptionsOrBuilder>( + getServiceOptions(), + getParentForChildren(), + isClean()); + serviceOptions_ = null; + } + return serviceOptionsBuilder_; + } + /** * bool slack = 4; * @return Whether the slack field is set. @@ -8631,6 +9641,7 @@ public boolean getSlack() { * @return This builder for chaining. */ public Builder setSlack(boolean value) { + optionalSlackCase_ = 4; optionalSlack_ = value; onChanged(); @@ -8650,7 +9661,7 @@ public Builder clearSlack() { } private org.tensorflow.proto.data.DatasetOptions.ThreadingOptions threadingOptions_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.data.DatasetOptions.ThreadingOptions, org.tensorflow.proto.data.DatasetOptions.ThreadingOptions.Builder, org.tensorflow.proto.data.DatasetOptions.ThreadingOptionsOrBuilder> threadingOptionsBuilder_; /** *
    @@ -8661,7 +9672,7 @@ public Builder clearSlack() {
            * @return Whether the threadingOptions field is set.
            */
           public boolean hasThreadingOptions() {
    -        return threadingOptionsBuilder_ != null || threadingOptions_ != null;
    +        return ((bitField0_ & 0x00000100) != 0);
           }
           /**
            * 
    @@ -8691,11 +9702,11 @@ public Builder setThreadingOptions(org.tensorflow.proto.data.DatasetOptions.Thre
                 throw new NullPointerException();
               }
               threadingOptions_ = value;
    -          onChanged();
             } else {
               threadingOptionsBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000100;
    +        onChanged();
             return this;
           }
           /**
    @@ -8709,11 +9720,11 @@ public Builder setThreadingOptions(
               org.tensorflow.proto.data.DatasetOptions.ThreadingOptions.Builder builderForValue) {
             if (threadingOptionsBuilder_ == null) {
               threadingOptions_ = builderForValue.build();
    -          onChanged();
             } else {
               threadingOptionsBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000100;
    +        onChanged();
             return this;
           }
           /**
    @@ -8725,17 +9736,20 @@ public Builder setThreadingOptions(
            */
           public Builder mergeThreadingOptions(org.tensorflow.proto.data.DatasetOptions.ThreadingOptions value) {
             if (threadingOptionsBuilder_ == null) {
    -          if (threadingOptions_ != null) {
    -            threadingOptions_ =
    -              org.tensorflow.proto.data.DatasetOptions.ThreadingOptions.newBuilder(threadingOptions_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000100) != 0) &&
    +            threadingOptions_ != null &&
    +            threadingOptions_ != org.tensorflow.proto.data.DatasetOptions.ThreadingOptions.getDefaultInstance()) {
    +            getThreadingOptionsBuilder().mergeFrom(value);
               } else {
                 threadingOptions_ = value;
               }
    -          onChanged();
             } else {
               threadingOptionsBuilder_.mergeFrom(value);
             }
    -
    +        if (threadingOptions_ != null) {
    +          bitField0_ |= 0x00000100;
    +          onChanged();
    +        }
             return this;
           }
           /**
    @@ -8746,14 +9760,13 @@ public Builder mergeThreadingOptions(org.tensorflow.proto.data.DatasetOptions.Th
            * .tensorflow.data.ThreadingOptions threading_options = 5;
            */
           public Builder clearThreadingOptions() {
    -        if (threadingOptionsBuilder_ == null) {
    -          threadingOptions_ = null;
    -          onChanged();
    -        } else {
    -          threadingOptions_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000100);
    +        threadingOptions_ = null;
    +        if (threadingOptionsBuilder_ != null) {
    +          threadingOptionsBuilder_.dispose();
               threadingOptionsBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
    @@ -8764,7 +9777,7 @@ public Builder clearThreadingOptions() {
            * .tensorflow.data.ThreadingOptions threading_options = 5;
            */
           public org.tensorflow.proto.data.DatasetOptions.ThreadingOptions.Builder getThreadingOptionsBuilder() {
    -        
    +        bitField0_ |= 0x00000100;
             onChanged();
             return getThreadingOptionsFieldBuilder().getBuilder();
           }
    @@ -8790,11 +9803,11 @@ public org.tensorflow.proto.data.DatasetOptions.ThreadingOptionsOrBuilder getThr
            *
            * .tensorflow.data.ThreadingOptions threading_options = 5;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.data.DatasetOptions.ThreadingOptions, org.tensorflow.proto.data.DatasetOptions.ThreadingOptions.Builder, org.tensorflow.proto.data.DatasetOptions.ThreadingOptionsOrBuilder> 
               getThreadingOptionsFieldBuilder() {
             if (threadingOptionsBuilder_ == null) {
    -          threadingOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          threadingOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.data.DatasetOptions.ThreadingOptions, org.tensorflow.proto.data.DatasetOptions.ThreadingOptions.Builder, org.tensorflow.proto.data.DatasetOptions.ThreadingOptionsOrBuilder>(
                       getThreadingOptions(),
                       getParentForChildren(),
    @@ -8841,8 +9854,7 @@ public Builder setExternalStatePolicyValue(int value) {
           @java.lang.Override
           public org.tensorflow.proto.data.DatasetOptions.ExternalStatePolicy getExternalStatePolicy() {
             if (optionalExternalStatePolicyCase_ == 6) {
    -          @SuppressWarnings("deprecation")
    -          org.tensorflow.proto.data.DatasetOptions.ExternalStatePolicy result = org.tensorflow.proto.data.DatasetOptions.ExternalStatePolicy.valueOf(
    +          org.tensorflow.proto.data.DatasetOptions.ExternalStatePolicy result = org.tensorflow.proto.data.DatasetOptions.ExternalStatePolicy.forNumber(
                   (java.lang.Integer) optionalExternalStatePolicy_);
               return result == null ? org.tensorflow.proto.data.DatasetOptions.ExternalStatePolicy.UNRECOGNIZED : result;
             }
    @@ -8898,6 +9910,7 @@ public boolean getSymbolicCheckpoint() {
            * @return This builder for chaining.
            */
           public Builder setSymbolicCheckpoint(boolean value) {
    +
             optionalSymbolicCheckpointCase_ = 8;
             optionalSymbolicCheckpoint_ = value;
             onChanged();
    @@ -8939,6 +9952,7 @@ public boolean getWarmStart() {
            * @return This builder for chaining.
            */
           public Builder setWarmStart(boolean value) {
    +
             optionalWarmStartCase_ = 9;
             optionalWarmStart_ = value;
             onChanged();
    @@ -8956,18 +9970,6 @@ public Builder clearWarmStart() {
             }
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.data.Options)
         }
    @@ -9023,32 +10025,37 @@ public org.tensorflow.proto.data.DatasetOptions.Options getDefaultInstanceForTyp
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_data_AutotuneOptions_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_data_AutotuneOptions_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_data_CardinalityOptions_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_data_CardinalityOptions_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_data_DistributeOptions_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_data_DistributeOptions_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_data_OptimizationOptions_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_data_OptimizationOptions_fieldAccessorTable;
    +  private static final com.google.protobuf.Descriptors.Descriptor
    +    internal_static_tensorflow_data_ServiceOptions_descriptor;
    +  private static final 
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
    +      internal_static_tensorflow_data_ServiceOptions_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_data_ThreadingOptions_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_data_ThreadingOptions_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_data_Options_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_data_Options_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -9061,70 +10068,75 @@ public org.tensorflow.proto.data.DatasetOptions.Options getDefaultInstanceForTyp
         java.lang.String[] descriptorData = {
           "\n/tensorflow/core/framework/dataset_opti" +
           "ons.proto\022\017tensorflow.data\032%tensorflow/c" +
    -      "ore/framework/model.proto\"\371\001\n\017AutotuneOp" +
    +      "ore/framework/model.proto\"\357\002\n\017AutotuneOp" +
           "tions\022\021\n\007enabled\030\001 \001(\010H\000\022\024\n\ncpu_budget\030\002" +
           " \001(\005H\001\022\024\n\nram_budget\030\003 \001(\003H\002\022F\n\022autotune" +
           "_algorithm\030\004 \001(\0162(.tensorflow.data.model" +
    -      ".AutotuneAlgorithmH\003B\022\n\020optional_enabled" +
    -      "B\025\n\023optional_cpu_budgetB\025\n\023optional_ram_" +
    -      "budgetB\035\n\033optional_autotune_algorithm\"\321\001" +
    -      "\n\022CardinalityOptions\022G\n\rcompute_level\030\001 " +
    -      "\001(\01620.tensorflow.data.CardinalityOptions" +
    -      ".ComputeLevel\"r\n\014ComputeLevel\022#\n\037CARDINA" +
    -      "LITY_COMPUTE_UNSPECIFIED\020\000\022\033\n\027CARDINALIT" +
    -      "Y_COMPUTE_LOW\020\001\022 \n\034CARDINALITY_COMPUTE_M" +
    -      "ODERATE\020\002\"\177\n\021DistributeOptions\022;\n\021auto_s" +
    -      "hard_policy\030\001 \001(\0162 .tensorflow.data.Auto" +
    -      "ShardPolicy\022\025\n\013num_devices\030\002 \001(\005H\000B\026\n\024op" +
    -      "tional_num_devices\"\271\006\n\023OptimizationOptio" +
    -      "ns\022%\n\033apply_default_optimizations\030\001 \001(\010H" +
    -      "\000\022\027\n\rfilter_fusion\030\006 \001(\010H\001\022\036\n\024map_and_ba" +
    -      "tch_fusion\030\t \001(\010H\002\022\037\n\025map_and_filter_fus" +
    -      "ion\030\n \001(\010H\003\022\024\n\nmap_fusion\030\013 \001(\010H\004\022\035\n\023map" +
    -      "_parallelization\030\014 \001(\010H\005\022\032\n\020noop_elimina" +
    -      "tion\030\016 \001(\010H\006\022\030\n\016parallel_batch\030\017 \001(\010H\007\022#" +
    -      "\n\031shuffle_and_repeat_fusion\030\021 \001(\010H\010\022 \n\026f" +
    -      "ilter_parallelization\030\022 \001(\010H\t\022\031\n\017inject_" +
    -      "prefetch\030\023 \001(\010H\n\022!\n\027seq_interleave_prefe" +
    -      "tch\030\025 \001(\010H\013B&\n$optional_apply_default_op" +
    -      "timizationsB\030\n\026optional_filter_fusionB\037\n" +
    -      "\035optional_map_and_batch_fusionB \n\036option" +
    -      "al_map_and_filter_fusionB\025\n\023optional_map" +
    -      "_fusionB\036\n\034optional_map_parallelizationB" +
    -      "\033\n\031optional_noop_eliminationB\031\n\027optional" +
    -      "_parallel_batchB$\n\"optional_shuffle_and_" +
    -      "repeat_fusionB!\n\037optional_filter_paralle" +
    -      "lizationB\032\n\030optional_inject_prefetchB\"\n " +
    -      "optional_seq_interleave_prefetchJ\004\010\002\020\003J\004" +
    -      "\010\003\020\004J\004\010\004\020\005J\004\010\005\020\006J\004\010\007\020\010J\004\010\010\020\tJ\004\010\r\020\016J\004\010\020\020\021" +
    -      "J\004\010\024\020\025\"\242\001\n\020ThreadingOptions\022\"\n\030max_intra" +
    -      "_op_parallelism\030\001 \001(\005H\000\022!\n\027private_threa" +
    -      "dpool_size\030\002 \001(\005H\001B#\n!optional_max_intra" +
    -      "_op_parallelismB\"\n optional_private_thre" +
    -      "adpool_size\"\373\004\n\007Options\022\026\n\014dataset_name\030" +
    -      "\n \001(\tH\000\022\026\n\016framework_type\030\013 \003(\t\022\027\n\rdeter" +
    -      "ministic\030\001 \001(\010H\001\022:\n\020autotune_options\030\007 \001" +
    -      "(\0132 .tensorflow.data.AutotuneOptions\022>\n\022" +
    -      "distribute_options\030\002 \001(\0132\".tensorflow.da" +
    -      "ta.DistributeOptions\022B\n\024optimization_opt" +
    -      "ions\030\003 \001(\0132$.tensorflow.data.Optimizatio" +
    -      "nOptions\022\017\n\005slack\030\004 \001(\010H\002\022<\n\021threading_o" +
    -      "ptions\030\005 \001(\0132!.tensorflow.data.Threading" +
    -      "Options\022E\n\025external_state_policy\030\006 \001(\0162$" +
    -      ".tensorflow.data.ExternalStatePolicyH\003\022\035" +
    -      "\n\023symbolic_checkpoint\030\010 \001(\010H\004\022\024\n\nwarm_st" +
    -      "art\030\t \001(\010H\005B\027\n\025optional_dataset_nameB\030\n\026" +
    -      "optional_deterministicB\020\n\016optional_slack" +
    -      "B \n\036optional_external_state_policyB\036\n\034op" +
    -      "tional_symbolic_checkpointB\025\n\023optional_w" +
    -      "arm_start*K\n\017AutoShardPolicy\022\010\n\004AUTO\020\000\022\010" +
    -      "\n\004FILE\020\001\022\010\n\004DATA\020\002\022\010\n\004HINT\020\003\022\020\n\003OFF\020\377\377\377\377" +
    -      "\377\377\377\377\377\001*J\n\023ExternalStatePolicy\022\017\n\013POLICY_" +
    -      "WARN\020\000\022\021\n\rPOLICY_IGNORE\020\001\022\017\n\013POLICY_FAIL" +
    -      "\020\002Bs\n\031org.tensorflow.proto.dataZVgithub." +
    -      "com/tensorflow/tensorflow/tensorflow/go/" +
    -      "core/framework/dataset_options_go_protob" +
    -      "\006proto3"
    +      ".AutotuneAlgorithmH\003\022\035\n\023initial_parallel" +
    +      "ism\030\005 \001(\003H\004\022\031\n\017min_parallelism\030\006 \001(\003H\005B\022" +
    +      "\n\020optional_enabledB\025\n\023optional_cpu_budge" +
    +      "tB\025\n\023optional_ram_budgetB\035\n\033optional_aut" +
    +      "otune_algorithmB\036\n\034optional_initial_para" +
    +      "llelismB\032\n\030optional_min_parallelism\"\321\001\n\022" +
    +      "CardinalityOptions\022G\n\rcompute_level\030\001 \001(" +
    +      "\01620.tensorflow.data.CardinalityOptions.C" +
    +      "omputeLevel\"r\n\014ComputeLevel\022#\n\037CARDINALI" +
    +      "TY_COMPUTE_UNSPECIFIED\020\000\022\033\n\027CARDINALITY_" +
    +      "COMPUTE_LOW\020\001\022 \n\034CARDINALITY_COMPUTE_MOD" +
    +      "ERATE\020\002\"\177\n\021DistributeOptions\022;\n\021auto_sha" +
    +      "rd_policy\030\001 \001(\0162 .tensorflow.data.AutoSh" +
    +      "ardPolicy\022\025\n\013num_devices\030\002 \001(\005H\000B\026\n\024opti" +
    +      "onal_num_devices\"\271\006\n\023OptimizationOptions" +
    +      "\022%\n\033apply_default_optimizations\030\001 \001(\010H\000\022" +
    +      "\027\n\rfilter_fusion\030\006 \001(\010H\001\022\036\n\024map_and_batc" +
    +      "h_fusion\030\t \001(\010H\002\022\037\n\025map_and_filter_fusio" +
    +      "n\030\n \001(\010H\003\022\024\n\nmap_fusion\030\013 \001(\010H\004\022\035\n\023map_p" +
    +      "arallelization\030\014 \001(\010H\005\022\032\n\020noop_eliminati" +
    +      "on\030\016 \001(\010H\006\022\030\n\016parallel_batch\030\017 \001(\010H\007\022#\n\031" +
    +      "shuffle_and_repeat_fusion\030\021 \001(\010H\010\022 \n\026fil" +
    +      "ter_parallelization\030\022 \001(\010H\t\022\031\n\017inject_pr" +
    +      "efetch\030\023 \001(\010H\n\022!\n\027seq_interleave_prefetc" +
    +      "h\030\025 \001(\010H\013B&\n$optional_apply_default_opti" +
    +      "mizationsB\030\n\026optional_filter_fusionB\037\n\035o" +
    +      "ptional_map_and_batch_fusionB \n\036optional" +
    +      "_map_and_filter_fusionB\025\n\023optional_map_f" +
    +      "usionB\036\n\034optional_map_parallelizationB\033\n" +
    +      "\031optional_noop_eliminationB\031\n\027optional_p" +
    +      "arallel_batchB$\n\"optional_shuffle_and_re" +
    +      "peat_fusionB!\n\037optional_filter_paralleli" +
    +      "zationB\032\n\030optional_inject_prefetchB\"\n op" +
    +      "tional_seq_interleave_prefetchJ\004\010\002\020\003J\004\010\003" +
    +      "\020\004J\004\010\004\020\005J\004\010\005\020\006J\004\010\007\020\010J\004\010\010\020\tJ\004\010\r\020\016J\004\010\020\020\021J\004" +
    +      "\010\024\020\025\"5\n\016ServiceOptions\022\020\n\006pinned\030\001 \001(\010H\000" +
    +      "B\021\n\017optional_pinned\"\242\001\n\020ThreadingOptions" +
    +      "\022\"\n\030max_intra_op_parallelism\030\001 \001(\005H\000\022!\n\027" +
    +      "private_threadpool_size\030\002 \001(\005H\001B#\n!optio" +
    +      "nal_max_intra_op_parallelismB\"\n optional" +
    +      "_private_threadpool_size\"\265\005\n\007Options\022\026\n\014" +
    +      "dataset_name\030\n \001(\tH\000\022\026\n\016framework_type\030\013" +
    +      " \003(\t\022\027\n\rdeterministic\030\001 \001(\010H\001\022:\n\020autotun" +
    +      "e_options\030\007 \001(\0132 .tensorflow.data.Autotu" +
    +      "neOptions\022>\n\022distribute_options\030\002 \001(\0132\"." +
    +      "tensorflow.data.DistributeOptions\022B\n\024opt" +
    +      "imization_options\030\003 \001(\0132$.tensorflow.dat" +
    +      "a.OptimizationOptions\0228\n\017service_options" +
    +      "\030\014 \001(\0132\037.tensorflow.data.ServiceOptions\022" +
    +      "\017\n\005slack\030\004 \001(\010H\002\022<\n\021threading_options\030\005 " +
    +      "\001(\0132!.tensorflow.data.ThreadingOptions\022E" +
    +      "\n\025external_state_policy\030\006 \001(\0162$.tensorfl" +
    +      "ow.data.ExternalStatePolicyH\003\022\035\n\023symboli" +
    +      "c_checkpoint\030\010 \001(\010H\004\022\024\n\nwarm_start\030\t \001(\010" +
    +      "H\005B\027\n\025optional_dataset_nameB\030\n\026optional_" +
    +      "deterministicB\020\n\016optional_slackB \n\036optio" +
    +      "nal_external_state_policyB\036\n\034optional_sy" +
    +      "mbolic_checkpointB\025\n\023optional_warm_start" +
    +      "*K\n\017AutoShardPolicy\022\010\n\004AUTO\020\000\022\010\n\004FILE\020\001\022" +
    +      "\010\n\004DATA\020\002\022\010\n\004HINT\020\003\022\020\n\003OFF\020\377\377\377\377\377\377\377\377\377\001*J\n" +
    +      "\023ExternalStatePolicy\022\017\n\013POLICY_WARN\020\000\022\021\n" +
    +      "\rPOLICY_IGNORE\020\001\022\017\n\013POLICY_FAIL\020\002Bs\n\031org" +
    +      ".tensorflow.proto.dataZVgithub.com/tenso" +
    +      "rflow/tensorflow/tensorflow/go/core/fram" +
    +      "ework/dataset_options_go_protob\006proto3"
         };
         descriptor = com.google.protobuf.Descriptors.FileDescriptor
           .internalBuildGeneratedFileFrom(descriptorData,
    @@ -9134,39 +10146,46 @@ public org.tensorflow.proto.data.DatasetOptions.Options getDefaultInstanceForTyp
         internal_static_tensorflow_data_AutotuneOptions_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_data_AutotuneOptions_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_data_AutotuneOptions_descriptor,
    -        new java.lang.String[] { "Enabled", "CpuBudget", "RamBudget", "AutotuneAlgorithm", "OptionalEnabled", "OptionalCpuBudget", "OptionalRamBudget", "OptionalAutotuneAlgorithm", });
    +        new java.lang.String[] { "Enabled", "CpuBudget", "RamBudget", "AutotuneAlgorithm", "InitialParallelism", "MinParallelism", "OptionalEnabled", "OptionalCpuBudget", "OptionalRamBudget", "OptionalAutotuneAlgorithm", "OptionalInitialParallelism", "OptionalMinParallelism", });
         internal_static_tensorflow_data_CardinalityOptions_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_data_CardinalityOptions_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_data_CardinalityOptions_descriptor,
             new java.lang.String[] { "ComputeLevel", });
         internal_static_tensorflow_data_DistributeOptions_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_data_DistributeOptions_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_data_DistributeOptions_descriptor,
             new java.lang.String[] { "AutoShardPolicy", "NumDevices", "OptionalNumDevices", });
         internal_static_tensorflow_data_OptimizationOptions_descriptor =
           getDescriptor().getMessageTypes().get(3);
         internal_static_tensorflow_data_OptimizationOptions_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_data_OptimizationOptions_descriptor,
             new java.lang.String[] { "ApplyDefaultOptimizations", "FilterFusion", "MapAndBatchFusion", "MapAndFilterFusion", "MapFusion", "MapParallelization", "NoopElimination", "ParallelBatch", "ShuffleAndRepeatFusion", "FilterParallelization", "InjectPrefetch", "SeqInterleavePrefetch", "OptionalApplyDefaultOptimizations", "OptionalFilterFusion", "OptionalMapAndBatchFusion", "OptionalMapAndFilterFusion", "OptionalMapFusion", "OptionalMapParallelization", "OptionalNoopElimination", "OptionalParallelBatch", "OptionalShuffleAndRepeatFusion", "OptionalFilterParallelization", "OptionalInjectPrefetch", "OptionalSeqInterleavePrefetch", });
    -    internal_static_tensorflow_data_ThreadingOptions_descriptor =
    +    internal_static_tensorflow_data_ServiceOptions_descriptor =
           getDescriptor().getMessageTypes().get(4);
    +    internal_static_tensorflow_data_ServiceOptions_fieldAccessorTable = new
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
    +        internal_static_tensorflow_data_ServiceOptions_descriptor,
    +        new java.lang.String[] { "Pinned", "OptionalPinned", });
    +    internal_static_tensorflow_data_ThreadingOptions_descriptor =
    +      getDescriptor().getMessageTypes().get(5);
         internal_static_tensorflow_data_ThreadingOptions_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_data_ThreadingOptions_descriptor,
             new java.lang.String[] { "MaxIntraOpParallelism", "PrivateThreadpoolSize", "OptionalMaxIntraOpParallelism", "OptionalPrivateThreadpoolSize", });
         internal_static_tensorflow_data_Options_descriptor =
    -      getDescriptor().getMessageTypes().get(5);
    +      getDescriptor().getMessageTypes().get(6);
         internal_static_tensorflow_data_Options_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_data_Options_descriptor,
    -        new java.lang.String[] { "DatasetName", "FrameworkType", "Deterministic", "AutotuneOptions", "DistributeOptions", "OptimizationOptions", "Slack", "ThreadingOptions", "ExternalStatePolicy", "SymbolicCheckpoint", "WarmStart", "OptionalDatasetName", "OptionalDeterministic", "OptionalSlack", "OptionalExternalStatePolicy", "OptionalSymbolicCheckpoint", "OptionalWarmStart", });
    +        new java.lang.String[] { "DatasetName", "FrameworkType", "Deterministic", "AutotuneOptions", "DistributeOptions", "OptimizationOptions", "ServiceOptions", "Slack", "ThreadingOptions", "ExternalStatePolicy", "SymbolicCheckpoint", "WarmStart", "OptionalDatasetName", "OptionalDeterministic", "OptionalSlack", "OptionalExternalStatePolicy", "OptionalSymbolicCheckpoint", "OptionalWarmStart", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.data.model.Model.getDescriptor();
       }
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/experimental/ServiceConfig.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/experimental/ServiceConfig.java
    index 5d143f7c9f8..1da009dbcf5 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/experimental/ServiceConfig.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/experimental/ServiceConfig.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/service_config.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto.data.experimental;
     
     public final class ServiceConfig {
       private ServiceConfig() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ServiceConfig.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -241,40 +252,38 @@ public interface DispatcherConfigOrBuilder extends
        * Protobuf type {@code tensorflow.data.experimental.DispatcherConfig}
        */
       public static final class DispatcherConfig extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.data.experimental.DispatcherConfig)
           DispatcherConfigOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        DispatcherConfig.class.getName());
    +    }
         // Use DispatcherConfig.newBuilder() to construct.
    -    private DispatcherConfig(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private DispatcherConfig(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private DispatcherConfig() {
           protocol_ = "";
           workDir_ = "";
    -      workerAddresses_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +      workerAddresses_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           deploymentMode_ = 0;
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new DispatcherConfig();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.data.experimental.ServiceConfig.internal_static_tensorflow_data_experimental_DispatcherConfig_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.data.experimental.ServiceConfig.internal_static_tensorflow_data_experimental_DispatcherConfig_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -282,7 +291,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int PORT_FIELD_NUMBER = 1;
    -    private long port_;
    +    private long port_ = 0L;
         /**
          * 
          * The port for the dispatcher to bind to. A value of 0 indicates that the
    @@ -298,7 +307,8 @@ public long getPort() {
         }
     
         public static final int PROTOCOL_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object protocol_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object protocol_ = "";
         /**
          * 
          * The protocol for the dispatcher to use when connecting to workers.
    @@ -344,7 +354,8 @@ public java.lang.String getProtocol() {
         }
     
         public static final int WORK_DIR_FIELD_NUMBER = 3;
    -    private volatile java.lang.Object workDir_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object workDir_ = "";
         /**
          * 
          * A work directory to use for storing dispatcher state, and for recovering
    @@ -392,7 +403,7 @@ public java.lang.String getWorkDir() {
         }
     
         public static final int FAULT_TOLERANT_MODE_FIELD_NUMBER = 4;
    -    private boolean faultTolerantMode_;
    +    private boolean faultTolerantMode_ = false;
         /**
          * 
          * Whether to run in fault tolerant mode, where dispatcher state is saved
    @@ -408,7 +419,9 @@ public boolean getFaultTolerantMode() {
         }
     
         public static final int WORKER_ADDRESSES_FIELD_NUMBER = 7;
    -    private com.google.protobuf.LazyStringList workerAddresses_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.LazyStringArrayList workerAddresses_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         /**
          * 
          * (Optional.) If the job uses auto-sharding, it needs to specify a fixed list
    @@ -471,7 +484,7 @@ public java.lang.String getWorkerAddresses(int index) {
         }
     
         public static final int DEPLOYMENT_MODE_FIELD_NUMBER = 9;
    -    private int deploymentMode_;
    +    private int deploymentMode_ = 0;
         /**
          * 
          * (Optional.) tf.data service deployment mode. Supported values are "REMOTE",
    @@ -494,13 +507,12 @@ public java.lang.String getWorkerAddresses(int index) {
          * @return The deploymentMode.
          */
         @java.lang.Override public org.tensorflow.proto.data.DataService.DeploymentMode getDeploymentMode() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.data.DataService.DeploymentMode result = org.tensorflow.proto.data.DataService.DeploymentMode.valueOf(deploymentMode_);
    +      org.tensorflow.proto.data.DataService.DeploymentMode result = org.tensorflow.proto.data.DataService.DeploymentMode.forNumber(deploymentMode_);
           return result == null ? org.tensorflow.proto.data.DataService.DeploymentMode.UNRECOGNIZED : result;
         }
     
         public static final int JOB_GC_CHECK_INTERVAL_MS_FIELD_NUMBER = 5;
    -    private long jobGcCheckIntervalMs_;
    +    private long jobGcCheckIntervalMs_ = 0L;
         /**
          * 
          * How often the dispatcher should scan through to delete old and unused
    @@ -517,7 +529,7 @@ public long getJobGcCheckIntervalMs() {
         }
     
         public static final int JOB_GC_TIMEOUT_MS_FIELD_NUMBER = 6;
    -    private long jobGcTimeoutMs_;
    +    private long jobGcTimeoutMs_ = 0L;
         /**
          * 
          * How long a job needs to be unused before it becomes a candidate for garbage
    @@ -536,7 +548,7 @@ public long getJobGcTimeoutMs() {
         }
     
         public static final int GC_DYNAMIC_SHARDING_JOBS_FIELD_NUMBER = 11;
    -    private boolean gcDynamicShardingJobs_;
    +    private boolean gcDynamicShardingJobs_ = false;
         /**
          * 
          * Whether dynamically sharded jobs should be eligible for garbage collection.
    @@ -555,7 +567,7 @@ public boolean getGcDynamicShardingJobs() {
         }
     
         public static final int CLIENT_TIMEOUT_MS_FIELD_NUMBER = 8;
    -    private long clientTimeoutMs_;
    +    private long clientTimeoutMs_ = 0L;
         /**
          * 
          * How long to wait before garbage-collecting a client that hasn't
    @@ -572,7 +584,7 @@ public long getClientTimeoutMs() {
         }
     
         public static final int WORKER_TIMEOUT_MS_FIELD_NUMBER = 10;
    -    private long workerTimeoutMs_;
    +    private long workerTimeoutMs_ = 0L;
         /**
          * 
          * How long to wait for a worker to heartbeat before considering it missing.
    @@ -588,7 +600,7 @@ public long getWorkerTimeoutMs() {
         }
     
         public static final int WORKER_MAX_CONCURRENT_SNAPSHOTS_FIELD_NUMBER = 12;
    -    private long workerMaxConcurrentSnapshots_;
    +    private long workerMaxConcurrentSnapshots_ = 0L;
         /**
          * 
          * The maximum number of snapshots that a worker can concurrently process at a
    @@ -622,11 +634,11 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (port_ != 0L) {
             output.writeInt64(1, port_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(protocol_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, protocol_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(protocol_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, protocol_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(workDir_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, workDir_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workDir_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 3, workDir_);
           }
           if (faultTolerantMode_ != false) {
             output.writeBool(4, faultTolerantMode_);
    @@ -638,7 +650,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
             output.writeInt64(6, jobGcTimeoutMs_);
           }
           for (int i = 0; i < workerAddresses_.size(); i++) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 7, workerAddresses_.getRaw(i));
    +        com.google.protobuf.GeneratedMessage.writeString(output, 7, workerAddresses_.getRaw(i));
           }
           if (clientTimeoutMs_ != 0L) {
             output.writeInt64(8, clientTimeoutMs_);
    @@ -668,11 +680,11 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeInt64Size(1, port_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(protocol_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, protocol_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(protocol_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, protocol_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(workDir_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, workDir_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workDir_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(3, workDir_);
           }
           if (faultTolerantMode_ != false) {
             size += com.google.protobuf.CodedOutputStream
    @@ -836,39 +848,41 @@ public static org.tensorflow.proto.data.experimental.ServiceConfig.DispatcherCon
         }
         public static org.tensorflow.proto.data.experimental.ServiceConfig.DispatcherConfig parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.experimental.ServiceConfig.DispatcherConfig parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.data.experimental.ServiceConfig.DispatcherConfig parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.data.experimental.ServiceConfig.DispatcherConfig parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.data.experimental.ServiceConfig.DispatcherConfig parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.experimental.ServiceConfig.DispatcherConfig parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -888,7 +902,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -901,7 +915,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.data.experimental.DispatcherConfig}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.data.experimental.DispatcherConfig)
             org.tensorflow.proto.data.experimental.ServiceConfig.DispatcherConfigOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -910,7 +924,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.data.experimental.ServiceConfig.internal_static_tensorflow_data_experimental_DispatcherConfig_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -923,37 +937,27 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             port_ = 0L;
    -
             protocol_ = "";
    -
             workDir_ = "";
    -
             faultTolerantMode_ = false;
    -
    -        workerAddresses_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        workerAddresses_ =
    +            com.google.protobuf.LazyStringArrayList.emptyList();
             deploymentMode_ = 0;
    -
             jobGcCheckIntervalMs_ = 0L;
    -
             jobGcTimeoutMs_ = 0L;
    -
             gcDynamicShardingJobs_ = false;
    -
             clientTimeoutMs_ = 0L;
    -
             workerTimeoutMs_ = 0L;
    -
             workerMaxConcurrentSnapshots_ = 0L;
    -
             return this;
           }
     
    @@ -980,59 +984,52 @@ public org.tensorflow.proto.data.experimental.ServiceConfig.DispatcherConfig bui
           @java.lang.Override
           public org.tensorflow.proto.data.experimental.ServiceConfig.DispatcherConfig buildPartial() {
             org.tensorflow.proto.data.experimental.ServiceConfig.DispatcherConfig result = new org.tensorflow.proto.data.experimental.ServiceConfig.DispatcherConfig(this);
    -        int from_bitField0_ = bitField0_;
    -        result.port_ = port_;
    -        result.protocol_ = protocol_;
    -        result.workDir_ = workDir_;
    -        result.faultTolerantMode_ = faultTolerantMode_;
    -        if (((bitField0_ & 0x00000001) != 0)) {
    -          workerAddresses_ = workerAddresses_.getUnmodifiableView();
    -          bitField0_ = (bitField0_ & ~0x00000001);
    -        }
    -        result.workerAddresses_ = workerAddresses_;
    -        result.deploymentMode_ = deploymentMode_;
    -        result.jobGcCheckIntervalMs_ = jobGcCheckIntervalMs_;
    -        result.jobGcTimeoutMs_ = jobGcTimeoutMs_;
    -        result.gcDynamicShardingJobs_ = gcDynamicShardingJobs_;
    -        result.clientTimeoutMs_ = clientTimeoutMs_;
    -        result.workerTimeoutMs_ = workerTimeoutMs_;
    -        result.workerMaxConcurrentSnapshots_ = workerMaxConcurrentSnapshots_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.data.experimental.ServiceConfig.DispatcherConfig result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.port_ = port_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.protocol_ = protocol_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.workDir_ = workDir_;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.faultTolerantMode_ = faultTolerantMode_;
    +        }
    +        if (((from_bitField0_ & 0x00000010) != 0)) {
    +          workerAddresses_.makeImmutable();
    +          result.workerAddresses_ = workerAddresses_;
    +        }
    +        if (((from_bitField0_ & 0x00000020) != 0)) {
    +          result.deploymentMode_ = deploymentMode_;
    +        }
    +        if (((from_bitField0_ & 0x00000040) != 0)) {
    +          result.jobGcCheckIntervalMs_ = jobGcCheckIntervalMs_;
    +        }
    +        if (((from_bitField0_ & 0x00000080) != 0)) {
    +          result.jobGcTimeoutMs_ = jobGcTimeoutMs_;
    +        }
    +        if (((from_bitField0_ & 0x00000100) != 0)) {
    +          result.gcDynamicShardingJobs_ = gcDynamicShardingJobs_;
    +        }
    +        if (((from_bitField0_ & 0x00000200) != 0)) {
    +          result.clientTimeoutMs_ = clientTimeoutMs_;
    +        }
    +        if (((from_bitField0_ & 0x00000400) != 0)) {
    +          result.workerTimeoutMs_ = workerTimeoutMs_;
    +        }
    +        if (((from_bitField0_ & 0x00000800) != 0)) {
    +          result.workerMaxConcurrentSnapshots_ = workerMaxConcurrentSnapshots_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.data.experimental.ServiceConfig.DispatcherConfig) {
    @@ -1050,10 +1047,12 @@ public Builder mergeFrom(org.tensorflow.proto.data.experimental.ServiceConfig.Di
             }
             if (!other.getProtocol().isEmpty()) {
               protocol_ = other.protocol_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             if (!other.getWorkDir().isEmpty()) {
               workDir_ = other.workDir_;
    +          bitField0_ |= 0x00000004;
               onChanged();
             }
             if (other.getFaultTolerantMode() != false) {
    @@ -1062,7 +1061,7 @@ public Builder mergeFrom(org.tensorflow.proto.data.experimental.ServiceConfig.Di
             if (!other.workerAddresses_.isEmpty()) {
               if (workerAddresses_.isEmpty()) {
                 workerAddresses_ = other.workerAddresses_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ |= 0x00000010;
               } else {
                 ensureWorkerAddressesIsMutable();
                 workerAddresses_.addAll(other.workerAddresses_);
    @@ -1118,32 +1117,32 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     port_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   case 18: {
                     protocol_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 26: {
                     workDir_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 26
                   case 32: {
                     faultTolerantMode_ = input.readBool();
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 32
                   case 40: {
                     jobGcCheckIntervalMs_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000040;
                     break;
                   } // case 40
                   case 48: {
                     jobGcTimeoutMs_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000080;
                     break;
                   } // case 48
                   case 58: {
    @@ -1154,27 +1153,27 @@ public Builder mergeFrom(
                   } // case 58
                   case 64: {
                     clientTimeoutMs_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000200;
                     break;
                   } // case 64
                   case 72: {
                     deploymentMode_ = input.readEnum();
    -
    +                bitField0_ |= 0x00000020;
                     break;
                   } // case 72
                   case 80: {
                     workerTimeoutMs_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000400;
                     break;
                   } // case 80
                   case 88: {
                     gcDynamicShardingJobs_ = input.readBool();
    -
    +                bitField0_ |= 0x00000100;
                     break;
                   } // case 88
                   case 96: {
                     workerMaxConcurrentSnapshots_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000800;
                     break;
                   } // case 96
                   default: {
    @@ -1219,8 +1218,9 @@ public long getPort() {
            * @return This builder for chaining.
            */
           public Builder setPort(long value) {
    -        
    +
             port_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -1234,7 +1234,7 @@ public Builder setPort(long value) {
            * @return This builder for chaining.
            */
           public Builder clearPort() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             port_ = 0L;
             onChanged();
             return this;
    @@ -1293,11 +1293,9 @@ public java.lang.String getProtocol() {
            */
           public Builder setProtocol(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             protocol_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1310,8 +1308,8 @@ public Builder setProtocol(
            * @return This builder for chaining.
            */
           public Builder clearProtocol() {
    -        
             protocol_ = getDefaultInstance().getProtocol();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -1326,12 +1324,10 @@ public Builder clearProtocol() {
            */
           public Builder setProtocolBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             protocol_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1392,11 +1388,9 @@ public java.lang.String getWorkDir() {
            */
           public Builder setWorkDir(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             workDir_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1410,8 +1404,8 @@ public Builder setWorkDir(
            * @return This builder for chaining.
            */
           public Builder clearWorkDir() {
    -        
             workDir_ = getDefaultInstance().getWorkDir();
    +        bitField0_ = (bitField0_ & ~0x00000004);
             onChanged();
             return this;
           }
    @@ -1427,12 +1421,10 @@ public Builder clearWorkDir() {
            */
           public Builder setWorkDirBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             workDir_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1462,8 +1454,9 @@ public boolean getFaultTolerantMode() {
            * @return This builder for chaining.
            */
           public Builder setFaultTolerantMode(boolean value) {
    -        
    +
             faultTolerantMode_ = value;
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -1477,18 +1470,19 @@ public Builder setFaultTolerantMode(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearFaultTolerantMode() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000008);
             faultTolerantMode_ = false;
             onChanged();
             return this;
           }
     
    -      private com.google.protobuf.LazyStringList workerAddresses_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +      private com.google.protobuf.LazyStringArrayList workerAddresses_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           private void ensureWorkerAddressesIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    +        if (!workerAddresses_.isModifiable()) {
               workerAddresses_ = new com.google.protobuf.LazyStringArrayList(workerAddresses_);
    -          bitField0_ |= 0x00000001;
    -         }
    +        }
    +        bitField0_ |= 0x00000010;
           }
           /**
            * 
    @@ -1503,7 +1497,8 @@ private void ensureWorkerAddressesIsMutable() {
            */
           public com.google.protobuf.ProtocolStringList
               getWorkerAddressesList() {
    -        return workerAddresses_.getUnmodifiableView();
    +        workerAddresses_.makeImmutable();
    +        return workerAddresses_;
           }
           /**
            * 
    @@ -1565,11 +1560,10 @@ public java.lang.String getWorkerAddresses(int index) {
            */
           public Builder setWorkerAddresses(
               int index, java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureWorkerAddressesIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureWorkerAddressesIsMutable();
             workerAddresses_.set(index, value);
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -1587,11 +1581,10 @@ public Builder setWorkerAddresses(
            */
           public Builder addWorkerAddresses(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureWorkerAddressesIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureWorkerAddressesIsMutable();
             workerAddresses_.add(value);
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -1612,6 +1605,7 @@ public Builder addAllWorkerAddresses(
             ensureWorkerAddressesIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, workerAddresses_);
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -1627,8 +1621,9 @@ public Builder addAllWorkerAddresses(
            * @return This builder for chaining.
            */
           public Builder clearWorkerAddresses() {
    -        workerAddresses_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        workerAddresses_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
    +        bitField0_ = (bitField0_ & ~0x00000010);;
             onChanged();
             return this;
           }
    @@ -1646,12 +1641,11 @@ public Builder clearWorkerAddresses() {
            */
           public Builder addWorkerAddressesBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             ensureWorkerAddressesIsMutable();
             workerAddresses_.add(value);
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -1680,8 +1674,8 @@ public Builder addWorkerAddressesBytes(
            * @return This builder for chaining.
            */
           public Builder setDeploymentModeValue(int value) {
    -        
             deploymentMode_ = value;
    +        bitField0_ |= 0x00000020;
             onChanged();
             return this;
           }
    @@ -1696,8 +1690,7 @@ public Builder setDeploymentModeValue(int value) {
            */
           @java.lang.Override
           public org.tensorflow.proto.data.DataService.DeploymentMode getDeploymentMode() {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.data.DataService.DeploymentMode result = org.tensorflow.proto.data.DataService.DeploymentMode.valueOf(deploymentMode_);
    +        org.tensorflow.proto.data.DataService.DeploymentMode result = org.tensorflow.proto.data.DataService.DeploymentMode.forNumber(deploymentMode_);
             return result == null ? org.tensorflow.proto.data.DataService.DeploymentMode.UNRECOGNIZED : result;
           }
           /**
    @@ -1714,7 +1707,7 @@ public Builder setDeploymentMode(org.tensorflow.proto.data.DataService.Deploymen
             if (value == null) {
               throw new NullPointerException();
             }
    -        
    +        bitField0_ |= 0x00000020;
             deploymentMode_ = value.getNumber();
             onChanged();
             return this;
    @@ -1729,7 +1722,7 @@ public Builder setDeploymentMode(org.tensorflow.proto.data.DataService.Deploymen
            * @return This builder for chaining.
            */
           public Builder clearDeploymentMode() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000020);
             deploymentMode_ = 0;
             onChanged();
             return this;
    @@ -1762,8 +1755,9 @@ public long getJobGcCheckIntervalMs() {
            * @return This builder for chaining.
            */
           public Builder setJobGcCheckIntervalMs(long value) {
    -        
    +
             jobGcCheckIntervalMs_ = value;
    +        bitField0_ |= 0x00000040;
             onChanged();
             return this;
           }
    @@ -1778,7 +1772,7 @@ public Builder setJobGcCheckIntervalMs(long value) {
            * @return This builder for chaining.
            */
           public Builder clearJobGcCheckIntervalMs() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000040);
             jobGcCheckIntervalMs_ = 0L;
             onChanged();
             return this;
    @@ -1815,8 +1809,9 @@ public long getJobGcTimeoutMs() {
            * @return This builder for chaining.
            */
           public Builder setJobGcTimeoutMs(long value) {
    -        
    +
             jobGcTimeoutMs_ = value;
    +        bitField0_ |= 0x00000080;
             onChanged();
             return this;
           }
    @@ -1833,7 +1828,7 @@ public Builder setJobGcTimeoutMs(long value) {
            * @return This builder for chaining.
            */
           public Builder clearJobGcTimeoutMs() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000080);
             jobGcTimeoutMs_ = 0L;
             onChanged();
             return this;
    @@ -1870,8 +1865,9 @@ public boolean getGcDynamicShardingJobs() {
            * @return This builder for chaining.
            */
           public Builder setGcDynamicShardingJobs(boolean value) {
    -        
    +
             gcDynamicShardingJobs_ = value;
    +        bitField0_ |= 0x00000100;
             onChanged();
             return this;
           }
    @@ -1888,7 +1884,7 @@ public Builder setGcDynamicShardingJobs(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearGcDynamicShardingJobs() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000100);
             gcDynamicShardingJobs_ = false;
             onChanged();
             return this;
    @@ -1921,8 +1917,9 @@ public long getClientTimeoutMs() {
            * @return This builder for chaining.
            */
           public Builder setClientTimeoutMs(long value) {
    -        
    +
             clientTimeoutMs_ = value;
    +        bitField0_ |= 0x00000200;
             onChanged();
             return this;
           }
    @@ -1937,7 +1934,7 @@ public Builder setClientTimeoutMs(long value) {
            * @return This builder for chaining.
            */
           public Builder clearClientTimeoutMs() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000200);
             clientTimeoutMs_ = 0L;
             onChanged();
             return this;
    @@ -1968,8 +1965,9 @@ public long getWorkerTimeoutMs() {
            * @return This builder for chaining.
            */
           public Builder setWorkerTimeoutMs(long value) {
    -        
    +
             workerTimeoutMs_ = value;
    +        bitField0_ |= 0x00000400;
             onChanged();
             return this;
           }
    @@ -1983,7 +1981,7 @@ public Builder setWorkerTimeoutMs(long value) {
            * @return This builder for chaining.
            */
           public Builder clearWorkerTimeoutMs() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000400);
             workerTimeoutMs_ = 0L;
             onChanged();
             return this;
    @@ -2018,8 +2016,9 @@ public long getWorkerMaxConcurrentSnapshots() {
            * @return This builder for chaining.
            */
           public Builder setWorkerMaxConcurrentSnapshots(long value) {
    -        
    +
             workerMaxConcurrentSnapshots_ = value;
    +        bitField0_ |= 0x00000800;
             onChanged();
             return this;
           }
    @@ -2035,23 +2034,11 @@ public Builder setWorkerMaxConcurrentSnapshots(long value) {
            * @return This builder for chaining.
            */
           public Builder clearWorkerMaxConcurrentSnapshots() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000800);
             workerMaxConcurrentSnapshots_ = 0L;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.data.experimental.DispatcherConfig)
         }
    @@ -2261,7 +2248,11 @@ public interface WorkerConfigOrBuilder extends
     
         /**
          * 
    -     * The protocol for the worker to use when transferring data to clients.
    +     * If set, the name of an alternative data transfer protocol for which the
    +     * worker starts an additional server ("data transfer server"); the trainer
    +     * can then get data from this server. If not set, no such server is started,
    +     * and the trainer can only get data from the regular worker server over
    +     * `protocol`.
          * 
    * * string data_transfer_protocol = 7; @@ -2270,7 +2261,11 @@ public interface WorkerConfigOrBuilder extends java.lang.String getDataTransferProtocol(); /** *
    -     * The protocol for the worker to use when transferring data to clients.
    +     * If set, the name of an alternative data transfer protocol for which the
    +     * worker starts an additional server ("data transfer server"); the trainer
    +     * can then get data from this server. If not set, no such server is started,
    +     * and the trainer can only get data from the regular worker server over
    +     * `protocol`.
          * 
    * * string data_transfer_protocol = 7; @@ -2281,9 +2276,21 @@ public interface WorkerConfigOrBuilder extends /** *
    -     * The data transfer address of the worker server. The substring "%port%", if
    -     * specified, will be replaced with the worker's bound port. This is useful
    -     * when the port is set to `0`.
    +     * If `data_transfer_protocol` is set, the port to which the data transfer
    +     * server binds. If set to `0`, the server binds to any available port.
    +     * 
    + * + * int64 data_transfer_port = 13; + * @return The dataTransferPort. + */ + long getDataTransferPort(); + + /** + *
    +     * If `data_transfer_protocol` is set, the address of the data transfer
    +     * server. The substring "%dts_port%" can be used to represent -- and is
    +     * replaced with -- the bound port of the data transfer server; this is useful
    +     * when `data_transfer_port` is set to `0`.
          * 
    * * string data_transfer_address = 8; @@ -2292,9 +2299,10 @@ public interface WorkerConfigOrBuilder extends java.lang.String getDataTransferAddress(); /** *
    -     * The data transfer address of the worker server. The substring "%port%", if
    -     * specified, will be replaced with the worker's bound port. This is useful
    -     * when the port is set to `0`.
    +     * If `data_transfer_protocol` is set, the address of the data transfer
    +     * server. The substring "%dts_port%" can be used to represent -- and is
    +     * replaced with -- the bound port of the data transfer server; this is useful
    +     * when `data_transfer_port` is set to `0`.
          * 
    * * string data_transfer_address = 8; @@ -2340,48 +2348,46 @@ public interface WorkerConfigOrBuilder extends /** *
        * Configuration for a tf.data service WorkerServer.
    -   * Next id: 13
    +   * Next id: 14
        * 
    * * Protobuf type {@code tensorflow.data.experimental.WorkerConfig} */ public static final class WorkerConfig extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.data.experimental.WorkerConfig) WorkerConfigOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + WorkerConfig.class.getName()); + } // Use WorkerConfig.newBuilder() to construct. - private WorkerConfig(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private WorkerConfig(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private WorkerConfig() { protocol_ = ""; dispatcherAddress_ = ""; workerAddress_ = ""; - workerTags_ = com.google.protobuf.LazyStringArrayList.EMPTY; + workerTags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); dataTransferProtocol_ = ""; dataTransferAddress_ = ""; } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new WorkerConfig(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.data.experimental.ServiceConfig.internal_static_tensorflow_data_experimental_WorkerConfig_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.data.experimental.ServiceConfig.internal_static_tensorflow_data_experimental_WorkerConfig_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -2389,7 +2395,7 @@ protected java.lang.Object newInstance( } public static final int PORT_FIELD_NUMBER = 1; - private long port_; + private long port_ = 0L; /** *
          * The port for the worker to bind to. A value of 0 indicates that the
    @@ -2405,7 +2411,8 @@ public long getPort() {
         }
     
         public static final int PROTOCOL_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object protocol_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object protocol_ = "";
         /**
          * 
          * The protocol for the worker to use when connecting to the dispatcher.
    @@ -2451,7 +2458,8 @@ public java.lang.String getProtocol() {
         }
     
         public static final int DISPATCHER_ADDRESS_FIELD_NUMBER = 3;
    -    private volatile java.lang.Object dispatcherAddress_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object dispatcherAddress_ = "";
         /**
          * 
          * The address of the dispatcher to register with.
    @@ -2497,7 +2505,8 @@ public java.lang.String getDispatcherAddress() {
         }
     
         public static final int WORKER_ADDRESS_FIELD_NUMBER = 4;
    -    private volatile java.lang.Object workerAddress_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object workerAddress_ = "";
         /**
          * 
          * The address of the worker server. The substring "%port%", if specified,
    @@ -2547,7 +2556,9 @@ public java.lang.String getWorkerAddress() {
         }
     
         public static final int WORKER_TAGS_FIELD_NUMBER = 10;
    -    private com.google.protobuf.LazyStringList workerTags_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.LazyStringArrayList workerTags_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         /**
          * 
          * Tags attached to the worker. This allows reading from selected workers.
    @@ -2610,7 +2621,7 @@ public java.lang.String getWorkerTags(int index) {
         }
     
         public static final int HEARTBEAT_INTERVAL_MS_FIELD_NUMBER = 5;
    -    private long heartbeatIntervalMs_;
    +    private long heartbeatIntervalMs_ = 0L;
         /**
          * 
          * How often the worker should heartbeat to the master. A value of 0 indicates
    @@ -2626,7 +2637,7 @@ public long getHeartbeatIntervalMs() {
         }
     
         public static final int DISPATCHER_TIMEOUT_MS_FIELD_NUMBER = 6;
    -    private long dispatcherTimeoutMs_;
    +    private long dispatcherTimeoutMs_ = 0L;
         /**
          * 
          * How long to retry requests to the dispatcher before giving up and reporting
    @@ -2643,10 +2654,15 @@ public long getDispatcherTimeoutMs() {
         }
     
         public static final int DATA_TRANSFER_PROTOCOL_FIELD_NUMBER = 7;
    -    private volatile java.lang.Object dataTransferProtocol_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object dataTransferProtocol_ = "";
         /**
          * 
    -     * The protocol for the worker to use when transferring data to clients.
    +     * If set, the name of an alternative data transfer protocol for which the
    +     * worker starts an additional server ("data transfer server"); the trainer
    +     * can then get data from this server. If not set, no such server is started,
    +     * and the trainer can only get data from the regular worker server over
    +     * `protocol`.
          * 
    * * string data_transfer_protocol = 7; @@ -2667,7 +2683,11 @@ public java.lang.String getDataTransferProtocol() { } /** *
    -     * The protocol for the worker to use when transferring data to clients.
    +     * If set, the name of an alternative data transfer protocol for which the
    +     * worker starts an additional server ("data transfer server"); the trainer
    +     * can then get data from this server. If not set, no such server is started,
    +     * and the trainer can only get data from the regular worker server over
    +     * `protocol`.
          * 
    * * string data_transfer_protocol = 7; @@ -2688,13 +2708,31 @@ public java.lang.String getDataTransferProtocol() { } } + public static final int DATA_TRANSFER_PORT_FIELD_NUMBER = 13; + private long dataTransferPort_ = 0L; + /** + *
    +     * If `data_transfer_protocol` is set, the port to which the data transfer
    +     * server binds. If set to `0`, the server binds to any available port.
    +     * 
    + * + * int64 data_transfer_port = 13; + * @return The dataTransferPort. + */ + @java.lang.Override + public long getDataTransferPort() { + return dataTransferPort_; + } + public static final int DATA_TRANSFER_ADDRESS_FIELD_NUMBER = 8; - private volatile java.lang.Object dataTransferAddress_; + @SuppressWarnings("serial") + private volatile java.lang.Object dataTransferAddress_ = ""; /** *
    -     * The data transfer address of the worker server. The substring "%port%", if
    -     * specified, will be replaced with the worker's bound port. This is useful
    -     * when the port is set to `0`.
    +     * If `data_transfer_protocol` is set, the address of the data transfer
    +     * server. The substring "%dts_port%" can be used to represent -- and is
    +     * replaced with -- the bound port of the data transfer server; this is useful
    +     * when `data_transfer_port` is set to `0`.
          * 
    * * string data_transfer_address = 8; @@ -2715,9 +2753,10 @@ public java.lang.String getDataTransferAddress() { } /** *
    -     * The data transfer address of the worker server. The substring "%port%", if
    -     * specified, will be replaced with the worker's bound port. This is useful
    -     * when the port is set to `0`.
    +     * If `data_transfer_protocol` is set, the address of the data transfer
    +     * server. The substring "%dts_port%" can be used to represent -- and is
    +     * replaced with -- the bound port of the data transfer server; this is useful
    +     * when `data_transfer_port` is set to `0`.
          * 
    * * string data_transfer_address = 8; @@ -2739,7 +2778,7 @@ public java.lang.String getDataTransferAddress() { } public static final int CROSS_TRAINER_CACHE_SIZE_BYTES_FIELD_NUMBER = 11; - private long crossTrainerCacheSizeBytes_; + private long crossTrainerCacheSizeBytes_ = 0L; /** *
          * Maximum size of the cross-trainer cache in bytes. If enabled, make sure
    @@ -2755,7 +2794,7 @@ public long getCrossTrainerCacheSizeBytes() {
         }
     
         public static final int SNAPSHOT_MAX_CHUNK_SIZE_BYTES_FIELD_NUMBER = 12;
    -    private long snapshotMaxChunkSizeBytes_;
    +    private long snapshotMaxChunkSizeBytes_ = 0L;
         /**
          * 
          * The maximum size of a distributed snapshot chunk file. A value of 0
    @@ -2771,7 +2810,7 @@ public long getSnapshotMaxChunkSizeBytes() {
         }
     
         public static final int SHUTDOWN_QUIET_PERIOD_MS_FIELD_NUMBER = 9;
    -    private long shutdownQuietPeriodMs_;
    +    private long shutdownQuietPeriodMs_ = 0L;
         /**
          * 
          * When shutting down a worker, how long to wait for the gRPC server to
    @@ -2804,14 +2843,14 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (port_ != 0L) {
             output.writeInt64(1, port_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(protocol_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, protocol_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(protocol_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, protocol_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dispatcherAddress_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, dispatcherAddress_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(dispatcherAddress_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 3, dispatcherAddress_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(workerAddress_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, workerAddress_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workerAddress_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 4, workerAddress_);
           }
           if (heartbeatIntervalMs_ != 0L) {
             output.writeInt64(5, heartbeatIntervalMs_);
    @@ -2819,17 +2858,17 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (dispatcherTimeoutMs_ != 0L) {
             output.writeInt64(6, dispatcherTimeoutMs_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dataTransferProtocol_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 7, dataTransferProtocol_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(dataTransferProtocol_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 7, dataTransferProtocol_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dataTransferAddress_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 8, dataTransferAddress_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(dataTransferAddress_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 8, dataTransferAddress_);
           }
           if (shutdownQuietPeriodMs_ != 0L) {
             output.writeInt64(9, shutdownQuietPeriodMs_);
           }
           for (int i = 0; i < workerTags_.size(); i++) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 10, workerTags_.getRaw(i));
    +        com.google.protobuf.GeneratedMessage.writeString(output, 10, workerTags_.getRaw(i));
           }
           if (crossTrainerCacheSizeBytes_ != 0L) {
             output.writeInt64(11, crossTrainerCacheSizeBytes_);
    @@ -2837,6 +2876,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (snapshotMaxChunkSizeBytes_ != 0L) {
             output.writeInt64(12, snapshotMaxChunkSizeBytes_);
           }
    +      if (dataTransferPort_ != 0L) {
    +        output.writeInt64(13, dataTransferPort_);
    +      }
           getUnknownFields().writeTo(output);
         }
     
    @@ -2850,14 +2892,14 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeInt64Size(1, port_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(protocol_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, protocol_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(protocol_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, protocol_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dispatcherAddress_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, dispatcherAddress_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(dispatcherAddress_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(3, dispatcherAddress_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(workerAddress_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, workerAddress_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(workerAddress_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(4, workerAddress_);
           }
           if (heartbeatIntervalMs_ != 0L) {
             size += com.google.protobuf.CodedOutputStream
    @@ -2867,11 +2909,11 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeInt64Size(6, dispatcherTimeoutMs_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dataTransferProtocol_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, dataTransferProtocol_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(dataTransferProtocol_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(7, dataTransferProtocol_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dataTransferAddress_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, dataTransferAddress_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(dataTransferAddress_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(8, dataTransferAddress_);
           }
           if (shutdownQuietPeriodMs_ != 0L) {
             size += com.google.protobuf.CodedOutputStream
    @@ -2893,6 +2935,10 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeInt64Size(12, snapshotMaxChunkSizeBytes_);
           }
    +      if (dataTransferPort_ != 0L) {
    +        size += com.google.protobuf.CodedOutputStream
    +          .computeInt64Size(13, dataTransferPort_);
    +      }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
           return size;
    @@ -2924,6 +2970,8 @@ public boolean equals(final java.lang.Object obj) {
               != other.getDispatcherTimeoutMs()) return false;
           if (!getDataTransferProtocol()
               .equals(other.getDataTransferProtocol())) return false;
    +      if (getDataTransferPort()
    +          != other.getDataTransferPort()) return false;
           if (!getDataTransferAddress()
               .equals(other.getDataTransferAddress())) return false;
           if (getCrossTrainerCacheSizeBytes()
    @@ -2964,6 +3012,9 @@ public int hashCode() {
               getDispatcherTimeoutMs());
           hash = (37 * hash) + DATA_TRANSFER_PROTOCOL_FIELD_NUMBER;
           hash = (53 * hash) + getDataTransferProtocol().hashCode();
    +      hash = (37 * hash) + DATA_TRANSFER_PORT_FIELD_NUMBER;
    +      hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
    +          getDataTransferPort());
           hash = (37 * hash) + DATA_TRANSFER_ADDRESS_FIELD_NUMBER;
           hash = (53 * hash) + getDataTransferAddress().hashCode();
           hash = (37 * hash) + CROSS_TRAINER_CACHE_SIZE_BYTES_FIELD_NUMBER;
    @@ -3014,39 +3065,41 @@ public static org.tensorflow.proto.data.experimental.ServiceConfig.WorkerConfig
         }
         public static org.tensorflow.proto.data.experimental.ServiceConfig.WorkerConfig parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.experimental.ServiceConfig.WorkerConfig parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.data.experimental.ServiceConfig.WorkerConfig parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.data.experimental.ServiceConfig.WorkerConfig parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.data.experimental.ServiceConfig.WorkerConfig parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.experimental.ServiceConfig.WorkerConfig parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -3066,20 +3119,20 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
         /**
          * 
          * Configuration for a tf.data service WorkerServer.
    -     * Next id: 13
    +     * Next id: 14
          * 
    * * Protobuf type {@code tensorflow.data.experimental.WorkerConfig} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.data.experimental.WorkerConfig) org.tensorflow.proto.data.experimental.ServiceConfig.WorkerConfigOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -3088,7 +3141,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.data.experimental.ServiceConfig.internal_static_tensorflow_data_experimental_WorkerConfig_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -3101,37 +3154,28 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; port_ = 0L; - protocol_ = ""; - dispatcherAddress_ = ""; - workerAddress_ = ""; - - workerTags_ = com.google.protobuf.LazyStringArrayList.EMPTY; - bitField0_ = (bitField0_ & ~0x00000001); + workerTags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); heartbeatIntervalMs_ = 0L; - dispatcherTimeoutMs_ = 0L; - dataTransferProtocol_ = ""; - + dataTransferPort_ = 0L; dataTransferAddress_ = ""; - crossTrainerCacheSizeBytes_ = 0L; - snapshotMaxChunkSizeBytes_ = 0L; - shutdownQuietPeriodMs_ = 0L; - return this; } @@ -3158,59 +3202,55 @@ public org.tensorflow.proto.data.experimental.ServiceConfig.WorkerConfig build() @java.lang.Override public org.tensorflow.proto.data.experimental.ServiceConfig.WorkerConfig buildPartial() { org.tensorflow.proto.data.experimental.ServiceConfig.WorkerConfig result = new org.tensorflow.proto.data.experimental.ServiceConfig.WorkerConfig(this); - int from_bitField0_ = bitField0_; - result.port_ = port_; - result.protocol_ = protocol_; - result.dispatcherAddress_ = dispatcherAddress_; - result.workerAddress_ = workerAddress_; - if (((bitField0_ & 0x00000001) != 0)) { - workerTags_ = workerTags_.getUnmodifiableView(); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.workerTags_ = workerTags_; - result.heartbeatIntervalMs_ = heartbeatIntervalMs_; - result.dispatcherTimeoutMs_ = dispatcherTimeoutMs_; - result.dataTransferProtocol_ = dataTransferProtocol_; - result.dataTransferAddress_ = dataTransferAddress_; - result.crossTrainerCacheSizeBytes_ = crossTrainerCacheSizeBytes_; - result.snapshotMaxChunkSizeBytes_ = snapshotMaxChunkSizeBytes_; - result.shutdownQuietPeriodMs_ = shutdownQuietPeriodMs_; + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.data.experimental.ServiceConfig.WorkerConfig result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.port_ = port_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.protocol_ = protocol_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.dispatcherAddress_ = dispatcherAddress_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.workerAddress_ = workerAddress_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + workerTags_.makeImmutable(); + result.workerTags_ = workerTags_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.heartbeatIntervalMs_ = heartbeatIntervalMs_; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.dispatcherTimeoutMs_ = dispatcherTimeoutMs_; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.dataTransferProtocol_ = dataTransferProtocol_; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.dataTransferPort_ = dataTransferPort_; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + result.dataTransferAddress_ = dataTransferAddress_; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + result.crossTrainerCacheSizeBytes_ = crossTrainerCacheSizeBytes_; + } + if (((from_bitField0_ & 0x00000800) != 0)) { + result.snapshotMaxChunkSizeBytes_ = snapshotMaxChunkSizeBytes_; + } + if (((from_bitField0_ & 0x00001000) != 0)) { + result.shutdownQuietPeriodMs_ = shutdownQuietPeriodMs_; + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.data.experimental.ServiceConfig.WorkerConfig) { @@ -3228,20 +3268,23 @@ public Builder mergeFrom(org.tensorflow.proto.data.experimental.ServiceConfig.Wo } if (!other.getProtocol().isEmpty()) { protocol_ = other.protocol_; + bitField0_ |= 0x00000002; onChanged(); } if (!other.getDispatcherAddress().isEmpty()) { dispatcherAddress_ = other.dispatcherAddress_; + bitField0_ |= 0x00000004; onChanged(); } if (!other.getWorkerAddress().isEmpty()) { workerAddress_ = other.workerAddress_; + bitField0_ |= 0x00000008; onChanged(); } if (!other.workerTags_.isEmpty()) { if (workerTags_.isEmpty()) { workerTags_ = other.workerTags_; - bitField0_ = (bitField0_ & ~0x00000001); + bitField0_ |= 0x00000010; } else { ensureWorkerTagsIsMutable(); workerTags_.addAll(other.workerTags_); @@ -3256,10 +3299,15 @@ public Builder mergeFrom(org.tensorflow.proto.data.experimental.ServiceConfig.Wo } if (!other.getDataTransferProtocol().isEmpty()) { dataTransferProtocol_ = other.dataTransferProtocol_; + bitField0_ |= 0x00000080; onChanged(); } + if (other.getDataTransferPort() != 0L) { + setDataTransferPort(other.getDataTransferPort()); + } if (!other.getDataTransferAddress().isEmpty()) { dataTransferAddress_ = other.dataTransferAddress_; + bitField0_ |= 0x00000200; onChanged(); } if (other.getCrossTrainerCacheSizeBytes() != 0L) { @@ -3299,47 +3347,47 @@ public Builder mergeFrom( break; case 8: { port_ = input.readInt64(); - + bitField0_ |= 0x00000001; break; } // case 8 case 18: { protocol_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000002; break; } // case 18 case 26: { dispatcherAddress_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000004; break; } // case 26 case 34: { workerAddress_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000008; break; } // case 34 case 40: { heartbeatIntervalMs_ = input.readInt64(); - + bitField0_ |= 0x00000020; break; } // case 40 case 48: { dispatcherTimeoutMs_ = input.readInt64(); - + bitField0_ |= 0x00000040; break; } // case 48 case 58: { dataTransferProtocol_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000080; break; } // case 58 case 66: { dataTransferAddress_ = input.readStringRequireUtf8(); - + bitField0_ |= 0x00000200; break; } // case 66 case 72: { shutdownQuietPeriodMs_ = input.readInt64(); - + bitField0_ |= 0x00001000; break; } // case 72 case 82: { @@ -3350,14 +3398,19 @@ public Builder mergeFrom( } // case 82 case 88: { crossTrainerCacheSizeBytes_ = input.readInt64(); - + bitField0_ |= 0x00000400; break; } // case 88 case 96: { snapshotMaxChunkSizeBytes_ = input.readInt64(); - + bitField0_ |= 0x00000800; break; } // case 96 + case 104: { + dataTransferPort_ = input.readInt64(); + bitField0_ |= 0x00000100; + break; + } // case 104 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag @@ -3400,8 +3453,9 @@ public long getPort() { * @return This builder for chaining. */ public Builder setPort(long value) { - + port_ = value; + bitField0_ |= 0x00000001; onChanged(); return this; } @@ -3415,7 +3469,7 @@ public Builder setPort(long value) { * @return This builder for chaining. */ public Builder clearPort() { - + bitField0_ = (bitField0_ & ~0x00000001); port_ = 0L; onChanged(); return this; @@ -3474,11 +3528,9 @@ public java.lang.String getProtocol() { */ public Builder setProtocol( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } protocol_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -3491,8 +3543,8 @@ public Builder setProtocol( * @return This builder for chaining. */ public Builder clearProtocol() { - protocol_ = getDefaultInstance().getProtocol(); + bitField0_ = (bitField0_ & ~0x00000002); onChanged(); return this; } @@ -3507,12 +3559,10 @@ public Builder clearProtocol() { */ public Builder setProtocolBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); protocol_ = value; + bitField0_ |= 0x00000002; onChanged(); return this; } @@ -3570,11 +3620,9 @@ public java.lang.String getDispatcherAddress() { */ public Builder setDispatcherAddress( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } dispatcherAddress_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -3587,8 +3635,8 @@ public Builder setDispatcherAddress( * @return This builder for chaining. */ public Builder clearDispatcherAddress() { - dispatcherAddress_ = getDefaultInstance().getDispatcherAddress(); + bitField0_ = (bitField0_ & ~0x00000004); onChanged(); return this; } @@ -3603,12 +3651,10 @@ public Builder clearDispatcherAddress() { */ public Builder setDispatcherAddressBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); dispatcherAddress_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -3672,11 +3718,9 @@ public java.lang.String getWorkerAddress() { */ public Builder setWorkerAddress( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } workerAddress_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -3691,8 +3735,8 @@ public Builder setWorkerAddress( * @return This builder for chaining. */ public Builder clearWorkerAddress() { - workerAddress_ = getDefaultInstance().getWorkerAddress(); + bitField0_ = (bitField0_ & ~0x00000008); onChanged(); return this; } @@ -3709,22 +3753,21 @@ public Builder clearWorkerAddress() { */ public Builder setWorkerAddressBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); workerAddress_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } - private com.google.protobuf.LazyStringList workerTags_ = com.google.protobuf.LazyStringArrayList.EMPTY; + private com.google.protobuf.LazyStringArrayList workerTags_ = + com.google.protobuf.LazyStringArrayList.emptyList(); private void ensureWorkerTagsIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { + if (!workerTags_.isModifiable()) { workerTags_ = new com.google.protobuf.LazyStringArrayList(workerTags_); - bitField0_ |= 0x00000001; - } + } + bitField0_ |= 0x00000010; } /** *
    @@ -3739,7 +3782,8 @@ private void ensureWorkerTagsIsMutable() {
            */
           public com.google.protobuf.ProtocolStringList
               getWorkerTagsList() {
    -        return workerTags_.getUnmodifiableView();
    +        workerTags_.makeImmutable();
    +        return workerTags_;
           }
           /**
            * 
    @@ -3801,11 +3845,10 @@ public java.lang.String getWorkerTags(int index) {
            */
           public Builder setWorkerTags(
               int index, java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureWorkerTagsIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureWorkerTagsIsMutable();
             workerTags_.set(index, value);
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -3823,11 +3866,10 @@ public Builder setWorkerTags(
            */
           public Builder addWorkerTags(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureWorkerTagsIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureWorkerTagsIsMutable();
             workerTags_.add(value);
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -3848,6 +3890,7 @@ public Builder addAllWorkerTags(
             ensureWorkerTagsIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, workerTags_);
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -3863,8 +3906,9 @@ public Builder addAllWorkerTags(
            * @return This builder for chaining.
            */
           public Builder clearWorkerTags() {
    -        workerTags_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        workerTags_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
    +        bitField0_ = (bitField0_ & ~0x00000010);;
             onChanged();
             return this;
           }
    @@ -3882,12 +3926,11 @@ public Builder clearWorkerTags() {
            */
           public Builder addWorkerTagsBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             ensureWorkerTagsIsMutable();
             workerTags_.add(value);
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -3917,8 +3960,9 @@ public long getHeartbeatIntervalMs() {
            * @return This builder for chaining.
            */
           public Builder setHeartbeatIntervalMs(long value) {
    -        
    +
             heartbeatIntervalMs_ = value;
    +        bitField0_ |= 0x00000020;
             onChanged();
             return this;
           }
    @@ -3932,7 +3976,7 @@ public Builder setHeartbeatIntervalMs(long value) {
            * @return This builder for chaining.
            */
           public Builder clearHeartbeatIntervalMs() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000020);
             heartbeatIntervalMs_ = 0L;
             onChanged();
             return this;
    @@ -3965,8 +4009,9 @@ public long getDispatcherTimeoutMs() {
            * @return This builder for chaining.
            */
           public Builder setDispatcherTimeoutMs(long value) {
    -        
    +
             dispatcherTimeoutMs_ = value;
    +        bitField0_ |= 0x00000040;
             onChanged();
             return this;
           }
    @@ -3981,7 +4026,7 @@ public Builder setDispatcherTimeoutMs(long value) {
            * @return This builder for chaining.
            */
           public Builder clearDispatcherTimeoutMs() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000040);
             dispatcherTimeoutMs_ = 0L;
             onChanged();
             return this;
    @@ -3990,7 +4035,11 @@ public Builder clearDispatcherTimeoutMs() {
           private java.lang.Object dataTransferProtocol_ = "";
           /**
            * 
    -       * The protocol for the worker to use when transferring data to clients.
    +       * If set, the name of an alternative data transfer protocol for which the
    +       * worker starts an additional server ("data transfer server"); the trainer
    +       * can then get data from this server. If not set, no such server is started,
    +       * and the trainer can only get data from the regular worker server over
    +       * `protocol`.
            * 
    * * string data_transfer_protocol = 7; @@ -4010,7 +4059,11 @@ public java.lang.String getDataTransferProtocol() { } /** *
    -       * The protocol for the worker to use when transferring data to clients.
    +       * If set, the name of an alternative data transfer protocol for which the
    +       * worker starts an additional server ("data transfer server"); the trainer
    +       * can then get data from this server. If not set, no such server is started,
    +       * and the trainer can only get data from the regular worker server over
    +       * `protocol`.
            * 
    * * string data_transfer_protocol = 7; @@ -4031,7 +4084,11 @@ public java.lang.String getDataTransferProtocol() { } /** *
    -       * The protocol for the worker to use when transferring data to clients.
    +       * If set, the name of an alternative data transfer protocol for which the
    +       * worker starts an additional server ("data transfer server"); the trainer
    +       * can then get data from this server. If not set, no such server is started,
    +       * and the trainer can only get data from the regular worker server over
    +       * `protocol`.
            * 
    * * string data_transfer_protocol = 7; @@ -4040,31 +4097,37 @@ public java.lang.String getDataTransferProtocol() { */ public Builder setDataTransferProtocol( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } dataTransferProtocol_ = value; + bitField0_ |= 0x00000080; onChanged(); return this; } /** *
    -       * The protocol for the worker to use when transferring data to clients.
    +       * If set, the name of an alternative data transfer protocol for which the
    +       * worker starts an additional server ("data transfer server"); the trainer
    +       * can then get data from this server. If not set, no such server is started,
    +       * and the trainer can only get data from the regular worker server over
    +       * `protocol`.
            * 
    * * string data_transfer_protocol = 7; * @return This builder for chaining. */ public Builder clearDataTransferProtocol() { - dataTransferProtocol_ = getDefaultInstance().getDataTransferProtocol(); + bitField0_ = (bitField0_ & ~0x00000080); onChanged(); return this; } /** *
    -       * The protocol for the worker to use when transferring data to clients.
    +       * If set, the name of an alternative data transfer protocol for which the
    +       * worker starts an additional server ("data transfer server"); the trainer
    +       * can then get data from this server. If not set, no such server is started,
    +       * and the trainer can only get data from the regular worker server over
    +       * `protocol`.
            * 
    * * string data_transfer_protocol = 7; @@ -4073,12 +4136,57 @@ public Builder clearDataTransferProtocol() { */ public Builder setDataTransferProtocolBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); dataTransferProtocol_ = value; + bitField0_ |= 0x00000080; + onChanged(); + return this; + } + + private long dataTransferPort_ ; + /** + *
    +       * If `data_transfer_protocol` is set, the port to which the data transfer
    +       * server binds. If set to `0`, the server binds to any available port.
    +       * 
    + * + * int64 data_transfer_port = 13; + * @return The dataTransferPort. + */ + @java.lang.Override + public long getDataTransferPort() { + return dataTransferPort_; + } + /** + *
    +       * If `data_transfer_protocol` is set, the port to which the data transfer
    +       * server binds. If set to `0`, the server binds to any available port.
    +       * 
    + * + * int64 data_transfer_port = 13; + * @param value The dataTransferPort to set. + * @return This builder for chaining. + */ + public Builder setDataTransferPort(long value) { + + dataTransferPort_ = value; + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + /** + *
    +       * If `data_transfer_protocol` is set, the port to which the data transfer
    +       * server binds. If set to `0`, the server binds to any available port.
    +       * 
    + * + * int64 data_transfer_port = 13; + * @return This builder for chaining. + */ + public Builder clearDataTransferPort() { + bitField0_ = (bitField0_ & ~0x00000100); + dataTransferPort_ = 0L; onChanged(); return this; } @@ -4086,9 +4194,10 @@ public Builder setDataTransferProtocolBytes( private java.lang.Object dataTransferAddress_ = ""; /** *
    -       * The data transfer address of the worker server. The substring "%port%", if
    -       * specified, will be replaced with the worker's bound port. This is useful
    -       * when the port is set to `0`.
    +       * If `data_transfer_protocol` is set, the address of the data transfer
    +       * server. The substring "%dts_port%" can be used to represent -- and is
    +       * replaced with -- the bound port of the data transfer server; this is useful
    +       * when `data_transfer_port` is set to `0`.
            * 
    * * string data_transfer_address = 8; @@ -4108,9 +4217,10 @@ public java.lang.String getDataTransferAddress() { } /** *
    -       * The data transfer address of the worker server. The substring "%port%", if
    -       * specified, will be replaced with the worker's bound port. This is useful
    -       * when the port is set to `0`.
    +       * If `data_transfer_protocol` is set, the address of the data transfer
    +       * server. The substring "%dts_port%" can be used to represent -- and is
    +       * replaced with -- the bound port of the data transfer server; this is useful
    +       * when `data_transfer_port` is set to `0`.
            * 
    * * string data_transfer_address = 8; @@ -4131,9 +4241,10 @@ public java.lang.String getDataTransferAddress() { } /** *
    -       * The data transfer address of the worker server. The substring "%port%", if
    -       * specified, will be replaced with the worker's bound port. This is useful
    -       * when the port is set to `0`.
    +       * If `data_transfer_protocol` is set, the address of the data transfer
    +       * server. The substring "%dts_port%" can be used to represent -- and is
    +       * replaced with -- the bound port of the data transfer server; this is useful
    +       * when `data_transfer_port` is set to `0`.
            * 
    * * string data_transfer_address = 8; @@ -4142,35 +4253,35 @@ public java.lang.String getDataTransferAddress() { */ public Builder setDataTransferAddress( java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - + if (value == null) { throw new NullPointerException(); } dataTransferAddress_ = value; + bitField0_ |= 0x00000200; onChanged(); return this; } /** *
    -       * The data transfer address of the worker server. The substring "%port%", if
    -       * specified, will be replaced with the worker's bound port. This is useful
    -       * when the port is set to `0`.
    +       * If `data_transfer_protocol` is set, the address of the data transfer
    +       * server. The substring "%dts_port%" can be used to represent -- and is
    +       * replaced with -- the bound port of the data transfer server; this is useful
    +       * when `data_transfer_port` is set to `0`.
            * 
    * * string data_transfer_address = 8; * @return This builder for chaining. */ public Builder clearDataTransferAddress() { - dataTransferAddress_ = getDefaultInstance().getDataTransferAddress(); + bitField0_ = (bitField0_ & ~0x00000200); onChanged(); return this; } /** *
    -       * The data transfer address of the worker server. The substring "%port%", if
    -       * specified, will be replaced with the worker's bound port. This is useful
    -       * when the port is set to `0`.
    +       * If `data_transfer_protocol` is set, the address of the data transfer
    +       * server. The substring "%dts_port%" can be used to represent -- and is
    +       * replaced with -- the bound port of the data transfer server; this is useful
    +       * when `data_transfer_port` is set to `0`.
            * 
    * * string data_transfer_address = 8; @@ -4179,12 +4290,10 @@ public Builder clearDataTransferAddress() { */ public Builder setDataTransferAddressBytes( com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - + if (value == null) { throw new NullPointerException(); } + checkByteStringIsUtf8(value); dataTransferAddress_ = value; + bitField0_ |= 0x00000200; onChanged(); return this; } @@ -4214,8 +4323,9 @@ public long getCrossTrainerCacheSizeBytes() { * @return This builder for chaining. */ public Builder setCrossTrainerCacheSizeBytes(long value) { - + crossTrainerCacheSizeBytes_ = value; + bitField0_ |= 0x00000400; onChanged(); return this; } @@ -4229,7 +4339,7 @@ public Builder setCrossTrainerCacheSizeBytes(long value) { * @return This builder for chaining. */ public Builder clearCrossTrainerCacheSizeBytes() { - + bitField0_ = (bitField0_ & ~0x00000400); crossTrainerCacheSizeBytes_ = 0L; onChanged(); return this; @@ -4260,8 +4370,9 @@ public long getSnapshotMaxChunkSizeBytes() { * @return This builder for chaining. */ public Builder setSnapshotMaxChunkSizeBytes(long value) { - + snapshotMaxChunkSizeBytes_ = value; + bitField0_ |= 0x00000800; onChanged(); return this; } @@ -4275,7 +4386,7 @@ public Builder setSnapshotMaxChunkSizeBytes(long value) { * @return This builder for chaining. */ public Builder clearSnapshotMaxChunkSizeBytes() { - + bitField0_ = (bitField0_ & ~0x00000800); snapshotMaxChunkSizeBytes_ = 0L; onChanged(); return this; @@ -4308,8 +4419,9 @@ public long getShutdownQuietPeriodMs() { * @return This builder for chaining. */ public Builder setShutdownQuietPeriodMs(long value) { - + shutdownQuietPeriodMs_ = value; + bitField0_ |= 0x00001000; onChanged(); return this; } @@ -4324,23 +4436,11 @@ public Builder setShutdownQuietPeriodMs(long value) { * @return This builder for chaining. */ public Builder clearShutdownQuietPeriodMs() { - + bitField0_ = (bitField0_ & ~0x00001000); shutdownQuietPeriodMs_ = 0L; onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.data.experimental.WorkerConfig) } @@ -4396,12 +4496,12 @@ public org.tensorflow.proto.data.experimental.ServiceConfig.WorkerConfig getDefa private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_data_experimental_DispatcherConfig_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_data_experimental_DispatcherConfig_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_data_experimental_WorkerConfig_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_data_experimental_WorkerConfig_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor @@ -4424,19 +4524,20 @@ public org.tensorflow.proto.data.experimental.ServiceConfig.WorkerConfig getDefa "s\030\006 \001(\003\022 \n\030gc_dynamic_sharding_jobs\030\013 \001(" + "\010\022\031\n\021client_timeout_ms\030\010 \001(\003\022\031\n\021worker_t" + "imeout_ms\030\n \001(\003\022\'\n\037worker_max_concurrent" + - "_snapshots\030\014 \001(\003\"\345\002\n\014WorkerConfig\022\014\n\004por" + + "_snapshots\030\014 \001(\003\"\201\003\n\014WorkerConfig\022\014\n\004por" + "t\030\001 \001(\003\022\020\n\010protocol\030\002 \001(\t\022\032\n\022dispatcher_" + "address\030\003 \001(\t\022\026\n\016worker_address\030\004 \001(\t\022\023\n" + "\013worker_tags\030\n \003(\t\022\035\n\025heartbeat_interval" + "_ms\030\005 \001(\003\022\035\n\025dispatcher_timeout_ms\030\006 \001(\003" + - "\022\036\n\026data_transfer_protocol\030\007 \001(\t\022\035\n\025data" + - "_transfer_address\030\010 \001(\t\022&\n\036cross_trainer" + - "_cache_size_bytes\030\013 \001(\003\022%\n\035snapshot_max_" + - "chunk_size_bytes\030\014 \001(\003\022 \n\030shutdown_quiet" + - "_period_ms\030\t \001(\003B\177\n&org.tensorflow.proto" + - ".data.experimentalZUgithub.com/tensorflo" + - "w/tensorflow/tensorflow/go/core/protobuf" + - "/for_core_protos_go_protob\006proto3" + "\022\036\n\026data_transfer_protocol\030\007 \001(\t\022\032\n\022data" + + "_transfer_port\030\r \001(\003\022\035\n\025data_transfer_ad" + + "dress\030\010 \001(\t\022&\n\036cross_trainer_cache_size_" + + "bytes\030\013 \001(\003\022%\n\035snapshot_max_chunk_size_b" + + "ytes\030\014 \001(\003\022 \n\030shutdown_quiet_period_ms\030\t" + + " \001(\003B\177\n&org.tensorflow.proto.data.experi" + + "mentalZUgithub.com/tensorflow/tensorflow" + + "/tensorflow/go/core/protobuf/for_core_pr" + + "otos_go_protob\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, @@ -4446,15 +4547,16 @@ public org.tensorflow.proto.data.experimental.ServiceConfig.WorkerConfig getDefa internal_static_tensorflow_data_experimental_DispatcherConfig_descriptor = getDescriptor().getMessageTypes().get(0); internal_static_tensorflow_data_experimental_DispatcherConfig_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_data_experimental_DispatcherConfig_descriptor, new java.lang.String[] { "Port", "Protocol", "WorkDir", "FaultTolerantMode", "WorkerAddresses", "DeploymentMode", "JobGcCheckIntervalMs", "JobGcTimeoutMs", "GcDynamicShardingJobs", "ClientTimeoutMs", "WorkerTimeoutMs", "WorkerMaxConcurrentSnapshots", }); internal_static_tensorflow_data_experimental_WorkerConfig_descriptor = getDescriptor().getMessageTypes().get(1); internal_static_tensorflow_data_experimental_WorkerConfig_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_data_experimental_WorkerConfig_descriptor, - new java.lang.String[] { "Port", "Protocol", "DispatcherAddress", "WorkerAddress", "WorkerTags", "HeartbeatIntervalMs", "DispatcherTimeoutMs", "DataTransferProtocol", "DataTransferAddress", "CrossTrainerCacheSizeBytes", "SnapshotMaxChunkSizeBytes", "ShutdownQuietPeriodMs", }); + new java.lang.String[] { "Port", "Protocol", "DispatcherAddress", "WorkerAddress", "WorkerTags", "HeartbeatIntervalMs", "DispatcherTimeoutMs", "DataTransferProtocol", "DataTransferPort", "DataTransferAddress", "CrossTrainerCacheSizeBytes", "SnapshotMaxChunkSizeBytes", "ShutdownQuietPeriodMs", }); + descriptor.resolveAllFeaturesImmutable(); org.tensorflow.proto.data.DataService.getDescriptor(); } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/experimental/Snapshot.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/experimental/Snapshot.java index 03e1ca6f053..f21a9672404 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/experimental/Snapshot.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/experimental/Snapshot.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/snapshot.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto.data.experimental; public final class Snapshot { private Snapshot() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + Snapshot.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -52,37 +63,34 @@ org.tensorflow.proto.TensorProtoOrBuilder getTensorOrBuilder( * Protobuf type {@code tensorflow.data.experimental.SnapshotRecord} */ public static final class SnapshotRecord extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.data.experimental.SnapshotRecord) SnapshotRecordOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + SnapshotRecord.class.getName()); + } // Use SnapshotRecord.newBuilder() to construct. - private SnapshotRecord(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private SnapshotRecord(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private SnapshotRecord() { tensor_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new SnapshotRecord(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.data.experimental.Snapshot.internal_static_tensorflow_data_experimental_SnapshotRecord_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.data.experimental.Snapshot.internal_static_tensorflow_data_experimental_SnapshotRecord_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -90,6 +98,7 @@ protected java.lang.Object newInstance( } public static final int TENSOR_FIELD_NUMBER = 1; + @SuppressWarnings("serial") private java.util.List tensor_; /** * repeated .tensorflow.TensorProto tensor = 1; @@ -230,39 +239,41 @@ public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotRecord par } public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotRecord parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotRecord parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotRecord parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotRecord parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotRecord parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotRecord parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -282,7 +293,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -296,7 +307,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.data.experimental.SnapshotRecord} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.data.experimental.SnapshotRecord) org.tensorflow.proto.data.experimental.Snapshot.SnapshotRecordOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -305,7 +316,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.data.experimental.Snapshot.internal_static_tensorflow_data_experimental_SnapshotRecord_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -318,13 +329,14 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; if (tensorBuilder_ == null) { tensor_ = java.util.Collections.emptyList(); } else { @@ -358,7 +370,13 @@ public org.tensorflow.proto.data.experimental.Snapshot.SnapshotRecord build() { @java.lang.Override public org.tensorflow.proto.data.experimental.Snapshot.SnapshotRecord buildPartial() { org.tensorflow.proto.data.experimental.Snapshot.SnapshotRecord result = new org.tensorflow.proto.data.experimental.Snapshot.SnapshotRecord(this); - int from_bitField0_ = bitField0_; + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { buildPartial0(result); } + onBuilt(); + return result; + } + + private void buildPartialRepeatedFields(org.tensorflow.proto.data.experimental.Snapshot.SnapshotRecord result) { if (tensorBuilder_ == null) { if (((bitField0_ & 0x00000001) != 0)) { tensor_ = java.util.Collections.unmodifiableList(tensor_); @@ -368,42 +386,12 @@ public org.tensorflow.proto.data.experimental.Snapshot.SnapshotRecord buildParti } else { result.tensor_ = tensorBuilder_.build(); } - onBuilt(); - return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.data.experimental.Snapshot.SnapshotRecord result) { + int from_bitField0_ = bitField0_; } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.data.experimental.Snapshot.SnapshotRecord) { @@ -435,7 +423,7 @@ public Builder mergeFrom(org.tensorflow.proto.data.experimental.Snapshot.Snapsho tensor_ = other.tensor_; bitField0_ = (bitField0_ & ~0x00000001); tensorBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? getTensorFieldBuilder() : null; } else { tensorBuilder_.addAllMessages(other.tensor_); @@ -507,7 +495,7 @@ private void ensureTensorIsMutable() { } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> tensorBuilder_; /** @@ -723,11 +711,11 @@ public org.tensorflow.proto.TensorProto.Builder addTensorBuilder( getTensorBuilderList() { return getTensorFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder> getTensorFieldBuilder() { if (tensorBuilder_ == null) { - tensorBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + tensorBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.TensorProto, org.tensorflow.proto.TensorProto.Builder, org.tensorflow.proto.TensorProtoOrBuilder>( tensor_, ((bitField0_ & 0x00000001) != 0), @@ -737,18 +725,6 @@ public org.tensorflow.proto.TensorProto.Builder addTensorBuilder( } return tensorBuilder_; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.data.experimental.SnapshotRecord) } @@ -940,39 +916,36 @@ public interface SnapshotMetadataRecordOrBuilder extends * Protobuf type {@code tensorflow.data.experimental.SnapshotMetadataRecord} */ public static final class SnapshotMetadataRecord extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.data.experimental.SnapshotMetadataRecord) SnapshotMetadataRecordOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + SnapshotMetadataRecord.class.getName()); + } // Use SnapshotMetadataRecord.newBuilder() to construct. - private SnapshotMetadataRecord(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private SnapshotMetadataRecord(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private SnapshotMetadataRecord() { graphHash_ = ""; runId_ = ""; - dtype_ = java.util.Collections.emptyList(); - } - - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new SnapshotMetadataRecord(); + dtype_ = emptyIntList(); } - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.data.experimental.Snapshot.internal_static_tensorflow_data_experimental_SnapshotMetadataRecord_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.data.experimental.Snapshot.internal_static_tensorflow_data_experimental_SnapshotMetadataRecord_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -980,7 +953,8 @@ protected java.lang.Object newInstance( } public static final int GRAPH_HASH_FIELD_NUMBER = 1; - private volatile java.lang.Object graphHash_; + @SuppressWarnings("serial") + private volatile java.lang.Object graphHash_ = ""; /** *
          * Stores the fingerprint of the graph that describes the dataset that is
    @@ -1028,7 +1002,8 @@ public java.lang.String getGraphHash() {
         }
     
         public static final int RUN_ID_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object runId_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object runId_ = "";
         /**
          * 
          * Run ID that this snapshot corresponds to.
    @@ -1074,7 +1049,7 @@ public java.lang.String getRunId() {
         }
     
         public static final int CREATION_TIMESTAMP_FIELD_NUMBER = 3;
    -    private long creationTimestamp_;
    +    private long creationTimestamp_ = 0L;
         /**
          * 
          * Time when we started creating this snapshot.
    @@ -1089,7 +1064,7 @@ public long getCreationTimestamp() {
         }
     
         public static final int VERSION_FIELD_NUMBER = 4;
    -    private long version_;
    +    private long version_ = 0L;
         /**
          * 
          * Version of the snapshot data file format.
    @@ -1104,14 +1079,14 @@ public long getVersion() {
         }
     
         public static final int DTYPE_FIELD_NUMBER = 5;
    -    private java.util.List dtype_;
    -    private static final com.google.protobuf.Internal.ListAdapter.Converter<
    -        java.lang.Integer, org.tensorflow.proto.DataType> dtype_converter_ =
    -            new com.google.protobuf.Internal.ListAdapter.Converter<
    -                java.lang.Integer, org.tensorflow.proto.DataType>() {
    -              public org.tensorflow.proto.DataType convert(java.lang.Integer from) {
    -                @SuppressWarnings("deprecation")
    -                org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(from);
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.Internal.IntList dtype_;
    +    private static final com.google.protobuf.Internal.IntListAdapter.IntConverter<
    +        org.tensorflow.proto.DataType> dtype_converter_ =
    +            new com.google.protobuf.Internal.IntListAdapter.IntConverter<
    +                org.tensorflow.proto.DataType>() {
    +              public org.tensorflow.proto.DataType convert(int from) {
    +                org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(from);
                     return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
                   }
                 };
    @@ -1125,8 +1100,8 @@ public org.tensorflow.proto.DataType convert(java.lang.Integer from) {
          */
         @java.lang.Override
         public java.util.List getDtypeList() {
    -      return new com.google.protobuf.Internal.ListAdapter<
    -          java.lang.Integer, org.tensorflow.proto.DataType>(dtype_, dtype_converter_);
    +      return new com.google.protobuf.Internal.IntListAdapter<
    +          org.tensorflow.proto.DataType>(dtype_, dtype_converter_);
         }
         /**
          * 
    @@ -1151,7 +1126,7 @@ public int getDtypeCount() {
          */
         @java.lang.Override
         public org.tensorflow.proto.DataType getDtype(int index) {
    -      return dtype_converter_.convert(dtype_.get(index));
    +      return dtype_converter_.convert(dtype_.getInt(index));
         }
         /**
          * 
    @@ -1177,12 +1152,12 @@ public org.tensorflow.proto.DataType getDtype(int index) {
          */
         @java.lang.Override
         public int getDtypeValue(int index) {
    -      return dtype_.get(index);
    +      return dtype_.getInt(index);
         }
         private int dtypeMemoizedSerializedSize;
     
         public static final int NUM_ELEMENTS_FIELD_NUMBER = 6;
    -    private long numElements_;
    +    private long numElements_ = 0L;
         /**
          * 
          * The number of elements in the snapshot.
    @@ -1197,7 +1172,7 @@ public long getNumElements() {
         }
     
         public static final int FINALIZED_FIELD_NUMBER = 1000;
    -    private boolean finalized_;
    +    private boolean finalized_ = false;
         /**
          * bool finalized = 1000;
          * @return The finalized.
    @@ -1222,11 +1197,11 @@ public final boolean isInitialized() {
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
           getSerializedSize();
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(graphHash_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, graphHash_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(graphHash_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 1, graphHash_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(runId_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, runId_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(runId_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, runId_);
           }
           if (creationTimestamp_ != 0L) {
             output.writeInt64(3, creationTimestamp_);
    @@ -1239,7 +1214,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
             output.writeUInt32NoTag(dtypeMemoizedSerializedSize);
           }
           for (int i = 0; i < dtype_.size(); i++) {
    -        output.writeEnumNoTag(dtype_.get(i));
    +        output.writeEnumNoTag(dtype_.getInt(i));
           }
           if (numElements_ != 0L) {
             output.writeInt64(6, numElements_);
    @@ -1256,11 +1231,11 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(graphHash_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, graphHash_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(graphHash_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(1, graphHash_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(runId_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, runId_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(runId_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, runId_);
           }
           if (creationTimestamp_ != 0L) {
             size += com.google.protobuf.CodedOutputStream
    @@ -1274,7 +1249,7 @@ public int getSerializedSize() {
             int dataSize = 0;
             for (int i = 0; i < dtype_.size(); i++) {
               dataSize += com.google.protobuf.CodedOutputStream
    -            .computeEnumSizeNoTag(dtype_.get(i));
    +            .computeEnumSizeNoTag(dtype_.getInt(i));
             }
             size += dataSize;
             if (!getDtypeList().isEmpty()) {  size += 1;
    @@ -1388,39 +1363,41 @@ public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotMetadataRe
         }
         public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotMetadataRecord parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotMetadataRecord parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotMetadataRecord parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotMetadataRecord parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotMetadataRecord parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotMetadataRecord parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -1440,7 +1417,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -1452,7 +1429,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.data.experimental.SnapshotMetadataRecord}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.data.experimental.SnapshotMetadataRecord)
             org.tensorflow.proto.data.experimental.Snapshot.SnapshotMetadataRecordOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1461,7 +1438,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.data.experimental.Snapshot.internal_static_tensorflow_data_experimental_SnapshotMetadataRecord_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -1474,27 +1451,22 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             graphHash_ = "";
    -
             runId_ = "";
    -
             creationTimestamp_ = 0L;
    -
             version_ = 0L;
    -
    -        dtype_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        dtype_ = emptyIntList();
    +        bitField0_ = (bitField0_ & ~0x00000010);
             numElements_ = 0L;
    -
             finalized_ = false;
    -
             return this;
           }
     
    @@ -1521,54 +1493,42 @@ public org.tensorflow.proto.data.experimental.Snapshot.SnapshotMetadataRecord bu
           @java.lang.Override
           public org.tensorflow.proto.data.experimental.Snapshot.SnapshotMetadataRecord buildPartial() {
             org.tensorflow.proto.data.experimental.Snapshot.SnapshotMetadataRecord result = new org.tensorflow.proto.data.experimental.Snapshot.SnapshotMetadataRecord(this);
    -        int from_bitField0_ = bitField0_;
    -        result.graphHash_ = graphHash_;
    -        result.runId_ = runId_;
    -        result.creationTimestamp_ = creationTimestamp_;
    -        result.version_ = version_;
    -        if (((bitField0_ & 0x00000001) != 0)) {
    -          dtype_ = java.util.Collections.unmodifiableList(dtype_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    -        }
    -        result.dtype_ = dtype_;
    -        result.numElements_ = numElements_;
    -        result.finalized_ = finalized_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.data.experimental.Snapshot.SnapshotMetadataRecord result) {
    +        if (((bitField0_ & 0x00000010) != 0)) {
    +          dtype_.makeImmutable();
    +          bitField0_ = (bitField0_ & ~0x00000010);
    +        }
    +        result.dtype_ = dtype_;
           }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +
    +      private void buildPartial0(org.tensorflow.proto.data.experimental.Snapshot.SnapshotMetadataRecord result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.graphHash_ = graphHash_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.runId_ = runId_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.creationTimestamp_ = creationTimestamp_;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.version_ = version_;
    +        }
    +        if (((from_bitField0_ & 0x00000020) != 0)) {
    +          result.numElements_ = numElements_;
    +        }
    +        if (((from_bitField0_ & 0x00000040) != 0)) {
    +          result.finalized_ = finalized_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.data.experimental.Snapshot.SnapshotMetadataRecord) {
    @@ -1583,10 +1543,12 @@ public Builder mergeFrom(org.tensorflow.proto.data.experimental.Snapshot.Snapsho
             if (other == org.tensorflow.proto.data.experimental.Snapshot.SnapshotMetadataRecord.getDefaultInstance()) return this;
             if (!other.getGraphHash().isEmpty()) {
               graphHash_ = other.graphHash_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             if (!other.getRunId().isEmpty()) {
               runId_ = other.runId_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             if (other.getCreationTimestamp() != 0L) {
    @@ -1598,7 +1560,7 @@ public Builder mergeFrom(org.tensorflow.proto.data.experimental.Snapshot.Snapsho
             if (!other.dtype_.isEmpty()) {
               if (dtype_.isEmpty()) {
                 dtype_ = other.dtype_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000010);
               } else {
                 ensureDtypeIsMutable();
                 dtype_.addAll(other.dtype_);
    @@ -1639,28 +1601,28 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     graphHash_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     runId_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 24: {
                     creationTimestamp_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 24
                   case 32: {
                     version_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 32
                   case 40: {
                     int tmpRaw = input.readEnum();
                     ensureDtypeIsMutable();
    -                dtype_.add(tmpRaw);
    +                dtype_.addInt(tmpRaw);
                     break;
                   } // case 40
                   case 42: {
    @@ -1669,19 +1631,19 @@ public Builder mergeFrom(
                     while(input.getBytesUntilLimit() > 0) {
                       int tmpRaw = input.readEnum();
                       ensureDtypeIsMutable();
    -                  dtype_.add(tmpRaw);
    +                  dtype_.addInt(tmpRaw);
                     }
                     input.popLimit(oldLimit);
                     break;
                   } // case 42
                   case 48: {
                     numElements_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000020;
                     break;
                   } // case 48
                   case 8000: {
                     finalized_ = input.readBool();
    -
    +                bitField0_ |= 0x00000040;
                     break;
                   } // case 8000
                   default: {
    @@ -1757,11 +1719,9 @@ public java.lang.String getGraphHash() {
            */
           public Builder setGraphHash(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             graphHash_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -1775,8 +1735,8 @@ public Builder setGraphHash(
            * @return This builder for chaining.
            */
           public Builder clearGraphHash() {
    -        
             graphHash_ = getDefaultInstance().getGraphHash();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -1792,12 +1752,10 @@ public Builder clearGraphHash() {
            */
           public Builder setGraphHashBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             graphHash_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -1855,11 +1813,9 @@ public java.lang.String getRunId() {
            */
           public Builder setRunId(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             runId_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1872,8 +1828,8 @@ public Builder setRunId(
            * @return This builder for chaining.
            */
           public Builder clearRunId() {
    -        
             runId_ = getDefaultInstance().getRunId();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -1888,12 +1844,10 @@ public Builder clearRunId() {
            */
           public Builder setRunIdBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             runId_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1921,8 +1875,9 @@ public long getCreationTimestamp() {
            * @return This builder for chaining.
            */
           public Builder setCreationTimestamp(long value) {
    -        
    +
             creationTimestamp_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1935,7 +1890,7 @@ public Builder setCreationTimestamp(long value) {
            * @return This builder for chaining.
            */
           public Builder clearCreationTimestamp() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000004);
             creationTimestamp_ = 0L;
             onChanged();
             return this;
    @@ -1964,8 +1919,9 @@ public long getVersion() {
            * @return This builder for chaining.
            */
           public Builder setVersion(long value) {
    -        
    +
             version_ = value;
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -1978,18 +1934,18 @@ public Builder setVersion(long value) {
            * @return This builder for chaining.
            */
           public Builder clearVersion() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000008);
             version_ = 0L;
             onChanged();
             return this;
           }
     
    -      private java.util.List dtype_ =
    -        java.util.Collections.emptyList();
    +      private com.google.protobuf.Internal.IntList dtype_ =
    +        emptyIntList();
           private void ensureDtypeIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    -          dtype_ = new java.util.ArrayList(dtype_);
    -          bitField0_ |= 0x00000001;
    +        if (!((bitField0_ & 0x00000010) != 0)) {
    +          dtype_ = makeMutableCopy(dtype_);
    +          bitField0_ |= 0x00000010;
             }
           }
           /**
    @@ -2001,8 +1957,8 @@ private void ensureDtypeIsMutable() {
            * @return A list containing the dtype.
            */
           public java.util.List getDtypeList() {
    -        return new com.google.protobuf.Internal.ListAdapter<
    -            java.lang.Integer, org.tensorflow.proto.DataType>(dtype_, dtype_converter_);
    +        return new com.google.protobuf.Internal.IntListAdapter<
    +            org.tensorflow.proto.DataType>(dtype_, dtype_converter_);
           }
           /**
            * 
    @@ -2025,7 +1981,7 @@ public int getDtypeCount() {
            * @return The dtype at the given index.
            */
           public org.tensorflow.proto.DataType getDtype(int index) {
    -        return dtype_converter_.convert(dtype_.get(index));
    +        return dtype_converter_.convert(dtype_.getInt(index));
           }
           /**
            * 
    @@ -2043,7 +1999,7 @@ public Builder setDtype(
               throw new NullPointerException();
             }
             ensureDtypeIsMutable();
    -        dtype_.set(index, value.getNumber());
    +        dtype_.setInt(index, value.getNumber());
             onChanged();
             return this;
           }
    @@ -2061,7 +2017,7 @@ public Builder addDtype(org.tensorflow.proto.DataType value) {
               throw new NullPointerException();
             }
             ensureDtypeIsMutable();
    -        dtype_.add(value.getNumber());
    +        dtype_.addInt(value.getNumber());
             onChanged();
             return this;
           }
    @@ -2078,7 +2034,7 @@ public Builder addAllDtype(
               java.lang.Iterable values) {
             ensureDtypeIsMutable();
             for (org.tensorflow.proto.DataType value : values) {
    -          dtype_.add(value.getNumber());
    +          dtype_.addInt(value.getNumber());
             }
             onChanged();
             return this;
    @@ -2092,8 +2048,8 @@ public Builder addAllDtype(
            * @return This builder for chaining.
            */
           public Builder clearDtype() {
    -        dtype_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        dtype_ = emptyIntList();
    +        bitField0_ = (bitField0_ & ~0x00000010);
             onChanged();
             return this;
           }
    @@ -2119,7 +2075,7 @@ public Builder clearDtype() {
            * @return The enum numeric value on the wire of dtype at the given index.
            */
           public int getDtypeValue(int index) {
    -        return dtype_.get(index);
    +        return dtype_.getInt(index);
           }
           /**
            * 
    @@ -2134,7 +2090,7 @@ public int getDtypeValue(int index) {
           public Builder setDtypeValue(
               int index, int value) {
             ensureDtypeIsMutable();
    -        dtype_.set(index, value);
    +        dtype_.setInt(index, value);
             onChanged();
             return this;
           }
    @@ -2149,7 +2105,7 @@ public Builder setDtypeValue(
            */
           public Builder addDtypeValue(int value) {
             ensureDtypeIsMutable();
    -        dtype_.add(value);
    +        dtype_.addInt(value);
             onChanged();
             return this;
           }
    @@ -2166,7 +2122,7 @@ public Builder addAllDtypeValue(
               java.lang.Iterable values) {
             ensureDtypeIsMutable();
             for (int value : values) {
    -          dtype_.add(value);
    +          dtype_.addInt(value);
             }
             onChanged();
             return this;
    @@ -2195,8 +2151,9 @@ public long getNumElements() {
            * @return This builder for chaining.
            */
           public Builder setNumElements(long value) {
    -        
    +
             numElements_ = value;
    +        bitField0_ |= 0x00000020;
             onChanged();
             return this;
           }
    @@ -2209,7 +2166,7 @@ public Builder setNumElements(long value) {
            * @return This builder for chaining.
            */
           public Builder clearNumElements() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000020);
             numElements_ = 0L;
             onChanged();
             return this;
    @@ -2230,8 +2187,9 @@ public boolean getFinalized() {
            * @return This builder for chaining.
            */
           public Builder setFinalized(boolean value) {
    -        
    +
             finalized_ = value;
    +        bitField0_ |= 0x00000040;
             onChanged();
             return this;
           }
    @@ -2240,23 +2198,11 @@ public Builder setFinalized(boolean value) {
            * @return This builder for chaining.
            */
           public Builder clearFinalized() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000040);
             finalized_ = false;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.data.experimental.SnapshotMetadataRecord)
         }
    @@ -2346,42 +2292,40 @@ public interface TensorMetadataOrBuilder extends
        * Protobuf type {@code tensorflow.data.experimental.TensorMetadata}
        */
       public static final class TensorMetadata extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.data.experimental.TensorMetadata)
           TensorMetadataOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        TensorMetadata.class.getName());
    +    }
         // Use TensorMetadata.newBuilder() to construct.
    -    private TensorMetadata(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private TensorMetadata(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private TensorMetadata() {
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new TensorMetadata();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.data.experimental.Snapshot.internal_static_tensorflow_data_experimental_TensorMetadata_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.data.experimental.Snapshot.internal_static_tensorflow_data_experimental_TensorMetadata_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
                   org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata.class, org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata.Builder.class);
         }
     
    +    private int bitField0_;
         public static final int TENSOR_SHAPE_FIELD_NUMBER = 2;
         private org.tensorflow.proto.TensorShapeProto tensorShape_;
         /**
    @@ -2390,7 +2334,7 @@ protected java.lang.Object newInstance(
          */
         @java.lang.Override
         public boolean hasTensorShape() {
    -      return tensorShape_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * .tensorflow.TensorShapeProto tensor_shape = 2;
    @@ -2405,11 +2349,11 @@ public org.tensorflow.proto.TensorShapeProto getTensorShape() {
          */
         @java.lang.Override
         public org.tensorflow.proto.TensorShapeProtoOrBuilder getTensorShapeOrBuilder() {
    -      return getTensorShape();
    +      return tensorShape_ == null ? org.tensorflow.proto.TensorShapeProto.getDefaultInstance() : tensorShape_;
         }
     
         public static final int TENSOR_SIZE_BYTES_FIELD_NUMBER = 3;
    -    private long tensorSizeBytes_;
    +    private long tensorSizeBytes_ = 0L;
         /**
          * 
          * Number of uncompressed bytes used to store the tensor representation.
    @@ -2437,7 +2381,7 @@ public final boolean isInitialized() {
         @java.lang.Override
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
    -      if (tensorShape_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(2, getTensorShape());
           }
           if (tensorSizeBytes_ != 0L) {
    @@ -2452,7 +2396,7 @@ public int getSerializedSize() {
           if (size != -1) return size;
     
           size = 0;
    -      if (tensorShape_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(2, getTensorShape());
           }
    @@ -2539,39 +2483,41 @@ public static org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata par
         }
         public static org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -2591,7 +2537,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -2603,7 +2549,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.data.experimental.TensorMetadata}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.data.experimental.TensorMetadata)
             org.tensorflow.proto.data.experimental.Snapshot.TensorMetadataOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -2612,7 +2558,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.data.experimental.Snapshot.internal_static_tensorflow_data_experimental_TensorMetadata_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -2621,25 +2567,30 @@ public static final class Builder extends
     
           // Construct using org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getTensorShapeFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    -        if (tensorShapeBuilder_ == null) {
    -          tensorShape_ = null;
    -        } else {
    -          tensorShape_ = null;
    +        bitField0_ = 0;
    +        tensorShape_ = null;
    +        if (tensorShapeBuilder_ != null) {
    +          tensorShapeBuilder_.dispose();
               tensorShapeBuilder_ = null;
             }
             tensorSizeBytes_ = 0L;
    -
             return this;
           }
     
    @@ -2666,48 +2617,26 @@ public org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata build() {
           @java.lang.Override
           public org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata buildPartial() {
             org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata result = new org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata(this);
    -        if (tensorShapeBuilder_ == null) {
    -          result.tensorShape_ = tensorShape_;
    -        } else {
    -          result.tensorShape_ = tensorShapeBuilder_.build();
    -        }
    -        result.tensorSizeBytes_ = tensorSizeBytes_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata result) {
    +        int from_bitField0_ = bitField0_;
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.tensorShape_ = tensorShapeBuilder_ == null
    +              ? tensorShape_
    +              : tensorShapeBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.tensorSizeBytes_ = tensorSizeBytes_;
    +        }
    +        result.bitField0_ |= to_bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata) {
    @@ -2756,12 +2685,12 @@ public Builder mergeFrom(
                     input.readMessage(
                         getTensorShapeFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 18
                   case 24: {
                     tensorSizeBytes_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 24
                   default: {
    @@ -2779,16 +2708,17 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private org.tensorflow.proto.TensorShapeProto tensorShape_;
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> tensorShapeBuilder_;
           /**
            * .tensorflow.TensorShapeProto tensor_shape = 2;
            * @return Whether the tensorShape field is set.
            */
           public boolean hasTensorShape() {
    -        return tensorShapeBuilder_ != null || tensorShape_ != null;
    +        return ((bitField0_ & 0x00000001) != 0);
           }
           /**
            * .tensorflow.TensorShapeProto tensor_shape = 2;
    @@ -2810,11 +2740,11 @@ public Builder setTensorShape(org.tensorflow.proto.TensorShapeProto value) {
                 throw new NullPointerException();
               }
               tensorShape_ = value;
    -          onChanged();
             } else {
               tensorShapeBuilder_.setMessage(value);
             }
    -
    +        bitField0_ |= 0x00000001;
    +        onChanged();
             return this;
           }
           /**
    @@ -2824,11 +2754,11 @@ public Builder setTensorShape(
               org.tensorflow.proto.TensorShapeProto.Builder builderForValue) {
             if (tensorShapeBuilder_ == null) {
               tensorShape_ = builderForValue.build();
    -          onChanged();
             } else {
               tensorShapeBuilder_.setMessage(builderForValue.build());
             }
    -
    +        bitField0_ |= 0x00000001;
    +        onChanged();
             return this;
           }
           /**
    @@ -2836,38 +2766,40 @@ public Builder setTensorShape(
            */
           public Builder mergeTensorShape(org.tensorflow.proto.TensorShapeProto value) {
             if (tensorShapeBuilder_ == null) {
    -          if (tensorShape_ != null) {
    -            tensorShape_ =
    -              org.tensorflow.proto.TensorShapeProto.newBuilder(tensorShape_).mergeFrom(value).buildPartial();
    +          if (((bitField0_ & 0x00000001) != 0) &&
    +            tensorShape_ != null &&
    +            tensorShape_ != org.tensorflow.proto.TensorShapeProto.getDefaultInstance()) {
    +            getTensorShapeBuilder().mergeFrom(value);
               } else {
                 tensorShape_ = value;
               }
    -          onChanged();
             } else {
               tensorShapeBuilder_.mergeFrom(value);
             }
    -
    +        if (tensorShape_ != null) {
    +          bitField0_ |= 0x00000001;
    +          onChanged();
    +        }
             return this;
           }
           /**
            * .tensorflow.TensorShapeProto tensor_shape = 2;
            */
           public Builder clearTensorShape() {
    -        if (tensorShapeBuilder_ == null) {
    -          tensorShape_ = null;
    -          onChanged();
    -        } else {
    -          tensorShape_ = null;
    +        bitField0_ = (bitField0_ & ~0x00000001);
    +        tensorShape_ = null;
    +        if (tensorShapeBuilder_ != null) {
    +          tensorShapeBuilder_.dispose();
               tensorShapeBuilder_ = null;
             }
    -
    +        onChanged();
             return this;
           }
           /**
            * .tensorflow.TensorShapeProto tensor_shape = 2;
            */
           public org.tensorflow.proto.TensorShapeProto.Builder getTensorShapeBuilder() {
    -        
    +        bitField0_ |= 0x00000001;
             onChanged();
             return getTensorShapeFieldBuilder().getBuilder();
           }
    @@ -2885,11 +2817,11 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getTensorShapeOrBuilder()
           /**
            * .tensorflow.TensorShapeProto tensor_shape = 2;
            */
    -      private com.google.protobuf.SingleFieldBuilderV3<
    +      private com.google.protobuf.SingleFieldBuilder<
               org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> 
               getTensorShapeFieldBuilder() {
             if (tensorShapeBuilder_ == null) {
    -          tensorShapeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +          tensorShapeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                   org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>(
                       getTensorShape(),
                       getParentForChildren(),
    @@ -2922,8 +2854,9 @@ public long getTensorSizeBytes() {
            * @return This builder for chaining.
            */
           public Builder setTensorSizeBytes(long value) {
    -        
    +
             tensorSizeBytes_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -2936,23 +2869,11 @@ public Builder setTensorSizeBytes(long value) {
            * @return This builder for chaining.
            */
           public Builder clearTensorSizeBytes() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000002);
             tensorSizeBytes_ = 0L;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.data.experimental.TensorMetadata)
         }
    @@ -3041,37 +2962,34 @@ org.tensorflow.proto.data.experimental.Snapshot.TensorMetadataOrBuilder getTenso
        * Protobuf type {@code tensorflow.data.experimental.SnapshotTensorMetadata}
        */
       public static final class SnapshotTensorMetadata extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.data.experimental.SnapshotTensorMetadata)
           SnapshotTensorMetadataOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        SnapshotTensorMetadata.class.getName());
    +    }
         // Use SnapshotTensorMetadata.newBuilder() to construct.
    -    private SnapshotTensorMetadata(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private SnapshotTensorMetadata(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private SnapshotTensorMetadata() {
           tensorMetadata_ = java.util.Collections.emptyList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new SnapshotTensorMetadata();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.data.experimental.Snapshot.internal_static_tensorflow_data_experimental_SnapshotTensorMetadata_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.data.experimental.Snapshot.internal_static_tensorflow_data_experimental_SnapshotTensorMetadata_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -3079,6 +2997,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int TENSOR_METADATA_FIELD_NUMBER = 1;
    +    @SuppressWarnings("serial")
         private java.util.List tensorMetadata_;
         /**
          * repeated .tensorflow.data.experimental.TensorMetadata tensor_metadata = 1;
    @@ -3219,39 +3138,41 @@ public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotTensorMeta
         }
         public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotTensorMetadata parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotTensorMetadata parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotTensorMetadata parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotTensorMetadata parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotTensorMetadata parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.experimental.Snapshot.SnapshotTensorMetadata parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -3271,7 +3192,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -3283,7 +3204,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.data.experimental.SnapshotTensorMetadata}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.data.experimental.SnapshotTensorMetadata)
             org.tensorflow.proto.data.experimental.Snapshot.SnapshotTensorMetadataOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -3292,7 +3213,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.data.experimental.Snapshot.internal_static_tensorflow_data_experimental_SnapshotTensorMetadata_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -3305,13 +3226,14 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             if (tensorMetadataBuilder_ == null) {
               tensorMetadata_ = java.util.Collections.emptyList();
             } else {
    @@ -3345,7 +3267,13 @@ public org.tensorflow.proto.data.experimental.Snapshot.SnapshotTensorMetadata bu
           @java.lang.Override
           public org.tensorflow.proto.data.experimental.Snapshot.SnapshotTensorMetadata buildPartial() {
             org.tensorflow.proto.data.experimental.Snapshot.SnapshotTensorMetadata result = new org.tensorflow.proto.data.experimental.Snapshot.SnapshotTensorMetadata(this);
    -        int from_bitField0_ = bitField0_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.data.experimental.Snapshot.SnapshotTensorMetadata result) {
             if (tensorMetadataBuilder_ == null) {
               if (((bitField0_ & 0x00000001) != 0)) {
                 tensorMetadata_ = java.util.Collections.unmodifiableList(tensorMetadata_);
    @@ -3355,42 +3283,12 @@ public org.tensorflow.proto.data.experimental.Snapshot.SnapshotTensorMetadata bu
             } else {
               result.tensorMetadata_ = tensorMetadataBuilder_.build();
             }
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.data.experimental.Snapshot.SnapshotTensorMetadata result) {
    +        int from_bitField0_ = bitField0_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.data.experimental.Snapshot.SnapshotTensorMetadata) {
    @@ -3422,7 +3320,7 @@ public Builder mergeFrom(org.tensorflow.proto.data.experimental.Snapshot.Snapsho
                   tensorMetadata_ = other.tensorMetadata_;
                   bitField0_ = (bitField0_ & ~0x00000001);
                   tensorMetadataBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getTensorMetadataFieldBuilder() : null;
                 } else {
                   tensorMetadataBuilder_.addAllMessages(other.tensorMetadata_);
    @@ -3494,7 +3392,7 @@ private void ensureTensorMetadataIsMutable() {
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata, org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata.Builder, org.tensorflow.proto.data.experimental.Snapshot.TensorMetadataOrBuilder> tensorMetadataBuilder_;
     
           /**
    @@ -3710,11 +3608,11 @@ public org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata.Builder ad
                getTensorMetadataBuilderList() {
             return getTensorMetadataFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata, org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata.Builder, org.tensorflow.proto.data.experimental.Snapshot.TensorMetadataOrBuilder> 
               getTensorMetadataFieldBuilder() {
             if (tensorMetadataBuilder_ == null) {
    -          tensorMetadataBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          tensorMetadataBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata, org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata.Builder, org.tensorflow.proto.data.experimental.Snapshot.TensorMetadataOrBuilder>(
                       tensorMetadata_,
                       ((bitField0_ & 0x00000001) != 0),
    @@ -3724,18 +3622,6 @@ public org.tensorflow.proto.data.experimental.Snapshot.TensorMetadata.Builder ad
             }
             return tensorMetadataBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.data.experimental.SnapshotTensorMetadata)
         }
    @@ -3834,12 +3720,21 @@ public interface DistributedSnapshotMetadataOrBuilder extends
        * Protobuf type {@code tensorflow.data.experimental.DistributedSnapshotMetadata}
        */
       public static final class DistributedSnapshotMetadata extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.data.experimental.DistributedSnapshotMetadata)
           DistributedSnapshotMetadataOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        DistributedSnapshotMetadata.class.getName());
    +    }
         // Use DistributedSnapshotMetadata.newBuilder() to construct.
    -    private DistributedSnapshotMetadata(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private DistributedSnapshotMetadata(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private DistributedSnapshotMetadata() {
    @@ -3847,25 +3742,13 @@ private DistributedSnapshotMetadata() {
           compression_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new DistributedSnapshotMetadata();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.data.experimental.Snapshot.internal_static_tensorflow_data_experimental_DistributedSnapshotMetadata_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.data.experimental.Snapshot.internal_static_tensorflow_data_experimental_DistributedSnapshotMetadata_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -3873,7 +3756,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int ELEMENT_SPEC_FIELD_NUMBER = 1;
    -    private com.google.protobuf.ByteString elementSpec_;
    +    private com.google.protobuf.ByteString elementSpec_ = com.google.protobuf.ByteString.EMPTY;
         /**
          * 
          * The element spec of the snapshotted dataset.
    @@ -3888,7 +3771,8 @@ public com.google.protobuf.ByteString getElementSpec() {
         }
     
         public static final int COMPRESSION_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object compression_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object compression_ = "";
         /**
          * 
          * Whether and how to compress the snapshot.  Supported values are defined in
    @@ -3954,8 +3838,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (!elementSpec_.isEmpty()) {
             output.writeBytes(1, elementSpec_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(compression_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, compression_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(compression_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, compression_);
           }
           getUnknownFields().writeTo(output);
         }
    @@ -3970,8 +3854,8 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeBytesSize(1, elementSpec_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(compression_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, compression_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(compression_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, compression_);
           }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
    @@ -4046,39 +3930,41 @@ public static org.tensorflow.proto.data.experimental.Snapshot.DistributedSnapsho
         }
         public static org.tensorflow.proto.data.experimental.Snapshot.DistributedSnapshotMetadata parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.experimental.Snapshot.DistributedSnapshotMetadata parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.data.experimental.Snapshot.DistributedSnapshotMetadata parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.data.experimental.Snapshot.DistributedSnapshotMetadata parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.data.experimental.Snapshot.DistributedSnapshotMetadata parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.experimental.Snapshot.DistributedSnapshotMetadata parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -4098,7 +3984,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -4110,7 +3996,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.data.experimental.DistributedSnapshotMetadata}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.data.experimental.DistributedSnapshotMetadata)
             org.tensorflow.proto.data.experimental.Snapshot.DistributedSnapshotMetadataOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -4119,7 +4005,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.data.experimental.Snapshot.internal_static_tensorflow_data_experimental_DistributedSnapshotMetadata_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -4132,17 +4018,16 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             elementSpec_ = com.google.protobuf.ByteString.EMPTY;
    -
             compression_ = "";
    -
             return this;
           }
     
    @@ -4169,44 +4054,21 @@ public org.tensorflow.proto.data.experimental.Snapshot.DistributedSnapshotMetada
           @java.lang.Override
           public org.tensorflow.proto.data.experimental.Snapshot.DistributedSnapshotMetadata buildPartial() {
             org.tensorflow.proto.data.experimental.Snapshot.DistributedSnapshotMetadata result = new org.tensorflow.proto.data.experimental.Snapshot.DistributedSnapshotMetadata(this);
    -        result.elementSpec_ = elementSpec_;
    -        result.compression_ = compression_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.data.experimental.Snapshot.DistributedSnapshotMetadata result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.elementSpec_ = elementSpec_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.compression_ = compression_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.data.experimental.Snapshot.DistributedSnapshotMetadata) {
    @@ -4224,6 +4086,7 @@ public Builder mergeFrom(org.tensorflow.proto.data.experimental.Snapshot.Distrib
             }
             if (!other.getCompression().isEmpty()) {
               compression_ = other.compression_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             this.mergeUnknownFields(other.getUnknownFields());
    @@ -4254,12 +4117,12 @@ public Builder mergeFrom(
                     break;
                   case 10: {
                     elementSpec_ = input.readBytes();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 10
                   case 18: {
                     compression_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   default: {
    @@ -4277,6 +4140,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private com.google.protobuf.ByteString elementSpec_ = com.google.protobuf.ByteString.EMPTY;
           /**
    @@ -4301,11 +4165,9 @@ public com.google.protobuf.ByteString getElementSpec() {
            * @return This builder for chaining.
            */
           public Builder setElementSpec(com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             elementSpec_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -4318,7 +4180,7 @@ public Builder setElementSpec(com.google.protobuf.ByteString value) {
            * @return This builder for chaining.
            */
           public Builder clearElementSpec() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             elementSpec_ = getDefaultInstance().getElementSpec();
             onChanged();
             return this;
    @@ -4383,11 +4245,9 @@ public java.lang.String getCompression() {
            */
           public Builder setCompression(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             compression_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -4402,8 +4262,8 @@ public Builder setCompression(
            * @return This builder for chaining.
            */
           public Builder clearCompression() {
    -        
             compression_ = getDefaultInstance().getCompression();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -4420,27 +4280,13 @@ public Builder clearCompression() {
            */
           public Builder setCompressionBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             compression_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.data.experimental.DistributedSnapshotMetadata)
         }
    @@ -4496,27 +4342,27 @@ public org.tensorflow.proto.data.experimental.Snapshot.DistributedSnapshotMetada
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_data_experimental_SnapshotRecord_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_data_experimental_SnapshotRecord_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_data_experimental_SnapshotMetadataRecord_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_data_experimental_SnapshotMetadataRecord_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_data_experimental_TensorMetadata_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_data_experimental_TensorMetadata_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_data_experimental_SnapshotTensorMetadata_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_data_experimental_SnapshotTensorMetadata_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_data_experimental_DistributedSnapshotMetadata_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_data_experimental_DistributedSnapshotMetadata_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -4560,33 +4406,34 @@ public org.tensorflow.proto.data.experimental.Snapshot.DistributedSnapshotMetada
         internal_static_tensorflow_data_experimental_SnapshotRecord_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_data_experimental_SnapshotRecord_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_data_experimental_SnapshotRecord_descriptor,
             new java.lang.String[] { "Tensor", });
         internal_static_tensorflow_data_experimental_SnapshotMetadataRecord_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_data_experimental_SnapshotMetadataRecord_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_data_experimental_SnapshotMetadataRecord_descriptor,
             new java.lang.String[] { "GraphHash", "RunId", "CreationTimestamp", "Version", "Dtype", "NumElements", "Finalized", });
         internal_static_tensorflow_data_experimental_TensorMetadata_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_data_experimental_TensorMetadata_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_data_experimental_TensorMetadata_descriptor,
             new java.lang.String[] { "TensorShape", "TensorSizeBytes", });
         internal_static_tensorflow_data_experimental_SnapshotTensorMetadata_descriptor =
           getDescriptor().getMessageTypes().get(3);
         internal_static_tensorflow_data_experimental_SnapshotTensorMetadata_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_data_experimental_SnapshotTensorMetadata_descriptor,
             new java.lang.String[] { "TensorMetadata", });
         internal_static_tensorflow_data_experimental_DistributedSnapshotMetadata_descriptor =
           getDescriptor().getMessageTypes().get(4);
         internal_static_tensorflow_data_experimental_DistributedSnapshotMetadata_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_data_experimental_DistributedSnapshotMetadata_descriptor,
             new java.lang.String[] { "ElementSpec", "Compression", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.TensorProtos.getDescriptor();
         org.tensorflow.proto.TensorShapeProtos.getDescriptor();
         org.tensorflow.proto.TypesProtos.getDescriptor();
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/model/Model.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/model/Model.java
    index e89b1024d4c..871c4585112 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/model/Model.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/data/model/Model.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/framework/model.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto.data.model;
     
     public final class Model {
       private Model() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      Model.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -54,6 +65,15 @@ public enum NodeClass
         UNRECOGNIZED(-1),
         ;
     
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        NodeClass.class.getName());
    +    }
         /**
          * UNKNOWN = 0;
          */
    @@ -203,6 +223,15 @@ public enum AutotuneAlgorithm
         UNRECOGNIZED(-1),
         ;
     
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        AutotuneAlgorithm.class.getName());
    +    }
         /**
          * DEFAULT = 0;
          */
    @@ -373,7 +402,6 @@ boolean containsNodes(
          *
          * map<int64, .tensorflow.data.model.ModelProto.Node> nodes = 1;
          */
    -
         /* nullable */
     org.tensorflow.proto.data.model.Model.ModelProto.Node getNodesOrDefault(
             long key,
    @@ -386,7 +414,6 @@ org.tensorflow.proto.data.model.Model.ModelProto.Node getNodesOrDefault(
          *
          * map<int64, .tensorflow.data.model.ModelProto.Node> nodes = 1;
          */
    -
         org.tensorflow.proto.data.model.Model.ModelProto.Node getNodesOrThrow(
             long key);
     
    @@ -451,12 +478,21 @@ org.tensorflow.proto.data.model.Model.ModelProto.Node getNodesOrThrow(
        * Protobuf type {@code tensorflow.data.model.ModelProto}
        */
       public static final class ModelProto extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.data.model.ModelProto)
           ModelProtoOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        ModelProto.class.getName());
    +    }
         // Use ModelProto.newBuilder() to construct.
    -    private ModelProto(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private ModelProto(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private ModelProto() {
    @@ -464,18 +500,6 @@ private ModelProto() {
           gapTimes_ = emptyLongList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new ModelProto();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.data.model.Model.internal_static_tensorflow_data_model_ModelProto_descriptor;
    @@ -483,7 +507,7 @@ protected java.lang.Object newInstance(
     
         @SuppressWarnings({"rawtypes"})
         @java.lang.Override
    -    protected com.google.protobuf.MapField internalGetMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
             int number) {
           switch (number) {
             case 1:
    @@ -494,7 +518,7 @@ protected com.google.protobuf.MapField internalGetMapField(
           }
         }
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.data.model.Model.internal_static_tensorflow_data_model_ModelProto_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -754,12 +778,21 @@ org.tensorflow.proto.data.model.Model.ModelProto.Node.ParameterOrBuilder getPara
          * Protobuf type {@code tensorflow.data.model.ModelProto.Node}
          */
         public static final class Node extends
    -        com.google.protobuf.GeneratedMessageV3 implements
    +        com.google.protobuf.GeneratedMessage implements
             // @@protoc_insertion_point(message_implements:tensorflow.data.model.ModelProto.Node)
             NodeOrBuilder {
         private static final long serialVersionUID = 0L;
    +      static {
    +        com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +          com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +          /* major= */ 4,
    +          /* minor= */ 28,
    +          /* patch= */ 3,
    +          /* suffix= */ "",
    +          Node.class.getName());
    +      }
           // Use Node.newBuilder() to construct.
    -      private Node(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +      private Node(com.google.protobuf.GeneratedMessage.Builder builder) {
             super(builder);
           }
           private Node() {
    @@ -769,25 +802,13 @@ private Node() {
             nodeClass_ = 0;
           }
     
    -      @java.lang.Override
    -      @SuppressWarnings({"unused"})
    -      protected java.lang.Object newInstance(
    -          UnusedPrivateParameter unused) {
    -        return new Node();
    -      }
    -
    -      @java.lang.Override
    -      public final com.google.protobuf.UnknownFieldSet
    -      getUnknownFields() {
    -        return this.unknownFields;
    -      }
           public static final com.google.protobuf.Descriptors.Descriptor
               getDescriptor() {
             return org.tensorflow.proto.data.model.Model.internal_static_tensorflow_data_model_ModelProto_Node_descriptor;
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.data.model.Model.internal_static_tensorflow_data_model_ModelProto_Node_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -877,37 +898,34 @@ public interface ParameterOrBuilder extends
            * Protobuf type {@code tensorflow.data.model.ModelProto.Node.Parameter}
            */
           public static final class Parameter extends
    -          com.google.protobuf.GeneratedMessageV3 implements
    +          com.google.protobuf.GeneratedMessage implements
               // @@protoc_insertion_point(message_implements:tensorflow.data.model.ModelProto.Node.Parameter)
               ParameterOrBuilder {
           private static final long serialVersionUID = 0L;
    +        static {
    +          com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +            com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +            /* major= */ 4,
    +            /* minor= */ 28,
    +            /* patch= */ 3,
    +            /* suffix= */ "",
    +            Parameter.class.getName());
    +        }
             // Use Parameter.newBuilder() to construct.
    -        private Parameter(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +        private Parameter(com.google.protobuf.GeneratedMessage.Builder builder) {
               super(builder);
             }
             private Parameter() {
               name_ = "";
             }
     
    -        @java.lang.Override
    -        @SuppressWarnings({"unused"})
    -        protected java.lang.Object newInstance(
    -            UnusedPrivateParameter unused) {
    -          return new Parameter();
    -        }
    -
    -        @java.lang.Override
    -        public final com.google.protobuf.UnknownFieldSet
    -        getUnknownFields() {
    -          return this.unknownFields;
    -        }
             public static final com.google.protobuf.Descriptors.Descriptor
                 getDescriptor() {
               return org.tensorflow.proto.data.model.Model.internal_static_tensorflow_data_model_ModelProto_Node_Parameter_descriptor;
             }
     
             @java.lang.Override
    -        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
                 internalGetFieldAccessorTable() {
               return org.tensorflow.proto.data.model.Model.internal_static_tensorflow_data_model_ModelProto_Node_Parameter_fieldAccessorTable
                   .ensureFieldAccessorsInitialized(
    @@ -915,7 +933,8 @@ protected java.lang.Object newInstance(
             }
     
             public static final int NAME_FIELD_NUMBER = 1;
    -        private volatile java.lang.Object name_;
    +        @SuppressWarnings("serial")
    +        private volatile java.lang.Object name_ = "";
             /**
              * 
              * Human-readable name of the parameter.
    @@ -961,7 +980,7 @@ public java.lang.String getName() {
             }
     
             public static final int VALUE_FIELD_NUMBER = 2;
    -        private double value_;
    +        private double value_ = 0D;
             /**
              * 
              * Identifies the model value of the parameter. This can be different from
    @@ -977,7 +996,7 @@ public double getValue() {
             }
     
             public static final int STATE_VALUE_FIELD_NUMBER = 3;
    -        private double stateValue_;
    +        private double stateValue_ = 0D;
             /**
              * 
              * The actual value of the parameter.
    @@ -992,7 +1011,7 @@ public double getStateValue() {
             }
     
             public static final int MIN_FIELD_NUMBER = 4;
    -        private double min_;
    +        private double min_ = 0D;
             /**
              * 
              * Minimum value of the parameter.
    @@ -1007,7 +1026,7 @@ public double getMin() {
             }
     
             public static final int MAX_FIELD_NUMBER = 5;
    -        private double max_;
    +        private double max_ = 0D;
             /**
              * 
              * Maximum value of the parameter.
    @@ -1022,7 +1041,7 @@ public double getMax() {
             }
     
             public static final int TUNABLE_FIELD_NUMBER = 6;
    -        private boolean tunable_;
    +        private boolean tunable_ = false;
             /**
              * 
              * Identifies whether the parameter should participate in autotuning.
    @@ -1050,8 +1069,8 @@ public final boolean isInitialized() {
             @java.lang.Override
             public void writeTo(com.google.protobuf.CodedOutputStream output)
                                 throws java.io.IOException {
    -          if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -            com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
    +          if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +            com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
               }
               if (java.lang.Double.doubleToRawLongBits(value_) != 0) {
                 output.writeDouble(2, value_);
    @@ -1077,8 +1096,8 @@ public int getSerializedSize() {
               if (size != -1) return size;
     
               size = 0;
    -          if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -            size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
    +          if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +            size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
               }
               if (java.lang.Double.doubleToRawLongBits(value_) != 0) {
                 size += com.google.protobuf.CodedOutputStream
    @@ -1198,39 +1217,41 @@ public static org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter pa
             }
             public static org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter parseFrom(java.io.InputStream input)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseWithIOException(PARSER, input);
             }
             public static org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter parseFrom(
                 java.io.InputStream input,
                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseWithIOException(PARSER, input, extensionRegistry);
             }
    +
             public static org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter parseDelimitedFrom(java.io.InputStream input)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseDelimitedWithIOException(PARSER, input);
             }
    +
             public static org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter parseDelimitedFrom(
                 java.io.InputStream input,
                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
             }
             public static org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter parseFrom(
                 com.google.protobuf.CodedInputStream input)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseWithIOException(PARSER, input);
             }
             public static org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter parseFrom(
                 com.google.protobuf.CodedInputStream input,
                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                 throws java.io.IOException {
    -          return com.google.protobuf.GeneratedMessageV3
    +          return com.google.protobuf.GeneratedMessage
                   .parseWithIOException(PARSER, input, extensionRegistry);
             }
     
    @@ -1250,7 +1271,7 @@ public Builder toBuilder() {
     
             @java.lang.Override
             protected Builder newBuilderForType(
    -            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
               Builder builder = new Builder(parent);
               return builder;
             }
    @@ -1262,7 +1283,7 @@ protected Builder newBuilderForType(
              * Protobuf type {@code tensorflow.data.model.ModelProto.Node.Parameter}
              */
             public static final class Builder extends
    -            com.google.protobuf.GeneratedMessageV3.Builder implements
    +            com.google.protobuf.GeneratedMessage.Builder implements
                 // @@protoc_insertion_point(builder_implements:tensorflow.data.model.ModelProto.Node.Parameter)
                 org.tensorflow.proto.data.model.Model.ModelProto.Node.ParameterOrBuilder {
               public static final com.google.protobuf.Descriptors.Descriptor
    @@ -1271,7 +1292,7 @@ public static final class Builder extends
               }
     
               @java.lang.Override
    -          protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +          protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
                   internalGetFieldAccessorTable() {
                 return org.tensorflow.proto.data.model.Model.internal_static_tensorflow_data_model_ModelProto_Node_Parameter_fieldAccessorTable
                     .ensureFieldAccessorsInitialized(
    @@ -1284,25 +1305,20 @@ private Builder() {
               }
     
               private Builder(
    -              com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +              com.google.protobuf.GeneratedMessage.BuilderParent parent) {
                 super(parent);
     
               }
               @java.lang.Override
               public Builder clear() {
                 super.clear();
    +            bitField0_ = 0;
                 name_ = "";
    -
                 value_ = 0D;
    -
                 stateValue_ = 0D;
    -
                 min_ = 0D;
    -
                 max_ = 0D;
    -
                 tunable_ = false;
    -
                 return this;
               }
     
    @@ -1329,48 +1345,33 @@ public org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter build() {
               @java.lang.Override
               public org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter buildPartial() {
                 org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter result = new org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter(this);
    -            result.name_ = name_;
    -            result.value_ = value_;
    -            result.stateValue_ = stateValue_;
    -            result.min_ = min_;
    -            result.max_ = max_;
    -            result.tunable_ = tunable_;
    +            if (bitField0_ != 0) { buildPartial0(result); }
                 onBuilt();
                 return result;
               }
     
    -          @java.lang.Override
    -          public Builder clone() {
    -            return super.clone();
    -          }
    -          @java.lang.Override
    -          public Builder setField(
    -              com.google.protobuf.Descriptors.FieldDescriptor field,
    -              java.lang.Object value) {
    -            return super.setField(field, value);
    -          }
    -          @java.lang.Override
    -          public Builder clearField(
    -              com.google.protobuf.Descriptors.FieldDescriptor field) {
    -            return super.clearField(field);
    -          }
    -          @java.lang.Override
    -          public Builder clearOneof(
    -              com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -            return super.clearOneof(oneof);
    -          }
    -          @java.lang.Override
    -          public Builder setRepeatedField(
    -              com.google.protobuf.Descriptors.FieldDescriptor field,
    -              int index, java.lang.Object value) {
    -            return super.setRepeatedField(field, index, value);
    -          }
    -          @java.lang.Override
    -          public Builder addRepeatedField(
    -              com.google.protobuf.Descriptors.FieldDescriptor field,
    -              java.lang.Object value) {
    -            return super.addRepeatedField(field, value);
    +          private void buildPartial0(org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter result) {
    +            int from_bitField0_ = bitField0_;
    +            if (((from_bitField0_ & 0x00000001) != 0)) {
    +              result.name_ = name_;
    +            }
    +            if (((from_bitField0_ & 0x00000002) != 0)) {
    +              result.value_ = value_;
    +            }
    +            if (((from_bitField0_ & 0x00000004) != 0)) {
    +              result.stateValue_ = stateValue_;
    +            }
    +            if (((from_bitField0_ & 0x00000008) != 0)) {
    +              result.min_ = min_;
    +            }
    +            if (((from_bitField0_ & 0x00000010) != 0)) {
    +              result.max_ = max_;
    +            }
    +            if (((from_bitField0_ & 0x00000020) != 0)) {
    +              result.tunable_ = tunable_;
    +            }
               }
    +
               @java.lang.Override
               public Builder mergeFrom(com.google.protobuf.Message other) {
                 if (other instanceof org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter) {
    @@ -1385,6 +1386,7 @@ public Builder mergeFrom(org.tensorflow.proto.data.model.Model.ModelProto.Node.P
                 if (other == org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter.getDefaultInstance()) return this;
                 if (!other.getName().isEmpty()) {
                   name_ = other.name_;
    +              bitField0_ |= 0x00000001;
                   onChanged();
                 }
                 if (other.getValue() != 0D) {
    @@ -1430,32 +1432,32 @@ public Builder mergeFrom(
                         break;
                       case 10: {
                         name_ = input.readStringRequireUtf8();
    -
    +                    bitField0_ |= 0x00000001;
                         break;
                       } // case 10
                       case 17: {
                         value_ = input.readDouble();
    -
    +                    bitField0_ |= 0x00000002;
                         break;
                       } // case 17
                       case 25: {
                         stateValue_ = input.readDouble();
    -
    +                    bitField0_ |= 0x00000004;
                         break;
                       } // case 25
                       case 33: {
                         min_ = input.readDouble();
    -
    +                    bitField0_ |= 0x00000008;
                         break;
                       } // case 33
                       case 41: {
                         max_ = input.readDouble();
    -
    +                    bitField0_ |= 0x00000010;
                         break;
                       } // case 41
                       case 48: {
                         tunable_ = input.readBool();
    -
    +                    bitField0_ |= 0x00000020;
                         break;
                       } // case 48
                       default: {
    @@ -1473,6 +1475,7 @@ public Builder mergeFrom(
                 } // finally
                 return this;
               }
    +          private int bitField0_;
     
               private java.lang.Object name_ = "";
               /**
    @@ -1527,11 +1530,9 @@ public java.lang.String getName() {
                */
               public Builder setName(
                   java.lang.String value) {
    -            if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +            if (value == null) { throw new NullPointerException(); }
                 name_ = value;
    +            bitField0_ |= 0x00000001;
                 onChanged();
                 return this;
               }
    @@ -1544,8 +1545,8 @@ public Builder setName(
                * @return This builder for chaining.
                */
               public Builder clearName() {
    -            
                 name_ = getDefaultInstance().getName();
    +            bitField0_ = (bitField0_ & ~0x00000001);
                 onChanged();
                 return this;
               }
    @@ -1560,12 +1561,10 @@ public Builder clearName() {
                */
               public Builder setNameBytes(
                   com.google.protobuf.ByteString value) {
    -            if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -            
    +            if (value == null) { throw new NullPointerException(); }
    +            checkByteStringIsUtf8(value);
                 name_ = value;
    +            bitField0_ |= 0x00000001;
                 onChanged();
                 return this;
               }
    @@ -1595,8 +1594,9 @@ public double getValue() {
                * @return This builder for chaining.
                */
               public Builder setValue(double value) {
    -            
    +
                 value_ = value;
    +            bitField0_ |= 0x00000002;
                 onChanged();
                 return this;
               }
    @@ -1610,7 +1610,7 @@ public Builder setValue(double value) {
                * @return This builder for chaining.
                */
               public Builder clearValue() {
    -            
    +            bitField0_ = (bitField0_ & ~0x00000002);
                 value_ = 0D;
                 onChanged();
                 return this;
    @@ -1639,8 +1639,9 @@ public double getStateValue() {
                * @return This builder for chaining.
                */
               public Builder setStateValue(double value) {
    -            
    +
                 stateValue_ = value;
    +            bitField0_ |= 0x00000004;
                 onChanged();
                 return this;
               }
    @@ -1653,7 +1654,7 @@ public Builder setStateValue(double value) {
                * @return This builder for chaining.
                */
               public Builder clearStateValue() {
    -            
    +            bitField0_ = (bitField0_ & ~0x00000004);
                 stateValue_ = 0D;
                 onChanged();
                 return this;
    @@ -1682,8 +1683,9 @@ public double getMin() {
                * @return This builder for chaining.
                */
               public Builder setMin(double value) {
    -            
    +
                 min_ = value;
    +            bitField0_ |= 0x00000008;
                 onChanged();
                 return this;
               }
    @@ -1696,7 +1698,7 @@ public Builder setMin(double value) {
                * @return This builder for chaining.
                */
               public Builder clearMin() {
    -            
    +            bitField0_ = (bitField0_ & ~0x00000008);
                 min_ = 0D;
                 onChanged();
                 return this;
    @@ -1725,8 +1727,9 @@ public double getMax() {
                * @return This builder for chaining.
                */
               public Builder setMax(double value) {
    -            
    +
                 max_ = value;
    +            bitField0_ |= 0x00000010;
                 onChanged();
                 return this;
               }
    @@ -1739,7 +1742,7 @@ public Builder setMax(double value) {
                * @return This builder for chaining.
                */
               public Builder clearMax() {
    -            
    +            bitField0_ = (bitField0_ & ~0x00000010);
                 max_ = 0D;
                 onChanged();
                 return this;
    @@ -1768,8 +1771,9 @@ public boolean getTunable() {
                * @return This builder for chaining.
                */
               public Builder setTunable(boolean value) {
    -            
    +
                 tunable_ = value;
    +            bitField0_ |= 0x00000020;
                 onChanged();
                 return this;
               }
    @@ -1782,23 +1786,11 @@ public Builder setTunable(boolean value) {
                * @return This builder for chaining.
                */
               public Builder clearTunable() {
    -            
    +            bitField0_ = (bitField0_ & ~0x00000020);
                 tunable_ = false;
                 onChanged();
                 return this;
               }
    -          @java.lang.Override
    -          public final Builder setUnknownFields(
    -              final com.google.protobuf.UnknownFieldSet unknownFields) {
    -            return super.setUnknownFields(unknownFields);
    -          }
    -
    -          @java.lang.Override
    -          public final Builder mergeUnknownFields(
    -              final com.google.protobuf.UnknownFieldSet unknownFields) {
    -            return super.mergeUnknownFields(unknownFields);
    -          }
    -
     
               // @@protoc_insertion_point(builder_scope:tensorflow.data.model.ModelProto.Node.Parameter)
             }
    @@ -1852,7 +1844,7 @@ public org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter getDefaul
           }
     
           public static final int ID_FIELD_NUMBER = 1;
    -      private long id_;
    +      private long id_ = 0L;
           /**
            * 
            * Unique node ID.
    @@ -1867,7 +1859,8 @@ public long getId() {
           }
     
           public static final int NAME_FIELD_NUMBER = 2;
    -      private volatile java.lang.Object name_;
    +      @SuppressWarnings("serial")
    +      private volatile java.lang.Object name_ = "";
           /**
            * 
            * Human-readable name of the node.
    @@ -1913,7 +1906,7 @@ public java.lang.String getName() {
           }
     
           public static final int AUTOTUNE_FIELD_NUMBER = 3;
    -      private boolean autotune_;
    +      private boolean autotune_ = false;
           /**
            * 
            * An indication whether autotuning is enabled for this node.
    @@ -1928,7 +1921,7 @@ public boolean getAutotune() {
           }
     
           public static final int BUFFERED_BYTES_FIELD_NUMBER = 4;
    -      private long bufferedBytes_;
    +      private long bufferedBytes_ = 0L;
           /**
            * 
            * The number of bytes stored in this node's buffer.
    @@ -1943,7 +1936,7 @@ public long getBufferedBytes() {
           }
     
           public static final int BUFFERED_ELEMENTS_FIELD_NUMBER = 5;
    -      private long bufferedElements_;
    +      private long bufferedElements_ = 0L;
           /**
            * 
            * The number of elements stored in this node's buffer.
    @@ -1958,7 +1951,7 @@ public long getBufferedElements() {
           }
     
           public static final int BYTES_CONSUMED_FIELD_NUMBER = 6;
    -      private long bytesConsumed_;
    +      private long bytesConsumed_ = 0L;
           /**
            * 
            * The number of bytes consumed by the node.
    @@ -1973,7 +1966,7 @@ public long getBytesConsumed() {
           }
     
           public static final int BYTES_PRODUCED_FIELD_NUMBER = 7;
    -      private long bytesProduced_;
    +      private long bytesProduced_ = 0L;
           /**
            * 
            * The number of bytes produced by the node.
    @@ -1988,7 +1981,7 @@ public long getBytesProduced() {
           }
     
           public static final int NUM_ELEMENTS_FIELD_NUMBER = 8;
    -      private long numElements_;
    +      private long numElements_ = 0L;
           /**
            * 
            * The number of elements produced by the node.
    @@ -2003,7 +1996,7 @@ public long getNumElements() {
           }
     
           public static final int PROCESSING_TIME_FIELD_NUMBER = 9;
    -      private long processingTime_;
    +      private long processingTime_ = 0L;
           /**
            * 
            * The aggregate processing time spent in this node in nanoseconds.
    @@ -2018,7 +2011,7 @@ public long getProcessingTime() {
           }
     
           public static final int RECORD_METRICS_FIELD_NUMBER = 10;
    -      private boolean recordMetrics_;
    +      private boolean recordMetrics_ = false;
           /**
            * 
            * An indication whether this node records metrics about produced and
    @@ -2034,6 +2027,7 @@ public boolean getRecordMetrics() {
           }
     
           public static final int PARAMETERS_FIELD_NUMBER = 11;
    +      @SuppressWarnings("serial")
           private java.util.List parameters_;
           /**
            * 
    @@ -2094,7 +2088,7 @@ public org.tensorflow.proto.data.model.Model.ModelProto.Node.ParameterOrBuilder
           }
     
           public static final int INPUT_PROCESSING_TIME_SUM_FIELD_NUMBER = 12;
    -      private double inputProcessingTimeSum_;
    +      private double inputProcessingTimeSum_ = 0D;
           /**
            * 
            * Statistic of inputs processing time history.
    @@ -2109,7 +2103,7 @@ public double getInputProcessingTimeSum() {
           }
     
           public static final int INPUT_PROCESSING_TIME_COUNT_FIELD_NUMBER = 13;
    -      private long inputProcessingTimeCount_;
    +      private long inputProcessingTimeCount_ = 0L;
           /**
            * int64 input_processing_time_count = 13;
            * @return The inputProcessingTimeCount.
    @@ -2120,7 +2114,9 @@ public long getInputProcessingTimeCount() {
           }
     
           public static final int INPUTS_FIELD_NUMBER = 14;
    -      private com.google.protobuf.Internal.LongList inputs_;
    +      @SuppressWarnings("serial")
    +      private com.google.protobuf.Internal.LongList inputs_ =
    +          emptyLongList();
           /**
            * 
            * IDs of inputs of this node.
    @@ -2160,7 +2156,7 @@ public long getInputs(int index) {
           private int inputsMemoizedSerializedSize = -1;
     
           public static final int NODE_CLASS_FIELD_NUMBER = 15;
    -      private int nodeClass_;
    +      private int nodeClass_ = 0;
           /**
            * 
            * Class of this node.
    @@ -2181,13 +2177,12 @@ public long getInputs(int index) {
            * @return The nodeClass.
            */
           @java.lang.Override public org.tensorflow.proto.data.model.Model.NodeClass getNodeClass() {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.data.model.Model.NodeClass result = org.tensorflow.proto.data.model.Model.NodeClass.valueOf(nodeClass_);
    +        org.tensorflow.proto.data.model.Model.NodeClass result = org.tensorflow.proto.data.model.Model.NodeClass.forNumber(nodeClass_);
             return result == null ? org.tensorflow.proto.data.model.Model.NodeClass.UNRECOGNIZED : result;
           }
     
           public static final int RATIO_FIELD_NUMBER = 16;
    -      private double ratio_;
    +      private double ratio_ = 0D;
           /**
            * 
            * Ratio of input to output elements. This is only used by KNOWN_RATIO and
    @@ -2203,7 +2198,7 @@ public double getRatio() {
           }
     
           public static final int MEMORY_RATIO_FIELD_NUMBER = 17;
    -      private double memoryRatio_;
    +      private double memoryRatio_ = 0D;
           /**
            * 
            * Ratio identifies how many parallelism calls are introduced by one
    @@ -2236,8 +2231,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
             if (id_ != 0L) {
               output.writeInt64(1, id_);
             }
    -        if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -          com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
    +        if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +          com.google.protobuf.GeneratedMessage.writeString(output, 2, name_);
             }
             if (autotune_ != false) {
               output.writeBool(3, autotune_);
    @@ -2301,8 +2296,8 @@ public int getSerializedSize() {
               size += com.google.protobuf.CodedOutputStream
                 .computeInt64Size(1, id_);
             }
    -        if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
    +        if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +          size += com.google.protobuf.GeneratedMessage.computeStringSize(2, name_);
             }
             if (autotune_ != false) {
               size += com.google.protobuf.CodedOutputStream
    @@ -2526,39 +2521,41 @@ public static org.tensorflow.proto.data.model.Model.ModelProto.Node parseFrom(
           }
           public static org.tensorflow.proto.data.model.Model.ModelProto.Node parseFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.data.model.Model.ModelProto.Node parseFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
    +
           public static org.tensorflow.proto.data.model.Model.ModelProto.Node parseDelimitedFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input);
           }
    +
           public static org.tensorflow.proto.data.model.Model.ModelProto.Node parseDelimitedFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
           }
           public static org.tensorflow.proto.data.model.Model.ModelProto.Node parseFrom(
               com.google.protobuf.CodedInputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.data.model.Model.ModelProto.Node parseFrom(
               com.google.protobuf.CodedInputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
     
    @@ -2578,7 +2575,7 @@ public Builder toBuilder() {
     
           @java.lang.Override
           protected Builder newBuilderForType(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             Builder builder = new Builder(parent);
             return builder;
           }
    @@ -2590,7 +2587,7 @@ protected Builder newBuilderForType(
            * Protobuf type {@code tensorflow.data.model.ModelProto.Node}
            */
           public static final class Builder extends
    -          com.google.protobuf.GeneratedMessageV3.Builder implements
    +          com.google.protobuf.GeneratedMessage.Builder implements
               // @@protoc_insertion_point(builder_implements:tensorflow.data.model.ModelProto.Node)
               org.tensorflow.proto.data.model.Model.ModelProto.NodeOrBuilder {
             public static final com.google.protobuf.Descriptors.Descriptor
    @@ -2599,7 +2596,7 @@ public static final class Builder extends
             }
     
             @java.lang.Override
    -        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
                 internalGetFieldAccessorTable() {
               return org.tensorflow.proto.data.model.Model.internal_static_tensorflow_data_model_ModelProto_Node_fieldAccessorTable
                   .ensureFieldAccessorsInitialized(
    @@ -2612,52 +2609,37 @@ private Builder() {
             }
     
             private Builder(
    -            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
               super(parent);
     
             }
             @java.lang.Override
             public Builder clear() {
               super.clear();
    +          bitField0_ = 0;
               id_ = 0L;
    -
               name_ = "";
    -
               autotune_ = false;
    -
               bufferedBytes_ = 0L;
    -
               bufferedElements_ = 0L;
    -
               bytesConsumed_ = 0L;
    -
               bytesProduced_ = 0L;
    -
               numElements_ = 0L;
    -
               processingTime_ = 0L;
    -
               recordMetrics_ = false;
    -
               if (parametersBuilder_ == null) {
                 parameters_ = java.util.Collections.emptyList();
               } else {
                 parameters_ = null;
                 parametersBuilder_.clear();
               }
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000400);
               inputProcessingTimeSum_ = 0D;
    -
               inputProcessingTimeCount_ = 0L;
    -
               inputs_ = emptyLongList();
    -          bitField0_ = (bitField0_ & ~0x00000002);
               nodeClass_ = 0;
    -
               ratio_ = 0D;
    -
               memoryRatio_ = 0D;
    -
               return this;
             }
     
    @@ -2684,72 +2666,77 @@ public org.tensorflow.proto.data.model.Model.ModelProto.Node build() {
             @java.lang.Override
             public org.tensorflow.proto.data.model.Model.ModelProto.Node buildPartial() {
               org.tensorflow.proto.data.model.Model.ModelProto.Node result = new org.tensorflow.proto.data.model.Model.ModelProto.Node(this);
    -          int from_bitField0_ = bitField0_;
    -          result.id_ = id_;
    -          result.name_ = name_;
    -          result.autotune_ = autotune_;
    -          result.bufferedBytes_ = bufferedBytes_;
    -          result.bufferedElements_ = bufferedElements_;
    -          result.bytesConsumed_ = bytesConsumed_;
    -          result.bytesProduced_ = bytesProduced_;
    -          result.numElements_ = numElements_;
    -          result.processingTime_ = processingTime_;
    -          result.recordMetrics_ = recordMetrics_;
    +          buildPartialRepeatedFields(result);
    +          if (bitField0_ != 0) { buildPartial0(result); }
    +          onBuilt();
    +          return result;
    +        }
    +
    +        private void buildPartialRepeatedFields(org.tensorflow.proto.data.model.Model.ModelProto.Node result) {
               if (parametersBuilder_ == null) {
    -            if (((bitField0_ & 0x00000001) != 0)) {
    +            if (((bitField0_ & 0x00000400) != 0)) {
                   parameters_ = java.util.Collections.unmodifiableList(parameters_);
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000400);
                 }
                 result.parameters_ = parameters_;
               } else {
                 result.parameters_ = parametersBuilder_.build();
               }
    -          result.inputProcessingTimeSum_ = inputProcessingTimeSum_;
    -          result.inputProcessingTimeCount_ = inputProcessingTimeCount_;
    -          if (((bitField0_ & 0x00000002) != 0)) {
    +        }
    +
    +        private void buildPartial0(org.tensorflow.proto.data.model.Model.ModelProto.Node result) {
    +          int from_bitField0_ = bitField0_;
    +          if (((from_bitField0_ & 0x00000001) != 0)) {
    +            result.id_ = id_;
    +          }
    +          if (((from_bitField0_ & 0x00000002) != 0)) {
    +            result.name_ = name_;
    +          }
    +          if (((from_bitField0_ & 0x00000004) != 0)) {
    +            result.autotune_ = autotune_;
    +          }
    +          if (((from_bitField0_ & 0x00000008) != 0)) {
    +            result.bufferedBytes_ = bufferedBytes_;
    +          }
    +          if (((from_bitField0_ & 0x00000010) != 0)) {
    +            result.bufferedElements_ = bufferedElements_;
    +          }
    +          if (((from_bitField0_ & 0x00000020) != 0)) {
    +            result.bytesConsumed_ = bytesConsumed_;
    +          }
    +          if (((from_bitField0_ & 0x00000040) != 0)) {
    +            result.bytesProduced_ = bytesProduced_;
    +          }
    +          if (((from_bitField0_ & 0x00000080) != 0)) {
    +            result.numElements_ = numElements_;
    +          }
    +          if (((from_bitField0_ & 0x00000100) != 0)) {
    +            result.processingTime_ = processingTime_;
    +          }
    +          if (((from_bitField0_ & 0x00000200) != 0)) {
    +            result.recordMetrics_ = recordMetrics_;
    +          }
    +          if (((from_bitField0_ & 0x00000800) != 0)) {
    +            result.inputProcessingTimeSum_ = inputProcessingTimeSum_;
    +          }
    +          if (((from_bitField0_ & 0x00001000) != 0)) {
    +            result.inputProcessingTimeCount_ = inputProcessingTimeCount_;
    +          }
    +          if (((from_bitField0_ & 0x00002000) != 0)) {
                 inputs_.makeImmutable();
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            result.inputs_ = inputs_;
    +          }
    +          if (((from_bitField0_ & 0x00004000) != 0)) {
    +            result.nodeClass_ = nodeClass_;
    +          }
    +          if (((from_bitField0_ & 0x00008000) != 0)) {
    +            result.ratio_ = ratio_;
    +          }
    +          if (((from_bitField0_ & 0x00010000) != 0)) {
    +            result.memoryRatio_ = memoryRatio_;
               }
    -          result.inputs_ = inputs_;
    -          result.nodeClass_ = nodeClass_;
    -          result.ratio_ = ratio_;
    -          result.memoryRatio_ = memoryRatio_;
    -          onBuilt();
    -          return result;
             }
     
    -        @java.lang.Override
    -        public Builder clone() {
    -          return super.clone();
    -        }
    -        @java.lang.Override
    -        public Builder setField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.setField(field, value);
    -        }
    -        @java.lang.Override
    -        public Builder clearField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field) {
    -          return super.clearField(field);
    -        }
    -        @java.lang.Override
    -        public Builder clearOneof(
    -            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -          return super.clearOneof(oneof);
    -        }
    -        @java.lang.Override
    -        public Builder setRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            int index, java.lang.Object value) {
    -          return super.setRepeatedField(field, index, value);
    -        }
    -        @java.lang.Override
    -        public Builder addRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.addRepeatedField(field, value);
    -        }
             @java.lang.Override
             public Builder mergeFrom(com.google.protobuf.Message other) {
               if (other instanceof org.tensorflow.proto.data.model.Model.ModelProto.Node) {
    @@ -2767,6 +2754,7 @@ public Builder mergeFrom(org.tensorflow.proto.data.model.Model.ModelProto.Node o
               }
               if (!other.getName().isEmpty()) {
                 name_ = other.name_;
    +            bitField0_ |= 0x00000002;
                 onChanged();
               }
               if (other.getAutotune() != false) {
    @@ -2797,7 +2785,7 @@ public Builder mergeFrom(org.tensorflow.proto.data.model.Model.ModelProto.Node o
                 if (!other.parameters_.isEmpty()) {
                   if (parameters_.isEmpty()) {
                     parameters_ = other.parameters_;
    -                bitField0_ = (bitField0_ & ~0x00000001);
    +                bitField0_ = (bitField0_ & ~0x00000400);
                   } else {
                     ensureParametersIsMutable();
                     parameters_.addAll(other.parameters_);
    @@ -2810,9 +2798,9 @@ public Builder mergeFrom(org.tensorflow.proto.data.model.Model.ModelProto.Node o
                     parametersBuilder_.dispose();
                     parametersBuilder_ = null;
                     parameters_ = other.parameters_;
    -                bitField0_ = (bitField0_ & ~0x00000001);
    +                bitField0_ = (bitField0_ & ~0x00000400);
                     parametersBuilder_ = 
    -                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                  com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                          getParametersFieldBuilder() : null;
                   } else {
                     parametersBuilder_.addAllMessages(other.parameters_);
    @@ -2828,7 +2816,8 @@ public Builder mergeFrom(org.tensorflow.proto.data.model.Model.ModelProto.Node o
               if (!other.inputs_.isEmpty()) {
                 if (inputs_.isEmpty()) {
                   inputs_ = other.inputs_;
    -              bitField0_ = (bitField0_ & ~0x00000002);
    +              inputs_.makeImmutable();
    +              bitField0_ |= 0x00002000;
                 } else {
                   ensureInputsIsMutable();
                   inputs_.addAll(other.inputs_);
    @@ -2872,52 +2861,52 @@ public Builder mergeFrom(
                       break;
                     case 8: {
                       id_ = input.readInt64();
    -
    +                  bitField0_ |= 0x00000001;
                       break;
                     } // case 8
                     case 18: {
                       name_ = input.readStringRequireUtf8();
    -
    +                  bitField0_ |= 0x00000002;
                       break;
                     } // case 18
                     case 24: {
                       autotune_ = input.readBool();
    -
    +                  bitField0_ |= 0x00000004;
                       break;
                     } // case 24
                     case 32: {
                       bufferedBytes_ = input.readInt64();
    -
    +                  bitField0_ |= 0x00000008;
                       break;
                     } // case 32
                     case 40: {
                       bufferedElements_ = input.readInt64();
    -
    +                  bitField0_ |= 0x00000010;
                       break;
                     } // case 40
                     case 48: {
                       bytesConsumed_ = input.readInt64();
    -
    +                  bitField0_ |= 0x00000020;
                       break;
                     } // case 48
                     case 56: {
                       bytesProduced_ = input.readInt64();
    -
    +                  bitField0_ |= 0x00000040;
                       break;
                     } // case 56
                     case 64: {
                       numElements_ = input.readInt64();
    -
    +                  bitField0_ |= 0x00000080;
                       break;
                     } // case 64
                     case 72: {
                       processingTime_ = input.readInt64();
    -
    +                  bitField0_ |= 0x00000100;
                       break;
                     } // case 72
                     case 80: {
                       recordMetrics_ = input.readBool();
    -
    +                  bitField0_ |= 0x00000200;
                       break;
                     } // case 80
                     case 90: {
    @@ -2935,12 +2924,12 @@ public Builder mergeFrom(
                     } // case 90
                     case 97: {
                       inputProcessingTimeSum_ = input.readDouble();
    -
    +                  bitField0_ |= 0x00000800;
                       break;
                     } // case 97
                     case 104: {
                       inputProcessingTimeCount_ = input.readInt64();
    -
    +                  bitField0_ |= 0x00001000;
                       break;
                     } // case 104
                     case 112: {
    @@ -2961,17 +2950,17 @@ public Builder mergeFrom(
                     } // case 114
                     case 120: {
                       nodeClass_ = input.readEnum();
    -
    +                  bitField0_ |= 0x00004000;
                       break;
                     } // case 120
                     case 129: {
                       ratio_ = input.readDouble();
    -
    +                  bitField0_ |= 0x00008000;
                       break;
                     } // case 129
                     case 137: {
                       memoryRatio_ = input.readDouble();
    -
    +                  bitField0_ |= 0x00010000;
                       break;
                     } // case 137
                     default: {
    @@ -3014,8 +3003,9 @@ public long getId() {
              * @return This builder for chaining.
              */
             public Builder setId(long value) {
    -          
    +
               id_ = value;
    +          bitField0_ |= 0x00000001;
               onChanged();
               return this;
             }
    @@ -3028,7 +3018,7 @@ public Builder setId(long value) {
              * @return This builder for chaining.
              */
             public Builder clearId() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000001);
               id_ = 0L;
               onChanged();
               return this;
    @@ -3087,11 +3077,9 @@ public java.lang.String getName() {
              */
             public Builder setName(
                 java.lang.String value) {
    -          if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +          if (value == null) { throw new NullPointerException(); }
               name_ = value;
    +          bitField0_ |= 0x00000002;
               onChanged();
               return this;
             }
    @@ -3104,8 +3092,8 @@ public Builder setName(
              * @return This builder for chaining.
              */
             public Builder clearName() {
    -          
               name_ = getDefaultInstance().getName();
    +          bitField0_ = (bitField0_ & ~0x00000002);
               onChanged();
               return this;
             }
    @@ -3120,12 +3108,10 @@ public Builder clearName() {
              */
             public Builder setNameBytes(
                 com.google.protobuf.ByteString value) {
    -          if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -          
    +          if (value == null) { throw new NullPointerException(); }
    +          checkByteStringIsUtf8(value);
               name_ = value;
    +          bitField0_ |= 0x00000002;
               onChanged();
               return this;
             }
    @@ -3153,8 +3139,9 @@ public boolean getAutotune() {
              * @return This builder for chaining.
              */
             public Builder setAutotune(boolean value) {
    -          
    +
               autotune_ = value;
    +          bitField0_ |= 0x00000004;
               onChanged();
               return this;
             }
    @@ -3167,7 +3154,7 @@ public Builder setAutotune(boolean value) {
              * @return This builder for chaining.
              */
             public Builder clearAutotune() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000004);
               autotune_ = false;
               onChanged();
               return this;
    @@ -3196,8 +3183,9 @@ public long getBufferedBytes() {
              * @return This builder for chaining.
              */
             public Builder setBufferedBytes(long value) {
    -          
    +
               bufferedBytes_ = value;
    +          bitField0_ |= 0x00000008;
               onChanged();
               return this;
             }
    @@ -3210,7 +3198,7 @@ public Builder setBufferedBytes(long value) {
              * @return This builder for chaining.
              */
             public Builder clearBufferedBytes() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000008);
               bufferedBytes_ = 0L;
               onChanged();
               return this;
    @@ -3239,8 +3227,9 @@ public long getBufferedElements() {
              * @return This builder for chaining.
              */
             public Builder setBufferedElements(long value) {
    -          
    +
               bufferedElements_ = value;
    +          bitField0_ |= 0x00000010;
               onChanged();
               return this;
             }
    @@ -3253,7 +3242,7 @@ public Builder setBufferedElements(long value) {
              * @return This builder for chaining.
              */
             public Builder clearBufferedElements() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000010);
               bufferedElements_ = 0L;
               onChanged();
               return this;
    @@ -3282,8 +3271,9 @@ public long getBytesConsumed() {
              * @return This builder for chaining.
              */
             public Builder setBytesConsumed(long value) {
    -          
    +
               bytesConsumed_ = value;
    +          bitField0_ |= 0x00000020;
               onChanged();
               return this;
             }
    @@ -3296,7 +3286,7 @@ public Builder setBytesConsumed(long value) {
              * @return This builder for chaining.
              */
             public Builder clearBytesConsumed() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000020);
               bytesConsumed_ = 0L;
               onChanged();
               return this;
    @@ -3325,8 +3315,9 @@ public long getBytesProduced() {
              * @return This builder for chaining.
              */
             public Builder setBytesProduced(long value) {
    -          
    +
               bytesProduced_ = value;
    +          bitField0_ |= 0x00000040;
               onChanged();
               return this;
             }
    @@ -3339,7 +3330,7 @@ public Builder setBytesProduced(long value) {
              * @return This builder for chaining.
              */
             public Builder clearBytesProduced() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000040);
               bytesProduced_ = 0L;
               onChanged();
               return this;
    @@ -3368,8 +3359,9 @@ public long getNumElements() {
              * @return This builder for chaining.
              */
             public Builder setNumElements(long value) {
    -          
    +
               numElements_ = value;
    +          bitField0_ |= 0x00000080;
               onChanged();
               return this;
             }
    @@ -3382,7 +3374,7 @@ public Builder setNumElements(long value) {
              * @return This builder for chaining.
              */
             public Builder clearNumElements() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000080);
               numElements_ = 0L;
               onChanged();
               return this;
    @@ -3411,8 +3403,9 @@ public long getProcessingTime() {
              * @return This builder for chaining.
              */
             public Builder setProcessingTime(long value) {
    -          
    +
               processingTime_ = value;
    +          bitField0_ |= 0x00000100;
               onChanged();
               return this;
             }
    @@ -3425,7 +3418,7 @@ public Builder setProcessingTime(long value) {
              * @return This builder for chaining.
              */
             public Builder clearProcessingTime() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000100);
               processingTime_ = 0L;
               onChanged();
               return this;
    @@ -3456,8 +3449,9 @@ public boolean getRecordMetrics() {
              * @return This builder for chaining.
              */
             public Builder setRecordMetrics(boolean value) {
    -          
    +
               recordMetrics_ = value;
    +          bitField0_ |= 0x00000200;
               onChanged();
               return this;
             }
    @@ -3471,7 +3465,7 @@ public Builder setRecordMetrics(boolean value) {
              * @return This builder for chaining.
              */
             public Builder clearRecordMetrics() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000200);
               recordMetrics_ = false;
               onChanged();
               return this;
    @@ -3480,13 +3474,13 @@ public Builder clearRecordMetrics() {
             private java.util.List parameters_ =
               java.util.Collections.emptyList();
             private void ensureParametersIsMutable() {
    -          if (!((bitField0_ & 0x00000001) != 0)) {
    +          if (!((bitField0_ & 0x00000400) != 0)) {
                 parameters_ = new java.util.ArrayList(parameters_);
    -            bitField0_ |= 0x00000001;
    +            bitField0_ |= 0x00000400;
                }
             }
     
    -        private com.google.protobuf.RepeatedFieldBuilderV3<
    +        private com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter, org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter.Builder, org.tensorflow.proto.data.model.Model.ModelProto.Node.ParameterOrBuilder> parametersBuilder_;
     
             /**
    @@ -3676,7 +3670,7 @@ public Builder addAllParameters(
             public Builder clearParameters() {
               if (parametersBuilder_ == null) {
                 parameters_ = java.util.Collections.emptyList();
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000400);
                 onChanged();
               } else {
                 parametersBuilder_.clear();
    @@ -3774,14 +3768,14 @@ public org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter.Builder a
                  getParametersBuilderList() {
               return getParametersFieldBuilder().getBuilderList();
             }
    -        private com.google.protobuf.RepeatedFieldBuilderV3<
    +        private com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter, org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter.Builder, org.tensorflow.proto.data.model.Model.ModelProto.Node.ParameterOrBuilder> 
                 getParametersFieldBuilder() {
               if (parametersBuilder_ == null) {
    -            parametersBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +            parametersBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                     org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter, org.tensorflow.proto.data.model.Model.ModelProto.Node.Parameter.Builder, org.tensorflow.proto.data.model.Model.ModelProto.Node.ParameterOrBuilder>(
                         parameters_,
    -                    ((bitField0_ & 0x00000001) != 0),
    +                    ((bitField0_ & 0x00000400) != 0),
                         getParentForChildren(),
                         isClean());
                 parameters_ = null;
    @@ -3812,8 +3806,9 @@ public double getInputProcessingTimeSum() {
              * @return This builder for chaining.
              */
             public Builder setInputProcessingTimeSum(double value) {
    -          
    +
               inputProcessingTimeSum_ = value;
    +          bitField0_ |= 0x00000800;
               onChanged();
               return this;
             }
    @@ -3826,7 +3821,7 @@ public Builder setInputProcessingTimeSum(double value) {
              * @return This builder for chaining.
              */
             public Builder clearInputProcessingTimeSum() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000800);
               inputProcessingTimeSum_ = 0D;
               onChanged();
               return this;
    @@ -3847,8 +3842,9 @@ public long getInputProcessingTimeCount() {
              * @return This builder for chaining.
              */
             public Builder setInputProcessingTimeCount(long value) {
    -          
    +
               inputProcessingTimeCount_ = value;
    +          bitField0_ |= 0x00001000;
               onChanged();
               return this;
             }
    @@ -3857,7 +3853,7 @@ public Builder setInputProcessingTimeCount(long value) {
              * @return This builder for chaining.
              */
             public Builder clearInputProcessingTimeCount() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00001000);
               inputProcessingTimeCount_ = 0L;
               onChanged();
               return this;
    @@ -3865,10 +3861,10 @@ public Builder clearInputProcessingTimeCount() {
     
             private com.google.protobuf.Internal.LongList inputs_ = emptyLongList();
             private void ensureInputsIsMutable() {
    -          if (!((bitField0_ & 0x00000002) != 0)) {
    -            inputs_ = mutableCopy(inputs_);
    -            bitField0_ |= 0x00000002;
    -           }
    +          if (!inputs_.isModifiable()) {
    +            inputs_ = makeMutableCopy(inputs_);
    +          }
    +          bitField0_ |= 0x00002000;
             }
             /**
              * 
    @@ -3880,8 +3876,8 @@ private void ensureInputsIsMutable() {
              */
             public java.util.List
                 getInputsList() {
    -          return ((bitField0_ & 0x00000002) != 0) ?
    -                   java.util.Collections.unmodifiableList(inputs_) : inputs_;
    +          inputs_.makeImmutable();
    +          return inputs_;
             }
             /**
              * 
    @@ -3918,8 +3914,10 @@ public long getInputs(int index) {
              */
             public Builder setInputs(
                 int index, long value) {
    +
               ensureInputsIsMutable();
               inputs_.setLong(index, value);
    +          bitField0_ |= 0x00002000;
               onChanged();
               return this;
             }
    @@ -3933,8 +3931,10 @@ public Builder setInputs(
              * @return This builder for chaining.
              */
             public Builder addInputs(long value) {
    +
               ensureInputsIsMutable();
               inputs_.addLong(value);
    +          bitField0_ |= 0x00002000;
               onChanged();
               return this;
             }
    @@ -3952,6 +3952,7 @@ public Builder addAllInputs(
               ensureInputsIsMutable();
               com.google.protobuf.AbstractMessageLite.Builder.addAll(
                   values, inputs_);
    +          bitField0_ |= 0x00002000;
               onChanged();
               return this;
             }
    @@ -3965,7 +3966,7 @@ public Builder addAllInputs(
              */
             public Builder clearInputs() {
               inputs_ = emptyLongList();
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          bitField0_ = (bitField0_ & ~0x00002000);
               onChanged();
               return this;
             }
    @@ -3992,8 +3993,8 @@ public Builder clearInputs() {
              * @return This builder for chaining.
              */
             public Builder setNodeClassValue(int value) {
    -          
               nodeClass_ = value;
    +          bitField0_ |= 0x00004000;
               onChanged();
               return this;
             }
    @@ -4007,8 +4008,7 @@ public Builder setNodeClassValue(int value) {
              */
             @java.lang.Override
             public org.tensorflow.proto.data.model.Model.NodeClass getNodeClass() {
    -          @SuppressWarnings("deprecation")
    -          org.tensorflow.proto.data.model.Model.NodeClass result = org.tensorflow.proto.data.model.Model.NodeClass.valueOf(nodeClass_);
    +          org.tensorflow.proto.data.model.Model.NodeClass result = org.tensorflow.proto.data.model.Model.NodeClass.forNumber(nodeClass_);
               return result == null ? org.tensorflow.proto.data.model.Model.NodeClass.UNRECOGNIZED : result;
             }
             /**
    @@ -4024,7 +4024,7 @@ public Builder setNodeClass(org.tensorflow.proto.data.model.Model.NodeClass valu
               if (value == null) {
                 throw new NullPointerException();
               }
    -          
    +          bitField0_ |= 0x00004000;
               nodeClass_ = value.getNumber();
               onChanged();
               return this;
    @@ -4038,7 +4038,7 @@ public Builder setNodeClass(org.tensorflow.proto.data.model.Model.NodeClass valu
              * @return This builder for chaining.
              */
             public Builder clearNodeClass() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00004000);
               nodeClass_ = 0;
               onChanged();
               return this;
    @@ -4069,8 +4069,9 @@ public double getRatio() {
              * @return This builder for chaining.
              */
             public Builder setRatio(double value) {
    -          
    +
               ratio_ = value;
    +          bitField0_ |= 0x00008000;
               onChanged();
               return this;
             }
    @@ -4084,7 +4085,7 @@ public Builder setRatio(double value) {
              * @return This builder for chaining.
              */
             public Builder clearRatio() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00008000);
               ratio_ = 0D;
               onChanged();
               return this;
    @@ -4115,8 +4116,9 @@ public double getMemoryRatio() {
              * @return This builder for chaining.
              */
             public Builder setMemoryRatio(double value) {
    -          
    +
               memoryRatio_ = value;
    +          bitField0_ |= 0x00010000;
               onChanged();
               return this;
             }
    @@ -4130,23 +4132,11 @@ public Builder setMemoryRatio(double value) {
              * @return This builder for chaining.
              */
             public Builder clearMemoryRatio() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00010000);
               memoryRatio_ = 0D;
               onChanged();
               return this;
             }
    -        @java.lang.Override
    -        public final Builder setUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.setUnknownFields(unknownFields);
    -        }
    -
    -        @java.lang.Override
    -        public final Builder mergeUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.mergeUnknownFields(unknownFields);
    -        }
    -
     
             // @@protoc_insertion_point(builder_scope:tensorflow.data.model.ModelProto.Node)
           }
    @@ -4261,37 +4251,34 @@ public interface OptimizationParamsOrBuilder extends
          * Protobuf type {@code tensorflow.data.model.ModelProto.OptimizationParams}
          */
         public static final class OptimizationParams extends
    -        com.google.protobuf.GeneratedMessageV3 implements
    +        com.google.protobuf.GeneratedMessage implements
             // @@protoc_insertion_point(message_implements:tensorflow.data.model.ModelProto.OptimizationParams)
             OptimizationParamsOrBuilder {
         private static final long serialVersionUID = 0L;
    +      static {
    +        com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +          com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +          /* major= */ 4,
    +          /* minor= */ 28,
    +          /* patch= */ 3,
    +          /* suffix= */ "",
    +          OptimizationParams.class.getName());
    +      }
           // Use OptimizationParams.newBuilder() to construct.
    -      private OptimizationParams(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +      private OptimizationParams(com.google.protobuf.GeneratedMessage.Builder builder) {
             super(builder);
           }
           private OptimizationParams() {
             algorithm_ = 0;
           }
     
    -      @java.lang.Override
    -      @SuppressWarnings({"unused"})
    -      protected java.lang.Object newInstance(
    -          UnusedPrivateParameter unused) {
    -        return new OptimizationParams();
    -      }
    -
    -      @java.lang.Override
    -      public final com.google.protobuf.UnknownFieldSet
    -      getUnknownFields() {
    -        return this.unknownFields;
    -      }
           public static final com.google.protobuf.Descriptors.Descriptor
               getDescriptor() {
             return org.tensorflow.proto.data.model.Model.internal_static_tensorflow_data_model_ModelProto_OptimizationParams_descriptor;
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.data.model.Model.internal_static_tensorflow_data_model_ModelProto_OptimizationParams_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -4299,7 +4286,7 @@ protected java.lang.Object newInstance(
           }
     
           public static final int ALGORITHM_FIELD_NUMBER = 1;
    -      private int algorithm_;
    +      private int algorithm_ = 0;
           /**
            * 
            * Algorithm used for autotuning optimization.
    @@ -4320,13 +4307,12 @@ protected java.lang.Object newInstance(
            * @return The algorithm.
            */
           @java.lang.Override public org.tensorflow.proto.data.model.Model.AutotuneAlgorithm getAlgorithm() {
    -        @SuppressWarnings("deprecation")
    -        org.tensorflow.proto.data.model.Model.AutotuneAlgorithm result = org.tensorflow.proto.data.model.Model.AutotuneAlgorithm.valueOf(algorithm_);
    +        org.tensorflow.proto.data.model.Model.AutotuneAlgorithm result = org.tensorflow.proto.data.model.Model.AutotuneAlgorithm.forNumber(algorithm_);
             return result == null ? org.tensorflow.proto.data.model.Model.AutotuneAlgorithm.UNRECOGNIZED : result;
           }
     
           public static final int CPU_BUDGET_FIELD_NUMBER = 2;
    -      private long cpuBudget_;
    +      private long cpuBudget_ = 0L;
           /**
            * 
            * Number of available logical threads.
    @@ -4341,7 +4327,7 @@ public long getCpuBudget() {
           }
     
           public static final int RAM_BUDGET_FIELD_NUMBER = 3;
    -      private long ramBudget_;
    +      private long ramBudget_ = 0L;
           /**
            * 
            * Amount of available memory in bytes.
    @@ -4356,7 +4342,7 @@ public long getRamBudget() {
           }
     
           public static final int MODEL_INPUT_TIME_FIELD_NUMBER = 4;
    -      private double modelInputTime_;
    +      private double modelInputTime_ = 0D;
           /**
            * 
            * Time between two consecutive `GetNext` calls to the iterator represented
    @@ -4506,39 +4492,41 @@ public static org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParam
           }
           public static org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams parseFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams parseFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
    +
           public static org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams parseDelimitedFrom(java.io.InputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input);
           }
    +
           public static org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams parseDelimitedFrom(
               java.io.InputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
           }
           public static org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams parseFrom(
               com.google.protobuf.CodedInputStream input)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input);
           }
           public static org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams parseFrom(
               com.google.protobuf.CodedInputStream input,
               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
               throws java.io.IOException {
    -        return com.google.protobuf.GeneratedMessageV3
    +        return com.google.protobuf.GeneratedMessage
                 .parseWithIOException(PARSER, input, extensionRegistry);
           }
     
    @@ -4558,7 +4546,7 @@ public Builder toBuilder() {
     
           @java.lang.Override
           protected Builder newBuilderForType(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             Builder builder = new Builder(parent);
             return builder;
           }
    @@ -4570,7 +4558,7 @@ protected Builder newBuilderForType(
            * Protobuf type {@code tensorflow.data.model.ModelProto.OptimizationParams}
            */
           public static final class Builder extends
    -          com.google.protobuf.GeneratedMessageV3.Builder implements
    +          com.google.protobuf.GeneratedMessage.Builder implements
               // @@protoc_insertion_point(builder_implements:tensorflow.data.model.ModelProto.OptimizationParams)
               org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParamsOrBuilder {
             public static final com.google.protobuf.Descriptors.Descriptor
    @@ -4579,7 +4567,7 @@ public static final class Builder extends
             }
     
             @java.lang.Override
    -        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
                 internalGetFieldAccessorTable() {
               return org.tensorflow.proto.data.model.Model.internal_static_tensorflow_data_model_ModelProto_OptimizationParams_fieldAccessorTable
                   .ensureFieldAccessorsInitialized(
    @@ -4592,21 +4580,18 @@ private Builder() {
             }
     
             private Builder(
    -            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
               super(parent);
     
             }
             @java.lang.Override
             public Builder clear() {
               super.clear();
    +          bitField0_ = 0;
               algorithm_ = 0;
    -
               cpuBudget_ = 0L;
    -
               ramBudget_ = 0L;
    -
               modelInputTime_ = 0D;
    -
               return this;
             }
     
    @@ -4633,46 +4618,27 @@ public org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams build
             @java.lang.Override
             public org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams buildPartial() {
               org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams result = new org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams(this);
    -          result.algorithm_ = algorithm_;
    -          result.cpuBudget_ = cpuBudget_;
    -          result.ramBudget_ = ramBudget_;
    -          result.modelInputTime_ = modelInputTime_;
    +          if (bitField0_ != 0) { buildPartial0(result); }
               onBuilt();
               return result;
             }
     
    -        @java.lang.Override
    -        public Builder clone() {
    -          return super.clone();
    -        }
    -        @java.lang.Override
    -        public Builder setField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.setField(field, value);
    -        }
    -        @java.lang.Override
    -        public Builder clearField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field) {
    -          return super.clearField(field);
    -        }
    -        @java.lang.Override
    -        public Builder clearOneof(
    -            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -          return super.clearOneof(oneof);
    -        }
    -        @java.lang.Override
    -        public Builder setRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            int index, java.lang.Object value) {
    -          return super.setRepeatedField(field, index, value);
    -        }
    -        @java.lang.Override
    -        public Builder addRepeatedField(
    -            com.google.protobuf.Descriptors.FieldDescriptor field,
    -            java.lang.Object value) {
    -          return super.addRepeatedField(field, value);
    +        private void buildPartial0(org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams result) {
    +          int from_bitField0_ = bitField0_;
    +          if (((from_bitField0_ & 0x00000001) != 0)) {
    +            result.algorithm_ = algorithm_;
    +          }
    +          if (((from_bitField0_ & 0x00000002) != 0)) {
    +            result.cpuBudget_ = cpuBudget_;
    +          }
    +          if (((from_bitField0_ & 0x00000004) != 0)) {
    +            result.ramBudget_ = ramBudget_;
    +          }
    +          if (((from_bitField0_ & 0x00000008) != 0)) {
    +            result.modelInputTime_ = modelInputTime_;
    +          }
             }
    +
             @java.lang.Override
             public Builder mergeFrom(com.google.protobuf.Message other) {
               if (other instanceof org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams) {
    @@ -4725,22 +4691,22 @@ public Builder mergeFrom(
                       break;
                     case 8: {
                       algorithm_ = input.readEnum();
    -
    +                  bitField0_ |= 0x00000001;
                       break;
                     } // case 8
                     case 16: {
                       cpuBudget_ = input.readInt64();
    -
    +                  bitField0_ |= 0x00000002;
                       break;
                     } // case 16
                     case 24: {
                       ramBudget_ = input.readInt64();
    -
    +                  bitField0_ |= 0x00000004;
                       break;
                     } // case 24
                     case 33: {
                       modelInputTime_ = input.readDouble();
    -
    +                  bitField0_ |= 0x00000008;
                       break;
                     } // case 33
                     default: {
    @@ -4758,6 +4724,7 @@ public Builder mergeFrom(
               } // finally
               return this;
             }
    +        private int bitField0_;
     
             private int algorithm_ = 0;
             /**
    @@ -4781,8 +4748,8 @@ public Builder mergeFrom(
              * @return This builder for chaining.
              */
             public Builder setAlgorithmValue(int value) {
    -          
               algorithm_ = value;
    +          bitField0_ |= 0x00000001;
               onChanged();
               return this;
             }
    @@ -4796,8 +4763,7 @@ public Builder setAlgorithmValue(int value) {
              */
             @java.lang.Override
             public org.tensorflow.proto.data.model.Model.AutotuneAlgorithm getAlgorithm() {
    -          @SuppressWarnings("deprecation")
    -          org.tensorflow.proto.data.model.Model.AutotuneAlgorithm result = org.tensorflow.proto.data.model.Model.AutotuneAlgorithm.valueOf(algorithm_);
    +          org.tensorflow.proto.data.model.Model.AutotuneAlgorithm result = org.tensorflow.proto.data.model.Model.AutotuneAlgorithm.forNumber(algorithm_);
               return result == null ? org.tensorflow.proto.data.model.Model.AutotuneAlgorithm.UNRECOGNIZED : result;
             }
             /**
    @@ -4813,7 +4779,7 @@ public Builder setAlgorithm(org.tensorflow.proto.data.model.Model.AutotuneAlgori
               if (value == null) {
                 throw new NullPointerException();
               }
    -          
    +          bitField0_ |= 0x00000001;
               algorithm_ = value.getNumber();
               onChanged();
               return this;
    @@ -4827,7 +4793,7 @@ public Builder setAlgorithm(org.tensorflow.proto.data.model.Model.AutotuneAlgori
              * @return This builder for chaining.
              */
             public Builder clearAlgorithm() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000001);
               algorithm_ = 0;
               onChanged();
               return this;
    @@ -4856,8 +4822,9 @@ public long getCpuBudget() {
              * @return This builder for chaining.
              */
             public Builder setCpuBudget(long value) {
    -          
    +
               cpuBudget_ = value;
    +          bitField0_ |= 0x00000002;
               onChanged();
               return this;
             }
    @@ -4870,7 +4837,7 @@ public Builder setCpuBudget(long value) {
              * @return This builder for chaining.
              */
             public Builder clearCpuBudget() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000002);
               cpuBudget_ = 0L;
               onChanged();
               return this;
    @@ -4899,8 +4866,9 @@ public long getRamBudget() {
              * @return This builder for chaining.
              */
             public Builder setRamBudget(long value) {
    -          
    +
               ramBudget_ = value;
    +          bitField0_ |= 0x00000004;
               onChanged();
               return this;
             }
    @@ -4913,7 +4881,7 @@ public Builder setRamBudget(long value) {
              * @return This builder for chaining.
              */
             public Builder clearRamBudget() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000004);
               ramBudget_ = 0L;
               onChanged();
               return this;
    @@ -4944,8 +4912,9 @@ public double getModelInputTime() {
              * @return This builder for chaining.
              */
             public Builder setModelInputTime(double value) {
    -          
    +
               modelInputTime_ = value;
    +          bitField0_ |= 0x00000008;
               onChanged();
               return this;
             }
    @@ -4959,23 +4928,11 @@ public Builder setModelInputTime(double value) {
              * @return This builder for chaining.
              */
             public Builder clearModelInputTime() {
    -          
    +          bitField0_ = (bitField0_ & ~0x00000008);
               modelInputTime_ = 0D;
               onChanged();
               return this;
             }
    -        @java.lang.Override
    -        public final Builder setUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.setUnknownFields(unknownFields);
    -        }
    -
    -        @java.lang.Override
    -        public final Builder mergeUnknownFields(
    -            final com.google.protobuf.UnknownFieldSet unknownFields) {
    -          return super.mergeUnknownFields(unknownFields);
    -        }
    -
     
             // @@protoc_insertion_point(builder_scope:tensorflow.data.model.ModelProto.OptimizationParams)
           }
    @@ -5028,8 +4985,10 @@ public org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams getDe
     
         }
     
    +    private int bitField0_;
         public static final int DATASET_NAME_FIELD_NUMBER = 7;
    -    private volatile java.lang.Object datasetName_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object datasetName_ = "";
         /**
          * 
          * User-defined name for the dataset. Empty if no name was set.
    @@ -5086,6 +5045,7 @@ private static final class NodesDefaultEntryHolder {
                       com.google.protobuf.WireFormat.FieldType.MESSAGE,
                       org.tensorflow.proto.data.model.Model.ModelProto.Node.getDefaultInstance());
         }
    +    @SuppressWarnings("serial")
         private com.google.protobuf.MapField<
             java.lang.Long, org.tensorflow.proto.data.model.Model.ModelProto.Node> nodes_;
         private com.google.protobuf.MapField
    @@ -5096,7 +5056,6 @@ private static final class NodesDefaultEntryHolder {
           }
           return nodes_;
         }
    -
         public int getNodesCount() {
           return internalGetNodes().getMap().size();
         }
    @@ -5107,11 +5066,10 @@ public int getNodesCount() {
          *
          * map<int64, .tensorflow.data.model.ModelProto.Node> nodes = 1;
          */
    -
         @java.lang.Override
         public boolean containsNodes(
             long key) {
    -      
    +
           return internalGetNodes().getMap().containsKey(key);
         }
         /**
    @@ -5130,7 +5088,6 @@ public java.util.Mapmap<int64, .tensorflow.data.model.ModelProto.Node> nodes = 1;
          */
         @java.lang.Override
    -
         public java.util.Map getNodesMap() {
           return internalGetNodes().getMap();
         }
    @@ -5142,11 +5099,12 @@ public java.util.Mapmap<int64, .tensorflow.data.model.ModelProto.Node> nodes = 1;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.data.model.Model.ModelProto.Node getNodesOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.data.model.Model.ModelProto.Node getNodesOrDefault(
             long key,
    -        org.tensorflow.proto.data.model.Model.ModelProto.Node defaultValue) {
    -      
    +        /* nullable */
    +org.tensorflow.proto.data.model.Model.ModelProto.Node defaultValue) {
    +
           java.util.Map map =
               internalGetNodes().getMap();
           return map.containsKey(key) ? map.get(key) : defaultValue;
    @@ -5159,10 +5117,9 @@ public org.tensorflow.proto.data.model.Model.ModelProto.Node getNodesOrDefault(
          * map<int64, .tensorflow.data.model.ModelProto.Node> nodes = 1;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.data.model.Model.ModelProto.Node getNodesOrThrow(
             long key) {
    -      
    +
           java.util.Map map =
               internalGetNodes().getMap();
           if (!map.containsKey(key)) {
    @@ -5172,7 +5129,7 @@ public org.tensorflow.proto.data.model.Model.ModelProto.Node getNodesOrThrow(
         }
     
         public static final int OUTPUT_FIELD_NUMBER = 2;
    -    private long output_;
    +    private long output_ = 0L;
         /**
          * 
          * ID of the output node of this model.
    @@ -5187,7 +5144,7 @@ public long getOutput() {
         }
     
         public static final int ID_COUNTER_FIELD_NUMBER = 3;
    -    private long idCounter_;
    +    private long idCounter_ = 0L;
         /**
          * 
          * Counter for node IDs of this model.
    @@ -5209,7 +5166,7 @@ public long getIdCounter() {
          */
         @java.lang.Override
         public boolean hasOptimizationParams() {
    -      return optimizationParams_ != null;
    +      return ((bitField0_ & 0x00000001) != 0);
         }
         /**
          * .tensorflow.data.model.ModelProto.OptimizationParams optimization_params = 5;
    @@ -5224,11 +5181,13 @@ public org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams getOp
          */
         @java.lang.Override
         public org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParamsOrBuilder getOptimizationParamsOrBuilder() {
    -      return getOptimizationParams();
    +      return optimizationParams_ == null ? org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams.getDefaultInstance() : optimizationParams_;
         }
     
         public static final int GAP_TIMES_FIELD_NUMBER = 6;
    -    private com.google.protobuf.Internal.LongList gapTimes_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.Internal.LongList gapTimes_ =
    +        emptyLongList();
         /**
          * repeated uint64 gap_times = 6;
          * @return A list containing the gapTimes.
    @@ -5270,7 +5229,7 @@ public final boolean isInitialized() {
         public void writeTo(com.google.protobuf.CodedOutputStream output)
                             throws java.io.IOException {
           getSerializedSize();
    -      com.google.protobuf.GeneratedMessageV3
    +      com.google.protobuf.GeneratedMessage
             .serializeLongMapTo(
               output,
               internalGetNodes(),
    @@ -5282,7 +5241,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (idCounter_ != 0L) {
             output.writeInt64(3, idCounter_);
           }
    -      if (optimizationParams_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             output.writeMessage(5, getOptimizationParams());
           }
           if (getGapTimesList().size() > 0) {
    @@ -5292,8 +5251,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           for (int i = 0; i < gapTimes_.size(); i++) {
             output.writeUInt64NoTag(gapTimes_.getLong(i));
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(datasetName_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 7, datasetName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(datasetName_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 7, datasetName_);
           }
           getUnknownFields().writeTo(output);
         }
    @@ -5322,7 +5281,7 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeInt64Size(3, idCounter_);
           }
    -      if (optimizationParams_ != null) {
    +      if (((bitField0_ & 0x00000001) != 0)) {
             size += com.google.protobuf.CodedOutputStream
               .computeMessageSize(5, getOptimizationParams());
           }
    @@ -5340,8 +5299,8 @@ public int getSerializedSize() {
             }
             gapTimesMemoizedSerializedSize = dataSize;
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(datasetName_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, datasetName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(datasetName_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(7, datasetName_);
           }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
    @@ -5443,39 +5402,41 @@ public static org.tensorflow.proto.data.model.Model.ModelProto parseFrom(
         }
         public static org.tensorflow.proto.data.model.Model.ModelProto parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.model.Model.ModelProto parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.data.model.Model.ModelProto parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.data.model.Model.ModelProto parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.data.model.Model.ModelProto parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.data.model.Model.ModelProto parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -5495,7 +5456,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -5508,7 +5469,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.data.model.ModelProto}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.data.model.ModelProto)
             org.tensorflow.proto.data.model.Model.ModelProtoOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -5517,7 +5478,7 @@ public static final class Builder extends
           }
     
           @SuppressWarnings({"rawtypes"})
    -      protected com.google.protobuf.MapField internalGetMapField(
    +      protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
               int number) {
             switch (number) {
               case 1:
    @@ -5528,7 +5489,7 @@ protected com.google.protobuf.MapField internalGetMapField(
             }
           }
           @SuppressWarnings({"rawtypes"})
    -      protected com.google.protobuf.MapField internalGetMutableMapField(
    +      protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(
               int number) {
             switch (number) {
               case 1:
    @@ -5539,7 +5500,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
             }
           }
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.data.model.Model.internal_static_tensorflow_data_model_ModelProto_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -5548,32 +5509,34 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
     
           // Construct using org.tensorflow.proto.data.model.Model.ModelProto.newBuilder()
           private Builder() {
    -
    +        maybeForceBuilderInitialization();
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
    -
    +        maybeForceBuilderInitialization();
    +      }
    +      private void maybeForceBuilderInitialization() {
    +        if (com.google.protobuf.GeneratedMessage
    +                .alwaysUseFieldBuilders) {
    +          getOptimizationParamsFieldBuilder();
    +        }
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             datasetName_ = "";
    -
             internalGetMutableNodes().clear();
             output_ = 0L;
    -
             idCounter_ = 0L;
    -
    -        if (optimizationParamsBuilder_ == null) {
    -          optimizationParams_ = null;
    -        } else {
    -          optimizationParams_ = null;
    +        optimizationParams_ = null;
    +        if (optimizationParamsBuilder_ != null) {
    +          optimizationParamsBuilder_.dispose();
               optimizationParamsBuilder_ = null;
             }
             gapTimes_ = emptyLongList();
    -        bitField0_ = (bitField0_ & ~0x00000002);
             return this;
           }
     
    @@ -5600,58 +5563,39 @@ public org.tensorflow.proto.data.model.Model.ModelProto build() {
           @java.lang.Override
           public org.tensorflow.proto.data.model.Model.ModelProto buildPartial() {
             org.tensorflow.proto.data.model.Model.ModelProto result = new org.tensorflow.proto.data.model.Model.ModelProto(this);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartial0(org.tensorflow.proto.data.model.Model.ModelProto result) {
             int from_bitField0_ = bitField0_;
    -        result.datasetName_ = datasetName_;
    -        result.nodes_ = internalGetNodes();
    -        result.nodes_.makeImmutable();
    -        result.output_ = output_;
    -        result.idCounter_ = idCounter_;
    -        if (optimizationParamsBuilder_ == null) {
    -          result.optimizationParams_ = optimizationParams_;
    -        } else {
    -          result.optimizationParams_ = optimizationParamsBuilder_.build();
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.datasetName_ = datasetName_;
             }
    -        if (((bitField0_ & 0x00000002) != 0)) {
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.nodes_ = internalGetNodes().build(NodesDefaultEntryHolder.defaultEntry);
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.output_ = output_;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.idCounter_ = idCounter_;
    +        }
    +        int to_bitField0_ = 0;
    +        if (((from_bitField0_ & 0x00000010) != 0)) {
    +          result.optimizationParams_ = optimizationParamsBuilder_ == null
    +              ? optimizationParams_
    +              : optimizationParamsBuilder_.build();
    +          to_bitField0_ |= 0x00000001;
    +        }
    +        if (((from_bitField0_ & 0x00000020) != 0)) {
               gapTimes_.makeImmutable();
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          result.gapTimes_ = gapTimes_;
             }
    -        result.gapTimes_ = gapTimes_;
    -        onBuilt();
    -        return result;
    +        result.bitField0_ |= to_bitField0_;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    -      }
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.data.model.Model.ModelProto) {
    @@ -5666,10 +5610,12 @@ public Builder mergeFrom(org.tensorflow.proto.data.model.Model.ModelProto other)
             if (other == org.tensorflow.proto.data.model.Model.ModelProto.getDefaultInstance()) return this;
             if (!other.getDatasetName().isEmpty()) {
               datasetName_ = other.datasetName_;
    +          bitField0_ |= 0x00000001;
               onChanged();
             }
             internalGetMutableNodes().mergeFrom(
                 other.internalGetNodes());
    +        bitField0_ |= 0x00000002;
             if (other.getOutput() != 0L) {
               setOutput(other.getOutput());
             }
    @@ -5682,7 +5628,8 @@ public Builder mergeFrom(org.tensorflow.proto.data.model.Model.ModelProto other)
             if (!other.gapTimes_.isEmpty()) {
               if (gapTimes_.isEmpty()) {
                 gapTimes_ = other.gapTimes_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            gapTimes_.makeImmutable();
    +            bitField0_ |= 0x00000020;
               } else {
                 ensureGapTimesIsMutable();
                 gapTimes_.addAll(other.gapTimes_);
    @@ -5719,25 +5666,26 @@ public Builder mergeFrom(
                     com.google.protobuf.MapEntry
                     nodes__ = input.readMessage(
                         NodesDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
    -                internalGetMutableNodes().getMutableMap().put(
    +                internalGetMutableNodes().ensureBuilderMap().put(
                         nodes__.getKey(), nodes__.getValue());
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 10
                   case 16: {
                     output_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 16
                   case 24: {
                     idCounter_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 24
                   case 42: {
                     input.readMessage(
                         getOptimizationParamsFieldBuilder().getBuilder(),
                         extensionRegistry);
    -
    +                bitField0_ |= 0x00000010;
                     break;
                   } // case 42
                   case 48: {
    @@ -5758,7 +5706,7 @@ public Builder mergeFrom(
                   } // case 50
                   case 58: {
                     datasetName_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 58
                   default: {
    @@ -5831,11 +5779,9 @@ public java.lang.String getDatasetName() {
            */
           public Builder setDatasetName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             datasetName_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -5848,8 +5794,8 @@ public Builder setDatasetName(
            * @return This builder for chaining.
            */
           public Builder clearDatasetName() {
    -        
             datasetName_ = getDefaultInstance().getDatasetName();
    +        bitField0_ = (bitField0_ & ~0x00000001);
             onChanged();
             return this;
           }
    @@ -5864,41 +5810,48 @@ public Builder clearDatasetName() {
            */
           public Builder setDatasetNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             datasetName_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
     
    -      private com.google.protobuf.MapField<
    -          java.lang.Long, org.tensorflow.proto.data.model.Model.ModelProto.Node> nodes_;
    -      private com.google.protobuf.MapField
    -      internalGetNodes() {
    +      private static final class NodesConverter implements com.google.protobuf.MapFieldBuilder.Converter {
    +        @java.lang.Override
    +        public org.tensorflow.proto.data.model.Model.ModelProto.Node build(org.tensorflow.proto.data.model.Model.ModelProto.NodeOrBuilder val) {
    +          if (val instanceof org.tensorflow.proto.data.model.Model.ModelProto.Node) { return (org.tensorflow.proto.data.model.Model.ModelProto.Node) val; }
    +          return ((org.tensorflow.proto.data.model.Model.ModelProto.Node.Builder) val).build();
    +        }
    +
    +        @java.lang.Override
    +        public com.google.protobuf.MapEntry defaultEntry() {
    +          return NodesDefaultEntryHolder.defaultEntry;
    +        }
    +      };
    +      private static final NodesConverter nodesConverter = new NodesConverter();
    +
    +      private com.google.protobuf.MapFieldBuilder<
    +          java.lang.Long, org.tensorflow.proto.data.model.Model.ModelProto.NodeOrBuilder, org.tensorflow.proto.data.model.Model.ModelProto.Node, org.tensorflow.proto.data.model.Model.ModelProto.Node.Builder> nodes_;
    +      private com.google.protobuf.MapFieldBuilder
    +          internalGetNodes() {
             if (nodes_ == null) {
    -          return com.google.protobuf.MapField.emptyMapField(
    -              NodesDefaultEntryHolder.defaultEntry);
    +          return new com.google.protobuf.MapFieldBuilder<>(nodesConverter);
             }
             return nodes_;
           }
    -      private com.google.protobuf.MapField
    -      internalGetMutableNodes() {
    -        onChanged();;
    +      private com.google.protobuf.MapFieldBuilder
    +          internalGetMutableNodes() {
             if (nodes_ == null) {
    -          nodes_ = com.google.protobuf.MapField.newMapField(
    -              NodesDefaultEntryHolder.defaultEntry);
    -        }
    -        if (!nodes_.isMutable()) {
    -          nodes_ = nodes_.copy();
    +          nodes_ = new com.google.protobuf.MapFieldBuilder<>(nodesConverter);
             }
    +        bitField0_ |= 0x00000002;
    +        onChanged();
             return nodes_;
           }
    -
           public int getNodesCount() {
    -        return internalGetNodes().getMap().size();
    +        return internalGetNodes().ensureBuilderMap().size();
           }
           /**
            * 
    @@ -5907,12 +5860,11 @@ public int getNodesCount() {
            *
            * map<int64, .tensorflow.data.model.ModelProto.Node> nodes = 1;
            */
    -
           @java.lang.Override
           public boolean containsNodes(
               long key) {
    -        
    -        return internalGetNodes().getMap().containsKey(key);
    +
    +        return internalGetNodes().ensureBuilderMap().containsKey(key);
           }
           /**
            * Use {@link #getNodesMap()} instead.
    @@ -5930,9 +5882,8 @@ public java.util.Mapmap<int64, .tensorflow.data.model.ModelProto.Node> nodes = 1;
            */
           @java.lang.Override
    -
           public java.util.Map getNodesMap() {
    -        return internalGetNodes().getMap();
    +        return internalGetNodes().getImmutableMap();
           }
           /**
            * 
    @@ -5942,14 +5893,14 @@ public java.util.Mapmap<int64, .tensorflow.data.model.ModelProto.Node> nodes = 1;
            */
           @java.lang.Override
    -
    -      public org.tensorflow.proto.data.model.Model.ModelProto.Node getNodesOrDefault(
    +      public /* nullable */
    +org.tensorflow.proto.data.model.Model.ModelProto.Node getNodesOrDefault(
               long key,
    -          org.tensorflow.proto.data.model.Model.ModelProto.Node defaultValue) {
    -        
    -        java.util.Map map =
    -            internalGetNodes().getMap();
    -        return map.containsKey(key) ? map.get(key) : defaultValue;
    +          /* nullable */
    +org.tensorflow.proto.data.model.Model.ModelProto.Node defaultValue) {
    +
    +        java.util.Map map = internalGetMutableNodes().ensureBuilderMap();
    +        return map.containsKey(key) ? nodesConverter.build(map.get(key)) : defaultValue;
           }
           /**
            * 
    @@ -5959,21 +5910,18 @@ public org.tensorflow.proto.data.model.Model.ModelProto.Node getNodesOrDefault(
            * map<int64, .tensorflow.data.model.ModelProto.Node> nodes = 1;
            */
           @java.lang.Override
    -
           public org.tensorflow.proto.data.model.Model.ModelProto.Node getNodesOrThrow(
               long key) {
    -        
    -        java.util.Map map =
    -            internalGetNodes().getMap();
    +
    +        java.util.Map map = internalGetMutableNodes().ensureBuilderMap();
             if (!map.containsKey(key)) {
               throw new java.lang.IllegalArgumentException();
             }
    -        return map.get(key);
    +        return nodesConverter.build(map.get(key));
           }
    -
           public Builder clearNodes() {
    -        internalGetMutableNodes().getMutableMap()
    -            .clear();
    +        bitField0_ = (bitField0_ & ~0x00000002);
    +        internalGetMutableNodes().clear();
             return this;
           }
           /**
    @@ -5983,11 +5931,10 @@ public Builder clearNodes() {
            *
            * map<int64, .tensorflow.data.model.ModelProto.Node> nodes = 1;
            */
    -
           public Builder removeNodes(
               long key) {
    -        
    -        internalGetMutableNodes().getMutableMap()
    +
    +        internalGetMutableNodes().ensureBuilderMap()
                 .remove(key);
             return this;
           }
    @@ -5996,8 +5943,9 @@ public Builder removeNodes(
            */
           @java.lang.Deprecated
           public java.util.Map
    -      getMutableNodes() {
    -        return internalGetMutableNodes().getMutableMap();
    +          getMutableNodes() {
    +        bitField0_ |= 0x00000002;
    +        return internalGetMutableNodes().ensureMessageMap();
           }
           /**
            * 
    @@ -6009,13 +5957,11 @@ public Builder removeNodes(
           public Builder putNodes(
               long key,
               org.tensorflow.proto.data.model.Model.ModelProto.Node value) {
    -        
    -        if (value == null) {
    -  throw new NullPointerException("map value");
    -}
     
    -        internalGetMutableNodes().getMutableMap()
    +        if (value == null) { throw new NullPointerException("map value"); }
    +        internalGetMutableNodes().ensureBuilderMap()
                 .put(key, value);
    +        bitField0_ |= 0x00000002;
             return this;
           }
           /**
    @@ -6025,13 +5971,39 @@ public Builder putNodes(
            *
            * map<int64, .tensorflow.data.model.ModelProto.Node> nodes = 1;
            */
    -
           public Builder putAllNodes(
               java.util.Map values) {
    -        internalGetMutableNodes().getMutableMap()
    +        for (java.util.Map.Entry e : values.entrySet()) {
    +          if (e.getKey() == null || e.getValue() == null) {
    +            throw new NullPointerException();
    +          }
    +        }
    +        internalGetMutableNodes().ensureBuilderMap()
                 .putAll(values);
    +        bitField0_ |= 0x00000002;
             return this;
           }
    +      /**
    +       * 
    +       * Map of node IDs to nodes of this model.
    +       * 
    + * + * map<int64, .tensorflow.data.model.ModelProto.Node> nodes = 1; + */ + public org.tensorflow.proto.data.model.Model.ModelProto.Node.Builder putNodesBuilderIfAbsent( + long key) { + java.util.Map builderMap = internalGetMutableNodes().ensureBuilderMap(); + org.tensorflow.proto.data.model.Model.ModelProto.NodeOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.data.model.Model.ModelProto.Node.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.data.model.Model.ModelProto.Node) { + entry = ((org.tensorflow.proto.data.model.Model.ModelProto.Node) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.data.model.Model.ModelProto.Node.Builder) entry; + } private long output_ ; /** @@ -6056,8 +6028,9 @@ public long getOutput() { * @return This builder for chaining. */ public Builder setOutput(long value) { - + output_ = value; + bitField0_ |= 0x00000004; onChanged(); return this; } @@ -6070,7 +6043,7 @@ public Builder setOutput(long value) { * @return This builder for chaining. */ public Builder clearOutput() { - + bitField0_ = (bitField0_ & ~0x00000004); output_ = 0L; onChanged(); return this; @@ -6099,8 +6072,9 @@ public long getIdCounter() { * @return This builder for chaining. */ public Builder setIdCounter(long value) { - + idCounter_ = value; + bitField0_ |= 0x00000008; onChanged(); return this; } @@ -6113,21 +6087,21 @@ public Builder setIdCounter(long value) { * @return This builder for chaining. */ public Builder clearIdCounter() { - + bitField0_ = (bitField0_ & ~0x00000008); idCounter_ = 0L; onChanged(); return this; } private org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams optimizationParams_; - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams, org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams.Builder, org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParamsOrBuilder> optimizationParamsBuilder_; /** * .tensorflow.data.model.ModelProto.OptimizationParams optimization_params = 5; * @return Whether the optimizationParams field is set. */ public boolean hasOptimizationParams() { - return optimizationParamsBuilder_ != null || optimizationParams_ != null; + return ((bitField0_ & 0x00000010) != 0); } /** * .tensorflow.data.model.ModelProto.OptimizationParams optimization_params = 5; @@ -6149,11 +6123,11 @@ public Builder setOptimizationParams(org.tensorflow.proto.data.model.Model.Model throw new NullPointerException(); } optimizationParams_ = value; - onChanged(); } else { optimizationParamsBuilder_.setMessage(value); } - + bitField0_ |= 0x00000010; + onChanged(); return this; } /** @@ -6163,11 +6137,11 @@ public Builder setOptimizationParams( org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams.Builder builderForValue) { if (optimizationParamsBuilder_ == null) { optimizationParams_ = builderForValue.build(); - onChanged(); } else { optimizationParamsBuilder_.setMessage(builderForValue.build()); } - + bitField0_ |= 0x00000010; + onChanged(); return this; } /** @@ -6175,38 +6149,40 @@ public Builder setOptimizationParams( */ public Builder mergeOptimizationParams(org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams value) { if (optimizationParamsBuilder_ == null) { - if (optimizationParams_ != null) { - optimizationParams_ = - org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams.newBuilder(optimizationParams_).mergeFrom(value).buildPartial(); + if (((bitField0_ & 0x00000010) != 0) && + optimizationParams_ != null && + optimizationParams_ != org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams.getDefaultInstance()) { + getOptimizationParamsBuilder().mergeFrom(value); } else { optimizationParams_ = value; } - onChanged(); } else { optimizationParamsBuilder_.mergeFrom(value); } - + if (optimizationParams_ != null) { + bitField0_ |= 0x00000010; + onChanged(); + } return this; } /** * .tensorflow.data.model.ModelProto.OptimizationParams optimization_params = 5; */ public Builder clearOptimizationParams() { - if (optimizationParamsBuilder_ == null) { - optimizationParams_ = null; - onChanged(); - } else { - optimizationParams_ = null; + bitField0_ = (bitField0_ & ~0x00000010); + optimizationParams_ = null; + if (optimizationParamsBuilder_ != null) { + optimizationParamsBuilder_.dispose(); optimizationParamsBuilder_ = null; } - + onChanged(); return this; } /** * .tensorflow.data.model.ModelProto.OptimizationParams optimization_params = 5; */ public org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams.Builder getOptimizationParamsBuilder() { - + bitField0_ |= 0x00000010; onChanged(); return getOptimizationParamsFieldBuilder().getBuilder(); } @@ -6224,11 +6200,11 @@ public org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParamsOrBuil /** * .tensorflow.data.model.ModelProto.OptimizationParams optimization_params = 5; */ - private com.google.protobuf.SingleFieldBuilderV3< + private com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams, org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams.Builder, org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParamsOrBuilder> getOptimizationParamsFieldBuilder() { if (optimizationParamsBuilder_ == null) { - optimizationParamsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + optimizationParamsBuilder_ = new com.google.protobuf.SingleFieldBuilder< org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams, org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParams.Builder, org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParamsOrBuilder>( getOptimizationParams(), getParentForChildren(), @@ -6240,10 +6216,10 @@ public org.tensorflow.proto.data.model.Model.ModelProto.OptimizationParamsOrBuil private com.google.protobuf.Internal.LongList gapTimes_ = emptyLongList(); private void ensureGapTimesIsMutable() { - if (!((bitField0_ & 0x00000002) != 0)) { - gapTimes_ = mutableCopy(gapTimes_); - bitField0_ |= 0x00000002; - } + if (!gapTimes_.isModifiable()) { + gapTimes_ = makeMutableCopy(gapTimes_); + } + bitField0_ |= 0x00000020; } /** * repeated uint64 gap_times = 6; @@ -6251,8 +6227,8 @@ private void ensureGapTimesIsMutable() { */ public java.util.List getGapTimesList() { - return ((bitField0_ & 0x00000002) != 0) ? - java.util.Collections.unmodifiableList(gapTimes_) : gapTimes_; + gapTimes_.makeImmutable(); + return gapTimes_; } /** * repeated uint64 gap_times = 6; @@ -6277,8 +6253,10 @@ public long getGapTimes(int index) { */ public Builder setGapTimes( int index, long value) { + ensureGapTimesIsMutable(); gapTimes_.setLong(index, value); + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -6288,8 +6266,10 @@ public Builder setGapTimes( * @return This builder for chaining. */ public Builder addGapTimes(long value) { + ensureGapTimesIsMutable(); gapTimes_.addLong(value); + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -6303,6 +6283,7 @@ public Builder addAllGapTimes( ensureGapTimesIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, gapTimes_); + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -6312,22 +6293,10 @@ public Builder addAllGapTimes( */ public Builder clearGapTimes() { gapTimes_ = emptyLongList(); - bitField0_ = (bitField0_ & ~0x00000002); + bitField0_ = (bitField0_ & ~0x00000020); onChanged(); return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.data.model.ModelProto) } @@ -6383,27 +6352,27 @@ public org.tensorflow.proto.data.model.Model.ModelProto getDefaultInstanceForTyp private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_data_model_ModelProto_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_data_model_ModelProto_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_data_model_ModelProto_Node_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_data_model_ModelProto_Node_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_data_model_ModelProto_Node_Parameter_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_data_model_ModelProto_Node_Parameter_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_data_model_ModelProto_NodesEntry_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_data_model_ModelProto_NodesEntry_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_data_model_ModelProto_OptimizationParams_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_data_model_ModelProto_OptimizationParams_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor @@ -6460,33 +6429,34 @@ public org.tensorflow.proto.data.model.Model.ModelProto getDefaultInstanceForTyp internal_static_tensorflow_data_model_ModelProto_descriptor = getDescriptor().getMessageTypes().get(0); internal_static_tensorflow_data_model_ModelProto_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_data_model_ModelProto_descriptor, new java.lang.String[] { "DatasetName", "Nodes", "Output", "IdCounter", "OptimizationParams", "GapTimes", }); internal_static_tensorflow_data_model_ModelProto_Node_descriptor = internal_static_tensorflow_data_model_ModelProto_descriptor.getNestedTypes().get(0); internal_static_tensorflow_data_model_ModelProto_Node_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_data_model_ModelProto_Node_descriptor, new java.lang.String[] { "Id", "Name", "Autotune", "BufferedBytes", "BufferedElements", "BytesConsumed", "BytesProduced", "NumElements", "ProcessingTime", "RecordMetrics", "Parameters", "InputProcessingTimeSum", "InputProcessingTimeCount", "Inputs", "NodeClass", "Ratio", "MemoryRatio", }); internal_static_tensorflow_data_model_ModelProto_Node_Parameter_descriptor = internal_static_tensorflow_data_model_ModelProto_Node_descriptor.getNestedTypes().get(0); internal_static_tensorflow_data_model_ModelProto_Node_Parameter_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_data_model_ModelProto_Node_Parameter_descriptor, new java.lang.String[] { "Name", "Value", "StateValue", "Min", "Max", "Tunable", }); internal_static_tensorflow_data_model_ModelProto_NodesEntry_descriptor = internal_static_tensorflow_data_model_ModelProto_descriptor.getNestedTypes().get(1); internal_static_tensorflow_data_model_ModelProto_NodesEntry_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_data_model_ModelProto_NodesEntry_descriptor, new java.lang.String[] { "Key", "Value", }); internal_static_tensorflow_data_model_ModelProto_OptimizationParams_descriptor = internal_static_tensorflow_data_model_ModelProto_descriptor.getNestedTypes().get(2); internal_static_tensorflow_data_model_ModelProto_OptimizationParams_fieldAccessorTable = new - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_tensorflow_data_model_ModelProto_OptimizationParams_descriptor, new java.lang.String[] { "Algorithm", "CpuBudget", "RamBudget", "ModelInputTime", }); + descriptor.resolveAllFeaturesImmutable(); } // @@protoc_insertion_point(outer_class_scope) diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/distributed_runtime/DistributedRuntimePayloads.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/distributed_runtime/DistributedRuntimePayloads.java index 8e895de5c4d..a7c20819032 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/distributed_runtime/DistributedRuntimePayloads.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/distributed_runtime/DistributedRuntimePayloads.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! -// source: tsl/protobuf/distributed_runtime_payloads.proto +// NO CHECKED-IN PROTOBUF GENCODE +// source: xla/tsl/protobuf/distributed_runtime_payloads.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto.distributed_runtime; public final class DistributedRuntimePayloads { private DistributedRuntimePayloads() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + DistributedRuntimePayloads.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -41,7 +52,6 @@ boolean containsPayloads( /** * map<string, bytes> payloads = 1; */ - /* nullable */ com.google.protobuf.ByteString getPayloadsOrDefault( java.lang.String key, @@ -50,7 +60,6 @@ com.google.protobuf.ByteString getPayloadsOrDefault( /** * map<string, bytes> payloads = 1; */ - com.google.protobuf.ByteString getPayloadsOrThrow( java.lang.String key); } @@ -64,29 +73,26 @@ com.google.protobuf.ByteString getPayloadsOrThrow( * Protobuf type {@code tensorflow.distributed_runtime.GrpcPayloadContainer} */ public static final class GrpcPayloadContainer extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.distributed_runtime.GrpcPayloadContainer) GrpcPayloadContainerOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + GrpcPayloadContainer.class.getName()); + } // Use GrpcPayloadContainer.newBuilder() to construct. - private GrpcPayloadContainer(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private GrpcPayloadContainer(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private GrpcPayloadContainer() { } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new GrpcPayloadContainer(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.internal_static_tensorflow_distributed_runtime_GrpcPayloadContainer_descriptor; @@ -94,7 +100,7 @@ protected java.lang.Object newInstance( @SuppressWarnings({"rawtypes"}) @java.lang.Override - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 1: @@ -105,7 +111,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.internal_static_tensorflow_distributed_runtime_GrpcPayloadContainer_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -124,6 +130,7 @@ private static final class PayloadsDefaultEntryHolder { com.google.protobuf.WireFormat.FieldType.BYTES, com.google.protobuf.ByteString.EMPTY); } + @SuppressWarnings("serial") private com.google.protobuf.MapField< java.lang.String, com.google.protobuf.ByteString> payloads_; private com.google.protobuf.MapField @@ -134,14 +141,12 @@ private static final class PayloadsDefaultEntryHolder { } return payloads_; } - public int getPayloadsCount() { return internalGetPayloads().getMap().size(); } /** * map<string, bytes> payloads = 1; */ - @java.lang.Override public boolean containsPayloads( java.lang.String key) { @@ -160,7 +165,6 @@ public java.util.Map getPayloa * map<string, bytes> payloads = 1; */ @java.lang.Override - public java.util.Map getPayloadsMap() { return internalGetPayloads().getMap(); } @@ -168,10 +172,11 @@ public java.util.Map getPayloa * map<string, bytes> payloads = 1; */ @java.lang.Override - - public com.google.protobuf.ByteString getPayloadsOrDefault( + public /* nullable */ +com.google.protobuf.ByteString getPayloadsOrDefault( java.lang.String key, - com.google.protobuf.ByteString defaultValue) { + /* nullable */ +com.google.protobuf.ByteString defaultValue) { if (key == null) { throw new NullPointerException("map key"); } java.util.Map map = internalGetPayloads().getMap(); @@ -181,7 +186,6 @@ public com.google.protobuf.ByteString getPayloadsOrDefault( * map<string, bytes> payloads = 1; */ @java.lang.Override - public com.google.protobuf.ByteString getPayloadsOrThrow( java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } @@ -207,7 +211,7 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - com.google.protobuf.GeneratedMessageV3 + com.google.protobuf.GeneratedMessage .serializeStringMapTo( output, internalGetPayloads(), @@ -303,39 +307,41 @@ public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayload } public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadContainer parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadContainer parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadContainer parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadContainer parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadContainer parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadContainer parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -355,7 +361,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -369,7 +375,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.distributed_runtime.GrpcPayloadContainer} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.distributed_runtime.GrpcPayloadContainer) org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadContainerOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -378,7 +384,7 @@ public static final class Builder extends } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection( int number) { switch (number) { case 1: @@ -389,7 +395,7 @@ protected com.google.protobuf.MapField internalGetMapField( } } @SuppressWarnings({"rawtypes"}) - protected com.google.protobuf.MapField internalGetMutableMapField( + protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection( int number) { switch (number) { case 1: @@ -400,7 +406,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField( } } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.internal_static_tensorflow_distributed_runtime_GrpcPayloadContainer_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -413,13 +419,14 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); + bitField0_ = 0; internalGetMutablePayloads().clear(); return this; } @@ -447,45 +454,19 @@ public org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcP @java.lang.Override public org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadContainer buildPartial() { org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadContainer result = new org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadContainer(this); - int from_bitField0_ = bitField0_; - result.payloads_ = internalGetPayloads(); - result.payloads_.makeImmutable(); + if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); + private void buildPartial0(org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadContainer result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.payloads_ = internalGetPayloads(); + result.payloads_.makeImmutable(); + } } + @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadContainer) { @@ -500,6 +481,7 @@ public Builder mergeFrom(org.tensorflow.proto.distributed_runtime.DistributedRun if (other == org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadContainer.getDefaultInstance()) return this; internalGetMutablePayloads().mergeFrom( other.internalGetPayloads()); + bitField0_ |= 0x00000001; this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -532,6 +514,7 @@ public Builder mergeFrom( PayloadsDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); internalGetMutablePayloads().getMutableMap().put( payloads__.getKey(), payloads__.getValue()); + bitField0_ |= 0x00000001; break; } // case 10 default: { @@ -554,7 +537,7 @@ public Builder mergeFrom( private com.google.protobuf.MapField< java.lang.String, com.google.protobuf.ByteString> payloads_; private com.google.protobuf.MapField - internalGetPayloads() { + internalGetPayloads() { if (payloads_ == null) { return com.google.protobuf.MapField.emptyMapField( PayloadsDefaultEntryHolder.defaultEntry); @@ -562,8 +545,7 @@ public Builder mergeFrom( return payloads_; } private com.google.protobuf.MapField - internalGetMutablePayloads() { - onChanged();; + internalGetMutablePayloads() { if (payloads_ == null) { payloads_ = com.google.protobuf.MapField.newMapField( PayloadsDefaultEntryHolder.defaultEntry); @@ -571,16 +553,16 @@ public Builder mergeFrom( if (!payloads_.isMutable()) { payloads_ = payloads_.copy(); } + bitField0_ |= 0x00000001; + onChanged(); return payloads_; } - public int getPayloadsCount() { return internalGetPayloads().getMap().size(); } /** * map<string, bytes> payloads = 1; */ - @java.lang.Override public boolean containsPayloads( java.lang.String key) { @@ -599,7 +581,6 @@ public java.util.Map getPayloa * map<string, bytes> payloads = 1; */ @java.lang.Override - public java.util.Map getPayloadsMap() { return internalGetPayloads().getMap(); } @@ -607,10 +588,11 @@ public java.util.Map getPayloa * map<string, bytes> payloads = 1; */ @java.lang.Override - - public com.google.protobuf.ByteString getPayloadsOrDefault( + public /* nullable */ +com.google.protobuf.ByteString getPayloadsOrDefault( java.lang.String key, - com.google.protobuf.ByteString defaultValue) { + /* nullable */ +com.google.protobuf.ByteString defaultValue) { if (key == null) { throw new NullPointerException("map key"); } java.util.Map map = internalGetPayloads().getMap(); @@ -620,7 +602,6 @@ public com.google.protobuf.ByteString getPayloadsOrDefault( * map<string, bytes> payloads = 1; */ @java.lang.Override - public com.google.protobuf.ByteString getPayloadsOrThrow( java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } @@ -631,8 +612,8 @@ public com.google.protobuf.ByteString getPayloadsOrThrow( } return map.get(key); } - public Builder clearPayloads() { + bitField0_ = (bitField0_ & ~0x00000001); internalGetMutablePayloads().getMutableMap() .clear(); return this; @@ -640,7 +621,6 @@ public Builder clearPayloads() { /** * map<string, bytes> payloads = 1; */ - public Builder removePayloads( java.lang.String key) { if (key == null) { throw new NullPointerException("map key"); } @@ -653,7 +633,8 @@ public Builder removePayloads( */ @java.lang.Deprecated public java.util.Map - getMutablePayloads() { + getMutablePayloads() { + bitField0_ |= 0x00000001; return internalGetMutablePayloads().getMutableMap(); } /** @@ -663,36 +644,22 @@ public Builder putPayloads( java.lang.String key, com.google.protobuf.ByteString value) { if (key == null) { throw new NullPointerException("map key"); } - if (value == null) { - throw new NullPointerException("map value"); -} - + if (value == null) { throw new NullPointerException("map value"); } internalGetMutablePayloads().getMutableMap() .put(key, value); + bitField0_ |= 0x00000001; return this; } /** * map<string, bytes> payloads = 1; */ - public Builder putAllPayloads( java.util.Map values) { internalGetMutablePayloads().getMutableMap() .putAll(values); + bitField0_ |= 0x00000001; return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.distributed_runtime.GrpcPayloadContainer) } @@ -759,36 +726,33 @@ public interface GrpcPayloadsLostOrBuilder extends * Protobuf type {@code tensorflow.distributed_runtime.GrpcPayloadsLost} */ public static final class GrpcPayloadsLost extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.distributed_runtime.GrpcPayloadsLost) GrpcPayloadsLostOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + GrpcPayloadsLost.class.getName()); + } // Use GrpcPayloadsLost.newBuilder() to construct. - private GrpcPayloadsLost(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private GrpcPayloadsLost(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private GrpcPayloadsLost() { } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new GrpcPayloadsLost(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.internal_static_tensorflow_distributed_runtime_GrpcPayloadsLost_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.internal_static_tensorflow_distributed_runtime_GrpcPayloadsLost_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -883,39 +847,41 @@ public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayload } public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadsLost parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadsLost parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadsLost parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadsLost parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadsLost parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadsLost parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -935,7 +901,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -949,7 +915,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.distributed_runtime.GrpcPayloadsLost} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.distributed_runtime.GrpcPayloadsLost) org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadsLostOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -958,7 +924,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.internal_static_tensorflow_distributed_runtime_GrpcPayloadsLost_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -971,7 +937,7 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @@ -1008,38 +974,6 @@ public org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcP return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); - } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.GrpcPayloadsLost) { @@ -1093,18 +1027,6 @@ public Builder mergeFrom( } // finally return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.distributed_runtime.GrpcPayloadsLost) } @@ -1172,36 +1094,33 @@ public interface WorkerPossiblyRestartedOrBuilder extends * Protobuf type {@code tensorflow.distributed_runtime.WorkerPossiblyRestarted} */ public static final class WorkerPossiblyRestarted extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.distributed_runtime.WorkerPossiblyRestarted) WorkerPossiblyRestartedOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + WorkerPossiblyRestarted.class.getName()); + } // Use WorkerPossiblyRestarted.newBuilder() to construct. - private WorkerPossiblyRestarted(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private WorkerPossiblyRestarted(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private WorkerPossiblyRestarted() { } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new WorkerPossiblyRestarted(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.internal_static_tensorflow_distributed_runtime_WorkerPossiblyRestarted_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.internal_static_tensorflow_distributed_runtime_WorkerPossiblyRestarted_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -1296,39 +1215,41 @@ public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayload } public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.WorkerPossiblyRestarted parseFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.WorkerPossiblyRestarted parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } + public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.WorkerPossiblyRestarted parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input); } + public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.WorkerPossiblyRestarted parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.WorkerPossiblyRestarted parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input); } public static org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.WorkerPossiblyRestarted parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3 + return com.google.protobuf.GeneratedMessage .parseWithIOException(PARSER, input, extensionRegistry); } @@ -1348,7 +1269,7 @@ public Builder toBuilder() { @java.lang.Override protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } @@ -1363,7 +1284,7 @@ protected Builder newBuilderForType( * Protobuf type {@code tensorflow.distributed_runtime.WorkerPossiblyRestarted} */ public static final class Builder extends - com.google.protobuf.GeneratedMessageV3.Builder implements + com.google.protobuf.GeneratedMessage.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.distributed_runtime.WorkerPossiblyRestarted) org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.WorkerPossiblyRestartedOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor @@ -1372,7 +1293,7 @@ public static final class Builder extends } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.internal_static_tensorflow_distributed_runtime_WorkerPossiblyRestarted_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -1385,7 +1306,7 @@ private Builder() { } private Builder( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + com.google.protobuf.GeneratedMessage.BuilderParent parent) { super(parent); } @@ -1422,38 +1343,6 @@ public org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.Worke return result; } - @java.lang.Override - public Builder clone() { - return super.clone(); - } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.setField(field, value); - } - @java.lang.Override - public Builder clearField( - com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } - @java.lang.Override - public Builder clearOneof( - com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - java.lang.Object value) { - return super.addRepeatedField(field, value); - } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.WorkerPossiblyRestarted) { @@ -1507,18 +1396,6 @@ public Builder mergeFrom( } // finally return this; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.distributed_runtime.WorkerPossiblyRestarted) } @@ -1574,22 +1451,22 @@ public org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.Worke private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_distributed_runtime_GrpcPayloadContainer_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_distributed_runtime_GrpcPayloadContainer_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_distributed_runtime_GrpcPayloadContainer_PayloadsEntry_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_distributed_runtime_GrpcPayloadContainer_PayloadsEntry_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_distributed_runtime_GrpcPayloadsLost_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_distributed_runtime_GrpcPayloadsLost_fieldAccessorTable; private static final com.google.protobuf.Descriptors.Descriptor internal_static_tensorflow_distributed_runtime_WorkerPossiblyRestarted_descriptor; private static final - com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_tensorflow_distributed_runtime_WorkerPossiblyRestarted_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor @@ -1600,17 +1477,17 @@ public org.tensorflow.proto.distributed_runtime.DistributedRuntimePayloads.Worke descriptor; static { java.lang.String[] descriptorData = { - "\n/tsl/protobuf/distributed_runtime_paylo" + - "ads.proto\022\036tensorflow.distributed_runtim" + - "e\"\235\001\n\024GrpcPayloadContainer\022T\n\010payloads\030\001" + - " \003(\0132B.tensorflow.distributed_runtime.Gr" + - "pcPayloadContainer.PayloadsEntry\032/\n\rPayl" + - "oadsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\014:\0028" + - "\001\"\022\n\020GrpcPayloadsLost\"\031\n\027WorkerPossiblyR" + - "estartedBk\n(org.tensorflow.proto.distrib" + - "uted_runtimeZ builder) { + private RemoteTensorHandle(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private RemoteTensorHandle() { @@ -22,25 +33,13 @@ private RemoteTensorHandle() { resourceDtypesAndShapes_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new RemoteTensorHandle(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.eager.RemoteTensorHandleProtos.internal_static_tensorflow_eager_RemoteTensorHandle_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.eager.RemoteTensorHandleProtos.internal_static_tensorflow_eager_RemoteTensorHandle_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -48,7 +47,7 @@ protected java.lang.Object newInstance( } public static final int OP_ID_FIELD_NUMBER = 1; - private long opId_; + private long opId_ = 0L; /** *
        * The ID of the operation that produced this tensor.
    @@ -63,7 +62,7 @@ public long getOpId() {
       }
     
       public static final int OUTPUT_NUM_FIELD_NUMBER = 2;
    -  private int outputNum_;
    +  private int outputNum_ = 0;
       /**
        * 
        * The index into the outputs of the operation that produced this tensor.
    @@ -78,7 +77,8 @@ public int getOutputNum() {
       }
     
       public static final int DEVICE_FIELD_NUMBER = 3;
    -  private volatile java.lang.Object device_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object device_ = "";
       /**
        * 
        * Device where the tensor is located. Cannot be empty.
    @@ -126,7 +126,8 @@ public java.lang.String getDevice() {
       }
     
       public static final int OP_DEVICE_FIELD_NUMBER = 4;
    -  private volatile java.lang.Object opDevice_;
    +  @SuppressWarnings("serial")
    +  private volatile java.lang.Object opDevice_ = "";
       /**
        * 
        * Device of the operation producing this tensor. Can be empty if the
    @@ -174,7 +175,7 @@ public java.lang.String getOpDevice() {
       }
     
       public static final int DTYPE_FIELD_NUMBER = 5;
    -  private int dtype_;
    +  private int dtype_ = 0;
       /**
        * 
        * Tensor type.
    @@ -195,12 +196,12 @@ public java.lang.String getOpDevice() {
        * @return The dtype.
        */
       @java.lang.Override public org.tensorflow.proto.DataType getDtype() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
         return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
       }
     
       public static final int RESOURCE_DTYPES_AND_SHAPES_FIELD_NUMBER = 6;
    +  @SuppressWarnings("serial")
       private java.util.List resourceDtypesAndShapes_;
       /**
        * 
    @@ -280,11 +281,11 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (outputNum_ != 0) {
           output.writeInt32(2, outputNum_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(device_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, device_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(device_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 3, device_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(opDevice_)) {
    -      com.google.protobuf.GeneratedMessageV3.writeString(output, 4, opDevice_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(opDevice_)) {
    +      com.google.protobuf.GeneratedMessage.writeString(output, 4, opDevice_);
         }
         if (dtype_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) {
           output.writeEnum(5, dtype_);
    @@ -309,11 +310,11 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeInt32Size(2, outputNum_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(device_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, device_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(device_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, device_);
         }
    -    if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(opDevice_)) {
    -      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, opDevice_);
    +    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(opDevice_)) {
    +      size += com.google.protobuf.GeneratedMessage.computeStringSize(4, opDevice_);
         }
         if (dtype_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) {
           size += com.google.protobuf.CodedOutputStream
    @@ -414,39 +415,41 @@ public static org.tensorflow.proto.eager.RemoteTensorHandle parseFrom(
       }
       public static org.tensorflow.proto.eager.RemoteTensorHandle parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.eager.RemoteTensorHandle parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.eager.RemoteTensorHandle parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.eager.RemoteTensorHandle parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.eager.RemoteTensorHandle parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.eager.RemoteTensorHandle parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -466,7 +469,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -474,7 +477,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.eager.RemoteTensorHandle}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.eager.RemoteTensorHandle)
           org.tensorflow.proto.eager.RemoteTensorHandleOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -483,7 +486,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.eager.RemoteTensorHandleProtos.internal_static_tensorflow_eager_RemoteTensorHandle_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -496,30 +499,26 @@ private Builder() {
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
     
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           opId_ = 0L;
    -
           outputNum_ = 0;
    -
           device_ = "";
    -
           opDevice_ = "";
    -
           dtype_ = 0;
    -
           if (resourceDtypesAndShapesBuilder_ == null) {
             resourceDtypesAndShapes_ = java.util.Collections.emptyList();
           } else {
             resourceDtypesAndShapes_ = null;
             resourceDtypesAndShapesBuilder_.clear();
           }
    -      bitField0_ = (bitField0_ & ~0x00000001);
    +      bitField0_ = (bitField0_ & ~0x00000020);
           return this;
         }
     
    @@ -546,57 +545,43 @@ public org.tensorflow.proto.eager.RemoteTensorHandle build() {
         @java.lang.Override
         public org.tensorflow.proto.eager.RemoteTensorHandle buildPartial() {
           org.tensorflow.proto.eager.RemoteTensorHandle result = new org.tensorflow.proto.eager.RemoteTensorHandle(this);
    -      int from_bitField0_ = bitField0_;
    -      result.opId_ = opId_;
    -      result.outputNum_ = outputNum_;
    -      result.device_ = device_;
    -      result.opDevice_ = opDevice_;
    -      result.dtype_ = dtype_;
    +      buildPartialRepeatedFields(result);
    +      if (bitField0_ != 0) { buildPartial0(result); }
    +      onBuilt();
    +      return result;
    +    }
    +
    +    private void buildPartialRepeatedFields(org.tensorflow.proto.eager.RemoteTensorHandle result) {
           if (resourceDtypesAndShapesBuilder_ == null) {
    -        if (((bitField0_ & 0x00000001) != 0)) {
    +        if (((bitField0_ & 0x00000020) != 0)) {
               resourceDtypesAndShapes_ = java.util.Collections.unmodifiableList(resourceDtypesAndShapes_);
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000020);
             }
             result.resourceDtypesAndShapes_ = resourceDtypesAndShapes_;
           } else {
             result.resourceDtypesAndShapes_ = resourceDtypesAndShapesBuilder_.build();
           }
    -      onBuilt();
    -      return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.eager.RemoteTensorHandle result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.opId_ = opId_;
    +      }
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.outputNum_ = outputNum_;
    +      }
    +      if (((from_bitField0_ & 0x00000004) != 0)) {
    +        result.device_ = device_;
    +      }
    +      if (((from_bitField0_ & 0x00000008) != 0)) {
    +        result.opDevice_ = opDevice_;
    +      }
    +      if (((from_bitField0_ & 0x00000010) != 0)) {
    +        result.dtype_ = dtype_;
    +      }
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.eager.RemoteTensorHandle) {
    @@ -617,10 +602,12 @@ public Builder mergeFrom(org.tensorflow.proto.eager.RemoteTensorHandle other) {
           }
           if (!other.getDevice().isEmpty()) {
             device_ = other.device_;
    +        bitField0_ |= 0x00000004;
             onChanged();
           }
           if (!other.getOpDevice().isEmpty()) {
             opDevice_ = other.opDevice_;
    +        bitField0_ |= 0x00000008;
             onChanged();
           }
           if (other.dtype_ != 0) {
    @@ -630,7 +617,7 @@ public Builder mergeFrom(org.tensorflow.proto.eager.RemoteTensorHandle other) {
             if (!other.resourceDtypesAndShapes_.isEmpty()) {
               if (resourceDtypesAndShapes_.isEmpty()) {
                 resourceDtypesAndShapes_ = other.resourceDtypesAndShapes_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000020);
               } else {
                 ensureResourceDtypesAndShapesIsMutable();
                 resourceDtypesAndShapes_.addAll(other.resourceDtypesAndShapes_);
    @@ -643,9 +630,9 @@ public Builder mergeFrom(org.tensorflow.proto.eager.RemoteTensorHandle other) {
                 resourceDtypesAndShapesBuilder_.dispose();
                 resourceDtypesAndShapesBuilder_ = null;
                 resourceDtypesAndShapes_ = other.resourceDtypesAndShapes_;
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000020);
                 resourceDtypesAndShapesBuilder_ = 
    -              com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +              com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                      getResourceDtypesAndShapesFieldBuilder() : null;
               } else {
                 resourceDtypesAndShapesBuilder_.addAllMessages(other.resourceDtypesAndShapes_);
    @@ -680,27 +667,27 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   opId_ = input.readInt64();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 16: {
                   outputNum_ = input.readInt32();
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 16
                 case 26: {
                   device_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000004;
                   break;
                 } // case 26
                 case 34: {
                   opDevice_ = input.readStringRequireUtf8();
    -
    +              bitField0_ |= 0x00000008;
                   break;
                 } // case 34
                 case 40: {
                   dtype_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000010;
                   break;
                 } // case 40
                 case 50: {
    @@ -756,8 +743,9 @@ public long getOpId() {
          * @return This builder for chaining.
          */
         public Builder setOpId(long value) {
    -      
    +
           opId_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -770,7 +758,7 @@ public Builder setOpId(long value) {
          * @return This builder for chaining.
          */
         public Builder clearOpId() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           opId_ = 0L;
           onChanged();
           return this;
    @@ -799,8 +787,9 @@ public int getOutputNum() {
          * @return This builder for chaining.
          */
         public Builder setOutputNum(int value) {
    -      
    +
           outputNum_ = value;
    +      bitField0_ |= 0x00000002;
           onChanged();
           return this;
         }
    @@ -813,7 +802,7 @@ public Builder setOutputNum(int value) {
          * @return This builder for chaining.
          */
         public Builder clearOutputNum() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000002);
           outputNum_ = 0;
           onChanged();
           return this;
    @@ -875,11 +864,9 @@ public java.lang.String getDevice() {
          */
         public Builder setDevice(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           device_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -893,8 +880,8 @@ public Builder setDevice(
          * @return This builder for chaining.
          */
         public Builder clearDevice() {
    -      
           device_ = getDefaultInstance().getDevice();
    +      bitField0_ = (bitField0_ & ~0x00000004);
           onChanged();
           return this;
         }
    @@ -910,12 +897,10 @@ public Builder clearDevice() {
          */
         public Builder setDeviceBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           device_ = value;
    +      bitField0_ |= 0x00000004;
           onChanged();
           return this;
         }
    @@ -976,11 +961,9 @@ public java.lang.String getOpDevice() {
          */
         public Builder setOpDevice(
             java.lang.String value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +      if (value == null) { throw new NullPointerException(); }
           opDevice_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -994,8 +977,8 @@ public Builder setOpDevice(
          * @return This builder for chaining.
          */
         public Builder clearOpDevice() {
    -      
           opDevice_ = getDefaultInstance().getOpDevice();
    +      bitField0_ = (bitField0_ & ~0x00000008);
           onChanged();
           return this;
         }
    @@ -1011,12 +994,10 @@ public Builder clearOpDevice() {
          */
         public Builder setOpDeviceBytes(
             com.google.protobuf.ByteString value) {
    -      if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -      
    +      if (value == null) { throw new NullPointerException(); }
    +      checkByteStringIsUtf8(value);
           opDevice_ = value;
    +      bitField0_ |= 0x00000008;
           onChanged();
           return this;
         }
    @@ -1043,8 +1024,8 @@ public Builder setOpDeviceBytes(
          * @return This builder for chaining.
          */
         public Builder setDtypeValue(int value) {
    -      
           dtype_ = value;
    +      bitField0_ |= 0x00000010;
           onChanged();
           return this;
         }
    @@ -1058,8 +1039,7 @@ public Builder setDtypeValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.DataType getDtype() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
           return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
         }
         /**
    @@ -1075,7 +1055,7 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000010;
           dtype_ = value.getNumber();
           onChanged();
           return this;
    @@ -1089,7 +1069,7 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
          * @return This builder for chaining.
          */
         public Builder clearDtype() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000010);
           dtype_ = 0;
           onChanged();
           return this;
    @@ -1098,13 +1078,13 @@ public Builder clearDtype() {
         private java.util.List resourceDtypesAndShapes_ =
           java.util.Collections.emptyList();
         private void ensureResourceDtypesAndShapesIsMutable() {
    -      if (!((bitField0_ & 0x00000001) != 0)) {
    +      if (!((bitField0_ & 0x00000020) != 0)) {
             resourceDtypesAndShapes_ = new java.util.ArrayList(resourceDtypesAndShapes_);
    -        bitField0_ |= 0x00000001;
    +        bitField0_ |= 0x00000020;
            }
         }
     
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.eager.ResourceDtypeAndShape, org.tensorflow.proto.eager.ResourceDtypeAndShape.Builder, org.tensorflow.proto.eager.ResourceDtypeAndShapeOrBuilder> resourceDtypesAndShapesBuilder_;
     
         /**
    @@ -1294,7 +1274,7 @@ public Builder addAllResourceDtypesAndShapes(
         public Builder clearResourceDtypesAndShapes() {
           if (resourceDtypesAndShapesBuilder_ == null) {
             resourceDtypesAndShapes_ = java.util.Collections.emptyList();
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000020);
             onChanged();
           } else {
             resourceDtypesAndShapesBuilder_.clear();
    @@ -1392,32 +1372,20 @@ public org.tensorflow.proto.eager.ResourceDtypeAndShape.Builder addResourceDtype
              getResourceDtypesAndShapesBuilderList() {
           return getResourceDtypesAndShapesFieldBuilder().getBuilderList();
         }
    -    private com.google.protobuf.RepeatedFieldBuilderV3<
    +    private com.google.protobuf.RepeatedFieldBuilder<
             org.tensorflow.proto.eager.ResourceDtypeAndShape, org.tensorflow.proto.eager.ResourceDtypeAndShape.Builder, org.tensorflow.proto.eager.ResourceDtypeAndShapeOrBuilder> 
             getResourceDtypesAndShapesFieldBuilder() {
           if (resourceDtypesAndShapesBuilder_ == null) {
    -        resourceDtypesAndShapesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +        resourceDtypesAndShapesBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                 org.tensorflow.proto.eager.ResourceDtypeAndShape, org.tensorflow.proto.eager.ResourceDtypeAndShape.Builder, org.tensorflow.proto.eager.ResourceDtypeAndShapeOrBuilder>(
                     resourceDtypesAndShapes_,
    -                ((bitField0_ & 0x00000001) != 0),
    +                ((bitField0_ & 0x00000020) != 0),
                     getParentForChildren(),
                     isClean());
             resourceDtypesAndShapes_ = null;
           }
           return resourceDtypesAndShapesBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.eager.RemoteTensorHandle)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/eager/RemoteTensorHandleOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/eager/RemoteTensorHandleOrBuilder.java
    index 4727a45247b..9eb4ee66050 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/eager/RemoteTensorHandleOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/eager/RemoteTensorHandleOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/remote_tensor_handle.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto.eager;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/eager/RemoteTensorHandleProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/eager/RemoteTensorHandleProtos.java
    index fc295ca1179..45419a5c2bc 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/eager/RemoteTensorHandleProtos.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/eager/RemoteTensorHandleProtos.java
    @@ -1,10 +1,21 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/remote_tensor_handle.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto.eager;
     
     public final class RemoteTensorHandleProtos {
       private RemoteTensorHandleProtos() {}
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      RemoteTensorHandleProtos.class.getName());
    +  }
       public static void registerAllExtensions(
           com.google.protobuf.ExtensionRegistryLite registry) {
       }
    @@ -17,12 +28,12 @@ public static void registerAllExtensions(
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_eager_ResourceDtypeAndShape_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_eager_ResourceDtypeAndShape_fieldAccessorTable;
       static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_eager_RemoteTensorHandle_descriptor;
       static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_eager_RemoteTensorHandle_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -59,15 +70,16 @@ public static void registerAllExtensions(
         internal_static_tensorflow_eager_ResourceDtypeAndShape_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_eager_ResourceDtypeAndShape_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_eager_ResourceDtypeAndShape_descriptor,
             new java.lang.String[] { "Dtype", "Shape", });
         internal_static_tensorflow_eager_RemoteTensorHandle_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_eager_RemoteTensorHandle_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_eager_RemoteTensorHandle_descriptor,
             new java.lang.String[] { "OpId", "OutputNum", "Device", "OpDevice", "Dtype", "ResourceDtypesAndShapes", });
    +    descriptor.resolveAllFeaturesImmutable();
         org.tensorflow.proto.TensorShapeProtos.getDescriptor();
         org.tensorflow.proto.TypesProtos.getDescriptor();
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/eager/ResourceDtypeAndShape.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/eager/ResourceDtypeAndShape.java
    index 34bcff52797..5612cb28e21 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/eager/ResourceDtypeAndShape.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/eager/ResourceDtypeAndShape.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/remote_tensor_handle.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto.eager;
     
    @@ -7,45 +9,43 @@
      * Protobuf type {@code tensorflow.eager.ResourceDtypeAndShape}
      */
     public final class ResourceDtypeAndShape extends
    -    com.google.protobuf.GeneratedMessageV3 implements
    +    com.google.protobuf.GeneratedMessage implements
         // @@protoc_insertion_point(message_implements:tensorflow.eager.ResourceDtypeAndShape)
         ResourceDtypeAndShapeOrBuilder {
     private static final long serialVersionUID = 0L;
    +  static {
    +    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +      /* major= */ 4,
    +      /* minor= */ 28,
    +      /* patch= */ 3,
    +      /* suffix= */ "",
    +      ResourceDtypeAndShape.class.getName());
    +  }
       // Use ResourceDtypeAndShape.newBuilder() to construct.
    -  private ResourceDtypeAndShape(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +  private ResourceDtypeAndShape(com.google.protobuf.GeneratedMessage.Builder builder) {
         super(builder);
       }
       private ResourceDtypeAndShape() {
         dtype_ = 0;
       }
     
    -  @java.lang.Override
    -  @SuppressWarnings({"unused"})
    -  protected java.lang.Object newInstance(
    -      UnusedPrivateParameter unused) {
    -    return new ResourceDtypeAndShape();
    -  }
    -
    -  @java.lang.Override
    -  public final com.google.protobuf.UnknownFieldSet
    -  getUnknownFields() {
    -    return this.unknownFields;
    -  }
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.tensorflow.proto.eager.RemoteTensorHandleProtos.internal_static_tensorflow_eager_ResourceDtypeAndShape_descriptor;
       }
     
       @java.lang.Override
    -  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.tensorflow.proto.eager.RemoteTensorHandleProtos.internal_static_tensorflow_eager_ResourceDtypeAndShape_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
                 org.tensorflow.proto.eager.ResourceDtypeAndShape.class, org.tensorflow.proto.eager.ResourceDtypeAndShape.Builder.class);
       }
     
    +  private int bitField0_;
       public static final int DTYPE_FIELD_NUMBER = 1;
    -  private int dtype_;
    +  private int dtype_ = 0;
       /**
        * .tensorflow.DataType dtype = 1;
        * @return The enum numeric value on the wire for dtype.
    @@ -58,8 +58,7 @@ protected java.lang.Object newInstance(
        * @return The dtype.
        */
       @java.lang.Override public org.tensorflow.proto.DataType getDtype() {
    -    @SuppressWarnings("deprecation")
    -    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +    org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
         return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
       }
     
    @@ -71,7 +70,7 @@ protected java.lang.Object newInstance(
        */
       @java.lang.Override
       public boolean hasShape() {
    -    return shape_ != null;
    +    return ((bitField0_ & 0x00000001) != 0);
       }
       /**
        * .tensorflow.TensorShapeProto shape = 2;
    @@ -86,7 +85,7 @@ public org.tensorflow.proto.TensorShapeProto getShape() {
        */
       @java.lang.Override
       public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
    -    return getShape();
    +    return shape_ == null ? org.tensorflow.proto.TensorShapeProto.getDefaultInstance() : shape_;
       }
     
       private byte memoizedIsInitialized = -1;
    @@ -106,7 +105,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
         if (dtype_ != org.tensorflow.proto.DataType.DT_INVALID.getNumber()) {
           output.writeEnum(1, dtype_);
         }
    -    if (shape_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           output.writeMessage(2, getShape());
         }
         getUnknownFields().writeTo(output);
    @@ -122,7 +121,7 @@ public int getSerializedSize() {
           size += com.google.protobuf.CodedOutputStream
             .computeEnumSize(1, dtype_);
         }
    -    if (shape_ != null) {
    +    if (((bitField0_ & 0x00000001) != 0)) {
           size += com.google.protobuf.CodedOutputStream
             .computeMessageSize(2, getShape());
         }
    @@ -203,39 +202,41 @@ public static org.tensorflow.proto.eager.ResourceDtypeAndShape parseFrom(
       }
       public static org.tensorflow.proto.eager.ResourceDtypeAndShape parseFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.eager.ResourceDtypeAndShape parseFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
    +
       public static org.tensorflow.proto.eager.ResourceDtypeAndShape parseDelimitedFrom(java.io.InputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input);
       }
    +
       public static org.tensorflow.proto.eager.ResourceDtypeAndShape parseDelimitedFrom(
           java.io.InputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
       }
       public static org.tensorflow.proto.eager.ResourceDtypeAndShape parseFrom(
           com.google.protobuf.CodedInputStream input)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input);
       }
       public static org.tensorflow.proto.eager.ResourceDtypeAndShape parseFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
    -    return com.google.protobuf.GeneratedMessageV3
    +    return com.google.protobuf.GeneratedMessage
             .parseWithIOException(PARSER, input, extensionRegistry);
       }
     
    @@ -255,7 +256,7 @@ public Builder toBuilder() {
     
       @java.lang.Override
       protected Builder newBuilderForType(
    -      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         Builder builder = new Builder(parent);
         return builder;
       }
    @@ -263,7 +264,7 @@ protected Builder newBuilderForType(
        * Protobuf type {@code tensorflow.eager.ResourceDtypeAndShape}
        */
       public static final class Builder extends
    -      com.google.protobuf.GeneratedMessageV3.Builder implements
    +      com.google.protobuf.GeneratedMessage.Builder implements
           // @@protoc_insertion_point(builder_implements:tensorflow.eager.ResourceDtypeAndShape)
           org.tensorflow.proto.eager.ResourceDtypeAndShapeOrBuilder {
         public static final com.google.protobuf.Descriptors.Descriptor
    @@ -272,7 +273,7 @@ public static final class Builder extends
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.eager.RemoteTensorHandleProtos.internal_static_tensorflow_eager_ResourceDtypeAndShape_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -281,23 +282,28 @@ public static final class Builder extends
     
         // Construct using org.tensorflow.proto.eager.ResourceDtypeAndShape.newBuilder()
         private Builder() {
    -
    +      maybeForceBuilderInitialization();
         }
     
         private Builder(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           super(parent);
    -
    +      maybeForceBuilderInitialization();
    +    }
    +    private void maybeForceBuilderInitialization() {
    +      if (com.google.protobuf.GeneratedMessage
    +              .alwaysUseFieldBuilders) {
    +        getShapeFieldBuilder();
    +      }
         }
         @java.lang.Override
         public Builder clear() {
           super.clear();
    +      bitField0_ = 0;
           dtype_ = 0;
    -
    -      if (shapeBuilder_ == null) {
    -        shape_ = null;
    -      } else {
    -        shape_ = null;
    +      shape_ = null;
    +      if (shapeBuilder_ != null) {
    +        shapeBuilder_.dispose();
             shapeBuilder_ = null;
           }
           return this;
    @@ -326,48 +332,26 @@ public org.tensorflow.proto.eager.ResourceDtypeAndShape build() {
         @java.lang.Override
         public org.tensorflow.proto.eager.ResourceDtypeAndShape buildPartial() {
           org.tensorflow.proto.eager.ResourceDtypeAndShape result = new org.tensorflow.proto.eager.ResourceDtypeAndShape(this);
    -      result.dtype_ = dtype_;
    -      if (shapeBuilder_ == null) {
    -        result.shape_ = shape_;
    -      } else {
    -        result.shape_ = shapeBuilder_.build();
    -      }
    +      if (bitField0_ != 0) { buildPartial0(result); }
           onBuilt();
           return result;
         }
     
    -    @java.lang.Override
    -    public Builder clone() {
    -      return super.clone();
    -    }
    -    @java.lang.Override
    -    public Builder setField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.setField(field, value);
    -    }
    -    @java.lang.Override
    -    public Builder clearField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field) {
    -      return super.clearField(field);
    -    }
    -    @java.lang.Override
    -    public Builder clearOneof(
    -        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -      return super.clearOneof(oneof);
    -    }
    -    @java.lang.Override
    -    public Builder setRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        int index, java.lang.Object value) {
    -      return super.setRepeatedField(field, index, value);
    -    }
    -    @java.lang.Override
    -    public Builder addRepeatedField(
    -        com.google.protobuf.Descriptors.FieldDescriptor field,
    -        java.lang.Object value) {
    -      return super.addRepeatedField(field, value);
    +    private void buildPartial0(org.tensorflow.proto.eager.ResourceDtypeAndShape result) {
    +      int from_bitField0_ = bitField0_;
    +      if (((from_bitField0_ & 0x00000001) != 0)) {
    +        result.dtype_ = dtype_;
    +      }
    +      int to_bitField0_ = 0;
    +      if (((from_bitField0_ & 0x00000002) != 0)) {
    +        result.shape_ = shapeBuilder_ == null
    +            ? shape_
    +            : shapeBuilder_.build();
    +        to_bitField0_ |= 0x00000001;
    +      }
    +      result.bitField0_ |= to_bitField0_;
         }
    +
         @java.lang.Override
         public Builder mergeFrom(com.google.protobuf.Message other) {
           if (other instanceof org.tensorflow.proto.eager.ResourceDtypeAndShape) {
    @@ -414,14 +398,14 @@ public Builder mergeFrom(
                   break;
                 case 8: {
                   dtype_ = input.readEnum();
    -
    +              bitField0_ |= 0x00000001;
                   break;
                 } // case 8
                 case 18: {
                   input.readMessage(
                       getShapeFieldBuilder().getBuilder(),
                       extensionRegistry);
    -
    +              bitField0_ |= 0x00000002;
                   break;
                 } // case 18
                 default: {
    @@ -439,6 +423,7 @@ public Builder mergeFrom(
           } // finally
           return this;
         }
    +    private int bitField0_;
     
         private int dtype_ = 0;
         /**
    @@ -454,8 +439,8 @@ public Builder mergeFrom(
          * @return This builder for chaining.
          */
         public Builder setDtypeValue(int value) {
    -      
           dtype_ = value;
    +      bitField0_ |= 0x00000001;
           onChanged();
           return this;
         }
    @@ -465,8 +450,7 @@ public Builder setDtypeValue(int value) {
          */
         @java.lang.Override
         public org.tensorflow.proto.DataType getDtype() {
    -      @SuppressWarnings("deprecation")
    -      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.valueOf(dtype_);
    +      org.tensorflow.proto.DataType result = org.tensorflow.proto.DataType.forNumber(dtype_);
           return result == null ? org.tensorflow.proto.DataType.UNRECOGNIZED : result;
         }
         /**
    @@ -478,7 +462,7 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
           if (value == null) {
             throw new NullPointerException();
           }
    -      
    +      bitField0_ |= 0x00000001;
           dtype_ = value.getNumber();
           onChanged();
           return this;
    @@ -488,21 +472,21 @@ public Builder setDtype(org.tensorflow.proto.DataType value) {
          * @return This builder for chaining.
          */
         public Builder clearDtype() {
    -      
    +      bitField0_ = (bitField0_ & ~0x00000001);
           dtype_ = 0;
           onChanged();
           return this;
         }
     
         private org.tensorflow.proto.TensorShapeProto shape_;
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> shapeBuilder_;
         /**
          * .tensorflow.TensorShapeProto shape = 2;
          * @return Whether the shape field is set.
          */
         public boolean hasShape() {
    -      return shapeBuilder_ != null || shape_ != null;
    +      return ((bitField0_ & 0x00000002) != 0);
         }
         /**
          * .tensorflow.TensorShapeProto shape = 2;
    @@ -524,11 +508,11 @@ public Builder setShape(org.tensorflow.proto.TensorShapeProto value) {
               throw new NullPointerException();
             }
             shape_ = value;
    -        onChanged();
           } else {
             shapeBuilder_.setMessage(value);
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -538,11 +522,11 @@ public Builder setShape(
             org.tensorflow.proto.TensorShapeProto.Builder builderForValue) {
           if (shapeBuilder_ == null) {
             shape_ = builderForValue.build();
    -        onChanged();
           } else {
             shapeBuilder_.setMessage(builderForValue.build());
           }
    -
    +      bitField0_ |= 0x00000002;
    +      onChanged();
           return this;
         }
         /**
    @@ -550,38 +534,40 @@ public Builder setShape(
          */
         public Builder mergeShape(org.tensorflow.proto.TensorShapeProto value) {
           if (shapeBuilder_ == null) {
    -        if (shape_ != null) {
    -          shape_ =
    -            org.tensorflow.proto.TensorShapeProto.newBuilder(shape_).mergeFrom(value).buildPartial();
    +        if (((bitField0_ & 0x00000002) != 0) &&
    +          shape_ != null &&
    +          shape_ != org.tensorflow.proto.TensorShapeProto.getDefaultInstance()) {
    +          getShapeBuilder().mergeFrom(value);
             } else {
               shape_ = value;
             }
    -        onChanged();
           } else {
             shapeBuilder_.mergeFrom(value);
           }
    -
    +      if (shape_ != null) {
    +        bitField0_ |= 0x00000002;
    +        onChanged();
    +      }
           return this;
         }
         /**
          * .tensorflow.TensorShapeProto shape = 2;
          */
         public Builder clearShape() {
    -      if (shapeBuilder_ == null) {
    -        shape_ = null;
    -        onChanged();
    -      } else {
    -        shape_ = null;
    +      bitField0_ = (bitField0_ & ~0x00000002);
    +      shape_ = null;
    +      if (shapeBuilder_ != null) {
    +        shapeBuilder_.dispose();
             shapeBuilder_ = null;
           }
    -
    +      onChanged();
           return this;
         }
         /**
          * .tensorflow.TensorShapeProto shape = 2;
          */
         public org.tensorflow.proto.TensorShapeProto.Builder getShapeBuilder() {
    -      
    +      bitField0_ |= 0x00000002;
           onChanged();
           return getShapeFieldBuilder().getBuilder();
         }
    @@ -599,11 +585,11 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
         /**
          * .tensorflow.TensorShapeProto shape = 2;
          */
    -    private com.google.protobuf.SingleFieldBuilderV3<
    +    private com.google.protobuf.SingleFieldBuilder<
             org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder> 
             getShapeFieldBuilder() {
           if (shapeBuilder_ == null) {
    -        shapeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
    +        shapeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
                 org.tensorflow.proto.TensorShapeProto, org.tensorflow.proto.TensorShapeProto.Builder, org.tensorflow.proto.TensorShapeProtoOrBuilder>(
                     getShape(),
                     getParentForChildren(),
    @@ -612,18 +598,6 @@ public org.tensorflow.proto.TensorShapeProtoOrBuilder getShapeOrBuilder() {
           }
           return shapeBuilder_;
         }
    -    @java.lang.Override
    -    public final Builder setUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.setUnknownFields(unknownFields);
    -    }
    -
    -    @java.lang.Override
    -    public final Builder mergeUnknownFields(
    -        final com.google.protobuf.UnknownFieldSet unknownFields) {
    -      return super.mergeUnknownFields(unknownFields);
    -    }
    -
     
         // @@protoc_insertion_point(builder_scope:tensorflow.eager.ResourceDtypeAndShape)
       }
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/eager/ResourceDtypeAndShapeOrBuilder.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/eager/ResourceDtypeAndShapeOrBuilder.java
    index bbbdd73d315..62bf875b768 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/eager/ResourceDtypeAndShapeOrBuilder.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/eager/ResourceDtypeAndShapeOrBuilder.java
    @@ -1,5 +1,7 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    +// NO CHECKED-IN PROTOBUF GENCODE
     // source: tensorflow/core/protobuf/remote_tensor_handle.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto.eager;
     
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/error/Code.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/error/Code.java
    index 3c8fe9c414e..ccc93676255 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/error/Code.java
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/error/Code.java
    @@ -1,18 +1,23 @@
     // Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tsl/protobuf/error_codes.proto
    +// NO CHECKED-IN PROTOBUF GENCODE
    +// source: xla/tsl/protobuf/error_codes.proto
    +// Protobuf Java Version: 4.28.3
     
     package org.tensorflow.proto.error;
     
     /**
      * 
      * The canonical error codes for TensorFlow APIs.
    + *
      * Warnings:
    + *
      * -   Do not change any numeric assignments.
      * -   Changes to this list should only be made if there is a compelling
    - *     need that can't be satisfied in another way.  Such changes
    - *     must be approved by at least two OWNERS.
    + * need that can't be satisfied in another way.  Such changes
    + * must be approved by at least two OWNERS.
      * -   These error codes must match gRPC and protobuf error codes (except for
    - *     DO_NOT_USE_RESERVED_FOR_FUTURE_EXPANSION_USE_DEFAULT_IN_SWITCH_INSTEAD_).
    + * DO_NOT_USE_RESERVED_FOR_FUTURE_EXPANSION_USE_DEFAULT_IN_SWITCH_INSTEAD_).
    + *
      * Sometimes multiple error codes may apply.  Services should return
      * the most specific error code that applies.  For example, prefer
      * OUT_OF_RANGE over FAILED_PRECONDITION if both codes apply.
    @@ -130,20 +135,21 @@ public enum Code
        * required for the operation's execution.  For example, directory
        * to be deleted may be non-empty, an rmdir operation is applied to
        * a non-directory, etc.
    +   *
        * A litmus test that may help a service implementor in deciding
        * between FAILED_PRECONDITION, ABORTED, and UNAVAILABLE:
    -   *  (a) Use UNAVAILABLE if the client can retry just the failing call.
    -   *  (b) Use ABORTED if the client should retry at a higher-level
    -   *      (e.g., restarting a read-modify-write sequence).
    -   *  (c) Use FAILED_PRECONDITION if the client should not retry until
    -   *      the system state has been explicitly fixed.  E.g., if an "rmdir"
    -   *      fails because the directory is non-empty, FAILED_PRECONDITION
    -   *      should be returned since the client should not retry unless
    -   *      they have first fixed up the directory by deleting files from it.
    -   *  (d) Use FAILED_PRECONDITION if the client performs conditional
    -   *      REST Get/Update/Delete on a resource and the resource on the
    -   *      server does not match the condition. E.g., conflicting
    -   *      read-modify-write on the same resource.
    +   * (a) Use UNAVAILABLE if the client can retry just the failing call.
    +   * (b) Use ABORTED if the client should retry at a higher-level
    +   * (e.g., restarting a read-modify-write sequence).
    +   * (c) Use FAILED_PRECONDITION if the client should not retry until
    +   * the system state has been explicitly fixed.  E.g., if an "rmdir"
    +   * fails because the directory is non-empty, FAILED_PRECONDITION
    +   * should be returned since the client should not retry unless
    +   * they have first fixed up the directory by deleting files from it.
    +   * (d) Use FAILED_PRECONDITION if the client performs conditional
    +   * REST Get/Update/Delete on a resource and the resource on the
    +   * server does not match the condition. E.g., conflicting
    +   * read-modify-write on the same resource.
        * 
    * * FAILED_PRECONDITION = 9; @@ -153,6 +159,7 @@ public enum Code *
        * The operation was aborted, typically due to a concurrency issue
        * like sequencer check failures, transaction aborts, etc.
    +   *
        * See litmus test above for deciding between FAILED_PRECONDITION,
        * ABORTED, and UNAVAILABLE.
        * 
    @@ -164,12 +171,14 @@ public enum Code *
        * Operation tried to iterate past the valid input range.  E.g., seeking or
        * reading past end of file.
    +   *
        * Unlike INVALID_ARGUMENT, this error indicates a problem that may
        * be fixed if the system state changes. For example, a 32-bit file
        * system will generate INVALID_ARGUMENT if asked to read at an
        * offset that is not in the range [0,2^32-1], but it will generate
        * OUT_OF_RANGE if asked to read from an offset past the current
        * file size.
    +   *
        * There is a fair bit of overlap between FAILED_PRECONDITION and
        * OUT_OF_RANGE.  We recommend using OUT_OF_RANGE (the more specific
        * error) when it applies so that callers who are iterating through
    @@ -203,6 +212,7 @@ public enum Code
        * The service is currently unavailable.  This is a most likely a
        * transient condition and may be corrected by retrying with
        * a backoff.
    +   *
        * See litmus test above for deciding between FAILED_PRECONDITION,
        * ABORTED, and UNAVAILABLE.
        * 
    @@ -222,9 +232,11 @@ public enum Code *
        * An extra enum entry to prevent people from writing code that
        * fails to compile when a new code is added.
    +   *
        * Nobody should ever reference this enumeration entry. In particular,
        * if you write C++ code that switches on this enumeration, add a default:
        * case instead of a case that mentions this enumeration entry.
    +   *
        * Nobody should rely on the value (currently 20) listed here.  It
        * may change in the future.
        * 
    @@ -235,6 +247,15 @@ public enum Code UNRECOGNIZED(-1), ; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + Code.class.getName()); + } /** *
        * Not an error; returned on success
    @@ -342,20 +363,21 @@ public enum Code
        * required for the operation's execution.  For example, directory
        * to be deleted may be non-empty, an rmdir operation is applied to
        * a non-directory, etc.
    +   *
        * A litmus test that may help a service implementor in deciding
        * between FAILED_PRECONDITION, ABORTED, and UNAVAILABLE:
    -   *  (a) Use UNAVAILABLE if the client can retry just the failing call.
    -   *  (b) Use ABORTED if the client should retry at a higher-level
    -   *      (e.g., restarting a read-modify-write sequence).
    -   *  (c) Use FAILED_PRECONDITION if the client should not retry until
    -   *      the system state has been explicitly fixed.  E.g., if an "rmdir"
    -   *      fails because the directory is non-empty, FAILED_PRECONDITION
    -   *      should be returned since the client should not retry unless
    -   *      they have first fixed up the directory by deleting files from it.
    -   *  (d) Use FAILED_PRECONDITION if the client performs conditional
    -   *      REST Get/Update/Delete on a resource and the resource on the
    -   *      server does not match the condition. E.g., conflicting
    -   *      read-modify-write on the same resource.
    +   * (a) Use UNAVAILABLE if the client can retry just the failing call.
    +   * (b) Use ABORTED if the client should retry at a higher-level
    +   * (e.g., restarting a read-modify-write sequence).
    +   * (c) Use FAILED_PRECONDITION if the client should not retry until
    +   * the system state has been explicitly fixed.  E.g., if an "rmdir"
    +   * fails because the directory is non-empty, FAILED_PRECONDITION
    +   * should be returned since the client should not retry unless
    +   * they have first fixed up the directory by deleting files from it.
    +   * (d) Use FAILED_PRECONDITION if the client performs conditional
    +   * REST Get/Update/Delete on a resource and the resource on the
    +   * server does not match the condition. E.g., conflicting
    +   * read-modify-write on the same resource.
        * 
    * * FAILED_PRECONDITION = 9; @@ -365,6 +387,7 @@ public enum Code *
        * The operation was aborted, typically due to a concurrency issue
        * like sequencer check failures, transaction aborts, etc.
    +   *
        * See litmus test above for deciding between FAILED_PRECONDITION,
        * ABORTED, and UNAVAILABLE.
        * 
    @@ -376,12 +399,14 @@ public enum Code *
        * Operation tried to iterate past the valid input range.  E.g., seeking or
        * reading past end of file.
    +   *
        * Unlike INVALID_ARGUMENT, this error indicates a problem that may
        * be fixed if the system state changes. For example, a 32-bit file
        * system will generate INVALID_ARGUMENT if asked to read at an
        * offset that is not in the range [0,2^32-1], but it will generate
        * OUT_OF_RANGE if asked to read from an offset past the current
        * file size.
    +   *
        * There is a fair bit of overlap between FAILED_PRECONDITION and
        * OUT_OF_RANGE.  We recommend using OUT_OF_RANGE (the more specific
        * error) when it applies so that callers who are iterating through
    @@ -415,6 +440,7 @@ public enum Code
        * The service is currently unavailable.  This is a most likely a
        * transient condition and may be corrected by retrying with
        * a backoff.
    +   *
        * See litmus test above for deciding between FAILED_PRECONDITION,
        * ABORTED, and UNAVAILABLE.
        * 
    @@ -434,9 +460,11 @@ public enum Code *
        * An extra enum entry to prevent people from writing code that
        * fails to compile when a new code is added.
    +   *
        * Nobody should ever reference this enumeration entry. In particular,
        * if you write C++ code that switches on this enumeration, add a default:
        * case instead of a case that mentions this enumeration entry.
    +   *
        * Nobody should rely on the value (currently 20) listed here.  It
        * may change in the future.
        * 
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/error/ErrorCodesProtos.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/error/ErrorCodesProtos.java index ab56718ac13..929653c772d 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/error/ErrorCodesProtos.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/error/ErrorCodesProtos.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! -// source: tsl/protobuf/error_codes.proto +// NO CHECKED-IN PROTOBUF GENCODE +// source: xla/tsl/protobuf/error_codes.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto.error; public final class ErrorCodesProtos { private ErrorCodesProtos() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + ErrorCodesProtos.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -23,26 +34,27 @@ public static void registerAllExtensions( descriptor; static { java.lang.String[] descriptorData = { - "\n\036tsl/protobuf/error_codes.proto\022\020tensor" + - "flow.error*\204\003\n\004Code\022\006\n\002OK\020\000\022\r\n\tCANCELLED" + - "\020\001\022\013\n\007UNKNOWN\020\002\022\024\n\020INVALID_ARGUMENT\020\003\022\025\n" + - "\021DEADLINE_EXCEEDED\020\004\022\r\n\tNOT_FOUND\020\005\022\022\n\016A" + - "LREADY_EXISTS\020\006\022\025\n\021PERMISSION_DENIED\020\007\022\023" + - "\n\017UNAUTHENTICATED\020\020\022\026\n\022RESOURCE_EXHAUSTE" + - "D\020\010\022\027\n\023FAILED_PRECONDITION\020\t\022\013\n\007ABORTED\020" + - "\n\022\020\n\014OUT_OF_RANGE\020\013\022\021\n\rUNIMPLEMENTED\020\014\022\014" + - "\n\010INTERNAL\020\r\022\017\n\013UNAVAILABLE\020\016\022\r\n\tDATA_LO" + - "SS\020\017\022K\nGDO_NOT_USE_RESERVED_FOR_FUTURE_E" + - "XPANSION_USE_DEFAULT_IN_SWITCH_INSTEAD_\020" + - "\024Bs\n\032org.tensorflow.proto.errorB\020ErrorCo" + - "desProtosP\001Z>github.com/google/tsl/tsl/g" + - "o/protobuf/for_core_protos_go_proto\370\001\001b\006" + - "proto3" + "\n\"xla/tsl/protobuf/error_codes.proto\022\020te" + + "nsorflow.error*\204\003\n\004Code\022\006\n\002OK\020\000\022\r\n\tCANCE" + + "LLED\020\001\022\013\n\007UNKNOWN\020\002\022\024\n\020INVALID_ARGUMENT\020" + + "\003\022\025\n\021DEADLINE_EXCEEDED\020\004\022\r\n\tNOT_FOUND\020\005\022" + + "\022\n\016ALREADY_EXISTS\020\006\022\025\n\021PERMISSION_DENIED" + + "\020\007\022\023\n\017UNAUTHENTICATED\020\020\022\026\n\022RESOURCE_EXHA" + + "USTED\020\010\022\027\n\023FAILED_PRECONDITION\020\t\022\013\n\007ABOR" + + "TED\020\n\022\020\n\014OUT_OF_RANGE\020\013\022\021\n\rUNIMPLEMENTED" + + "\020\014\022\014\n\010INTERNAL\020\r\022\017\n\013UNAVAILABLE\020\016\022\r\n\tDAT" + + "A_LOSS\020\017\022K\nGDO_NOT_USE_RESERVED_FOR_FUTU" + + "RE_EXPANSION_USE_DEFAULT_IN_SWITCH_INSTE" + + "AD_\020\024Bs\n\032org.tensorflow.proto.errorB\020Err" + + "orCodesProtosP\001Z>github.com/google/tsl/t" + + "sl/go/protobuf/for_core_protos_go_proto\370" + + "\001\001b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, new com.google.protobuf.Descriptors.FileDescriptor[] { }); + descriptor.resolveAllFeaturesImmutable(); } // @@protoc_insertion_point(outer_class_scope) diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/error/dummy/ErrorCodes.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/error/dummy/ErrorCodes.java index 9cb61ca6aac..508d4b92941 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/error/dummy/ErrorCodes.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/error/dummy/ErrorCodes.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tensorflow/core/protobuf/error_codes.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto.error.dummy; public final class ErrorCodes { private ErrorCodes() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + ErrorCodes.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -24,17 +35,18 @@ public static void registerAllExtensions( static { java.lang.String[] descriptorData = { "\n*tensorflow/core/protobuf/error_codes.p" + - "roto\022\026tensorflow.error.dummy\032\036tsl/protob" + - "uf/error_codes.protoBy\n org.tensorflow.p" + - "roto.error.dummyZUgithub.com/tensorflow/" + - "tensorflow/tensorflow/go/core/protobuf/f" + - "or_core_protos_go_protoP\000b\006proto3" + "roto\022\026tensorflow.error.dummy\032\"xla/tsl/pr" + + "otobuf/error_codes.protoBy\n org.tensorfl" + + "ow.proto.error.dummyZUgithub.com/tensorf" + + "low/tensorflow/tensorflow/go/core/protob" + + "uf/for_core_protos_go_protoP\000b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, new com.google.protobuf.Descriptors.FileDescriptor[] { org.tensorflow.proto.error.ErrorCodesProtos.getDescriptor(), }); + descriptor.resolveAllFeaturesImmutable(); org.tensorflow.proto.error.ErrorCodesProtos.getDescriptor(); } diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/profiler/Xplane.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/profiler/Xplane.java index 8365662edbd..957746c4e45 100644 --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/profiler/Xplane.java +++ b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/profiler/Xplane.java @@ -1,10 +1,21 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE // source: tsl/profiler/protobuf/xplane.proto +// Protobuf Java Version: 4.28.3 package org.tensorflow.proto.profiler; public final class Xplane { private Xplane() {} + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + Xplane.class.getName()); + } public static void registerAllExtensions( com.google.protobuf.ExtensionRegistryLite registry) { } @@ -174,40 +185,40 @@ org.tensorflow.proto.profiler.Xplane.XPlaneOrBuilder getPlanesOrBuilder( * Protobuf type {@code tensorflow.profiler.XSpace} */ public static final class XSpace extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.profiler.XSpace) XSpaceOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + XSpace.class.getName()); + } // Use XSpace.newBuilder() to construct. - private XSpace(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private XSpace(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private XSpace() { planes_ = java.util.Collections.emptyList(); - errors_ = com.google.protobuf.LazyStringArrayList.EMPTY; - warnings_ = com.google.protobuf.LazyStringArrayList.EMPTY; - hostnames_ = com.google.protobuf.LazyStringArrayList.EMPTY; - } - - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new XSpace(); + errors_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + warnings_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + hostnames_ = + com.google.protobuf.LazyStringArrayList.emptyList(); } - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XSpace_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XSpace_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -215,6 +226,7 @@ protected java.lang.Object newInstance( } public static final int PLANES_FIELD_NUMBER = 1; + @SuppressWarnings("serial") private java.util.List planes_; /** * repeated .tensorflow.profiler.XPlane planes = 1; @@ -255,7 +267,9 @@ public org.tensorflow.proto.profiler.Xplane.XPlaneOrBuilder getPlanesOrBuilder( } public static final int ERRORS_FIELD_NUMBER = 2; - private com.google.protobuf.LazyStringList errors_; + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList errors_ = + com.google.protobuf.LazyStringArrayList.emptyList(); /** *
          * Errors (if any) in the generation of planes.
    @@ -306,7 +320,9 @@ public java.lang.String getErrors(int index) {
         }
     
         public static final int WARNINGS_FIELD_NUMBER = 3;
    -    private com.google.protobuf.LazyStringList warnings_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.LazyStringArrayList warnings_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         /**
          * 
          * Warnings (if any) in the generation of planes;
    @@ -357,7 +373,9 @@ public java.lang.String getWarnings(int index) {
         }
     
         public static final int HOSTNAMES_FIELD_NUMBER = 4;
    -    private com.google.protobuf.LazyStringList hostnames_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.LazyStringArrayList hostnames_ =
    +        com.google.protobuf.LazyStringArrayList.emptyList();
         /**
          * 
          * List of hostnames that XPlanes are generated from.
    @@ -425,13 +443,13 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
             output.writeMessage(1, planes_.get(i));
           }
           for (int i = 0; i < errors_.size(); i++) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, errors_.getRaw(i));
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, errors_.getRaw(i));
           }
           for (int i = 0; i < warnings_.size(); i++) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, warnings_.getRaw(i));
    +        com.google.protobuf.GeneratedMessage.writeString(output, 3, warnings_.getRaw(i));
           }
           for (int i = 0; i < hostnames_.size(); i++) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, hostnames_.getRaw(i));
    +        com.google.protobuf.GeneratedMessage.writeString(output, 4, hostnames_.getRaw(i));
           }
           getUnknownFields().writeTo(output);
         }
    @@ -559,39 +577,41 @@ public static org.tensorflow.proto.profiler.Xplane.XSpace parseFrom(
         }
         public static org.tensorflow.proto.profiler.Xplane.XSpace parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.profiler.Xplane.XSpace parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.profiler.Xplane.XSpace parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.profiler.Xplane.XSpace parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.profiler.Xplane.XSpace parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.profiler.Xplane.XSpace parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -611,7 +631,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -624,7 +644,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.profiler.XSpace}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.profiler.XSpace)
             org.tensorflow.proto.profiler.Xplane.XSpaceOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -633,7 +653,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XSpace_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -646,13 +666,14 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             if (planesBuilder_ == null) {
               planes_ = java.util.Collections.emptyList();
             } else {
    @@ -660,12 +681,12 @@ public Builder clear() {
               planesBuilder_.clear();
             }
             bitField0_ = (bitField0_ & ~0x00000001);
    -        errors_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000002);
    -        warnings_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000004);
    -        hostnames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000008);
    +        errors_ =
    +            com.google.protobuf.LazyStringArrayList.emptyList();
    +        warnings_ =
    +            com.google.protobuf.LazyStringArrayList.emptyList();
    +        hostnames_ =
    +            com.google.protobuf.LazyStringArrayList.emptyList();
             return this;
           }
     
    @@ -692,7 +713,13 @@ public org.tensorflow.proto.profiler.Xplane.XSpace build() {
           @java.lang.Override
           public org.tensorflow.proto.profiler.Xplane.XSpace buildPartial() {
             org.tensorflow.proto.profiler.Xplane.XSpace result = new org.tensorflow.proto.profiler.Xplane.XSpace(this);
    -        int from_bitField0_ = bitField0_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.profiler.Xplane.XSpace result) {
             if (planesBuilder_ == null) {
               if (((bitField0_ & 0x00000001) != 0)) {
                 planes_ = java.util.Collections.unmodifiableList(planes_);
    @@ -702,57 +729,24 @@ public org.tensorflow.proto.profiler.Xplane.XSpace buildPartial() {
             } else {
               result.planes_ = planesBuilder_.build();
             }
    -        if (((bitField0_ & 0x00000002) != 0)) {
    -          errors_ = errors_.getUnmodifiableView();
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +      }
    +
    +      private void buildPartial0(org.tensorflow.proto.profiler.Xplane.XSpace result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          errors_.makeImmutable();
    +          result.errors_ = errors_;
             }
    -        result.errors_ = errors_;
    -        if (((bitField0_ & 0x00000004) != 0)) {
    -          warnings_ = warnings_.getUnmodifiableView();
    -          bitField0_ = (bitField0_ & ~0x00000004);
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          warnings_.makeImmutable();
    +          result.warnings_ = warnings_;
             }
    -        result.warnings_ = warnings_;
    -        if (((bitField0_ & 0x00000008) != 0)) {
    -          hostnames_ = hostnames_.getUnmodifiableView();
    -          bitField0_ = (bitField0_ & ~0x00000008);
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          hostnames_.makeImmutable();
    +          result.hostnames_ = hostnames_;
             }
    -        result.hostnames_ = hostnames_;
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    -      }
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.profiler.Xplane.XSpace) {
    @@ -784,7 +778,7 @@ public Builder mergeFrom(org.tensorflow.proto.profiler.Xplane.XSpace other) {
                   planes_ = other.planes_;
                   bitField0_ = (bitField0_ & ~0x00000001);
                   planesBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getPlanesFieldBuilder() : null;
                 } else {
                   planesBuilder_.addAllMessages(other.planes_);
    @@ -794,7 +788,7 @@ public Builder mergeFrom(org.tensorflow.proto.profiler.Xplane.XSpace other) {
             if (!other.errors_.isEmpty()) {
               if (errors_.isEmpty()) {
                 errors_ = other.errors_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            bitField0_ |= 0x00000002;
               } else {
                 ensureErrorsIsMutable();
                 errors_.addAll(other.errors_);
    @@ -804,7 +798,7 @@ public Builder mergeFrom(org.tensorflow.proto.profiler.Xplane.XSpace other) {
             if (!other.warnings_.isEmpty()) {
               if (warnings_.isEmpty()) {
                 warnings_ = other.warnings_;
    -            bitField0_ = (bitField0_ & ~0x00000004);
    +            bitField0_ |= 0x00000004;
               } else {
                 ensureWarningsIsMutable();
                 warnings_.addAll(other.warnings_);
    @@ -814,7 +808,7 @@ public Builder mergeFrom(org.tensorflow.proto.profiler.Xplane.XSpace other) {
             if (!other.hostnames_.isEmpty()) {
               if (hostnames_.isEmpty()) {
                 hostnames_ = other.hostnames_;
    -            bitField0_ = (bitField0_ & ~0x00000008);
    +            bitField0_ |= 0x00000008;
               } else {
                 ensureHostnamesIsMutable();
                 hostnames_.addAll(other.hostnames_);
    @@ -904,7 +898,7 @@ private void ensurePlanesIsMutable() {
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.profiler.Xplane.XPlane, org.tensorflow.proto.profiler.Xplane.XPlane.Builder, org.tensorflow.proto.profiler.Xplane.XPlaneOrBuilder> planesBuilder_;
     
           /**
    @@ -1120,11 +1114,11 @@ public org.tensorflow.proto.profiler.Xplane.XPlane.Builder addPlanesBuilder(
                getPlanesBuilderList() {
             return getPlanesFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.profiler.Xplane.XPlane, org.tensorflow.proto.profiler.Xplane.XPlane.Builder, org.tensorflow.proto.profiler.Xplane.XPlaneOrBuilder> 
               getPlanesFieldBuilder() {
             if (planesBuilder_ == null) {
    -          planesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          planesBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.profiler.Xplane.XPlane, org.tensorflow.proto.profiler.Xplane.XPlane.Builder, org.tensorflow.proto.profiler.Xplane.XPlaneOrBuilder>(
                       planes_,
                       ((bitField0_ & 0x00000001) != 0),
    @@ -1135,12 +1129,13 @@ public org.tensorflow.proto.profiler.Xplane.XPlane.Builder addPlanesBuilder(
             return planesBuilder_;
           }
     
    -      private com.google.protobuf.LazyStringList errors_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +      private com.google.protobuf.LazyStringArrayList errors_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           private void ensureErrorsIsMutable() {
    -        if (!((bitField0_ & 0x00000002) != 0)) {
    +        if (!errors_.isModifiable()) {
               errors_ = new com.google.protobuf.LazyStringArrayList(errors_);
    -          bitField0_ |= 0x00000002;
    -         }
    +        }
    +        bitField0_ |= 0x00000002;
           }
           /**
            * 
    @@ -1152,7 +1147,8 @@ private void ensureErrorsIsMutable() {
            */
           public com.google.protobuf.ProtocolStringList
               getErrorsList() {
    -        return errors_.getUnmodifiableView();
    +        errors_.makeImmutable();
    +        return errors_;
           }
           /**
            * 
    @@ -1202,11 +1198,10 @@ public java.lang.String getErrors(int index) {
            */
           public Builder setErrors(
               int index, java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureErrorsIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureErrorsIsMutable();
             errors_.set(index, value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1221,11 +1216,10 @@ public Builder setErrors(
            */
           public Builder addErrors(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureErrorsIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureErrorsIsMutable();
             errors_.add(value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1243,6 +1237,7 @@ public Builder addAllErrors(
             ensureErrorsIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, errors_);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -1255,8 +1250,9 @@ public Builder addAllErrors(
            * @return This builder for chaining.
            */
           public Builder clearErrors() {
    -        errors_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        errors_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
    +        bitField0_ = (bitField0_ & ~0x00000002);;
             onChanged();
             return this;
           }
    @@ -1271,22 +1267,22 @@ public Builder clearErrors() {
            */
           public Builder addErrorsBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             ensureErrorsIsMutable();
             errors_.add(value);
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
     
    -      private com.google.protobuf.LazyStringList warnings_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +      private com.google.protobuf.LazyStringArrayList warnings_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           private void ensureWarningsIsMutable() {
    -        if (!((bitField0_ & 0x00000004) != 0)) {
    +        if (!warnings_.isModifiable()) {
               warnings_ = new com.google.protobuf.LazyStringArrayList(warnings_);
    -          bitField0_ |= 0x00000004;
    -         }
    +        }
    +        bitField0_ |= 0x00000004;
           }
           /**
            * 
    @@ -1298,7 +1294,8 @@ private void ensureWarningsIsMutable() {
            */
           public com.google.protobuf.ProtocolStringList
               getWarningsList() {
    -        return warnings_.getUnmodifiableView();
    +        warnings_.makeImmutable();
    +        return warnings_;
           }
           /**
            * 
    @@ -1348,11 +1345,10 @@ public java.lang.String getWarnings(int index) {
            */
           public Builder setWarnings(
               int index, java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureWarningsIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureWarningsIsMutable();
             warnings_.set(index, value);
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1367,11 +1363,10 @@ public Builder setWarnings(
            */
           public Builder addWarnings(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureWarningsIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureWarningsIsMutable();
             warnings_.add(value);
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1389,6 +1384,7 @@ public Builder addAllWarnings(
             ensureWarningsIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, warnings_);
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -1401,8 +1397,9 @@ public Builder addAllWarnings(
            * @return This builder for chaining.
            */
           public Builder clearWarnings() {
    -        warnings_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000004);
    +        warnings_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
    +        bitField0_ = (bitField0_ & ~0x00000004);;
             onChanged();
             return this;
           }
    @@ -1417,22 +1414,22 @@ public Builder clearWarnings() {
            */
           public Builder addWarningsBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             ensureWarningsIsMutable();
             warnings_.add(value);
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
     
    -      private com.google.protobuf.LazyStringList hostnames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    +      private com.google.protobuf.LazyStringArrayList hostnames_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
           private void ensureHostnamesIsMutable() {
    -        if (!((bitField0_ & 0x00000008) != 0)) {
    +        if (!hostnames_.isModifiable()) {
               hostnames_ = new com.google.protobuf.LazyStringArrayList(hostnames_);
    -          bitField0_ |= 0x00000008;
    -         }
    +        }
    +        bitField0_ |= 0x00000008;
           }
           /**
            * 
    @@ -1444,7 +1441,8 @@ private void ensureHostnamesIsMutable() {
            */
           public com.google.protobuf.ProtocolStringList
               getHostnamesList() {
    -        return hostnames_.getUnmodifiableView();
    +        hostnames_.makeImmutable();
    +        return hostnames_;
           }
           /**
            * 
    @@ -1494,11 +1492,10 @@ public java.lang.String getHostnames(int index) {
            */
           public Builder setHostnames(
               int index, java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureHostnamesIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureHostnamesIsMutable();
             hostnames_.set(index, value);
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -1513,11 +1510,10 @@ public Builder setHostnames(
            */
           public Builder addHostnames(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  ensureHostnamesIsMutable();
    +        if (value == null) { throw new NullPointerException(); }
    +        ensureHostnamesIsMutable();
             hostnames_.add(value);
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -1535,6 +1531,7 @@ public Builder addAllHostnames(
             ensureHostnamesIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, hostnames_);
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -1547,8 +1544,9 @@ public Builder addAllHostnames(
            * @return This builder for chaining.
            */
           public Builder clearHostnames() {
    -        hostnames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
    -        bitField0_ = (bitField0_ & ~0x00000008);
    +        hostnames_ =
    +          com.google.protobuf.LazyStringArrayList.emptyList();
    +        bitField0_ = (bitField0_ & ~0x00000008);;
             onChanged();
             return this;
           }
    @@ -1563,27 +1561,14 @@ public Builder clearHostnames() {
            */
           public Builder addHostnamesBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             ensureHostnamesIsMutable();
             hostnames_.add(value);
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.profiler.XSpace)
         }
    @@ -1758,7 +1743,6 @@ boolean containsEventMetadata(
          *
          * map<int64, .tensorflow.profiler.XEventMetadata> event_metadata = 4;
          */
    -
         /* nullable */
     org.tensorflow.proto.profiler.Xplane.XEventMetadata getEventMetadataOrDefault(
             long key,
    @@ -1772,7 +1756,6 @@ org.tensorflow.proto.profiler.Xplane.XEventMetadata getEventMetadataOrDefault(
          *
          * map<int64, .tensorflow.profiler.XEventMetadata> event_metadata = 4;
          */
    -
         org.tensorflow.proto.profiler.Xplane.XEventMetadata getEventMetadataOrThrow(
             long key);
     
    @@ -1819,7 +1802,6 @@ boolean containsStatMetadata(
          *
          * map<int64, .tensorflow.profiler.XStatMetadata> stat_metadata = 5;
          */
    -
         /* nullable */
     org.tensorflow.proto.profiler.Xplane.XStatMetadata getStatMetadataOrDefault(
             long key,
    @@ -1833,7 +1815,6 @@ org.tensorflow.proto.profiler.Xplane.XStatMetadata getStatMetadataOrDefault(
          *
          * map<int64, .tensorflow.profiler.XStatMetadata> stat_metadata = 5;
          */
    -
         org.tensorflow.proto.profiler.Xplane.XStatMetadata getStatMetadataOrThrow(
             long key);
     
    @@ -1896,12 +1877,21 @@ org.tensorflow.proto.profiler.Xplane.XStatOrBuilder getStatsOrBuilder(
        * Protobuf type {@code tensorflow.profiler.XPlane}
        */
       public static final class XPlane extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.profiler.XPlane)
           XPlaneOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        XPlane.class.getName());
    +    }
         // Use XPlane.newBuilder() to construct.
    -    private XPlane(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private XPlane(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private XPlane() {
    @@ -1910,18 +1900,6 @@ private XPlane() {
           stats_ = java.util.Collections.emptyList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new XPlane();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XPlane_descriptor;
    @@ -1929,7 +1907,7 @@ protected java.lang.Object newInstance(
     
         @SuppressWarnings({"rawtypes"})
         @java.lang.Override
    -    protected com.google.protobuf.MapField internalGetMapField(
    +    protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
             int number) {
           switch (number) {
             case 4:
    @@ -1942,7 +1920,7 @@ protected com.google.protobuf.MapField internalGetMapField(
           }
         }
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XPlane_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -1950,7 +1928,7 @@ protected com.google.protobuf.MapField internalGetMapField(
         }
     
         public static final int ID_FIELD_NUMBER = 1;
    -    private long id_;
    +    private long id_ = 0L;
         /**
          * int64 id = 1;
          * @return The id.
    @@ -1961,7 +1939,8 @@ public long getId() {
         }
     
         public static final int NAME_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object name_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object name_ = "";
         /**
          * 
          * Name of this XPlane.
    @@ -2007,6 +1986,7 @@ public java.lang.String getName() {
         }
     
         public static final int LINES_FIELD_NUMBER = 3;
    +    @SuppressWarnings("serial")
         private java.util.List lines_;
         /**
          * 
    @@ -2083,6 +2063,7 @@ private static final class EventMetadataDefaultEntryHolder {
                       com.google.protobuf.WireFormat.FieldType.MESSAGE,
                       org.tensorflow.proto.profiler.Xplane.XEventMetadata.getDefaultInstance());
         }
    +    @SuppressWarnings("serial")
         private com.google.protobuf.MapField<
             java.lang.Long, org.tensorflow.proto.profiler.Xplane.XEventMetadata> eventMetadata_;
         private com.google.protobuf.MapField
    @@ -2093,7 +2074,6 @@ private static final class EventMetadataDefaultEntryHolder {
           }
           return eventMetadata_;
         }
    -
         public int getEventMetadataCount() {
           return internalGetEventMetadata().getMap().size();
         }
    @@ -2105,11 +2085,10 @@ public int getEventMetadataCount() {
          *
          * map<int64, .tensorflow.profiler.XEventMetadata> event_metadata = 4;
          */
    -
         @java.lang.Override
         public boolean containsEventMetadata(
             long key) {
    -      
    +
           return internalGetEventMetadata().getMap().containsKey(key);
         }
         /**
    @@ -2129,7 +2108,6 @@ public java.util.Mapmap<int64, .tensorflow.profiler.XEventMetadata> event_metadata = 4;
          */
         @java.lang.Override
    -
         public java.util.Map getEventMetadataMap() {
           return internalGetEventMetadata().getMap();
         }
    @@ -2142,11 +2120,12 @@ public java.util.Mapmap<int64, .tensorflow.profiler.XEventMetadata> event_metadata = 4;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.profiler.Xplane.XEventMetadata getEventMetadataOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.profiler.Xplane.XEventMetadata getEventMetadataOrDefault(
             long key,
    -        org.tensorflow.proto.profiler.Xplane.XEventMetadata defaultValue) {
    -      
    +        /* nullable */
    +org.tensorflow.proto.profiler.Xplane.XEventMetadata defaultValue) {
    +
           java.util.Map map =
               internalGetEventMetadata().getMap();
           return map.containsKey(key) ? map.get(key) : defaultValue;
    @@ -2160,10 +2139,9 @@ public org.tensorflow.proto.profiler.Xplane.XEventMetadata getEventMetadataOrDef
          * map<int64, .tensorflow.profiler.XEventMetadata> event_metadata = 4;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.profiler.Xplane.XEventMetadata getEventMetadataOrThrow(
             long key) {
    -      
    +
           java.util.Map map =
               internalGetEventMetadata().getMap();
           if (!map.containsKey(key)) {
    @@ -2184,6 +2162,7 @@ private static final class StatMetadataDefaultEntryHolder {
                       com.google.protobuf.WireFormat.FieldType.MESSAGE,
                       org.tensorflow.proto.profiler.Xplane.XStatMetadata.getDefaultInstance());
         }
    +    @SuppressWarnings("serial")
         private com.google.protobuf.MapField<
             java.lang.Long, org.tensorflow.proto.profiler.Xplane.XStatMetadata> statMetadata_;
         private com.google.protobuf.MapField
    @@ -2194,7 +2173,6 @@ private static final class StatMetadataDefaultEntryHolder {
           }
           return statMetadata_;
         }
    -
         public int getStatMetadataCount() {
           return internalGetStatMetadata().getMap().size();
         }
    @@ -2206,11 +2184,10 @@ public int getStatMetadataCount() {
          *
          * map<int64, .tensorflow.profiler.XStatMetadata> stat_metadata = 5;
          */
    -
         @java.lang.Override
         public boolean containsStatMetadata(
             long key) {
    -      
    +
           return internalGetStatMetadata().getMap().containsKey(key);
         }
         /**
    @@ -2230,7 +2207,6 @@ public java.util.Mapmap<int64, .tensorflow.profiler.XStatMetadata> stat_metadata = 5;
          */
         @java.lang.Override
    -
         public java.util.Map getStatMetadataMap() {
           return internalGetStatMetadata().getMap();
         }
    @@ -2243,11 +2219,12 @@ public java.util.Mapmap<int64, .tensorflow.profiler.XStatMetadata> stat_metadata = 5;
          */
         @java.lang.Override
    -
    -    public org.tensorflow.proto.profiler.Xplane.XStatMetadata getStatMetadataOrDefault(
    +    public /* nullable */
    +org.tensorflow.proto.profiler.Xplane.XStatMetadata getStatMetadataOrDefault(
             long key,
    -        org.tensorflow.proto.profiler.Xplane.XStatMetadata defaultValue) {
    -      
    +        /* nullable */
    +org.tensorflow.proto.profiler.Xplane.XStatMetadata defaultValue) {
    +
           java.util.Map map =
               internalGetStatMetadata().getMap();
           return map.containsKey(key) ? map.get(key) : defaultValue;
    @@ -2261,10 +2238,9 @@ public org.tensorflow.proto.profiler.Xplane.XStatMetadata getStatMetadataOrDefau
          * map<int64, .tensorflow.profiler.XStatMetadata> stat_metadata = 5;
          */
         @java.lang.Override
    -
         public org.tensorflow.proto.profiler.Xplane.XStatMetadata getStatMetadataOrThrow(
             long key) {
    -      
    +
           java.util.Map map =
               internalGetStatMetadata().getMap();
           if (!map.containsKey(key)) {
    @@ -2274,6 +2250,7 @@ public org.tensorflow.proto.profiler.Xplane.XStatMetadata getStatMetadataOrThrow
         }
     
         public static final int STATS_FIELD_NUMBER = 6;
    +    @SuppressWarnings("serial")
         private java.util.List stats_;
         /**
          * 
    @@ -2355,19 +2332,19 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (id_ != 0L) {
             output.writeInt64(1, id_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, name_);
           }
           for (int i = 0; i < lines_.size(); i++) {
             output.writeMessage(3, lines_.get(i));
           }
    -      com.google.protobuf.GeneratedMessageV3
    +      com.google.protobuf.GeneratedMessage
             .serializeLongMapTo(
               output,
               internalGetEventMetadata(),
               EventMetadataDefaultEntryHolder.defaultEntry,
               4);
    -      com.google.protobuf.GeneratedMessageV3
    +      com.google.protobuf.GeneratedMessage
             .serializeLongMapTo(
               output,
               internalGetStatMetadata(),
    @@ -2389,8 +2366,8 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeInt64Size(1, id_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, name_);
           }
           for (int i = 0; i < lines_.size(); i++) {
             size += com.google.protobuf.CodedOutputStream
    @@ -2518,39 +2495,41 @@ public static org.tensorflow.proto.profiler.Xplane.XPlane parseFrom(
         }
         public static org.tensorflow.proto.profiler.Xplane.XPlane parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.profiler.Xplane.XPlane parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.profiler.Xplane.XPlane parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.profiler.Xplane.XPlane parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.profiler.Xplane.XPlane parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.profiler.Xplane.XPlane parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -2570,7 +2549,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -2584,7 +2563,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.profiler.XPlane}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.profiler.XPlane)
             org.tensorflow.proto.profiler.Xplane.XPlaneOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -2593,7 +2572,7 @@ public static final class Builder extends
           }
     
           @SuppressWarnings({"rawtypes"})
    -      protected com.google.protobuf.MapField internalGetMapField(
    +      protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(
               int number) {
             switch (number) {
               case 4:
    @@ -2606,7 +2585,7 @@ protected com.google.protobuf.MapField internalGetMapField(
             }
           }
           @SuppressWarnings({"rawtypes"})
    -      protected com.google.protobuf.MapField internalGetMutableMapField(
    +      protected com.google.protobuf.MapFieldReflectionAccessor internalGetMutableMapFieldReflection(
               int number) {
             switch (number) {
               case 4:
    @@ -2619,7 +2598,7 @@ protected com.google.protobuf.MapField internalGetMutableMapField(
             }
           }
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XPlane_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -2632,24 +2611,23 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             id_ = 0L;
    -
             name_ = "";
    -
             if (linesBuilder_ == null) {
               lines_ = java.util.Collections.emptyList();
             } else {
               lines_ = null;
               linesBuilder_.clear();
             }
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000004);
             internalGetMutableEventMetadata().clear();
             internalGetMutableStatMetadata().clear();
             if (statsBuilder_ == null) {
    @@ -2658,7 +2636,7 @@ public Builder clear() {
               stats_ = null;
               statsBuilder_.clear();
             }
    -        bitField0_ = (bitField0_ & ~0x00000008);
    +        bitField0_ = (bitField0_ & ~0x00000020);
             return this;
           }
     
    @@ -2685,67 +2663,49 @@ public org.tensorflow.proto.profiler.Xplane.XPlane build() {
           @java.lang.Override
           public org.tensorflow.proto.profiler.Xplane.XPlane buildPartial() {
             org.tensorflow.proto.profiler.Xplane.XPlane result = new org.tensorflow.proto.profiler.Xplane.XPlane(this);
    -        int from_bitField0_ = bitField0_;
    -        result.id_ = id_;
    -        result.name_ = name_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.profiler.Xplane.XPlane result) {
             if (linesBuilder_ == null) {
    -          if (((bitField0_ & 0x00000001) != 0)) {
    +          if (((bitField0_ & 0x00000004) != 0)) {
                 lines_ = java.util.Collections.unmodifiableList(lines_);
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000004);
               }
               result.lines_ = lines_;
             } else {
               result.lines_ = linesBuilder_.build();
             }
    -        result.eventMetadata_ = internalGetEventMetadata();
    -        result.eventMetadata_.makeImmutable();
    -        result.statMetadata_ = internalGetStatMetadata();
    -        result.statMetadata_.makeImmutable();
             if (statsBuilder_ == null) {
    -          if (((bitField0_ & 0x00000008) != 0)) {
    +          if (((bitField0_ & 0x00000020) != 0)) {
                 stats_ = java.util.Collections.unmodifiableList(stats_);
    -            bitField0_ = (bitField0_ & ~0x00000008);
    +            bitField0_ = (bitField0_ & ~0x00000020);
               }
               result.stats_ = stats_;
             } else {
               result.stats_ = statsBuilder_.build();
             }
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.profiler.Xplane.XPlane result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.id_ = id_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.name_ = name_;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.eventMetadata_ = internalGetEventMetadata().build(EventMetadataDefaultEntryHolder.defaultEntry);
    +        }
    +        if (((from_bitField0_ & 0x00000010) != 0)) {
    +          result.statMetadata_ = internalGetStatMetadata().build(StatMetadataDefaultEntryHolder.defaultEntry);
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.profiler.Xplane.XPlane) {
    @@ -2763,13 +2723,14 @@ public Builder mergeFrom(org.tensorflow.proto.profiler.Xplane.XPlane other) {
             }
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             if (linesBuilder_ == null) {
               if (!other.lines_.isEmpty()) {
                 if (lines_.isEmpty()) {
                   lines_ = other.lines_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000004);
                 } else {
                   ensureLinesIsMutable();
                   lines_.addAll(other.lines_);
    @@ -2782,9 +2743,9 @@ public Builder mergeFrom(org.tensorflow.proto.profiler.Xplane.XPlane other) {
                   linesBuilder_.dispose();
                   linesBuilder_ = null;
                   lines_ = other.lines_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000004);
                   linesBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getLinesFieldBuilder() : null;
                 } else {
                   linesBuilder_.addAllMessages(other.lines_);
    @@ -2793,13 +2754,15 @@ public Builder mergeFrom(org.tensorflow.proto.profiler.Xplane.XPlane other) {
             }
             internalGetMutableEventMetadata().mergeFrom(
                 other.internalGetEventMetadata());
    +        bitField0_ |= 0x00000008;
             internalGetMutableStatMetadata().mergeFrom(
                 other.internalGetStatMetadata());
    +        bitField0_ |= 0x00000010;
             if (statsBuilder_ == null) {
               if (!other.stats_.isEmpty()) {
                 if (stats_.isEmpty()) {
                   stats_ = other.stats_;
    -              bitField0_ = (bitField0_ & ~0x00000008);
    +              bitField0_ = (bitField0_ & ~0x00000020);
                 } else {
                   ensureStatsIsMutable();
                   stats_.addAll(other.stats_);
    @@ -2812,9 +2775,9 @@ public Builder mergeFrom(org.tensorflow.proto.profiler.Xplane.XPlane other) {
                   statsBuilder_.dispose();
                   statsBuilder_ = null;
                   stats_ = other.stats_;
    -              bitField0_ = (bitField0_ & ~0x00000008);
    +              bitField0_ = (bitField0_ & ~0x00000020);
                   statsBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getStatsFieldBuilder() : null;
                 } else {
                   statsBuilder_.addAllMessages(other.stats_);
    @@ -2849,12 +2812,12 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     id_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   case 18: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 26: {
    @@ -2874,16 +2837,18 @@ public Builder mergeFrom(
                     com.google.protobuf.MapEntry
                     eventMetadata__ = input.readMessage(
                         EventMetadataDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
    -                internalGetMutableEventMetadata().getMutableMap().put(
    +                internalGetMutableEventMetadata().ensureBuilderMap().put(
                         eventMetadata__.getKey(), eventMetadata__.getValue());
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 34
                   case 42: {
                     com.google.protobuf.MapEntry
                     statMetadata__ = input.readMessage(
                         StatMetadataDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
    -                internalGetMutableStatMetadata().getMutableMap().put(
    +                internalGetMutableStatMetadata().ensureBuilderMap().put(
                         statMetadata__.getKey(), statMetadata__.getValue());
    +                bitField0_ |= 0x00000010;
                     break;
                   } // case 42
                   case 50: {
    @@ -2931,8 +2896,9 @@ public long getId() {
            * @return This builder for chaining.
            */
           public Builder setId(long value) {
    -        
    +
             id_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -2941,7 +2907,7 @@ public Builder setId(long value) {
            * @return This builder for chaining.
            */
           public Builder clearId() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             id_ = 0L;
             onChanged();
             return this;
    @@ -3000,11 +2966,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -3017,8 +2981,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -3033,12 +2997,10 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -3046,13 +3008,13 @@ public Builder setNameBytes(
           private java.util.List lines_ =
             java.util.Collections.emptyList();
           private void ensureLinesIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    +        if (!((bitField0_ & 0x00000004) != 0)) {
               lines_ = new java.util.ArrayList(lines_);
    -          bitField0_ |= 0x00000001;
    +          bitField0_ |= 0x00000004;
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.profiler.Xplane.XLine, org.tensorflow.proto.profiler.Xplane.XLine.Builder, org.tensorflow.proto.profiler.Xplane.XLineOrBuilder> linesBuilder_;
     
           /**
    @@ -3253,7 +3215,7 @@ public Builder addAllLines(
           public Builder clearLines() {
             if (linesBuilder_ == null) {
               lines_ = java.util.Collections.emptyList();
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000004);
               onChanged();
             } else {
               linesBuilder_.clear();
    @@ -3358,14 +3320,14 @@ public org.tensorflow.proto.profiler.Xplane.XLine.Builder addLinesBuilder(
                getLinesBuilderList() {
             return getLinesFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.profiler.Xplane.XLine, org.tensorflow.proto.profiler.Xplane.XLine.Builder, org.tensorflow.proto.profiler.Xplane.XLineOrBuilder> 
               getLinesFieldBuilder() {
             if (linesBuilder_ == null) {
    -          linesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          linesBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.profiler.Xplane.XLine, org.tensorflow.proto.profiler.Xplane.XLine.Builder, org.tensorflow.proto.profiler.Xplane.XLineOrBuilder>(
                       lines_,
    -                  ((bitField0_ & 0x00000001) != 0),
    +                  ((bitField0_ & 0x00000004) != 0),
                       getParentForChildren(),
                       isClean());
               lines_ = null;
    @@ -3373,31 +3335,40 @@ public org.tensorflow.proto.profiler.Xplane.XLine.Builder addLinesBuilder(
             return linesBuilder_;
           }
     
    -      private com.google.protobuf.MapField<
    -          java.lang.Long, org.tensorflow.proto.profiler.Xplane.XEventMetadata> eventMetadata_;
    -      private com.google.protobuf.MapField
    -      internalGetEventMetadata() {
    +      private static final class EventMetadataConverter implements com.google.protobuf.MapFieldBuilder.Converter {
    +        @java.lang.Override
    +        public org.tensorflow.proto.profiler.Xplane.XEventMetadata build(org.tensorflow.proto.profiler.Xplane.XEventMetadataOrBuilder val) {
    +          if (val instanceof org.tensorflow.proto.profiler.Xplane.XEventMetadata) { return (org.tensorflow.proto.profiler.Xplane.XEventMetadata) val; }
    +          return ((org.tensorflow.proto.profiler.Xplane.XEventMetadata.Builder) val).build();
    +        }
    +
    +        @java.lang.Override
    +        public com.google.protobuf.MapEntry defaultEntry() {
    +          return EventMetadataDefaultEntryHolder.defaultEntry;
    +        }
    +      };
    +      private static final EventMetadataConverter eventMetadataConverter = new EventMetadataConverter();
    +
    +      private com.google.protobuf.MapFieldBuilder<
    +          java.lang.Long, org.tensorflow.proto.profiler.Xplane.XEventMetadataOrBuilder, org.tensorflow.proto.profiler.Xplane.XEventMetadata, org.tensorflow.proto.profiler.Xplane.XEventMetadata.Builder> eventMetadata_;
    +      private com.google.protobuf.MapFieldBuilder
    +          internalGetEventMetadata() {
             if (eventMetadata_ == null) {
    -          return com.google.protobuf.MapField.emptyMapField(
    -              EventMetadataDefaultEntryHolder.defaultEntry);
    +          return new com.google.protobuf.MapFieldBuilder<>(eventMetadataConverter);
             }
             return eventMetadata_;
           }
    -      private com.google.protobuf.MapField
    -      internalGetMutableEventMetadata() {
    -        onChanged();;
    +      private com.google.protobuf.MapFieldBuilder
    +          internalGetMutableEventMetadata() {
             if (eventMetadata_ == null) {
    -          eventMetadata_ = com.google.protobuf.MapField.newMapField(
    -              EventMetadataDefaultEntryHolder.defaultEntry);
    -        }
    -        if (!eventMetadata_.isMutable()) {
    -          eventMetadata_ = eventMetadata_.copy();
    +          eventMetadata_ = new com.google.protobuf.MapFieldBuilder<>(eventMetadataConverter);
             }
    +        bitField0_ |= 0x00000008;
    +        onChanged();
             return eventMetadata_;
           }
    -
           public int getEventMetadataCount() {
    -        return internalGetEventMetadata().getMap().size();
    +        return internalGetEventMetadata().ensureBuilderMap().size();
           }
           /**
            * 
    @@ -3407,12 +3378,11 @@ public int getEventMetadataCount() {
            *
            * map<int64, .tensorflow.profiler.XEventMetadata> event_metadata = 4;
            */
    -
           @java.lang.Override
           public boolean containsEventMetadata(
               long key) {
    -        
    -        return internalGetEventMetadata().getMap().containsKey(key);
    +
    +        return internalGetEventMetadata().ensureBuilderMap().containsKey(key);
           }
           /**
            * Use {@link #getEventMetadataMap()} instead.
    @@ -3431,9 +3401,8 @@ public java.util.Mapmap<int64, .tensorflow.profiler.XEventMetadata> event_metadata = 4;
            */
           @java.lang.Override
    -
           public java.util.Map getEventMetadataMap() {
    -        return internalGetEventMetadata().getMap();
    +        return internalGetEventMetadata().getImmutableMap();
           }
           /**
            * 
    @@ -3444,14 +3413,14 @@ public java.util.Mapmap<int64, .tensorflow.profiler.XEventMetadata> event_metadata = 4;
            */
           @java.lang.Override
    -
    -      public org.tensorflow.proto.profiler.Xplane.XEventMetadata getEventMetadataOrDefault(
    +      public /* nullable */
    +org.tensorflow.proto.profiler.Xplane.XEventMetadata getEventMetadataOrDefault(
               long key,
    -          org.tensorflow.proto.profiler.Xplane.XEventMetadata defaultValue) {
    -        
    -        java.util.Map map =
    -            internalGetEventMetadata().getMap();
    -        return map.containsKey(key) ? map.get(key) : defaultValue;
    +          /* nullable */
    +org.tensorflow.proto.profiler.Xplane.XEventMetadata defaultValue) {
    +
    +        java.util.Map map = internalGetMutableEventMetadata().ensureBuilderMap();
    +        return map.containsKey(key) ? eventMetadataConverter.build(map.get(key)) : defaultValue;
           }
           /**
            * 
    @@ -3462,21 +3431,18 @@ public org.tensorflow.proto.profiler.Xplane.XEventMetadata getEventMetadataOrDef
            * map<int64, .tensorflow.profiler.XEventMetadata> event_metadata = 4;
            */
           @java.lang.Override
    -
           public org.tensorflow.proto.profiler.Xplane.XEventMetadata getEventMetadataOrThrow(
               long key) {
    -        
    -        java.util.Map map =
    -            internalGetEventMetadata().getMap();
    +
    +        java.util.Map map = internalGetMutableEventMetadata().ensureBuilderMap();
             if (!map.containsKey(key)) {
               throw new java.lang.IllegalArgumentException();
             }
    -        return map.get(key);
    +        return eventMetadataConverter.build(map.get(key));
           }
    -
           public Builder clearEventMetadata() {
    -        internalGetMutableEventMetadata().getMutableMap()
    -            .clear();
    +        bitField0_ = (bitField0_ & ~0x00000008);
    +        internalGetMutableEventMetadata().clear();
             return this;
           }
           /**
    @@ -3487,11 +3453,10 @@ public Builder clearEventMetadata() {
            *
            * map<int64, .tensorflow.profiler.XEventMetadata> event_metadata = 4;
            */
    -
           public Builder removeEventMetadata(
               long key) {
    -        
    -        internalGetMutableEventMetadata().getMutableMap()
    +
    +        internalGetMutableEventMetadata().ensureBuilderMap()
                 .remove(key);
             return this;
           }
    @@ -3500,8 +3465,9 @@ public Builder removeEventMetadata(
            */
           @java.lang.Deprecated
           public java.util.Map
    -      getMutableEventMetadata() {
    -        return internalGetMutableEventMetadata().getMutableMap();
    +          getMutableEventMetadata() {
    +        bitField0_ |= 0x00000008;
    +        return internalGetMutableEventMetadata().ensureMessageMap();
           }
           /**
            * 
    @@ -3514,13 +3480,11 @@ public Builder removeEventMetadata(
           public Builder putEventMetadata(
               long key,
               org.tensorflow.proto.profiler.Xplane.XEventMetadata value) {
    -        
    -        if (value == null) {
    -  throw new NullPointerException("map value");
    -}
     
    -        internalGetMutableEventMetadata().getMutableMap()
    +        if (value == null) { throw new NullPointerException("map value"); }
    +        internalGetMutableEventMetadata().ensureBuilderMap()
                 .put(key, value);
    +        bitField0_ |= 0x00000008;
             return this;
           }
           /**
    @@ -3531,39 +3495,75 @@ public Builder putEventMetadata(
            *
            * map<int64, .tensorflow.profiler.XEventMetadata> event_metadata = 4;
            */
    -
           public Builder putAllEventMetadata(
               java.util.Map values) {
    -        internalGetMutableEventMetadata().getMutableMap()
    +        for (java.util.Map.Entry e : values.entrySet()) {
    +          if (e.getKey() == null || e.getValue() == null) {
    +            throw new NullPointerException();
    +          }
    +        }
    +        internalGetMutableEventMetadata().ensureBuilderMap()
                 .putAll(values);
    +        bitField0_ |= 0x00000008;
             return this;
           }
    +      /**
    +       * 
    +       * XEventMetadata map, each entry uses the XEventMetadata.id as key. This map
    +       * should be used for events that share the same ID over the whole XPlane.
    +       * 
    + * + * map<int64, .tensorflow.profiler.XEventMetadata> event_metadata = 4; + */ + public org.tensorflow.proto.profiler.Xplane.XEventMetadata.Builder putEventMetadataBuilderIfAbsent( + long key) { + java.util.Map builderMap = internalGetMutableEventMetadata().ensureBuilderMap(); + org.tensorflow.proto.profiler.Xplane.XEventMetadataOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.profiler.Xplane.XEventMetadata.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.profiler.Xplane.XEventMetadata) { + entry = ((org.tensorflow.proto.profiler.Xplane.XEventMetadata) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.profiler.Xplane.XEventMetadata.Builder) entry; + } - private com.google.protobuf.MapField< - java.lang.Long, org.tensorflow.proto.profiler.Xplane.XStatMetadata> statMetadata_; - private com.google.protobuf.MapField - internalGetStatMetadata() { + private static final class StatMetadataConverter implements com.google.protobuf.MapFieldBuilder.Converter { + @java.lang.Override + public org.tensorflow.proto.profiler.Xplane.XStatMetadata build(org.tensorflow.proto.profiler.Xplane.XStatMetadataOrBuilder val) { + if (val instanceof org.tensorflow.proto.profiler.Xplane.XStatMetadata) { return (org.tensorflow.proto.profiler.Xplane.XStatMetadata) val; } + return ((org.tensorflow.proto.profiler.Xplane.XStatMetadata.Builder) val).build(); + } + + @java.lang.Override + public com.google.protobuf.MapEntry defaultEntry() { + return StatMetadataDefaultEntryHolder.defaultEntry; + } + }; + private static final StatMetadataConverter statMetadataConverter = new StatMetadataConverter(); + + private com.google.protobuf.MapFieldBuilder< + java.lang.Long, org.tensorflow.proto.profiler.Xplane.XStatMetadataOrBuilder, org.tensorflow.proto.profiler.Xplane.XStatMetadata, org.tensorflow.proto.profiler.Xplane.XStatMetadata.Builder> statMetadata_; + private com.google.protobuf.MapFieldBuilder + internalGetStatMetadata() { if (statMetadata_ == null) { - return com.google.protobuf.MapField.emptyMapField( - StatMetadataDefaultEntryHolder.defaultEntry); + return new com.google.protobuf.MapFieldBuilder<>(statMetadataConverter); } return statMetadata_; } - private com.google.protobuf.MapField - internalGetMutableStatMetadata() { - onChanged();; + private com.google.protobuf.MapFieldBuilder + internalGetMutableStatMetadata() { if (statMetadata_ == null) { - statMetadata_ = com.google.protobuf.MapField.newMapField( - StatMetadataDefaultEntryHolder.defaultEntry); - } - if (!statMetadata_.isMutable()) { - statMetadata_ = statMetadata_.copy(); + statMetadata_ = new com.google.protobuf.MapFieldBuilder<>(statMetadataConverter); } + bitField0_ |= 0x00000010; + onChanged(); return statMetadata_; } - public int getStatMetadataCount() { - return internalGetStatMetadata().getMap().size(); + return internalGetStatMetadata().ensureBuilderMap().size(); } /** *
    @@ -3573,12 +3573,11 @@ public int getStatMetadataCount() {
            *
            * map<int64, .tensorflow.profiler.XStatMetadata> stat_metadata = 5;
            */
    -
           @java.lang.Override
           public boolean containsStatMetadata(
               long key) {
    -        
    -        return internalGetStatMetadata().getMap().containsKey(key);
    +
    +        return internalGetStatMetadata().ensureBuilderMap().containsKey(key);
           }
           /**
            * Use {@link #getStatMetadataMap()} instead.
    @@ -3597,9 +3596,8 @@ public java.util.Mapmap<int64, .tensorflow.profiler.XStatMetadata> stat_metadata = 5;
            */
           @java.lang.Override
    -
           public java.util.Map getStatMetadataMap() {
    -        return internalGetStatMetadata().getMap();
    +        return internalGetStatMetadata().getImmutableMap();
           }
           /**
            * 
    @@ -3610,14 +3608,14 @@ public java.util.Mapmap<int64, .tensorflow.profiler.XStatMetadata> stat_metadata = 5;
            */
           @java.lang.Override
    -
    -      public org.tensorflow.proto.profiler.Xplane.XStatMetadata getStatMetadataOrDefault(
    +      public /* nullable */
    +org.tensorflow.proto.profiler.Xplane.XStatMetadata getStatMetadataOrDefault(
               long key,
    -          org.tensorflow.proto.profiler.Xplane.XStatMetadata defaultValue) {
    -        
    -        java.util.Map map =
    -            internalGetStatMetadata().getMap();
    -        return map.containsKey(key) ? map.get(key) : defaultValue;
    +          /* nullable */
    +org.tensorflow.proto.profiler.Xplane.XStatMetadata defaultValue) {
    +
    +        java.util.Map map = internalGetMutableStatMetadata().ensureBuilderMap();
    +        return map.containsKey(key) ? statMetadataConverter.build(map.get(key)) : defaultValue;
           }
           /**
            * 
    @@ -3628,21 +3626,18 @@ public org.tensorflow.proto.profiler.Xplane.XStatMetadata getStatMetadataOrDefau
            * map<int64, .tensorflow.profiler.XStatMetadata> stat_metadata = 5;
            */
           @java.lang.Override
    -
           public org.tensorflow.proto.profiler.Xplane.XStatMetadata getStatMetadataOrThrow(
               long key) {
    -        
    -        java.util.Map map =
    -            internalGetStatMetadata().getMap();
    +
    +        java.util.Map map = internalGetMutableStatMetadata().ensureBuilderMap();
             if (!map.containsKey(key)) {
               throw new java.lang.IllegalArgumentException();
             }
    -        return map.get(key);
    +        return statMetadataConverter.build(map.get(key));
           }
    -
           public Builder clearStatMetadata() {
    -        internalGetMutableStatMetadata().getMutableMap()
    -            .clear();
    +        bitField0_ = (bitField0_ & ~0x00000010);
    +        internalGetMutableStatMetadata().clear();
             return this;
           }
           /**
    @@ -3653,11 +3648,10 @@ public Builder clearStatMetadata() {
            *
            * map<int64, .tensorflow.profiler.XStatMetadata> stat_metadata = 5;
            */
    -
           public Builder removeStatMetadata(
               long key) {
    -        
    -        internalGetMutableStatMetadata().getMutableMap()
    +
    +        internalGetMutableStatMetadata().ensureBuilderMap()
                 .remove(key);
             return this;
           }
    @@ -3666,8 +3660,9 @@ public Builder removeStatMetadata(
            */
           @java.lang.Deprecated
           public java.util.Map
    -      getMutableStatMetadata() {
    -        return internalGetMutableStatMetadata().getMutableMap();
    +          getMutableStatMetadata() {
    +        bitField0_ |= 0x00000010;
    +        return internalGetMutableStatMetadata().ensureMessageMap();
           }
           /**
            * 
    @@ -3680,13 +3675,11 @@ public Builder removeStatMetadata(
           public Builder putStatMetadata(
               long key,
               org.tensorflow.proto.profiler.Xplane.XStatMetadata value) {
    -        
    -        if (value == null) {
    -  throw new NullPointerException("map value");
    -}
     
    -        internalGetMutableStatMetadata().getMutableMap()
    +        if (value == null) { throw new NullPointerException("map value"); }
    +        internalGetMutableStatMetadata().ensureBuilderMap()
                 .put(key, value);
    +        bitField0_ |= 0x00000010;
             return this;
           }
           /**
    @@ -3697,24 +3690,51 @@ public Builder putStatMetadata(
            *
            * map<int64, .tensorflow.profiler.XStatMetadata> stat_metadata = 5;
            */
    -
           public Builder putAllStatMetadata(
               java.util.Map values) {
    -        internalGetMutableStatMetadata().getMutableMap()
    +        for (java.util.Map.Entry e : values.entrySet()) {
    +          if (e.getKey() == null || e.getValue() == null) {
    +            throw new NullPointerException();
    +          }
    +        }
    +        internalGetMutableStatMetadata().ensureBuilderMap()
                 .putAll(values);
    +        bitField0_ |= 0x00000010;
             return this;
           }
    +      /**
    +       * 
    +       * XStatMetadata map, each entry uses the XStatMetadata.id as key. This map
    +       * should be used for stats that share the same ID over the whole XPlane.
    +       * 
    + * + * map<int64, .tensorflow.profiler.XStatMetadata> stat_metadata = 5; + */ + public org.tensorflow.proto.profiler.Xplane.XStatMetadata.Builder putStatMetadataBuilderIfAbsent( + long key) { + java.util.Map builderMap = internalGetMutableStatMetadata().ensureBuilderMap(); + org.tensorflow.proto.profiler.Xplane.XStatMetadataOrBuilder entry = builderMap.get(key); + if (entry == null) { + entry = org.tensorflow.proto.profiler.Xplane.XStatMetadata.newBuilder(); + builderMap.put(key, entry); + } + if (entry instanceof org.tensorflow.proto.profiler.Xplane.XStatMetadata) { + entry = ((org.tensorflow.proto.profiler.Xplane.XStatMetadata) entry).toBuilder(); + builderMap.put(key, entry); + } + return (org.tensorflow.proto.profiler.Xplane.XStatMetadata.Builder) entry; + } private java.util.List stats_ = java.util.Collections.emptyList(); private void ensureStatsIsMutable() { - if (!((bitField0_ & 0x00000008) != 0)) { + if (!((bitField0_ & 0x00000020) != 0)) { stats_ = new java.util.ArrayList(stats_); - bitField0_ |= 0x00000008; + bitField0_ |= 0x00000020; } } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.profiler.Xplane.XStat, org.tensorflow.proto.profiler.Xplane.XStat.Builder, org.tensorflow.proto.profiler.Xplane.XStatOrBuilder> statsBuilder_; /** @@ -3915,7 +3935,7 @@ public Builder addAllStats( public Builder clearStats() { if (statsBuilder_ == null) { stats_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000008); + bitField0_ = (bitField0_ & ~0x00000020); onChanged(); } else { statsBuilder_.clear(); @@ -4020,32 +4040,20 @@ public org.tensorflow.proto.profiler.Xplane.XStat.Builder addStatsBuilder( getStatsBuilderList() { return getStatsFieldBuilder().getBuilderList(); } - private com.google.protobuf.RepeatedFieldBuilderV3< + private com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.profiler.Xplane.XStat, org.tensorflow.proto.profiler.Xplane.XStat.Builder, org.tensorflow.proto.profiler.Xplane.XStatOrBuilder> getStatsFieldBuilder() { if (statsBuilder_ == null) { - statsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + statsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder< org.tensorflow.proto.profiler.Xplane.XStat, org.tensorflow.proto.profiler.Xplane.XStat.Builder, org.tensorflow.proto.profiler.Xplane.XStatOrBuilder>( stats_, - ((bitField0_ & 0x00000008) != 0), + ((bitField0_ & 0x00000020) != 0), getParentForChildren(), isClean()); stats_ = null; } return statsBuilder_; } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } - - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } - // @@protoc_insertion_point(builder_scope:tensorflow.profiler.XPlane) } @@ -4243,12 +4251,21 @@ org.tensorflow.proto.profiler.Xplane.XEventOrBuilder getEventsOrBuilder( * Protobuf type {@code tensorflow.profiler.XLine} */ public static final class XLine extends - com.google.protobuf.GeneratedMessageV3 implements + com.google.protobuf.GeneratedMessage implements // @@protoc_insertion_point(message_implements:tensorflow.profiler.XLine) XLineOrBuilder { private static final long serialVersionUID = 0L; + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 28, + /* patch= */ 3, + /* suffix= */ "", + XLine.class.getName()); + } // Use XLine.newBuilder() to construct. - private XLine(com.google.protobuf.GeneratedMessageV3.Builder builder) { + private XLine(com.google.protobuf.GeneratedMessage.Builder builder) { super(builder); } private XLine() { @@ -4257,25 +4274,13 @@ private XLine() { events_ = java.util.Collections.emptyList(); } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance( - UnusedPrivateParameter unused) { - return new XLine(); - } - - @java.lang.Override - public final com.google.protobuf.UnknownFieldSet - getUnknownFields() { - return this.unknownFields; - } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XLine_descriptor; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XLine_fieldAccessorTable .ensureFieldAccessorsInitialized( @@ -4283,7 +4288,7 @@ protected java.lang.Object newInstance( } public static final int ID_FIELD_NUMBER = 1; - private long id_; + private long id_ = 0L; /** *
          * Id of this line, can be repeated within an XPlane. All XLines with the
    @@ -4299,7 +4304,7 @@ public long getId() {
         }
     
         public static final int DISPLAY_ID_FIELD_NUMBER = 10;
    -    private long displayId_;
    +    private long displayId_ = 0L;
         /**
          * 
          * Display id of this line. Multiple lines with the same display_id are
    @@ -4315,7 +4320,8 @@ public long getDisplayId() {
         }
     
         public static final int NAME_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object name_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object name_ = "";
         /**
          * 
          * Name of this XLine.
    @@ -4361,7 +4367,8 @@ public java.lang.String getName() {
         }
     
         public static final int DISPLAY_NAME_FIELD_NUMBER = 11;
    -    private volatile java.lang.Object displayName_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object displayName_ = "";
         /**
          * 
          * Name of this XLine to display in trace viewer.
    @@ -4407,7 +4414,7 @@ public java.lang.String getDisplayName() {
         }
     
         public static final int TIMESTAMP_NS_FIELD_NUMBER = 3;
    -    private long timestampNs_;
    +    private long timestampNs_ = 0L;
         /**
          * 
          * Start time of this line in nanoseconds since the UNIX epoch.
    @@ -4423,7 +4430,7 @@ public long getTimestampNs() {
         }
     
         public static final int DURATION_PS_FIELD_NUMBER = 9;
    -    private long durationPs_;
    +    private long durationPs_ = 0L;
         /**
          * 
          * Profiling duration for this line in picoseconds.
    @@ -4438,6 +4445,7 @@ public long getDurationPs() {
         }
     
         public static final int EVENTS_FIELD_NUMBER = 4;
    +    @SuppressWarnings("serial")
         private java.util.List events_;
         /**
          * 
    @@ -4519,8 +4527,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (id_ != 0L) {
             output.writeInt64(1, id_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, name_);
           }
           if (timestampNs_ != 0L) {
             output.writeInt64(3, timestampNs_);
    @@ -4534,8 +4542,8 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (displayId_ != 0L) {
             output.writeInt64(10, displayId_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(displayName_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 11, displayName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(displayName_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 11, displayName_);
           }
           getUnknownFields().writeTo(output);
         }
    @@ -4550,8 +4558,8 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeInt64Size(1, id_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, name_);
           }
           if (timestampNs_ != 0L) {
             size += com.google.protobuf.CodedOutputStream
    @@ -4569,8 +4577,8 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeInt64Size(10, displayId_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(displayName_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(11, displayName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(displayName_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(11, displayName_);
           }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
    @@ -4671,39 +4679,41 @@ public static org.tensorflow.proto.profiler.Xplane.XLine parseFrom(
         }
         public static org.tensorflow.proto.profiler.Xplane.XLine parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.profiler.Xplane.XLine parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.profiler.Xplane.XLine parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.profiler.Xplane.XLine parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.profiler.Xplane.XLine parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.profiler.Xplane.XLine parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -4723,7 +4733,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -4736,7 +4746,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.profiler.XLine}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.profiler.XLine)
             org.tensorflow.proto.profiler.Xplane.XLineOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -4745,7 +4755,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XLine_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -4758,32 +4768,27 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             id_ = 0L;
    -
             displayId_ = 0L;
    -
             name_ = "";
    -
             displayName_ = "";
    -
             timestampNs_ = 0L;
    -
             durationPs_ = 0L;
    -
             if (eventsBuilder_ == null) {
               events_ = java.util.Collections.emptyList();
             } else {
               events_ = null;
               eventsBuilder_.clear();
             }
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000040);
             return this;
           }
     
    @@ -4810,58 +4815,46 @@ public org.tensorflow.proto.profiler.Xplane.XLine build() {
           @java.lang.Override
           public org.tensorflow.proto.profiler.Xplane.XLine buildPartial() {
             org.tensorflow.proto.profiler.Xplane.XLine result = new org.tensorflow.proto.profiler.Xplane.XLine(this);
    -        int from_bitField0_ = bitField0_;
    -        result.id_ = id_;
    -        result.displayId_ = displayId_;
    -        result.name_ = name_;
    -        result.displayName_ = displayName_;
    -        result.timestampNs_ = timestampNs_;
    -        result.durationPs_ = durationPs_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.profiler.Xplane.XLine result) {
             if (eventsBuilder_ == null) {
    -          if (((bitField0_ & 0x00000001) != 0)) {
    +          if (((bitField0_ & 0x00000040) != 0)) {
                 events_ = java.util.Collections.unmodifiableList(events_);
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000040);
               }
               result.events_ = events_;
             } else {
               result.events_ = eventsBuilder_.build();
             }
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.profiler.Xplane.XLine result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.id_ = id_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.displayId_ = displayId_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.name_ = name_;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.displayName_ = displayName_;
    +        }
    +        if (((from_bitField0_ & 0x00000010) != 0)) {
    +          result.timestampNs_ = timestampNs_;
    +        }
    +        if (((from_bitField0_ & 0x00000020) != 0)) {
    +          result.durationPs_ = durationPs_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.profiler.Xplane.XLine) {
    @@ -4882,10 +4875,12 @@ public Builder mergeFrom(org.tensorflow.proto.profiler.Xplane.XLine other) {
             }
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000004;
               onChanged();
             }
             if (!other.getDisplayName().isEmpty()) {
               displayName_ = other.displayName_;
    +          bitField0_ |= 0x00000008;
               onChanged();
             }
             if (other.getTimestampNs() != 0L) {
    @@ -4898,7 +4893,7 @@ public Builder mergeFrom(org.tensorflow.proto.profiler.Xplane.XLine other) {
               if (!other.events_.isEmpty()) {
                 if (events_.isEmpty()) {
                   events_ = other.events_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000040);
                 } else {
                   ensureEventsIsMutable();
                   events_.addAll(other.events_);
    @@ -4911,9 +4906,9 @@ public Builder mergeFrom(org.tensorflow.proto.profiler.Xplane.XLine other) {
                   eventsBuilder_.dispose();
                   eventsBuilder_ = null;
                   events_ = other.events_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000040);
                   eventsBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getEventsFieldBuilder() : null;
                 } else {
                   eventsBuilder_.addAllMessages(other.events_);
    @@ -4948,17 +4943,17 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     id_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   case 18: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 18
                   case 24: {
                     timestampNs_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000010;
                     break;
                   } // case 24
                   case 34: {
    @@ -4976,17 +4971,17 @@ public Builder mergeFrom(
                   } // case 34
                   case 72: {
                     durationPs_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000020;
                     break;
                   } // case 72
                   case 80: {
                     displayId_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 80
                   case 90: {
                     displayName_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 90
                   default: {
    @@ -5031,8 +5026,9 @@ public long getId() {
            * @return This builder for chaining.
            */
           public Builder setId(long value) {
    -        
    +
             id_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -5046,7 +5042,7 @@ public Builder setId(long value) {
            * @return This builder for chaining.
            */
           public Builder clearId() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             id_ = 0L;
             onChanged();
             return this;
    @@ -5077,8 +5073,9 @@ public long getDisplayId() {
            * @return This builder for chaining.
            */
           public Builder setDisplayId(long value) {
    -        
    +
             displayId_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -5092,7 +5089,7 @@ public Builder setDisplayId(long value) {
            * @return This builder for chaining.
            */
           public Builder clearDisplayId() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000002);
             displayId_ = 0L;
             onChanged();
             return this;
    @@ -5151,11 +5148,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -5168,8 +5163,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000004);
             onChanged();
             return this;
           }
    @@ -5184,12 +5179,10 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -5247,11 +5240,9 @@ public java.lang.String getDisplayName() {
            */
           public Builder setDisplayName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             displayName_ = value;
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -5264,8 +5255,8 @@ public Builder setDisplayName(
            * @return This builder for chaining.
            */
           public Builder clearDisplayName() {
    -        
             displayName_ = getDefaultInstance().getDisplayName();
    +        bitField0_ = (bitField0_ & ~0x00000008);
             onChanged();
             return this;
           }
    @@ -5280,12 +5271,10 @@ public Builder clearDisplayName() {
            */
           public Builder setDisplayNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             displayName_ = value;
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -5315,8 +5304,9 @@ public long getTimestampNs() {
            * @return This builder for chaining.
            */
           public Builder setTimestampNs(long value) {
    -        
    +
             timestampNs_ = value;
    +        bitField0_ |= 0x00000010;
             onChanged();
             return this;
           }
    @@ -5330,7 +5320,7 @@ public Builder setTimestampNs(long value) {
            * @return This builder for chaining.
            */
           public Builder clearTimestampNs() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000010);
             timestampNs_ = 0L;
             onChanged();
             return this;
    @@ -5359,8 +5349,9 @@ public long getDurationPs() {
            * @return This builder for chaining.
            */
           public Builder setDurationPs(long value) {
    -        
    +
             durationPs_ = value;
    +        bitField0_ |= 0x00000020;
             onChanged();
             return this;
           }
    @@ -5373,7 +5364,7 @@ public Builder setDurationPs(long value) {
            * @return This builder for chaining.
            */
           public Builder clearDurationPs() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000020);
             durationPs_ = 0L;
             onChanged();
             return this;
    @@ -5382,13 +5373,13 @@ public Builder clearDurationPs() {
           private java.util.List events_ =
             java.util.Collections.emptyList();
           private void ensureEventsIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    +        if (!((bitField0_ & 0x00000040) != 0)) {
               events_ = new java.util.ArrayList(events_);
    -          bitField0_ |= 0x00000001;
    +          bitField0_ |= 0x00000040;
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.profiler.Xplane.XEvent, org.tensorflow.proto.profiler.Xplane.XEvent.Builder, org.tensorflow.proto.profiler.Xplane.XEventOrBuilder> eventsBuilder_;
     
           /**
    @@ -5589,7 +5580,7 @@ public Builder addAllEvents(
           public Builder clearEvents() {
             if (eventsBuilder_ == null) {
               events_ = java.util.Collections.emptyList();
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000040);
               onChanged();
             } else {
               eventsBuilder_.clear();
    @@ -5694,32 +5685,20 @@ public org.tensorflow.proto.profiler.Xplane.XEvent.Builder addEventsBuilder(
                getEventsBuilderList() {
             return getEventsFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.profiler.Xplane.XEvent, org.tensorflow.proto.profiler.Xplane.XEvent.Builder, org.tensorflow.proto.profiler.Xplane.XEventOrBuilder> 
               getEventsFieldBuilder() {
             if (eventsBuilder_ == null) {
    -          eventsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          eventsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.profiler.Xplane.XEvent, org.tensorflow.proto.profiler.Xplane.XEvent.Builder, org.tensorflow.proto.profiler.Xplane.XEventOrBuilder>(
                       events_,
    -                  ((bitField0_ & 0x00000001) != 0),
    +                  ((bitField0_ & 0x00000040) != 0),
                       getParentForChildren(),
                       isClean());
               events_ = null;
             }
             return eventsBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.profiler.XLine)
         }
    @@ -5885,7 +5864,7 @@ public interface XEventOrBuilder extends
         org.tensorflow.proto.profiler.Xplane.XStatOrBuilder getStatsOrBuilder(
             int index);
     
    -    public org.tensorflow.proto.profiler.Xplane.XEvent.DataCase getDataCase();
    +    org.tensorflow.proto.profiler.Xplane.XEvent.DataCase getDataCase();
       }
       /**
        * 
    @@ -5896,37 +5875,34 @@ org.tensorflow.proto.profiler.Xplane.XStatOrBuilder getStatsOrBuilder(
        * Protobuf type {@code tensorflow.profiler.XEvent}
        */
       public static final class XEvent extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.profiler.XEvent)
           XEventOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        XEvent.class.getName());
    +    }
         // Use XEvent.newBuilder() to construct.
    -    private XEvent(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private XEvent(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private XEvent() {
           stats_ = java.util.Collections.emptyList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new XEvent();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XEvent_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XEvent_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -5934,6 +5910,7 @@ protected java.lang.Object newInstance(
         }
     
         private int dataCase_ = 0;
    +    @SuppressWarnings("serial")
         private java.lang.Object data_;
         public enum DataCase
             implements com.google.protobuf.Internal.EnumLite,
    @@ -5975,7 +5952,7 @@ public int getNumber() {
         }
     
         public static final int METADATA_ID_FIELD_NUMBER = 1;
    -    private long metadataId_;
    +    private long metadataId_ = 0L;
         /**
          * 
          * XEventMetadata.id of corresponding metadata.
    @@ -6050,7 +6027,7 @@ public long getNumOccurrences() {
         }
     
         public static final int DURATION_PS_FIELD_NUMBER = 3;
    -    private long durationPs_;
    +    private long durationPs_ = 0L;
         /**
          * 
          * Duration of the event in picoseconds. Can be zero for an instant event.
    @@ -6065,6 +6042,7 @@ public long getDurationPs() {
         }
     
         public static final int STATS_FIELD_NUMBER = 4;
    +    @SuppressWarnings("serial")
         private java.util.List stats_;
         /**
          * 
    @@ -6299,39 +6277,41 @@ public static org.tensorflow.proto.profiler.Xplane.XEvent parseFrom(
         }
         public static org.tensorflow.proto.profiler.Xplane.XEvent parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.profiler.Xplane.XEvent parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.profiler.Xplane.XEvent parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.profiler.Xplane.XEvent parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.profiler.Xplane.XEvent parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.profiler.Xplane.XEvent parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -6351,7 +6331,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -6364,7 +6344,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.profiler.XEvent}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.profiler.XEvent)
             org.tensorflow.proto.profiler.Xplane.XEventOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -6373,7 +6353,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XEvent_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -6386,24 +6366,23 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             metadataId_ = 0L;
    -
             durationPs_ = 0L;
    -
             if (statsBuilder_ == null) {
               stats_ = java.util.Collections.emptyList();
             } else {
               stats_ = null;
               statsBuilder_.clear();
             }
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000010);
             dataCase_ = 0;
             data_ = null;
             return this;
    @@ -6432,61 +6411,40 @@ public org.tensorflow.proto.profiler.Xplane.XEvent build() {
           @java.lang.Override
           public org.tensorflow.proto.profiler.Xplane.XEvent buildPartial() {
             org.tensorflow.proto.profiler.Xplane.XEvent result = new org.tensorflow.proto.profiler.Xplane.XEvent(this);
    -        int from_bitField0_ = bitField0_;
    -        result.metadataId_ = metadataId_;
    -        if (dataCase_ == 2) {
    -          result.data_ = data_;
    -        }
    -        if (dataCase_ == 5) {
    -          result.data_ = data_;
    -        }
    -        result.durationPs_ = durationPs_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        buildPartialOneofs(result);
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.profiler.Xplane.XEvent result) {
             if (statsBuilder_ == null) {
    -          if (((bitField0_ & 0x00000001) != 0)) {
    +          if (((bitField0_ & 0x00000010) != 0)) {
                 stats_ = java.util.Collections.unmodifiableList(stats_);
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000010);
               }
               result.stats_ = stats_;
             } else {
               result.stats_ = statsBuilder_.build();
             }
    -        result.dataCase_ = dataCase_;
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    +      private void buildPartial0(org.tensorflow.proto.profiler.Xplane.XEvent result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.metadataId_ = metadataId_;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.durationPs_ = durationPs_;
    +        }
           }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +
    +      private void buildPartialOneofs(org.tensorflow.proto.profiler.Xplane.XEvent result) {
    +        result.dataCase_ = dataCase_;
    +        result.data_ = this.data_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.profiler.Xplane.XEvent) {
    @@ -6509,7 +6467,7 @@ public Builder mergeFrom(org.tensorflow.proto.profiler.Xplane.XEvent other) {
               if (!other.stats_.isEmpty()) {
                 if (stats_.isEmpty()) {
                   stats_ = other.stats_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000010);
                 } else {
                   ensureStatsIsMutable();
                   stats_.addAll(other.stats_);
    @@ -6522,9 +6480,9 @@ public Builder mergeFrom(org.tensorflow.proto.profiler.Xplane.XEvent other) {
                   statsBuilder_.dispose();
                   statsBuilder_ = null;
                   stats_ = other.stats_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000010);
                   statsBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getStatsFieldBuilder() : null;
                 } else {
                   statsBuilder_.addAllMessages(other.stats_);
    @@ -6572,7 +6530,7 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     metadataId_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   case 16: {
    @@ -6582,7 +6540,7 @@ public Builder mergeFrom(
                   } // case 16
                   case 24: {
                     durationPs_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 24
                   case 34: {
    @@ -6658,8 +6616,9 @@ public long getMetadataId() {
            * @return This builder for chaining.
            */
           public Builder setMetadataId(long value) {
    -        
    +
             metadataId_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -6672,7 +6631,7 @@ public Builder setMetadataId(long value) {
            * @return This builder for chaining.
            */
           public Builder clearMetadataId() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             metadataId_ = 0L;
             onChanged();
             return this;
    @@ -6716,6 +6675,7 @@ public long getOffsetPs() {
            * @return This builder for chaining.
            */
           public Builder setOffsetPs(long value) {
    +
             dataCase_ = 2;
             data_ = value;
             onChanged();
    @@ -6774,6 +6734,7 @@ public long getNumOccurrences() {
            * @return This builder for chaining.
            */
           public Builder setNumOccurrences(long value) {
    +
             dataCase_ = 5;
             data_ = value;
             onChanged();
    @@ -6819,8 +6780,9 @@ public long getDurationPs() {
            * @return This builder for chaining.
            */
           public Builder setDurationPs(long value) {
    -        
    +
             durationPs_ = value;
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -6833,7 +6795,7 @@ public Builder setDurationPs(long value) {
            * @return This builder for chaining.
            */
           public Builder clearDurationPs() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000008);
             durationPs_ = 0L;
             onChanged();
             return this;
    @@ -6842,13 +6804,13 @@ public Builder clearDurationPs() {
           private java.util.List stats_ =
             java.util.Collections.emptyList();
           private void ensureStatsIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    +        if (!((bitField0_ & 0x00000010) != 0)) {
               stats_ = new java.util.ArrayList(stats_);
    -          bitField0_ |= 0x00000001;
    +          bitField0_ |= 0x00000010;
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.profiler.Xplane.XStat, org.tensorflow.proto.profiler.Xplane.XStat.Builder, org.tensorflow.proto.profiler.Xplane.XStatOrBuilder> statsBuilder_;
     
           /**
    @@ -7049,7 +7011,7 @@ public Builder addAllStats(
           public Builder clearStats() {
             if (statsBuilder_ == null) {
               stats_ = java.util.Collections.emptyList();
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000010);
               onChanged();
             } else {
               statsBuilder_.clear();
    @@ -7154,32 +7116,20 @@ public org.tensorflow.proto.profiler.Xplane.XStat.Builder addStatsBuilder(
                getStatsBuilderList() {
             return getStatsFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.profiler.Xplane.XStat, org.tensorflow.proto.profiler.Xplane.XStat.Builder, org.tensorflow.proto.profiler.Xplane.XStatOrBuilder> 
               getStatsFieldBuilder() {
             if (statsBuilder_ == null) {
    -          statsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          statsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.profiler.Xplane.XStat, org.tensorflow.proto.profiler.Xplane.XStat.Builder, org.tensorflow.proto.profiler.Xplane.XStatOrBuilder>(
                       stats_,
    -                  ((bitField0_ & 0x00000001) != 0),
    +                  ((bitField0_ & 0x00000010) != 0),
                       getParentForChildren(),
                       isClean());
               stats_ = null;
             }
             return statsBuilder_;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.profiler.XEvent)
         }
    @@ -7326,7 +7276,7 @@ public interface XStatOrBuilder extends
          */
         long getRefValue();
     
    -    public org.tensorflow.proto.profiler.Xplane.XStat.ValueCase getValueCase();
    +    org.tensorflow.proto.profiler.Xplane.XStat.ValueCase getValueCase();
       }
       /**
        * 
    @@ -7339,36 +7289,33 @@ public interface XStatOrBuilder extends
        * Protobuf type {@code tensorflow.profiler.XStat}
        */
       public static final class XStat extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.profiler.XStat)
           XStatOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        XStat.class.getName());
    +    }
         // Use XStat.newBuilder() to construct.
    -    private XStat(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private XStat(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private XStat() {
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new XStat();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XStat_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XStat_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -7376,6 +7323,7 @@ protected java.lang.Object newInstance(
         }
     
         private int valueCase_ = 0;
    +    @SuppressWarnings("serial")
         private java.lang.Object value_;
         public enum ValueCase
             implements com.google.protobuf.Internal.EnumLite,
    @@ -7425,7 +7373,7 @@ public int getNumber() {
         }
     
         public static final int METADATA_ID_FIELD_NUMBER = 1;
    -    private long metadataId_;
    +    private long metadataId_ = 0L;
         /**
          * 
          * XStatMetadata.id of corresponding metadata.
    @@ -7634,7 +7582,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
                 4, (long)((java.lang.Long) value_));
           }
           if (valueCase_ == 5) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, value_);
    +        com.google.protobuf.GeneratedMessage.writeString(output, 5, value_);
           }
           if (valueCase_ == 6) {
             output.writeBytes(
    @@ -7673,7 +7621,7 @@ public int getSerializedSize() {
                   4, (long)((java.lang.Long) value_));
           }
           if (valueCase_ == 5) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, value_);
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(5, value_);
           }
           if (valueCase_ == 6) {
             size += com.google.protobuf.CodedOutputStream
    @@ -7817,39 +7765,41 @@ public static org.tensorflow.proto.profiler.Xplane.XStat parseFrom(
         }
         public static org.tensorflow.proto.profiler.Xplane.XStat parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.profiler.Xplane.XStat parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.profiler.Xplane.XStat parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.profiler.Xplane.XStat parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.profiler.Xplane.XStat parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.profiler.Xplane.XStat parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -7869,7 +7819,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -7884,7 +7834,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.profiler.XStat}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.profiler.XStat)
             org.tensorflow.proto.profiler.Xplane.XStatOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -7893,7 +7843,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XStat_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -7906,15 +7856,15 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             metadataId_ = 0L;
    -
             valueCase_ = 0;
             value_ = null;
             return this;
    @@ -7943,62 +7893,24 @@ public org.tensorflow.proto.profiler.Xplane.XStat build() {
           @java.lang.Override
           public org.tensorflow.proto.profiler.Xplane.XStat buildPartial() {
             org.tensorflow.proto.profiler.Xplane.XStat result = new org.tensorflow.proto.profiler.Xplane.XStat(this);
    -        result.metadataId_ = metadataId_;
    -        if (valueCase_ == 2) {
    -          result.value_ = value_;
    -        }
    -        if (valueCase_ == 3) {
    -          result.value_ = value_;
    -        }
    -        if (valueCase_ == 4) {
    -          result.value_ = value_;
    -        }
    -        if (valueCase_ == 5) {
    -          result.value_ = value_;
    -        }
    -        if (valueCase_ == 6) {
    -          result.value_ = value_;
    -        }
    -        if (valueCase_ == 7) {
    -          result.value_ = value_;
    -        }
    -        result.valueCase_ = valueCase_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        buildPartialOneofs(result);
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    +      private void buildPartial0(org.tensorflow.proto.profiler.Xplane.XStat result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.metadataId_ = metadataId_;
    +        }
           }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +
    +      private void buildPartialOneofs(org.tensorflow.proto.profiler.Xplane.XStat result) {
    +        result.valueCase_ = valueCase_;
    +        result.value_ = this.value_;
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.profiler.Xplane.XStat) {
    @@ -8073,7 +7985,7 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     metadataId_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   case 17: {
    @@ -8137,6 +8049,7 @@ public Builder clearValue() {
             return this;
           }
     
    +      private int bitField0_;
     
           private long metadataId_ ;
           /**
    @@ -8161,8 +8074,9 @@ public long getMetadataId() {
            * @return This builder for chaining.
            */
           public Builder setMetadataId(long value) {
    -        
    +
             metadataId_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -8175,7 +8089,7 @@ public Builder setMetadataId(long value) {
            * @return This builder for chaining.
            */
           public Builder clearMetadataId() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             metadataId_ = 0L;
             onChanged();
             return this;
    @@ -8204,6 +8118,7 @@ public double getDoubleValue() {
            * @return This builder for chaining.
            */
           public Builder setDoubleValue(double value) {
    +
             valueCase_ = 2;
             value_ = value;
             onChanged();
    @@ -8245,6 +8160,7 @@ public long getUint64Value() {
            * @return This builder for chaining.
            */
           public Builder setUint64Value(long value) {
    +
             valueCase_ = 3;
             value_ = value;
             onChanged();
    @@ -8286,6 +8202,7 @@ public long getInt64Value() {
            * @return This builder for chaining.
            */
           public Builder setInt64Value(long value) {
    +
             valueCase_ = 4;
             value_ = value;
             onChanged();
    @@ -8364,10 +8281,8 @@ public java.lang.String getStrValue() {
            */
           public Builder setStrValue(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  valueCase_ = 5;
    +        if (value == null) { throw new NullPointerException(); }
    +        valueCase_ = 5;
             value_ = value;
             onChanged();
             return this;
    @@ -8391,10 +8306,8 @@ public Builder clearStrValue() {
            */
           public Builder setStrValueBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             valueCase_ = 5;
             value_ = value;
             onChanged();
    @@ -8424,10 +8337,8 @@ public com.google.protobuf.ByteString getBytesValue() {
            * @return This builder for chaining.
            */
           public Builder setBytesValue(com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  valueCase_ = 6;
    +        if (value == null) { throw new NullPointerException(); }
    +        valueCase_ = 6;
             value_ = value;
             onChanged();
             return this;
    @@ -8480,6 +8391,7 @@ public long getRefValue() {
            * @return This builder for chaining.
            */
           public Builder setRefValue(long value) {
    +
             valueCase_ = 7;
             value_ = value;
             onChanged();
    @@ -8501,18 +8413,6 @@ public Builder clearRefValue() {
             }
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.profiler.XStat)
         }
    @@ -8717,12 +8617,21 @@ org.tensorflow.proto.profiler.Xplane.XStatOrBuilder getStatsOrBuilder(
        * Protobuf type {@code tensorflow.profiler.XEventMetadata}
        */
       public static final class XEventMetadata extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.profiler.XEventMetadata)
           XEventMetadataOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        XEventMetadata.class.getName());
    +    }
         // Use XEventMetadata.newBuilder() to construct.
    -    private XEventMetadata(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private XEventMetadata(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private XEventMetadata() {
    @@ -8733,25 +8642,13 @@ private XEventMetadata() {
           childId_ = emptyLongList();
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new XEventMetadata();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XEventMetadata_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XEventMetadata_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -8759,7 +8656,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int ID_FIELD_NUMBER = 1;
    -    private long id_;
    +    private long id_ = 0L;
         /**
          * 
          * XPlane.event_metadata map key.
    @@ -8774,7 +8671,8 @@ public long getId() {
         }
     
         public static final int NAME_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object name_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object name_ = "";
         /**
          * 
          * Name of the event.
    @@ -8820,7 +8718,8 @@ public java.lang.String getName() {
         }
     
         public static final int DISPLAY_NAME_FIELD_NUMBER = 4;
    -    private volatile java.lang.Object displayName_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object displayName_ = "";
         /**
          * 
          * Name of the event shown in trace viewer.
    @@ -8866,7 +8765,7 @@ public java.lang.String getDisplayName() {
         }
     
         public static final int METADATA_FIELD_NUMBER = 3;
    -    private com.google.protobuf.ByteString metadata_;
    +    private com.google.protobuf.ByteString metadata_ = com.google.protobuf.ByteString.EMPTY;
         /**
          * 
          * Additional metadata in serialized format.
    @@ -8881,6 +8780,7 @@ public com.google.protobuf.ByteString getMetadata() {
         }
     
         public static final int STATS_FIELD_NUMBER = 5;
    +    @SuppressWarnings("serial")
         private java.util.List stats_;
         /**
          * 
    @@ -8946,7 +8846,9 @@ public org.tensorflow.proto.profiler.Xplane.XStatOrBuilder getStatsOrBuilder(
         }
     
         public static final int CHILD_ID_FIELD_NUMBER = 6;
    -    private com.google.protobuf.Internal.LongList childId_;
    +    @SuppressWarnings("serial")
    +    private com.google.protobuf.Internal.LongList childId_ =
    +        emptyLongList();
         /**
          * 
          * XPlane.event_metadata map key for children events.
    @@ -9003,14 +8905,14 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (id_ != 0L) {
             output.writeInt64(1, id_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, name_);
           }
           if (!metadata_.isEmpty()) {
             output.writeBytes(3, metadata_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(displayName_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, displayName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(displayName_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 4, displayName_);
           }
           for (int i = 0; i < stats_.size(); i++) {
             output.writeMessage(5, stats_.get(i));
    @@ -9035,15 +8937,15 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeInt64Size(1, id_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, name_);
           }
           if (!metadata_.isEmpty()) {
             size += com.google.protobuf.CodedOutputStream
               .computeBytesSize(3, metadata_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(displayName_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, displayName_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(displayName_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(4, displayName_);
           }
           for (int i = 0; i < stats_.size(); i++) {
             size += com.google.protobuf.CodedOutputStream
    @@ -9157,39 +9059,41 @@ public static org.tensorflow.proto.profiler.Xplane.XEventMetadata parseFrom(
         }
         public static org.tensorflow.proto.profiler.Xplane.XEventMetadata parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.profiler.Xplane.XEventMetadata parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.profiler.Xplane.XEventMetadata parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.profiler.Xplane.XEventMetadata parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.profiler.Xplane.XEventMetadata parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.profiler.Xplane.XEventMetadata parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -9209,7 +9113,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -9223,7 +9127,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.profiler.XEventMetadata}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.profiler.XEventMetadata)
             org.tensorflow.proto.profiler.Xplane.XEventMetadataOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -9232,7 +9136,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XEventMetadata_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -9245,30 +9149,26 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             id_ = 0L;
    -
             name_ = "";
    -
             displayName_ = "";
    -
             metadata_ = com.google.protobuf.ByteString.EMPTY;
    -
             if (statsBuilder_ == null) {
               stats_ = java.util.Collections.emptyList();
             } else {
               stats_ = null;
               statsBuilder_.clear();
             }
    -        bitField0_ = (bitField0_ & ~0x00000001);
    +        bitField0_ = (bitField0_ & ~0x00000010);
             childId_ = emptyLongList();
    -        bitField0_ = (bitField0_ & ~0x00000002);
             return this;
           }
     
    @@ -9295,61 +9195,44 @@ public org.tensorflow.proto.profiler.Xplane.XEventMetadata build() {
           @java.lang.Override
           public org.tensorflow.proto.profiler.Xplane.XEventMetadata buildPartial() {
             org.tensorflow.proto.profiler.Xplane.XEventMetadata result = new org.tensorflow.proto.profiler.Xplane.XEventMetadata(this);
    -        int from_bitField0_ = bitField0_;
    -        result.id_ = id_;
    -        result.name_ = name_;
    -        result.displayName_ = displayName_;
    -        result.metadata_ = metadata_;
    +        buildPartialRepeatedFields(result);
    +        if (bitField0_ != 0) { buildPartial0(result); }
    +        onBuilt();
    +        return result;
    +      }
    +
    +      private void buildPartialRepeatedFields(org.tensorflow.proto.profiler.Xplane.XEventMetadata result) {
             if (statsBuilder_ == null) {
    -          if (((bitField0_ & 0x00000001) != 0)) {
    +          if (((bitField0_ & 0x00000010) != 0)) {
                 stats_ = java.util.Collections.unmodifiableList(stats_);
    -            bitField0_ = (bitField0_ & ~0x00000001);
    +            bitField0_ = (bitField0_ & ~0x00000010);
               }
               result.stats_ = stats_;
             } else {
               result.stats_ = statsBuilder_.build();
             }
    -        if (((bitField0_ & 0x00000002) != 0)) {
    +      }
    +
    +      private void buildPartial0(org.tensorflow.proto.profiler.Xplane.XEventMetadata result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.id_ = id_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.name_ = name_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.displayName_ = displayName_;
    +        }
    +        if (((from_bitField0_ & 0x00000008) != 0)) {
    +          result.metadata_ = metadata_;
    +        }
    +        if (((from_bitField0_ & 0x00000020) != 0)) {
               childId_.makeImmutable();
    -          bitField0_ = (bitField0_ & ~0x00000002);
    +          result.childId_ = childId_;
             }
    -        result.childId_ = childId_;
    -        onBuilt();
    -        return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    -      }
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.profiler.Xplane.XEventMetadata) {
    @@ -9367,10 +9250,12 @@ public Builder mergeFrom(org.tensorflow.proto.profiler.Xplane.XEventMetadata oth
             }
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             if (!other.getDisplayName().isEmpty()) {
               displayName_ = other.displayName_;
    +          bitField0_ |= 0x00000004;
               onChanged();
             }
             if (other.getMetadata() != com.google.protobuf.ByteString.EMPTY) {
    @@ -9380,7 +9265,7 @@ public Builder mergeFrom(org.tensorflow.proto.profiler.Xplane.XEventMetadata oth
               if (!other.stats_.isEmpty()) {
                 if (stats_.isEmpty()) {
                   stats_ = other.stats_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000010);
                 } else {
                   ensureStatsIsMutable();
                   stats_.addAll(other.stats_);
    @@ -9393,9 +9278,9 @@ public Builder mergeFrom(org.tensorflow.proto.profiler.Xplane.XEventMetadata oth
                   statsBuilder_.dispose();
                   statsBuilder_ = null;
                   stats_ = other.stats_;
    -              bitField0_ = (bitField0_ & ~0x00000001);
    +              bitField0_ = (bitField0_ & ~0x00000010);
                   statsBuilder_ = 
    -                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
    +                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                        getStatsFieldBuilder() : null;
                 } else {
                   statsBuilder_.addAllMessages(other.stats_);
    @@ -9405,7 +9290,8 @@ public Builder mergeFrom(org.tensorflow.proto.profiler.Xplane.XEventMetadata oth
             if (!other.childId_.isEmpty()) {
               if (childId_.isEmpty()) {
                 childId_ = other.childId_;
    -            bitField0_ = (bitField0_ & ~0x00000002);
    +            childId_.makeImmutable();
    +            bitField0_ |= 0x00000020;
               } else {
                 ensureChildIdIsMutable();
                 childId_.addAll(other.childId_);
    @@ -9440,22 +9326,22 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     id_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   case 18: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 26: {
                     metadata_ = input.readBytes();
    -
    +                bitField0_ |= 0x00000008;
                     break;
                   } // case 26
                   case 34: {
                     displayName_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 34
                   case 42: {
    @@ -9527,8 +9413,9 @@ public long getId() {
            * @return This builder for chaining.
            */
           public Builder setId(long value) {
    -        
    +
             id_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -9541,7 +9428,7 @@ public Builder setId(long value) {
            * @return This builder for chaining.
            */
           public Builder clearId() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             id_ = 0L;
             onChanged();
             return this;
    @@ -9600,11 +9487,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -9617,8 +9502,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -9633,12 +9518,10 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -9696,11 +9579,9 @@ public java.lang.String getDisplayName() {
            */
           public Builder setDisplayName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             displayName_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -9713,8 +9594,8 @@ public Builder setDisplayName(
            * @return This builder for chaining.
            */
           public Builder clearDisplayName() {
    -        
             displayName_ = getDefaultInstance().getDisplayName();
    +        bitField0_ = (bitField0_ & ~0x00000004);
             onChanged();
             return this;
           }
    @@ -9729,12 +9610,10 @@ public Builder clearDisplayName() {
            */
           public Builder setDisplayNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             displayName_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -9762,11 +9641,9 @@ public com.google.protobuf.ByteString getMetadata() {
            * @return This builder for chaining.
            */
           public Builder setMetadata(com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             metadata_ = value;
    +        bitField0_ |= 0x00000008;
             onChanged();
             return this;
           }
    @@ -9779,7 +9656,7 @@ public Builder setMetadata(com.google.protobuf.ByteString value) {
            * @return This builder for chaining.
            */
           public Builder clearMetadata() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000008);
             metadata_ = getDefaultInstance().getMetadata();
             onChanged();
             return this;
    @@ -9788,13 +9665,13 @@ public Builder clearMetadata() {
           private java.util.List stats_ =
             java.util.Collections.emptyList();
           private void ensureStatsIsMutable() {
    -        if (!((bitField0_ & 0x00000001) != 0)) {
    +        if (!((bitField0_ & 0x00000010) != 0)) {
               stats_ = new java.util.ArrayList(stats_);
    -          bitField0_ |= 0x00000001;
    +          bitField0_ |= 0x00000010;
              }
           }
     
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.profiler.Xplane.XStat, org.tensorflow.proto.profiler.Xplane.XStat.Builder, org.tensorflow.proto.profiler.Xplane.XStatOrBuilder> statsBuilder_;
     
           /**
    @@ -9995,7 +9872,7 @@ public Builder addAllStats(
           public Builder clearStats() {
             if (statsBuilder_ == null) {
               stats_ = java.util.Collections.emptyList();
    -          bitField0_ = (bitField0_ & ~0x00000001);
    +          bitField0_ = (bitField0_ & ~0x00000010);
               onChanged();
             } else {
               statsBuilder_.clear();
    @@ -10100,14 +9977,14 @@ public org.tensorflow.proto.profiler.Xplane.XStat.Builder addStatsBuilder(
                getStatsBuilderList() {
             return getStatsFieldBuilder().getBuilderList();
           }
    -      private com.google.protobuf.RepeatedFieldBuilderV3<
    +      private com.google.protobuf.RepeatedFieldBuilder<
               org.tensorflow.proto.profiler.Xplane.XStat, org.tensorflow.proto.profiler.Xplane.XStat.Builder, org.tensorflow.proto.profiler.Xplane.XStatOrBuilder> 
               getStatsFieldBuilder() {
             if (statsBuilder_ == null) {
    -          statsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
    +          statsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
                   org.tensorflow.proto.profiler.Xplane.XStat, org.tensorflow.proto.profiler.Xplane.XStat.Builder, org.tensorflow.proto.profiler.Xplane.XStatOrBuilder>(
                       stats_,
    -                  ((bitField0_ & 0x00000001) != 0),
    +                  ((bitField0_ & 0x00000010) != 0),
                       getParentForChildren(),
                       isClean());
               stats_ = null;
    @@ -10117,10 +9994,10 @@ public org.tensorflow.proto.profiler.Xplane.XStat.Builder addStatsBuilder(
     
           private com.google.protobuf.Internal.LongList childId_ = emptyLongList();
           private void ensureChildIdIsMutable() {
    -        if (!((bitField0_ & 0x00000002) != 0)) {
    -          childId_ = mutableCopy(childId_);
    -          bitField0_ |= 0x00000002;
    -         }
    +        if (!childId_.isModifiable()) {
    +          childId_ = makeMutableCopy(childId_);
    +        }
    +        bitField0_ |= 0x00000020;
           }
           /**
            * 
    @@ -10132,8 +10009,8 @@ private void ensureChildIdIsMutable() {
            */
           public java.util.List
               getChildIdList() {
    -        return ((bitField0_ & 0x00000002) != 0) ?
    -                 java.util.Collections.unmodifiableList(childId_) : childId_;
    +        childId_.makeImmutable();
    +        return childId_;
           }
           /**
            * 
    @@ -10170,8 +10047,10 @@ public long getChildId(int index) {
            */
           public Builder setChildId(
               int index, long value) {
    +
             ensureChildIdIsMutable();
             childId_.setLong(index, value);
    +        bitField0_ |= 0x00000020;
             onChanged();
             return this;
           }
    @@ -10185,8 +10064,10 @@ public Builder setChildId(
            * @return This builder for chaining.
            */
           public Builder addChildId(long value) {
    +
             ensureChildIdIsMutable();
             childId_.addLong(value);
    +        bitField0_ |= 0x00000020;
             onChanged();
             return this;
           }
    @@ -10204,6 +10085,7 @@ public Builder addAllChildId(
             ensureChildIdIsMutable();
             com.google.protobuf.AbstractMessageLite.Builder.addAll(
                 values, childId_);
    +        bitField0_ |= 0x00000020;
             onChanged();
             return this;
           }
    @@ -10217,22 +10099,10 @@ public Builder addAllChildId(
            */
           public Builder clearChildId() {
             childId_ = emptyLongList();
    -        bitField0_ = (bitField0_ & ~0x00000002);
    +        bitField0_ = (bitField0_ & ~0x00000020);
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.profiler.XEventMetadata)
         }
    @@ -10351,12 +10221,21 @@ public interface XStatMetadataOrBuilder extends
        * Protobuf type {@code tensorflow.profiler.XStatMetadata}
        */
       public static final class XStatMetadata extends
    -      com.google.protobuf.GeneratedMessageV3 implements
    +      com.google.protobuf.GeneratedMessage implements
           // @@protoc_insertion_point(message_implements:tensorflow.profiler.XStatMetadata)
           XStatMetadataOrBuilder {
       private static final long serialVersionUID = 0L;
    +    static {
    +      com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
    +        com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
    +        /* major= */ 4,
    +        /* minor= */ 28,
    +        /* patch= */ 3,
    +        /* suffix= */ "",
    +        XStatMetadata.class.getName());
    +    }
         // Use XStatMetadata.newBuilder() to construct.
    -    private XStatMetadata(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    +    private XStatMetadata(com.google.protobuf.GeneratedMessage.Builder builder) {
           super(builder);
         }
         private XStatMetadata() {
    @@ -10364,25 +10243,13 @@ private XStatMetadata() {
           description_ = "";
         }
     
    -    @java.lang.Override
    -    @SuppressWarnings({"unused"})
    -    protected java.lang.Object newInstance(
    -        UnusedPrivateParameter unused) {
    -      return new XStatMetadata();
    -    }
    -
    -    @java.lang.Override
    -    public final com.google.protobuf.UnknownFieldSet
    -    getUnknownFields() {
    -      return this.unknownFields;
    -    }
         public static final com.google.protobuf.Descriptors.Descriptor
             getDescriptor() {
           return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XStatMetadata_descriptor;
         }
     
         @java.lang.Override
    -    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
             internalGetFieldAccessorTable() {
           return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XStatMetadata_fieldAccessorTable
               .ensureFieldAccessorsInitialized(
    @@ -10390,7 +10257,7 @@ protected java.lang.Object newInstance(
         }
     
         public static final int ID_FIELD_NUMBER = 1;
    -    private long id_;
    +    private long id_ = 0L;
         /**
          * 
          * XPlane.stat_metadata map key.
    @@ -10405,7 +10272,8 @@ public long getId() {
         }
     
         public static final int NAME_FIELD_NUMBER = 2;
    -    private volatile java.lang.Object name_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object name_ = "";
         /**
          * 
          * Name of the stat (should be short).
    @@ -10453,7 +10321,8 @@ public java.lang.String getName() {
         }
     
         public static final int DESCRIPTION_FIELD_NUMBER = 3;
    -    private volatile java.lang.Object description_;
    +    @SuppressWarnings("serial")
    +    private volatile java.lang.Object description_ = "";
         /**
          * 
          * Description of the stat (might be long).
    @@ -10515,11 +10384,11 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
           if (id_ != 0L) {
             output.writeInt64(1, id_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 2, name_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
    -        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, description_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) {
    +        com.google.protobuf.GeneratedMessage.writeString(output, 3, description_);
           }
           getUnknownFields().writeTo(output);
         }
    @@ -10534,11 +10403,11 @@ public int getSerializedSize() {
             size += com.google.protobuf.CodedOutputStream
               .computeInt64Size(1, id_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(2, name_);
           }
    -      if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) {
    -        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, description_);
    +      if (!com.google.protobuf.GeneratedMessage.isStringEmpty(description_)) {
    +        size += com.google.protobuf.GeneratedMessage.computeStringSize(3, description_);
           }
           size += getUnknownFields().getSerializedSize();
           memoizedSize = size;
    @@ -10618,39 +10487,41 @@ public static org.tensorflow.proto.profiler.Xplane.XStatMetadata parseFrom(
         }
         public static org.tensorflow.proto.profiler.Xplane.XStatMetadata parseFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.profiler.Xplane.XStatMetadata parseFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
    +
         public static org.tensorflow.proto.profiler.Xplane.XStatMetadata parseDelimitedFrom(java.io.InputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input);
         }
    +
         public static org.tensorflow.proto.profiler.Xplane.XStatMetadata parseDelimitedFrom(
             java.io.InputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
         }
         public static org.tensorflow.proto.profiler.Xplane.XStatMetadata parseFrom(
             com.google.protobuf.CodedInputStream input)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input);
         }
         public static org.tensorflow.proto.profiler.Xplane.XStatMetadata parseFrom(
             com.google.protobuf.CodedInputStream input,
             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
             throws java.io.IOException {
    -      return com.google.protobuf.GeneratedMessageV3
    +      return com.google.protobuf.GeneratedMessage
               .parseWithIOException(PARSER, input, extensionRegistry);
         }
     
    @@ -10670,7 +10541,7 @@ public Builder toBuilder() {
     
         @java.lang.Override
         protected Builder newBuilderForType(
    -        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
           Builder builder = new Builder(parent);
           return builder;
         }
    @@ -10684,7 +10555,7 @@ protected Builder newBuilderForType(
          * Protobuf type {@code tensorflow.profiler.XStatMetadata}
          */
         public static final class Builder extends
    -        com.google.protobuf.GeneratedMessageV3.Builder implements
    +        com.google.protobuf.GeneratedMessage.Builder implements
             // @@protoc_insertion_point(builder_implements:tensorflow.profiler.XStatMetadata)
             org.tensorflow.proto.profiler.Xplane.XStatMetadataOrBuilder {
           public static final com.google.protobuf.Descriptors.Descriptor
    @@ -10693,7 +10564,7 @@ public static final class Builder extends
           }
     
           @java.lang.Override
    -      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
               internalGetFieldAccessorTable() {
             return org.tensorflow.proto.profiler.Xplane.internal_static_tensorflow_profiler_XStatMetadata_fieldAccessorTable
                 .ensureFieldAccessorsInitialized(
    @@ -10706,19 +10577,17 @@ private Builder() {
           }
     
           private Builder(
    -          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    +          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
             super(parent);
     
           }
           @java.lang.Override
           public Builder clear() {
             super.clear();
    +        bitField0_ = 0;
             id_ = 0L;
    -
             name_ = "";
    -
             description_ = "";
    -
             return this;
           }
     
    @@ -10745,45 +10614,24 @@ public org.tensorflow.proto.profiler.Xplane.XStatMetadata build() {
           @java.lang.Override
           public org.tensorflow.proto.profiler.Xplane.XStatMetadata buildPartial() {
             org.tensorflow.proto.profiler.Xplane.XStatMetadata result = new org.tensorflow.proto.profiler.Xplane.XStatMetadata(this);
    -        result.id_ = id_;
    -        result.name_ = name_;
    -        result.description_ = description_;
    +        if (bitField0_ != 0) { buildPartial0(result); }
             onBuilt();
             return result;
           }
     
    -      @java.lang.Override
    -      public Builder clone() {
    -        return super.clone();
    -      }
    -      @java.lang.Override
    -      public Builder setField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.setField(field, value);
    -      }
    -      @java.lang.Override
    -      public Builder clearField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field) {
    -        return super.clearField(field);
    -      }
    -      @java.lang.Override
    -      public Builder clearOneof(
    -          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
    -        return super.clearOneof(oneof);
    -      }
    -      @java.lang.Override
    -      public Builder setRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          int index, java.lang.Object value) {
    -        return super.setRepeatedField(field, index, value);
    -      }
    -      @java.lang.Override
    -      public Builder addRepeatedField(
    -          com.google.protobuf.Descriptors.FieldDescriptor field,
    -          java.lang.Object value) {
    -        return super.addRepeatedField(field, value);
    +      private void buildPartial0(org.tensorflow.proto.profiler.Xplane.XStatMetadata result) {
    +        int from_bitField0_ = bitField0_;
    +        if (((from_bitField0_ & 0x00000001) != 0)) {
    +          result.id_ = id_;
    +        }
    +        if (((from_bitField0_ & 0x00000002) != 0)) {
    +          result.name_ = name_;
    +        }
    +        if (((from_bitField0_ & 0x00000004) != 0)) {
    +          result.description_ = description_;
    +        }
           }
    +
           @java.lang.Override
           public Builder mergeFrom(com.google.protobuf.Message other) {
             if (other instanceof org.tensorflow.proto.profiler.Xplane.XStatMetadata) {
    @@ -10801,10 +10649,12 @@ public Builder mergeFrom(org.tensorflow.proto.profiler.Xplane.XStatMetadata othe
             }
             if (!other.getName().isEmpty()) {
               name_ = other.name_;
    +          bitField0_ |= 0x00000002;
               onChanged();
             }
             if (!other.getDescription().isEmpty()) {
               description_ = other.description_;
    +          bitField0_ |= 0x00000004;
               onChanged();
             }
             this.mergeUnknownFields(other.getUnknownFields());
    @@ -10835,17 +10685,17 @@ public Builder mergeFrom(
                     break;
                   case 8: {
                     id_ = input.readInt64();
    -
    +                bitField0_ |= 0x00000001;
                     break;
                   } // case 8
                   case 18: {
                     name_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000002;
                     break;
                   } // case 18
                   case 26: {
                     description_ = input.readStringRequireUtf8();
    -
    +                bitField0_ |= 0x00000004;
                     break;
                   } // case 26
                   default: {
    @@ -10863,6 +10713,7 @@ public Builder mergeFrom(
             } // finally
             return this;
           }
    +      private int bitField0_;
     
           private long id_ ;
           /**
    @@ -10887,8 +10738,9 @@ public long getId() {
            * @return This builder for chaining.
            */
           public Builder setId(long value) {
    -        
    +
             id_ = value;
    +        bitField0_ |= 0x00000001;
             onChanged();
             return this;
           }
    @@ -10901,7 +10753,7 @@ public Builder setId(long value) {
            * @return This builder for chaining.
            */
           public Builder clearId() {
    -        
    +        bitField0_ = (bitField0_ & ~0x00000001);
             id_ = 0L;
             onChanged();
             return this;
    @@ -10963,11 +10815,9 @@ public java.lang.String getName() {
            */
           public Builder setName(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             name_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -10981,8 +10831,8 @@ public Builder setName(
            * @return This builder for chaining.
            */
           public Builder clearName() {
    -        
             name_ = getDefaultInstance().getName();
    +        bitField0_ = (bitField0_ & ~0x00000002);
             onChanged();
             return this;
           }
    @@ -10998,12 +10848,10 @@ public Builder clearName() {
            */
           public Builder setNameBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             name_ = value;
    +        bitField0_ |= 0x00000002;
             onChanged();
             return this;
           }
    @@ -11061,11 +10909,9 @@ public java.lang.String getDescription() {
            */
           public Builder setDescription(
               java.lang.String value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  
    +        if (value == null) { throw new NullPointerException(); }
             description_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    @@ -11078,8 +10924,8 @@ public Builder setDescription(
            * @return This builder for chaining.
            */
           public Builder clearDescription() {
    -        
             description_ = getDefaultInstance().getDescription();
    +        bitField0_ = (bitField0_ & ~0x00000004);
             onChanged();
             return this;
           }
    @@ -11094,27 +10940,13 @@ public Builder clearDescription() {
            */
           public Builder setDescriptionBytes(
               com.google.protobuf.ByteString value) {
    -        if (value == null) {
    -    throw new NullPointerException();
    -  }
    -  checkByteStringIsUtf8(value);
    -        
    +        if (value == null) { throw new NullPointerException(); }
    +        checkByteStringIsUtf8(value);
             description_ = value;
    +        bitField0_ |= 0x00000004;
             onChanged();
             return this;
           }
    -      @java.lang.Override
    -      public final Builder setUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.setUnknownFields(unknownFields);
    -      }
    -
    -      @java.lang.Override
    -      public final Builder mergeUnknownFields(
    -          final com.google.protobuf.UnknownFieldSet unknownFields) {
    -        return super.mergeUnknownFields(unknownFields);
    -      }
    -
     
           // @@protoc_insertion_point(builder_scope:tensorflow.profiler.XStatMetadata)
         }
    @@ -11170,47 +11002,47 @@ public org.tensorflow.proto.profiler.Xplane.XStatMetadata getDefaultInstanceForT
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_profiler_XSpace_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_profiler_XSpace_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_profiler_XPlane_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_profiler_XPlane_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_profiler_XPlane_EventMetadataEntry_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_profiler_XPlane_EventMetadataEntry_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_profiler_XPlane_StatMetadataEntry_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_profiler_XPlane_StatMetadataEntry_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_profiler_XLine_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_profiler_XLine_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_profiler_XEvent_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_profiler_XEvent_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_profiler_XStat_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_profiler_XStat_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_profiler_XEventMetadata_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_profiler_XEventMetadata_fieldAccessorTable;
       private static final com.google.protobuf.Descriptors.Descriptor
         internal_static_tensorflow_profiler_XStatMetadata_descriptor;
       private static final 
    -    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
    +    com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internal_static_tensorflow_profiler_XStatMetadata_fieldAccessorTable;
     
       public static com.google.protobuf.Descriptors.FileDescriptor
    @@ -11264,57 +11096,58 @@ public org.tensorflow.proto.profiler.Xplane.XStatMetadata getDefaultInstanceForT
         internal_static_tensorflow_profiler_XSpace_descriptor =
           getDescriptor().getMessageTypes().get(0);
         internal_static_tensorflow_profiler_XSpace_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_profiler_XSpace_descriptor,
             new java.lang.String[] { "Planes", "Errors", "Warnings", "Hostnames", });
         internal_static_tensorflow_profiler_XPlane_descriptor =
           getDescriptor().getMessageTypes().get(1);
         internal_static_tensorflow_profiler_XPlane_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_profiler_XPlane_descriptor,
             new java.lang.String[] { "Id", "Name", "Lines", "EventMetadata", "StatMetadata", "Stats", });
         internal_static_tensorflow_profiler_XPlane_EventMetadataEntry_descriptor =
           internal_static_tensorflow_profiler_XPlane_descriptor.getNestedTypes().get(0);
         internal_static_tensorflow_profiler_XPlane_EventMetadataEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_profiler_XPlane_EventMetadataEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_profiler_XPlane_StatMetadataEntry_descriptor =
           internal_static_tensorflow_profiler_XPlane_descriptor.getNestedTypes().get(1);
         internal_static_tensorflow_profiler_XPlane_StatMetadataEntry_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_profiler_XPlane_StatMetadataEntry_descriptor,
             new java.lang.String[] { "Key", "Value", });
         internal_static_tensorflow_profiler_XLine_descriptor =
           getDescriptor().getMessageTypes().get(2);
         internal_static_tensorflow_profiler_XLine_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_profiler_XLine_descriptor,
             new java.lang.String[] { "Id", "DisplayId", "Name", "DisplayName", "TimestampNs", "DurationPs", "Events", });
         internal_static_tensorflow_profiler_XEvent_descriptor =
           getDescriptor().getMessageTypes().get(3);
         internal_static_tensorflow_profiler_XEvent_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_profiler_XEvent_descriptor,
             new java.lang.String[] { "MetadataId", "OffsetPs", "NumOccurrences", "DurationPs", "Stats", "Data", });
         internal_static_tensorflow_profiler_XStat_descriptor =
           getDescriptor().getMessageTypes().get(4);
         internal_static_tensorflow_profiler_XStat_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_profiler_XStat_descriptor,
             new java.lang.String[] { "MetadataId", "DoubleValue", "Uint64Value", "Int64Value", "StrValue", "BytesValue", "RefValue", "Value", });
         internal_static_tensorflow_profiler_XEventMetadata_descriptor =
           getDescriptor().getMessageTypes().get(5);
         internal_static_tensorflow_profiler_XEventMetadata_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_profiler_XEventMetadata_descriptor,
             new java.lang.String[] { "Id", "Name", "DisplayName", "Metadata", "Stats", "ChildId", });
         internal_static_tensorflow_profiler_XStatMetadata_descriptor =
           getDescriptor().getMessageTypes().get(6);
         internal_static_tensorflow_profiler_XStatMetadata_fieldAccessorTable = new
    -      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
    +      com.google.protobuf.GeneratedMessage.FieldAccessorTable(
             internal_static_tensorflow_profiler_XStatMetadata_descriptor,
             new java.lang.String[] { "Id", "Name", "Description", });
    +    descriptor.resolveAllFeaturesImmutable();
       }
     
       // @@protoc_insertion_point(outer_class_scope)
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/profiler/empty/Xplane.java b/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/profiler/empty/Xplane.java
    deleted file mode 100644
    index 79d1e115f9c..00000000000
    --- a/tensorflow-core/tensorflow-core-native/src/gen/java/org/tensorflow/proto/profiler/empty/Xplane.java
    +++ /dev/null
    @@ -1,40 +0,0 @@
    -// Generated by the protocol buffer compiler.  DO NOT EDIT!
    -// source: tensorflow/core/profiler/protobuf/xplane.proto
    -
    -package org.tensorflow.proto.profiler.empty;
    -
    -public final class Xplane {
    -  private Xplane() {}
    -  public static void registerAllExtensions(
    -      com.google.protobuf.ExtensionRegistryLite registry) {
    -  }
    -
    -  public static void registerAllExtensions(
    -      com.google.protobuf.ExtensionRegistry registry) {
    -    registerAllExtensions(
    -        (com.google.protobuf.ExtensionRegistryLite) registry);
    -  }
    -
    -  public static com.google.protobuf.Descriptors.FileDescriptor
    -      getDescriptor() {
    -    return descriptor;
    -  }
    -  private static  com.google.protobuf.Descriptors.FileDescriptor
    -      descriptor;
    -  static {
    -    java.lang.String[] descriptorData = {
    -      "\n.tensorflow/core/profiler/protobuf/xpla" +
    -      "ne.proto\022\031tensorflow.profiler.empty\032\"tsl" +
    -      "/profiler/protobuf/xplane.protoB%\n#org.t" +
    -      "ensorflow.proto.profiler.emptyP\000b\006proto3"
    -    };
    -    descriptor = com.google.protobuf.Descriptors.FileDescriptor
    -      .internalBuildGeneratedFileFrom(descriptorData,
    -        new com.google.protobuf.Descriptors.FileDescriptor[] {
    -          org.tensorflow.proto.profiler.Xplane.getDescriptor(),
    -        });
    -    org.tensorflow.proto.profiler.Xplane.getDescriptor();
    -  }
    -
    -  // @@protoc_insertion_point(outer_class_scope)
    -}
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/resources/org/tensorflow/base_api/api_def_AsString.pbtxt b/tensorflow-core/tensorflow-core-native/src/gen/resources/org/tensorflow/base_api/api_def_AsString.pbtxt
    index f90f0d5650b..5b066f8b132 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/resources/org/tensorflow/base_api/api_def_AsString.pbtxt
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/resources/org/tensorflow/base_api/api_def_AsString.pbtxt
    @@ -40,7 +40,7 @@ END
     Supports many numeric types and boolean.
     
     For Unicode, see the
    -[https://www.tensorflow.org/tutorials/representation/unicode](Working with Unicode text)
    +[https://www.tensorflow.org/text/guide/unicode](Working with Unicode text)
     tutorial.
     
     Examples:
    diff --git a/tensorflow-core/tensorflow-core-native/src/gen/resources/org/tensorflow/base_api/api_def_AssignVariableXlaConcatND.pbtxt b/tensorflow-core/tensorflow-core-native/src/gen/resources/org/tensorflow/base_api/api_def_AssignVariableXlaConcatND.pbtxt
    index 646f602af22..6bd6bcd8d05 100644
    --- a/tensorflow-core/tensorflow-core-native/src/gen/resources/org/tensorflow/base_api/api_def_AssignVariableXlaConcatND.pbtxt
    +++ b/tensorflow-core/tensorflow-core-native/src/gen/resources/org/tensorflow/base_api/api_def_AssignVariableXlaConcatND.pbtxt
    @@ -5,17 +5,13 @@ op {
         name: "resource"
         description: <